1 #ifndef VSF_SYSSTR_H 2 #define VSF_SYSSTR_H 3 4 /* Forward declarations */ 5 struct mystr; 6 struct vsf_sysutil_statbuf; 7 struct vsf_sysutil_dir; 8 struct vsf_sysutil_user; 9 10 void str_getcwd(struct mystr* p_str); 11 int str_readlink(struct mystr* p_str, const struct mystr* p_filename_str); 12 int str_write_loop(const struct mystr* p_str, const int fd); 13 int str_read_loop(struct mystr* p_str, const int fd); 14 int str_mkdir(const struct mystr* p_str, const unsigned int mode); 15 int str_rmdir(const struct mystr* p_str); 16 int str_unlink(const struct mystr* p_str); 17 int str_chdir(const struct mystr* p_str); 18 enum EVSFSysStrOpenMode 19 { 20 kVSFSysStrOpenUnknown = 0, 21 kVSFSysStrOpenReadOnly = 1 22 }; 23 int str_open(const struct mystr* p_str, const enum EVSFSysStrOpenMode mode); 24 int str_create(const struct mystr* p_str); 25 int str_create_exclusive(const struct mystr* p_str); 26 int str_chmod(const struct mystr* p_str, unsigned int mode); 27 int str_stat(const struct mystr* p_str, struct vsf_sysutil_statbuf** p_ptr); 28 int str_lstat(const struct mystr* p_str, struct vsf_sysutil_statbuf** p_ptr); 29 int str_rename(const struct mystr* p_from_str, const struct mystr* p_to_str); 30 struct vsf_sysutil_dir* str_opendir(const struct mystr* p_str); 31 void str_next_dirent(struct mystr* p_filename_str, 32 struct vsf_sysutil_dir* p_dir); 33 34 struct vsf_sysutil_user* str_getpwnam(const struct mystr* p_user_str); 35 36 void str_syslog(const struct mystr* p_str, int severe); 37 38 #endif /* VSF_SYSSTR_H */ 39 40