FpAccess function
Check file access.
Declaration
function FpAccess(pathname: PAnsiChar; aMode: cint): cintDescription
FpAccess tests user's access rights on the specified file.
Mode is a mask existing of one or more of the following:
- R_OK
- User has read rights.
- W_OK
- User has write rights.
- X_OK
- User has execute rights.
- F_OK
- File exists.
The test is done with the real user ID, instead of the effective user ID. If the user has the requested rights, zero is returned. If access is denied, or an error occurred, a nonzero value is returned.
Errors
Extended error information can be retrieved using fpGetErrno.
- sys_eaccess
- The requested access is denied, either to the file or one of the directories in its path.
- sys_einval
-
Modewas incorrect. - sys_enoent
- A directory component in
Pathdoesn't exist or is a dangling symbolic link. - sys_enotdir
- A directory component in
Pathis not a directory. - sys_enomem
- Insufficient kernel memory.
- sys_eloop
-
Pathhas a circular symbolic link.
See also
Example: ex26
Program Example26;
{ Program to demonstrate the Access function. }
Uses BaseUnix;
begin
if fpAccess ('/etc/passwd',W_OK)=0 then
begin
Writeln ('Better check your system.');
Writeln ('I can write to the /etc/passwd file !');
end;
end.An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
