NFSPROC_SYMLINK - Create Symbolic Link
- struct symlinkargs { diropargs from; path to; sattr attributes; };
diropargs, path and sattr are defined in
Basic Data Types .
- stat status;
stat is defined in
Basic Data Types .
- stat NFSPROC_SYMLINK(symlinkargs) = 13;
Creates the file from.name with ftype NFLNK in the directory given by from.dir. The new file contains the pathname to and has initial attributes given by attributes. If the return value is NFS_OK, a link was created. Any other return value indicates an error, and the link was not created.
A symbolic link is a pointer to another file. The name given in to is not interpreted by the server, only stored in the newly created file. When the client references a file that is a symbolic link, the contents of the symbolic link are normally transparently reinterpreted as a pathname to substitute.
An NFS server need not implement symbolic links; if it does not, it will return an
PROC_UNAVAIL error. An NFS client must be prepared to handle failures of any symbolic link operation. The NFSPROC_READLINK operation returns the data to the client for interpretation. Note that servers may ignore the attributes depending on the symbolic link model they use.
- NFS_OK
- Indicates that the call completed successfully and the results are valid.
- NFSERR_IO
- Some sort of hard error occurred when the operation was in progress. This could be a disk error, for example.
- NFSERR_ACCES
- Permission denied. The caller does not have the correct permission to perform the requested operation.
- NFSERR_EXIST
- File exists. The file specified already exists.
- NFSERR_NOTDIR
- Not a directory. The caller specified a non-directory in a directory operation.
- NFSERR_NOSPC
- No space left on device. The operation caused the server's file system to reach its limit.
- NFSERR_ROFS
- Read-only file system. Write attempted on a read-only file system.
- NFSERR_NAMETOOLONG
File name too long. The filename in an operation was too long.
- NFSERR_DQUOT
- Disk quota exceeded. The client's disk quota on the server has been exceeded.
- NFSERR_STALE
- The fhandle given in the arguments was invalid. That is, the file referred to by that file handle no longer exists, or access to it has been revoked.
Contents | Next section | Index |