REALPATH(3)

NAME
realpath - returns the real file name.

SYNOPSIS

#include <sys/param.h>

char *realpath(file_name, resolved_name)
char *file_name;
char resolved_name[MAXPATHLEN];

DESCRIPTION
realpath() resolves all links and references to "." and ".." in file_name and stores it in resolved_name.

It can handle both relative and absolute path names. For absolute path names and the relative names whose resolved name cannot be expressed relatively (e.g. ../../foobar ), it returns the resolved absolute name. For the other relative path names, it returns the resolved relative name.

RETURN VALUE
If there is no error, it returns a pointer to the resolved_name. Otherwise it returns a NULL pointer and places the name of the offending file in resolved_name. The global variable errno is set to indicate the error.

SEE ALSO
getwd(3)

WARNINGS
It operates on null-terminated strings.

One should have the execute permission on all the directories in the given and the resolved path.

BUGS
realpath() may fail to return to the current directory if an error occurs.