bionic (3) dpns_stat.3.gz

Provided by: libdpm-dev_1.10.0-2_amd64 bug

NAME

       dpns_stat - get information about a DPNS file or directory in the name server

SYNOPSIS

       #include <sys/types.h>
       #include "dpns_api.h"

       int dpns_lstat (const char *path, struct dpns_filestat *statbuf)

       int dpns_stat (const char *path, struct dpns_filestat *statbuf)

       int dpns_statx (const char *path, struct dpns_fileid *file_uniqueid, struct dpns_filestat *statbuf)

DESCRIPTION

       dpns_stat gets information about a DPNS file or directory in the name server.

       dpns_lstat  is  identical to dpns_stat except for symbolic links.  dpns_lstat retrieves information about
       the link itself, while dpns_stat gets information about the file/directory  referenced  by  the  symbolic
       link.

       dpns_statx  returns the same information plus the file unique id (name server hostname and file id).  The
       file can be specified by path name or by file_uniqueid.  If both are given, file_uniqueid is used.

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

       The structure pointed to by statbuf contains the following members:
              u_signed64     fileid;        /* entry unique identifier */
              mode_t         filemode; /* see below */
              int       nlink;         /* number of files in a directory */
              uid_t          uid;
              gid_t          gid;
              u_signed64     filesize;
              time_t         atime;         /* last access to file */
              time_t         mtime;         /* last file modification */
              time_t         ctime;         /* last metadata modification */
              short          fileclass;          /* 1--> experiment, 2 --> user */
              char      status;        /* '-' --> online, 'm' --> migrated */

       filemode is constructed by OR'ing the bits defined in <sys/stat.h>  under  Unix  or   "statbits.h"  under
       Windows/NT:

              S_IFLNK   0xA000          symbolic link
              S_IFREG   0x8000          regular file
              S_IFDIR   0x4000          directory
              S_ISUID   0004000         set user ID on execution
              S_ISGID   0002000         set group ID on execution
              S_ISVTX   0001000         sticky bit
              S_IRUSR   0000400         read by owner
              S_IWUSR   0000200         write by owner
              S_IXUSR   0000100         execute/search by owner
              S_IRGRP   0000040         read by group
              S_IWGRP   0000020         write by group
              S_IXGRP   0000010         execute/search by group
              S_IROTH   0000004         read by others
              S_IWOTH   0000002         write by others
              S_IXOTH   0000001         execute/search by others

RETURN VALUE

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

ERRORS

       ENOENT       The named file/directory does not exist or is a null pathname.

       EACCES       Search permission is denied on a component of the path prefix.

       EFAULT       path or statbuf is a NULL pointer.

       ENOTDIR      A component of path prefix is not a directory.

       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.

SEE ALSO

       Castor_limits(4), dpns_chdir(3), dpns_chmod(3), dpns_chown(3), dpns_creat(3)

AUTHOR

       LCG Grid Deployment Team