CANONICALIZE_FILE_NAME
Section: Linux Programmer's Manual (3)
Updated: 2017-09-15
Page Index
NAME
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).
ATTRIBUTES
For an explanation of the terms used in this section, see
attributes(7).
Interface | Attribute | Value
|
canonicalize_file_name()
| Thread safety | MT-Safe
|
CONFORMING TO
This function is a GNU extension.
SEE ALSO
readlink(2),
realpath(3)
COLOPHON
This page is part of release 5.10 of the Linux
man-pages
project.
A description of the project,
information about reporting bugs,
and the latest version of this page,
can be found at
https://www.kernel.org/doc/man-pages/.