mirror of
https://github.com/netbirdio/gvisor.git
synced 2026-05-22 17:12:49 -07:00
User pointer error type for path.ExecutableResolveError.
PiperOrigin-RevId: 477857846
This commit is contained in:
committed by
gVisor bot
parent
2928c19239
commit
3e2e74279a
@@ -32,11 +32,11 @@ import (
|
||||
|
||||
// ExecutableResolveError represents a failure to resolve the executable
|
||||
// in ResolveExecutablePath.
|
||||
type ExecutableResolveError error
|
||||
type ExecutableResolveError struct{ error }
|
||||
|
||||
// ResolveExecutablePath resolves the given executable name given the working
|
||||
// dir and environment.
|
||||
// Returns ExecutableResolveError when the executable cannot be resolved.
|
||||
// Returns *ExecutableResolveError when the executable cannot be resolved.
|
||||
func ResolveExecutablePath(ctx context.Context, args *kernel.CreateProcessArgs) (string, error) {
|
||||
name := args.Filename
|
||||
if len(name) == 0 {
|
||||
@@ -69,14 +69,14 @@ func ResolveExecutablePath(ctx context.Context, args *kernel.CreateProcessArgs)
|
||||
if kernel.VFS2Enabled {
|
||||
f, err := resolveVFS2(ctx, args.Credentials, args.MountNamespaceVFS2, paths, name)
|
||||
if err != nil {
|
||||
return "", ExecutableResolveError(fmt.Errorf("error finding executable %q in PATH %v: %v", name, paths, err))
|
||||
return "", &ExecutableResolveError{fmt.Errorf("error finding executable %q in PATH %v: %v", name, paths, err)}
|
||||
}
|
||||
return f, nil
|
||||
}
|
||||
|
||||
f, err := resolve(ctx, args.MountNamespace, paths, name)
|
||||
if err != nil {
|
||||
return "", ExecutableResolveError(fmt.Errorf("error finding executable %q in PATH %v: %v", name, paths, err))
|
||||
return "", &ExecutableResolveError{fmt.Errorf("error finding executable %q in PATH %v: %v", name, paths, err)}
|
||||
}
|
||||
return f, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user