SYNOPSIS
Under Unix:#include <sys/types.h>
#include <unistd.h>
#include "dpns_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 "dpns_api.h"
int dpns_access (const char *path, int amode);
DESCRIPTION
dpns_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 DPNS directory or the full DPNS 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.
-
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 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.
AUTHOR
LCG Grid Deployment Team