Annotation of embedaddon/libiconv/srclib/canonicalize.h, revision 1.1

1.1     ! misho       1: /* Return the canonical absolute name of a given file.
        !             2:    Copyright (C) 1996-2007 Free Software Foundation, Inc.
        !             3: 
        !             4:    This program is free software: you can redistribute it and/or modify
        !             5:    it under the terms of the GNU General Public License as published by
        !             6:    the Free Software Foundation; either version 3 of the License, or
        !             7:    (at your option) any later version.
        !             8: 
        !             9:    This program is distributed in the hope that it will be useful,
        !            10:    but WITHOUT ANY WARRANTY; without even the implied warranty of
        !            11:    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        !            12:    GNU General Public License for more details.
        !            13: 
        !            14:    You should have received a copy of the GNU General Public License
        !            15:    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
        !            16: 
        !            17: #ifndef CANONICALIZE_H_
        !            18: # define CANONICALIZE_H_
        !            19: 
        !            20: # if GNULIB_CANONICALIZE
        !            21: enum canonicalize_mode_t
        !            22:   {
        !            23:     /* All components must exist.  */
        !            24:     CAN_EXISTING = 0,
        !            25: 
        !            26:     /* All components excluding last one must exist.  */
        !            27:     CAN_ALL_BUT_LAST = 1,
        !            28: 
        !            29:     /* No requirements on components existence.  */
        !            30:     CAN_MISSING = 2
        !            31:   };
        !            32: typedef enum canonicalize_mode_t canonicalize_mode_t;
        !            33: 
        !            34: /* Return a malloc'd string containing the canonical absolute name of
        !            35:    the named file.  This acts like canonicalize_file_name, except that
        !            36:    whether components must exist depends on the canonicalize_mode_t
        !            37:    argument.  */
        !            38: char *canonicalize_filename_mode (const char *, canonicalize_mode_t);
        !            39: # endif
        !            40: 
        !            41: # if HAVE_DECL_CANONICALIZE_FILE_NAME
        !            42: #  include <stdlib.h>
        !            43: # else
        !            44: /* Return a malloc'd string containing the canonical absolute name of
        !            45:    the named file.  If any file name component does not exist or is a
        !            46:    symlink to a nonexistent file, return NULL.  A canonical name does
        !            47:    not contain any `.', `..' components nor any repeated file name
        !            48:    separators ('/') or symlinks.  */
        !            49: char *canonicalize_file_name (const char *);
        !            50: # endif
        !            51: 
        !            52: #endif /* !CANONICALIZE_H_ */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>