DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

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   execute   permis-
                                          sions,   respectively.    F_OK  just
                                          requests checking for the  existence
                                          of the file.

       struct stat   *statPtr   (out)     The   structure  that  contains  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 functions fixes some bugs in the system
       level  calls.   Second,  both  Tcl_Access  and  Tcl_Stat  (as  well  as
       Tcl_OpenFileChannelProc)  hook  into  a linked list of functions.  This
       allows the possibility to reroute file access to alternative  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 per-
       missions 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 regard-
       ing 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

Tcl                                   8.1                        Tcl_Access(3)

Man(1) output converted with man2html