Make a symbolic link to a file or a directory in the dpns name server
#include <sys/types.h>
#include "dpns_api.h"
int dpns_symlink (const char *target, const char *linkname)
dpns_symlink makes a symbolic link to a file or a directory in the DPNS Name Server.
linkname
specifies the link name relative to the current DPNS directory or the full DPNS pathname.
This routine returns 0 if the operation was successful or -1 if the operation failed. In the latter case, serrno is set appropriately.
ENOENT
A component of linkname prefix does not exist.
EACCES
Search permission is denied on a component of linkname prefix or write permission on linkname parent directory is denied.
EFAULT
target or linkname is a NULL pointer.
EEXIST
linkname exists already.
ENOTDIR
A component of linkname prefix is not a directory.
ENOSPC
The name server database is full.
ENAMETOOLONG
The length of target or linkname exceeds CA_MAXPATHLEN or the length of a linkname component exceeds CA_MAXNAMELEN.
SENOSHOST
Host unknown.
SENOSSERV
Service unknown.
SECOMERR
Communication error.
SELOOP
Too many symbolic links encountered when parsing linkname.
ENSNACT
Name server is not running or is being shutdown.
Castor_limits(4), dpns_chdir(3), dpns_chmod(3), dpns_readlink(3), dpns_stat(3),dpns_statg(3), Cupvlist(1)
LCG Grid Deployment Team