container/initsymlink: unwrap absolute error
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				Test / Create distribution (push) Successful in 27s
				
			
		
			
				
	
				Test / Sandbox (push) Successful in 1m47s
				
			
		
			
				
	
				Test / Hakurei (push) Successful in 3m17s
				
			
		
			
				
	
				Test / Hpkg (push) Successful in 3m44s
				
			
		
			
				
	
				Test / Sandbox (race detector) (push) Successful in 3m52s
				
			
		
			
				
	
				Test / Hakurei (race detector) (push) Successful in 5m18s
				
			
		
			
				
	
				Test / Flake checks (push) Successful in 1m36s
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	Test / Create distribution (push) Successful in 27s
				
			Test / Sandbox (push) Successful in 1m47s
				
			Test / Hakurei (push) Successful in 3m17s
				
			Test / Hpkg (push) Successful in 3m44s
				
			Test / Sandbox (race detector) (push) Successful in 3m52s
				
			Test / Hakurei (race detector) (push) Successful in 5m18s
				
			Test / Flake checks (push) Successful in 1m36s
				
			This is now handled properly by the init. Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
		
							parent
							
								
									f24dd4ab8c
								
							
						
					
					
						commit
						b8669338da
					
				| @ -3,7 +3,6 @@ package container | |||||||
| import ( | import ( | ||||||
| 	"encoding/gob" | 	"encoding/gob" | ||||||
| 	"fmt" | 	"fmt" | ||||||
| 	"io/fs" |  | ||||||
| 	"path" | 	"path" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| @ -30,7 +29,7 @@ func (l *SymlinkOp) Valid() bool { return l != nil && l.Target != nil && l.LinkN | |||||||
| func (l *SymlinkOp) early(_ *setupState, k syscallDispatcher) error { | func (l *SymlinkOp) early(_ *setupState, k syscallDispatcher) error { | ||||||
| 	if l.Dereference { | 	if l.Dereference { | ||||||
| 		if !isAbs(l.LinkName) { | 		if !isAbs(l.LinkName) { | ||||||
| 			return msg.WrapErr(fs.ErrInvalid, fmt.Sprintf("path %q is not absolute", l.LinkName)) | 			return &AbsoluteError{l.LinkName} | ||||||
| 		} | 		} | ||||||
| 		if name, err := k.readlink(l.LinkName); err != nil { | 		if name, err := k.readlink(l.LinkName); err != nil { | ||||||
| 			return wrapErrSelf(err) | 			return wrapErrSelf(err) | ||||||
|  | |||||||
| @ -1,7 +1,6 @@ | |||||||
| package container | package container | ||||||
| 
 | 
 | ||||||
| import ( | import ( | ||||||
| 	"io/fs" |  | ||||||
| 	"os" | 	"os" | ||||||
| 	"testing" | 	"testing" | ||||||
| ) | ) | ||||||
| @ -19,7 +18,7 @@ func TestSymlinkOp(t *testing.T) { | |||||||
| 			Target:      MustAbs("/etc/mtab"), | 			Target:      MustAbs("/etc/mtab"), | ||||||
| 			LinkName:    "etc/mtab", | 			LinkName:    "etc/mtab", | ||||||
| 			Dereference: true, | 			Dereference: true, | ||||||
| 		}, nil, msg.WrapErr(fs.ErrInvalid, `path "etc/mtab" is not absolute`), nil, nil}, | 		}, nil, &AbsoluteError{"etc/mtab"}, nil, nil}, | ||||||
| 
 | 
 | ||||||
| 		{"readlink", &Params{ParentPerm: 0755}, &SymlinkOp{ | 		{"readlink", &Params{ParentPerm: 0755}, &SymlinkOp{ | ||||||
| 			Target:      MustAbs("/etc/mtab"), | 			Target:      MustAbs("/etc/mtab"), | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user