Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

canonicalize_file_name(3) [centos man page]

CANONICALIZE_FILE_NAME(3)				     Linux Programmer's Manual					 CANONICALIZE_FILE_NAME(3)

canonicalize_file_name - return the canonicalized absolute pathname SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */ #include <stdlib.h> char *canonicalize_file_name(const char *path); DESCRIPTION
The canonicalize_file_name() function returns a null-terminated string containing the canonicalized absolute pathname corresponding to path. In the returned string, symbolic links are resolved, as are . and .. pathname components. Consecutive slash (/) characters are replaced by a single slash. The returned string is dynamically allocated by canonicalize_file_name() and the caller should deallocate it with free(3) when it is no longer required. The call canonicalize_file_name(path) is equivalent to the call: realpath(path, NULL); RETURN VALUE
On success, canonicalize_file_name() returns a null-terminated string. On error (e.g., a pathname component is unreadable or does not exist), canonicalize_file_name() returns NULL and sets errno to indicate the error. ERRORS
See realpath(3). CONFORMING TO
This function is a GNU extension. SEE ALSO
readlink(2), realpath(3) COLOPHON
This page is part of release 3.53 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at GNU

Check Out this Related Man Page

REALPATH(3)								 1							       REALPATH(3)

realpath - Returns canonicalized absolute pathname

string realpath (string $path) DESCRIPTION
realpath(3) expands all symbolic links and resolves references to '/./', '/../' and extra '/' characters in the input $path and returns the canonicalized absolute pathname. PARAMETERS
o $path - The path being checked. Note Whilst a path must be supplied, the value can be blank or NULL In these cases, the value is interpreted as the current directory. RETURN VALUES
Returns the canonicalized absolute pathname on success. The resulting path will have no symbolic link, '/./' or '/../' components. realpath(3) returns FALSE on failure, e.g. if the file does not exist. Note The running script must have executable permissions on all directories in the hierarchy, otherwise realpath(3) will return FALSE. Note Because PHP's integer type is signed and many platforms use 32bit integers, some filesystem functions may return unexpected results for files which are larger than 2GB. CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.3.0 | | | | | | | Prior to this release, if only the last $path | | | component did not exist, realpath(3) would not | | | fail on *BSD systems. realpath(3) now fails in | | | this case. | | | | | 5.2.1 | | | | | | | Prior to this version, realpath(3) returned | | | FALSE if $path is an empty string or NULL. | | | | +--------+---------------------------------------------------+ EXAMPLES
Example #1 realpath(3) example <?php chdir('/var/www/'); echo realpath('./../../etc/passwd'); ?> The above example will output: /etc/passwd Example #2 realpath(3) on Windows On windows realpath(3) will change unix style paths to windows style. <?php echo realpath('/windows/system32'); ?> The above example will output: C:WINDOWSSystem32 SEE ALSO
basename(3), dirname(3), pathinfo(3). PHP Documentation Group REALPATH(3)
Man Page