Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
REALPATH(3)		    Library Functions Manual		   REALPATH(3)

NAME
       realpath	-- returns the canonicalized absolute pathname

LIBRARY
       Standard	C Library (libc, -lc)

SYNOPSIS
       #include	<stdlib.h>

       char *
       realpath(const	      char	   *	     restrict	     pathname,
	   char	* restrict resolved_path);

DESCRIPTION
       The realpath() function resolves	all symbolic links, extra "/"  charac-
       ters and	references to /./ and /../ in pathname,	and copies the result-
       ing absolute pathname into the memory pointed to	by resolved_path.  The
       resolved_path  argument	must  point  to	a buffer capable of storing at
       least PATH_MAX characters, or be	NULL.

       The realpath() function will resolve both absolute and  relative	 paths
       and return the absolute pathname	corresponding to pathname.  All	compo-
       nents of	pathname must exist when realpath() is called, and all but the
       last component must name	either directories or symlinks pointing	to the
       directories.

RETURN VALUES
       On success, the realpath() function returns resolved_path if it was not
       NULL,  or  a pointer to a null-terminated string	which must be freed by
       the caller if it	was.  If an error occurs, realpath() returns NULL, and
       if resolved_path	was not	NULL, the array	that it	points to 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).

SEE ALSO
       basename(3), dirname(3),	free(3), getcwd(3)

STANDARDS
       The realpath() function conforms	to IEEE	Std 1003.1-2001	("POSIX.1").

HISTORY
       The realpath() function first appeared in 4.4BSD.

FreeBSD	ports 15.quarterly	March 18, 2026			   REALPATH(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=realpath&sektion=3&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help