Provided by: liblfc-dev_1.13.0-1_amd64 bug


       lfc_access - check existence/accessibility of a file/directory


       Under Unix:
       #include <sys/types.h>
       #include <unistd.h>
       #include "lfc_api.h"

       Under Windows/NT:
       #include <sys/types.h>
       #define R_OK 4
       #define W_OK 2
       #define X_OK 1
       #define F_OK 0
       #include "lfc_api.h"

       int lfc_access (const char *path, int amode);


       lfc_access  checks  in  the name server database the existence or the accessibility of the
       file/directory path according to the bit pattern in amode using the real user ID.

       path   specifies the logical pathname relative to the current LFC directory  or  the  full
              LFC pathname.

       amode  the bit pattern is built by an OR of the constants defined in <unistd.h> under Unix
              or to be explicitly defined under Windows/NT:

              R_OK   test for read permission

              W_OK   test for write permission

              X_OK   test for search/execute permission

              F_OK   test for existence of the directory/file.


       This routine returns 0 if the operation was successful or -1 if the operation  failed.  In
       the latter case, serrno is set appropriately.


       ENOENT       The named file/directory does not exist or is a dangling symbolic link.

       EACCES       Search  permission  is  denied on a component of the path prefix or specified
                    access to the file itself is denied.

       EFAULT       path is a NULL pointer.

       ENOTDIR      A component of path prefix is not a directory.

       EINVAL       amode is invalid.

       ENAMETOOLONG The length of path exceeds CA_MAXPATHLEN or the length of  a  path  component
                    exceeds CA_MAXNAMELEN.

       SENOSHOST    Host unknown.

       SENOSSERV    Service unknown.

       SECOMERR     Communication error.

       ENSNACT      Name server is not running or is being shutdown.


       Castor_limits(4), lfc_chdir(3), lfc_chmod(3), lfc_statg(3)


       LCG Grid Deployment Team