BASENAME(3) OpenBSD Programmer's Manual BASENAME(3)NAME
basename - extract the base portion of a pathname
SYNOPSIS
#include <libgen.h>
char *
basename(const char *path);
DESCRIPTION
The basename() function returns the last component from the pathname
pointed to by path, deleting any trailing `/' characters. If path
consists entirely of `/' characters, a pointer to the string "/" is
returned. If path is a null pointer or the empty string, a pointer to
the string "." is returned.
RETURN VALUES
On successful completion, basename() returns a pointer to the last
component of path.
If basename() fails, a null pointer is returned and the global variable
errno is set to indicate the error.
ERRORS
The following error codes may be set in errno:
[ENAMETOOLONG]
The path component to be returned was larger than
MAXPATHLEN.
SEE ALSObasename(1), dirname(1), dirname(3)STANDARDS
The basename() function conforms to X/Open Portability Guide Issue 4.2
(``XPG4.2'').
HISTORY
The basename() function first appeared in OpenBSD 2.2.
AUTHORS
Todd C. Miller
CAVEATSbasename() returns a pointer to internal static storage space that will
be overwritten by subsequent calls.
Other vendor implementations of basename() may modify the contents of the
string passed to basename(); this should be taken into account when
writing code which calls this function if portability is desired.
OpenBSD 4.9 May 31, 2007 OpenBSD 4.9