Access Event
Fires when the OS needs to check file access permissions.
Syntax
// FUSEAccessEventArgs carries the FUSE Access event's parameters. type FUSEAccessEventArgs struct {...} func (args *FUSEAccessEventArgs) Path() string func (args *FUSEAccessEventArgs) Mask() int32 func (args *FUSEAccessEventArgs) Result() int32 func (args *FUSEAccessEventArgs) SetResult(value int32) // FUSEAccessEvent defines the signature of the FUSE Access event's handler function. type FUSEAccessEvent func(sender *FUSE, args *FUSEAccessEventArgs) func (obj *FUSE) GetOnAccessHandler() FUSEAccessEvent func (obj *FUSE) SetOnAccessHandler(handlerFunc FUSEAccessEvent)
Remarks
Windows:
This event fires when the OS needs to know whether the file or directory specified in Path can be deleted. For this, the Mask parameter is set to 2 (W_OK).
The application must return 0 in the Result parameter to indicate that deletion is permitted, or an error code otherwise.
Linux:
This event fires when the OS needs to check access permissions of the file or directory specified in Path. Specifically, the event fires when a process uses the access() system call.
The application must return 0 in the Result parameter to indicate that access, requested by the Mask parameter is permitted, or -EACCES to indicate that access is denied.
If the event cannot be handled in a "successful" manner for some reason (e.g., a resource isn't available, security checks failed, etc.), set it to a negative error code value (e.g. -ENOENT to indicate that the file does not exist) to report an appropriate error. Please refer to the Error Reporting and Handling topic for more information.