tcl_access(3)

NAME

Tcl_Access, Tcl_Stat - check file permissions and other
attributes

SYNOPSIS

#include <tcl.h>
int
Tcl_Access(path, mode)
int
Tcl_Stat(path, statPtr)

ARGUMENTS

char *path (in) Native name of the file
to check the attributes
of.
int mode (in) Mask consisting of one
or more of R_OK, W_OK,
X_OK and F_OK. R_OK,
W_OK and X_OK request
checking whether the
file exists and has
read, write and exe
cute permissions,
respectively. F_OK
just requests checking
for the existence of
the file.
struct stat *statPtr (out) The structure that con
tains the result.

DESCRIPTION

As of Tcl 8.4, the object-based APIs Tcl_FSAccess and Tcl_FSStat should be used in preference to Tcl_Access and Tcl_Stat, wherever possible.

There are two reasons for calling Tcl_Access and Tcl_Stat rather than calling system level functions access and stat directly. First, the Windows implementation of both func
tions fixes some bugs in the system level calls. Second,
both Tcl_Access and Tcl_Stat (as well as Tcl_OpenFileChan nelProc) hook into a linked list of functions. This allows the possibility to reroute file access to alterna
tive media or access methods.

Tcl_Access checks whether the process would be allowed to read, write or test for existence of the file (or other
file system object) whose name is pathname. If pathname
is a symbolic link on Unix, then permissions of the file
referred by this symbolic link are tested.

On success (all requested permissions granted), zero is
returned. On error (at least one bit in mode asked for a
permission that is denied, or some other error occurred),
-1 is returned.

Tcl_Stat fills the stat structure statPtr with information about the specified file. You do not need any access
rights to the file to get this information but you need
search rights to all directories named in the path leading
to the file. The stat structure includes info regarding
device, inode (always 0 on Windows), privilege mode, nlink
(always 1 on Windows), user id (always 0 on Windows),
group id (always 0 on Windows), rdev (same as device on
Windows), size, last access time, last modification time,
and creation time.

If path exists, Tcl_Stat returns 0 and the stat structure is filled with data. Otherwise, -1 is returned, and no
stat info is given.

KEYWORDS

stat, access
Copyright © 2010-2024 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout