[BACK]Return to realpath.3 CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / lib / libc / gen

Annotation of src/lib/libc/gen/realpath.3, Revision 1.8.2.1

1.8.2.1 ! lukem       1: .\"    $NetBSD$
1.2       thorpej     2: .\"
1.1       mycroft     3: .\" Copyright (c) 1994
                      4: .\"    The Regents of the University of California.  All rights reserved.
                      5: .\"
                      6: .\" This code is derived from software contributed to Berkeley by
                      7: .\" Jan-Simon Pendry.
                      8: .\"
                      9: .\" Redistribution and use in source and binary forms, with or without
                     10: .\" modification, are permitted provided that the following conditions
                     11: .\" are met:
                     12: .\" 1. Redistributions of source code must retain the above copyright
                     13: .\"    notice, this list of conditions and the following disclaimer.
                     14: .\" 2. Redistributions in binary form must reproduce the above copyright
                     15: .\"    notice, this list of conditions and the following disclaimer in the
                     16: .\"    documentation and/or other materials provided with the distribution.
                     17: .\" 3. All advertising materials mentioning features or use of this software
                     18: .\"    must display the following acknowledgement:
                     19: .\"    This product includes software developed by the University of
                     20: .\"    California, Berkeley and its contributors.
                     21: .\" 4. Neither the name of the University nor the names of its contributors
                     22: .\"    may be used to endorse or promote products derived from this software
                     23: .\"    without specific prior written permission.
                     24: .\"
                     25: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     26: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     27: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     28: .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     29: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     30: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     31: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     32: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     33: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     34: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     35: .\" SUCH DAMAGE.
                     36: .\"
                     37: .\"     from: @(#)realpath.3   8.2 (Berkeley) 2/16/94
                     38: .\"
1.3       cgd        39: .Dd February 16, 1994
1.1       mycroft    40: .Dt REALPATH 3
                     41: .Os
                     42: .Sh NAME
                     43: .Nm realpath
                     44: .Nd returns the canonicalized absolute pathname
1.4       perry      45: .Sh LIBRARY
                     46: .Lb libc
1.1       mycroft    47: .Sh SYNOPSIS
1.8       ross       48: .Fd #include \*[Lt]sys/param.h\*[Gt]
                     49: .Fd #include \*[Lt]stdlib.h\*[Gt]
1.1       mycroft    50: .Ft "char *"
                     51: .Fn realpath "const char *pathname" "char resolvedname[MAXPATHLEN]"
                     52: .Sh DESCRIPTION
                     53: The
                     54: .Fn realpath
                     55: function resolves all symbolic links, extra
                     56: .Dq /
                     57: characters and references to
                     58: .Pa /./
                     59: and
                     60: .Pa /../
                     61: in
                     62: .Fa pathname ,
                     63: and copies the resulting absolute pathname into
                     64: the memory referenced by
                     65: .Fa resolvedname .
                     66: The
                     67: .Fa resolvedname
                     68: argument
                     69: .Em must
                     70: refer to a buffer capable of storing at least
                     71: .Dv MAXPATHLEN
                     72: characters.
                     73: .Pp
1.6       wiz        74: The
1.1       mycroft    75: .Fn realpath
                     76: function will resolve both absolute and relative paths
                     77: and return the absolute pathname corresponding to
                     78: .Fa pathname .
                     79: All but the last component of
                     80: .Fa pathname
                     81: must exist when
                     82: .Fn realpath
                     83: is called.
1.7       wiz        84: .Sh RETURN VALUES
1.1       mycroft    85: The
                     86: .Fn realpath
                     87: function returns
1.8.2.1 ! lukem      88: .Fa resolvedname
1.1       mycroft    89: on success.
                     90: If an error occurs,
                     91: .Fn realpath
                     92: returns
                     93: .Dv NULL ,
                     94: and
1.8.2.1 ! lukem      95: .Fa resolvedname
1.1       mycroft    96: contains the pathname which caused the problem.
                     97: .Sh ERRORS
                     98: The function
                     99: .Fn realpath
                    100: may fail and set the external variable
                    101: .Va errno
                    102: for any of the errors specified for the library functions
                    103: .Xr chdir 2 ,
                    104: .Xr close 2 ,
                    105: .Xr fchdir 2 ,
                    106: .Xr lstat 2 ,
                    107: .Xr open 2 ,
                    108: .Xr readlink 2
                    109: and
                    110: .Xr getcwd 3 .
1.7       wiz       111: .Sh SEE ALSO
                    112: .Xr getcwd 3
                    113: .Sh HISTORY
                    114: The
                    115: .Fn realpath
                    116: function call first appeared in
                    117: .Bx 4.4 .
                    118: .Sh BUGS
1.1       mycroft   119: This implementation of
                    120: .Fn realpath
                    121: differs slightly from the Solaris implementation.
                    122: The
                    123: .Bx 4.4
                    124: version always returns absolute pathnames,
                    125: whereas the Solaris implementation will,
                    126: under certain circumstances, return a relative
1.8.2.1 ! lukem     127: .Fa resolvedname
1.1       mycroft   128: when given a relative
                    129: .Fa pathname .

CVSweb <webmaster@jp.NetBSD.org>