1 /* Copyright (c) 2003-2004, Roger Dingledine 2 * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson. 3 * Copyright (c) 2007-2021, The Tor Project, Inc. */ 4 /* See LICENSE for licensing information */ 5 6 /** 7 * \file path.h 8 * 9 * \brief Header for path.c 10 **/ 11 12 #ifndef TOR_PATH_H 13 #define TOR_PATH_H 14 15 #include <stdbool.h> 16 #ifdef _WIN32 17 #include <windows.h> 18 #endif 19 #include "lib/cc/compat_compiler.h" 20 21 #ifdef _WIN32 22 #define PATH_SEPARATOR "\\" 23 #else 24 #define PATH_SEPARATOR "/" 25 #endif 26 27 char *get_unquoted_path(const char *path); 28 char *expand_filename(const char *filename); 29 int path_is_relative(const char *filename); 30 void clean_fname_for_stat(char *name); 31 int get_parent_directory(char *fname); 32 char *make_path_absolute(const char *fname); 33 struct smartlist_t *tor_glob(const char *pattern); 34 bool has_glob(const char *s); 35 struct smartlist_t *get_glob_opened_files(const char *pattern); 36 37 #endif /* !defined(TOR_PATH_H) */ 38