dpns_readdirg man page

DPNS_READDIRG(3)            DPNS Library Functions            DPNS_READDIRG(3)

[1mNAME[0m
      dpns_readdir  -  read DPNS directory opened by [1mdpns_opendir [22min the name
      server

[1mSYNOPSIS[0m
      [1m#include <sys/types.h>[0m
      [1m#include "dpns_api.h"[0m

      [1mstruct dpns_direnstatg *dpns_readdir (dpns_DIR *[4m[22mdirp[24m[1m)[0m

[1mDESCRIPTION[0m
      [1mdpns_readdir [22mreads the DPNS directory opened  by  [1mdpns_opendir  [22min  the
      name  server.  This routine returns a pointer to a structure containing
      the current directory entry including the GUID associated.

      struct dpns_direnstatg {
           u_signed64     fileid;
           char      guid[CA_MAXGUIDLEN+1];
           mode_t         filemode;
           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;     /* not used */
           char      status;        /* ' ' --> online, 'm' --> migrated */
           char      csumtype[3];   /* "CS", "AD" or "MD" */
           char      csumvalue[33];
           unsigned short d_reclen; /* length of this entry */
           char      d_name[1];     /* basename in variable length */
      };

      [1mdpns_readdir [22mcaches a variable number of such entries, depending on the
      filename size, to minimize the number of requests to the name server.

      [4mdirp[24m   specifies the pointer value returned by [1mdpns_opendir[22m.

[1mRETURN VALUE[0m
      This  routine  returns  a pointer to a structure containing the current
      directory entry if the operation was successful or NULL if the  end  of
      the  directory  was reached or if the operation failed. When the end of
      the directory is encountered, serrno is not changed. If  the  operation
      failed, [1mserrno [22mis set appropriately.

      As dpns_readdir returns a null pointer both at the end of the directory
      and on error, an application wishing  to  check  for  error  situations
      should  set  [1mserrno [22mto 0, then call dpns_readdir, then check [1mserrno [22mand
      if it is non-zero, assume an error has occurred.

[1mERRORS[0m
      [1mEBADF        [22mFile descriptor in DIR structure is invalid.

      [1mEFAULT       [4m[22mdirp[24m is a NULL pointer.

      [1mSECOMERR     [22mCommunication error.

      [1mENSNACT      [22mName server is not running or is being shutdown.

[1mSEE ALSO[0m
      [1mdpns_closedir(3)[22m, [1mdpns_opendir(3)[22m, [1mdpns_rewinddir(3)[0m

[1mAUTHOR[0m
      [1mLCG Grid Deployment [22mTeam

DPNS         $Date: 2011-06-15 09:20:59 +0200 (Wed, 15 Jun 2011D)PN$S_READDIRG(3)