The
realpath ();
function resolves all symbolic links, extra
``/''
characters and references to
/./
and
/../
in
Fa pathname ,
and copies the resulting absolute pathname into
the memory referenced by
Fa resolved_path .
The
Fa resolved_path
argument
must
refer to a buffer capable of storing at least
PATH_MAX
characters.
The
realpath ();
function will resolve both absolute and relative paths
and return the absolute pathname corresponding to
Fa pathname .
All but the last component of
Fa pathname
must exist when
realpath ();
is called.
RETURN VALUES
The
realpath ();
function returns
Fa resolved_path
on success.
If an error occurs,
realpath ();
returns
NULL
and
Fa resolved_path
contains the pathname which caused the problem.
ERRORS
The function
realpath ();
may fail and set the external variable
errno
for any of the errors specified for the library functions
lstat(2),
readlink(2)
and
getcwd(3).
CAVEATS
This implementation of
realpath ();
differs slightly from the Solaris implementation.
The
BSD 4.4
version always returns absolute pathnames,
whereas the Solaris implementation will,
under certain circumstances, return a relative
Fa resolved_path
when given a relative
Fa pathname .