/* file-names.h - decls for file-name manipulations
*
****************************************************************
* Copyright (C) 1998, 2000 Thomas Lord
*
* See the file "COPYING" for further information about
* the copyright and warranty status of this work.
*/
#ifndef INCLUDE__FS__FILE_NAMES_H
#define INCLUDE__FS__FILE_NAMES_H
#include "hackerlab/machine/types.h"
#include "hackerlab/mem/alloc-limits.h"
/* automatically generated __STDC__ prototypes */
extern t_uchar * file_name_home_directory (void);
extern int file_name_is_absolute (t_uchar * f);
extern t_uchar * file_name_tilde_expand (alloc_limits limits, t_uchar * fname);
extern t_uchar * file_name_tail (alloc_limits limits, t_uchar const * const fname);
extern t_uchar * file_name_head (alloc_limits limits, char * fname);
extern t_uchar * file_name_sans_head (alloc_limits limits, char * fname);
extern t_uchar * file_name_as_directory (alloc_limits limits, t_uchar * f);
extern t_uchar * file_name_from_directory (alloc_limits limits, t_uchar * f);
extern t_uchar * file_name_directory (alloc_limits limits, t_uchar * f);
extern t_uchar * file_name_directory_file (alloc_limits limits, t_uchar const * f);
extern int file_name_is_path_prefix (t_uchar * maybe_prefix, t_uchar * path);
extern t_uchar * talloc_file_name_in_vicinity (void * context,
t_uchar const * dir,
t_uchar const * name);
extern t_uchar * file_name_in_vicinity (alloc_limits limits,
t_uchar const * dir,
t_uchar const * name);
extern t_uchar ** path_parse (alloc_limits limits, t_uchar * path);
extern void free_path (alloc_limits limits, t_uchar ** path);
extern t_uchar * path_find_executable (alloc_limits limits,
t_uchar ** path,
t_uchar * tail);
#endif /* INCLUDE__FS__FILE_NAMES_H */
syntax highlighted by Code2HTML, v. 0.9.1