resolvepath man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

RESOLVEPATH(2)							RESOLVEPATH(2)

NAME
       resolvepath - resolve all symbolic links of a path name

SYNOPSIS
       #include <unistd.h>

       int resolvepath(const char *path, char *buf, size_t bufsiz);

DESCRIPTION
       The  resolvepath()  function  fully  resolves all symbolic links in the
       path name path into a resulting path name free of  symbolic  links  and
       places the resulting path name in the buffer buf which has size bufsiz.
       The resulting path name names the same file or directory as the	origi‐
       nal  path name. All ``.'' components are eliminated and every non-lead‐
       ing ``..'' component is eliminated together with its  preceding	direc‐
       tory  component.	 If leading ``..'' components reach to the root direc‐
       tory, they are replaced by ``/''. If the number of bytes in the result‐
       ing path name is less than bufsiz, the contents of the remainder of buf
       are unspecified.

RETURN VALUES
       Upon successful completion, resolvepath() returns the  count  of	 bytes
       placed  in  the	buffer.	 Otherwise,  it returns	 −1, leaves the buffer
       unchanged, and sets errno to indicate the error.

ERRORS
       The resolvepath() function will fail if:

       EACCES
		       Search permission is denied for a component of the path
		       prefix of path or for a path prefix component resulting
		       from the resolution of a symbolic link.

       EFAULT
		       The path or buf argument points to an illegal address.

       EIO
		       An I/O error occurred while reading from the file  sys‐
		       tem.

       ENOENT
		       The  path argument is an empty string or a component of
		       path or a path name component produced by  resolving  a
		       symbolic link does not name an existing file.

       ELOOP
		       Too  many  symbolic links were encountered in resolving
		       path.

       ENAMETOOLONG
		       The length of path exceeds PATH_MAX,  or	 a  path  name
		       component is longer than NAME_MAX. Path name resolution
		       of a symbolic  link  produced  an  intermediate	result
		       whose  length  exceeds  PATH_MAX	 or  a component whose
		       length exceeds NAME_MAX.

       ENOTDIR
		       A component of the path prefix of path  or  of  a  path
		       prefix  component  resulting  from  the resolution of a
		       symbolic link is not a directory.

USAGE
       No more than PATH_MAX bytes will be placed in the buffer.  Applications
       should  not  assume  that the returned contents of the buffer are null-
       terminated.

SEE ALSO
       readlink(2), realpath(3C)

				 May 12, 1997			RESOLVEPATH(2)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net