亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sysutil.h

?? linux下的輕量級的ftp服務器
?? H
字號:
#ifndef VSF_SYSUTIL_H#define VSF_SYSUTIL_H/* TODO: these functions need proper documenting! */#ifndef VSF_FILESIZE_H#include "filesize.h"#endif/* Return value queries */int vsf_sysutil_retval_is_error(int retval);enum EVSFSysUtilError{  kVSFSysUtilErrUnknown = 1,  kVSFSysUtilErrADDRINUSE,  kVSFSysUtilErrNOSYS,  kVSFSysUtilErrINTR,  kVSFSysUtilErrINVAL,  kVSFSysUtilErrOPNOTSUPP};enum EVSFSysUtilError vsf_sysutil_get_error(void);/* Signal handling utility functions */enum EVSFSysUtilSignal{  kVSFSysUtilSigALRM = 1,  kVSFSysUtilSigTERM,  kVSFSysUtilSigCHLD,  kVSFSysUtilSigPIPE,  kVSFSysUtilSigURG,  kVSFSysUtilSigHUP};enum EVSFSysUtilInterruptContext{  kVSFSysUtilUnknown,  kVSFSysUtilIO};typedef void (*vsf_sighandle_t)(void*);typedef void (*vsf_async_sighandle_t)(int);typedef void (*vsf_context_io_t)(int, int, void*);void vsf_sysutil_install_null_sighandler(const enum EVSFSysUtilSignal sig);void vsf_sysutil_install_sighandler(const enum EVSFSysUtilSignal,                                    vsf_sighandle_t handler, void* p_private);void vsf_sysutil_install_async_sighandler(const enum EVSFSysUtilSignal sig,                                          vsf_async_sighandle_t handler);void vsf_sysutil_default_sig(const enum EVSFSysUtilSignal sig);void vsf_sysutil_install_io_handler(vsf_context_io_t handler, void* p_private);void vsf_sysutil_uninstall_io_handler(void);void vsf_sysutil_check_pending_actions(  const enum EVSFSysUtilInterruptContext context, int retval, int fd);void vsf_sysutil_block_sig(const enum EVSFSysUtilSignal sig);void vsf_sysutil_unblock_sig(const enum EVSFSysUtilSignal sig);/* Alarm setting/clearing utility functions */void vsf_sysutil_set_alarm(const unsigned int trigger_seconds);void vsf_sysutil_clear_alarm(void);/* Directory related things */char* vsf_sysutil_getcwd(char* p_dest, const unsigned int buf_size);int vsf_sysutil_mkdir(const char* p_dirname, const unsigned int mode);int vsf_sysutil_rmdir(const char* p_dirname);int vsf_sysutil_chdir(const char* p_dirname);int vsf_sysutil_rename(const char* p_from, const char* p_to);struct vsf_sysutil_dir;struct vsf_sysutil_dir* vsf_sysutil_opendir(const char* p_dirname);void vsf_sysutil_closedir(struct vsf_sysutil_dir* p_dir);const char* vsf_sysutil_next_dirent(struct vsf_sysutil_dir* p_dir);/* File create/open/close etc. */enum EVSFSysUtilOpenMode{  kVSFSysUtilOpenReadOnly = 1,  kVSFSysUtilOpenWriteOnly,  kVSFSysUtilOpenReadWrite};int vsf_sysutil_open_file(const char* p_filename,                          const enum EVSFSysUtilOpenMode);/* Fails if file already exists */int vsf_sysutil_create_file(const char* p_filename);/* Overwrites if file already exists */int vsf_sysutil_create_overwrite_file(const char* p_filename);/* Creates file or appends if already exists */int vsf_sysutil_create_append_file(const char* p_filename);/* Creates or appends */int vsf_sysutil_create_or_open_file(const char* p_filename, unsigned int mode);void vsf_sysutil_dupfd2(int old_fd, int new_fd);void vsf_sysutil_close(int fd);int vsf_sysutil_close_failok(int fd);int vsf_sysutil_unlink(const char* p_dead);int vsf_sysutil_write_access(const char* p_filename);/* Reading and writing */void vsf_sysutil_lseek_to(const int fd, filesize_t seek_pos);filesize_t vsf_sysutil_get_file_offset(const int file_fd);int vsf_sysutil_read(const int fd, void* p_buf, const unsigned int size);int vsf_sysutil_write(const int fd, const void* p_buf,                      const unsigned int size);/* Reading and writing, with handling of interrupted system calls and partial * reads/writes. Slightly more usable than the standard UNIX API! */int vsf_sysutil_read_loop(const int fd, void* p_buf, unsigned int size);int vsf_sysutil_write_loop(const int fd, const void* p_buf, unsigned int size);struct vsf_sysutil_statbuf;int vsf_sysutil_stat(const char* p_name, struct vsf_sysutil_statbuf** p_ptr);int vsf_sysutil_lstat(const char* p_name, struct vsf_sysutil_statbuf** p_ptr);void vsf_sysutil_fstat(int fd, struct vsf_sysutil_statbuf** p_ptr);void vsf_sysutil_dir_stat(const struct vsf_sysutil_dir* p_dir,                          struct vsf_sysutil_statbuf** p_ptr);int vsf_sysutil_statbuf_is_regfile(const struct vsf_sysutil_statbuf* p_stat);int vsf_sysutil_statbuf_is_symlink(const struct vsf_sysutil_statbuf* p_stat);int vsf_sysutil_statbuf_is_socket(const struct vsf_sysutil_statbuf* p_stat);int vsf_sysutil_statbuf_is_dir(const struct vsf_sysutil_statbuf* p_stat);filesize_t vsf_sysutil_statbuf_get_size(  const struct vsf_sysutil_statbuf* p_stat);const char* vsf_sysutil_statbuf_get_perms(  const struct vsf_sysutil_statbuf* p_stat);const char* vsf_sysutil_statbuf_get_date(  const struct vsf_sysutil_statbuf* p_stat, int use_localtime);const char* vsf_sysutil_statbuf_get_numeric_date(  const struct vsf_sysutil_statbuf* p_stat, int use_localtime);unsigned int vsf_sysutil_statbuf_get_links(  const struct vsf_sysutil_statbuf* p_stat);int vsf_sysutil_statbuf_get_uid(const struct vsf_sysutil_statbuf* p_stat);int vsf_sysutil_statbuf_get_gid(const struct vsf_sysutil_statbuf* p_stat);int vsf_sysutil_statbuf_is_readable_other(  const struct vsf_sysutil_statbuf* p_stat);const char* vsf_sysutil_statbuf_get_sortkey_mtime(  const struct vsf_sysutil_statbuf* p_stat);int vsf_sysutil_chmod(const char* p_filename, unsigned int mode);void vsf_sysutil_fchown(const int fd, const int uid, const int gid);void vsf_sysutil_fchmod(const int fd, unsigned int mode);int vsf_sysutil_readlink(const char* p_filename, char* p_dest,                         unsigned int bufsiz);/* Get / unget various locks. Lock gets are blocking. Write locks are * exclusive; read locks are shared. */int vsf_sysutil_lock_file_write(int fd);int vsf_sysutil_lock_file_read(int fd);void vsf_sysutil_unlock_file(int fd);/* Mapping/unmapping */enum EVSFSysUtilMapPermission{  kVSFSysUtilMapProtReadOnly = 1,  kVSFSysUtilMapProtNone};void vsf_sysutil_memprotect(void* p_addr, unsigned int len,                            const enum EVSFSysUtilMapPermission perm);void vsf_sysutil_memunmap(void* p_start, unsigned int length);/* Memory allocating/freeing */void* vsf_sysutil_malloc(unsigned int size);void* vsf_sysutil_realloc(void* p_ptr, unsigned int size);void vsf_sysutil_free(void* p_ptr);/* Process creation/exit/process handling */unsigned int vsf_sysutil_getpid(void);int vsf_sysutil_fork(void);int vsf_sysutil_fork_failok(void);void vsf_sysutil_exit(int exit_code);struct vsf_sysutil_wait_retval{  int PRIVATE_HANDS_OFF_syscall_retval;  int PRIVATE_HANDS_OFF_exit_status;};struct vsf_sysutil_wait_retval vsf_sysutil_wait(void);int vsf_sysutil_wait_reap_one(void);int vsf_sysutil_wait_get_retval(  const struct vsf_sysutil_wait_retval* p_waitret);int vsf_sysutil_wait_exited_normally(  const struct vsf_sysutil_wait_retval* p_waitret);int vsf_sysutil_wait_get_exitcode(  const struct vsf_sysutil_wait_retval* p_waitret);/* Various string functions */unsigned int vsf_sysutil_strlen(const char* p_text);char* vsf_sysutil_strdup(const char* p_str);void vsf_sysutil_memclr(void* p_dest, unsigned int size);void vsf_sysutil_memcpy(void* p_dest, const void* p_src,                        const unsigned int size);void vsf_sysutil_strcpy(char* p_dest, const char* p_src, unsigned int maxsize);int vsf_sysutil_memcmp(const void* p_src1, const void* p_src2,                       unsigned int size);int vsf_sysutil_strcmp(const char* p_src1, const char* p_src2);int vsf_sysutil_atoi(const char* p_str);filesize_t vsf_sysutil_a_to_filesize_t(const char* p_str);const char* vsf_sysutil_ulong_to_str(unsigned long the_ulong);const char* vsf_sysutil_filesize_t_to_str(filesize_t the_filesize);const char* vsf_sysutil_double_to_str(double the_double);const char* vsf_sysutil_uint_to_octal(unsigned int the_uint);unsigned int vsf_sysutil_octal_to_uint(const char* p_str);int vsf_sysutil_toupper(int the_char);int vsf_sysutil_isspace(int the_char);int vsf_sysutil_isprint(int the_char);int vsf_sysutil_isalnum(int the_char);int vsf_sysutil_isdigit(int the_char);/* Socket handling */struct vsf_sysutil_sockaddr;struct vsf_sysutil_socketpair_retval{  int socket_one;  int socket_two;};void vsf_sysutil_sockaddr_alloc(struct vsf_sysutil_sockaddr** p_sockptr);void vsf_sysutil_sockaddr_clear(struct vsf_sysutil_sockaddr** p_sockptr);void vsf_sysutil_sockaddr_alloc_ipv4(struct vsf_sysutil_sockaddr** p_sockptr);void vsf_sysutil_sockaddr_alloc_ipv6(struct vsf_sysutil_sockaddr** p_sockptr);void vsf_sysutil_sockaddr_clone(  struct vsf_sysutil_sockaddr** p_sockptr,  const struct vsf_sysutil_sockaddr* p_src);int vsf_sysutil_sockaddr_addr_equal(const struct vsf_sysutil_sockaddr* p1,                                    const struct vsf_sysutil_sockaddr* p2);int vsf_sysutil_sockaddr_is_ipv6(  const struct vsf_sysutil_sockaddr* p_sockaddr);void vsf_sysutil_sockaddr_set_ipv4addr(struct vsf_sysutil_sockaddr* p_sockptr,                                       const unsigned char* p_raw);void vsf_sysutil_sockaddr_set_ipv6addr(struct vsf_sysutil_sockaddr* p_sockptr,                                       const unsigned char* p_raw);void vsf_sysutil_sockaddr_set_any(struct vsf_sysutil_sockaddr* p_sockaddr);void vsf_sysutil_sockaddr_set_port(struct vsf_sysutil_sockaddr* p_sockptr,                                   unsigned short the_port);int vsf_sysutil_is_port_reserved(unsigned short port);int vsf_sysutil_get_ipsock(const struct vsf_sysutil_sockaddr* p_sockaddr);unsigned int vsf_sysutil_get_ipaddr_size(void);void* vsf_sysutil_sockaddr_get_raw_addr(  struct vsf_sysutil_sockaddr* p_sockaddr);const void* vsf_sysutil_sockaddr_ipv6_v4(  const struct vsf_sysutil_sockaddr* p_sockaddr);const void* vsf_sysutil_sockaddr_ipv4_v6(  const struct vsf_sysutil_sockaddr* p_sockaddr);int vsf_sysutil_get_ipv4_sock(void);int vsf_sysutil_get_ipv6_sock(void);struct vsf_sysutil_socketpair_retval  vsf_sysutil_unix_stream_socketpair(void);int vsf_sysutil_bind(int fd, const struct vsf_sysutil_sockaddr* p_sockptr);int vsf_sysutil_listen(int fd, const unsigned int backlog);void vsf_sysutil_getsockname(int fd, struct vsf_sysutil_sockaddr** p_sockptr);void vsf_sysutil_getpeername(int fd, struct vsf_sysutil_sockaddr** p_sockptr);int vsf_sysutil_accept_timeout(int fd, struct vsf_sysutil_sockaddr* p_sockaddr,                               unsigned int wait_seconds);int vsf_sysutil_connect_timeout(int fd,                                const struct vsf_sysutil_sockaddr* p_sockaddr,                                unsigned int wait_seconds);void vsf_sysutil_dns_resolve(struct vsf_sysutil_sockaddr** p_sockptr,                             const char* p_name);/* Option setting on sockets */void vsf_sysutil_activate_keepalive(int fd);void vsf_sysutil_set_iptos_throughput(int fd);void vsf_sysutil_activate_reuseaddr(int fd);void vsf_sysutil_set_nodelay(int fd);void vsf_sysutil_activate_sigurg(int fd);void vsf_sysutil_activate_oobinline(int fd);void vsf_sysutil_activate_linger(int fd);void vsf_sysutil_deactivate_linger_failok(int fd);void vsf_sysutil_activate_noblock(int fd);void vsf_sysutil_deactivate_noblock(int fd);/* This does SHUT_RDWR */void vsf_sysutil_shutdown_failok(int fd);/* And this does SHUT_RD */void vsf_sysutil_shutdown_read_failok(int fd);int vsf_sysutil_recv_peek(const int fd, void* p_buf, unsigned int len);const char* vsf_sysutil_inet_ntop(  const struct vsf_sysutil_sockaddr* p_sockptr);const char* vsf_sysutil_inet_ntoa(const void* p_raw_addr);int vsf_sysutil_inet_aton(  const char* p_text, struct vsf_sysutil_sockaddr* p_addr);/* User database queries etc. */struct vsf_sysutil_user;struct vsf_sysutil_group;struct vsf_sysutil_user* vsf_sysutil_getpwuid(const int uid);struct vsf_sysutil_user* vsf_sysutil_getpwnam(const char* p_user);const char* vsf_sysutil_user_getname(const struct vsf_sysutil_user* p_user);const char* vsf_sysutil_user_get_homedir(  const struct vsf_sysutil_user* p_user);int vsf_sysutil_user_getuid(const struct vsf_sysutil_user* p_user);int vsf_sysutil_user_getgid(const struct vsf_sysutil_user* p_user);struct vsf_sysutil_group* vsf_sysutil_getgrgid(const int gid);const char* vsf_sysutil_group_getname(const struct vsf_sysutil_group* p_group);/* More random things */unsigned int vsf_sysutil_getpagesize(void);unsigned char vsf_sysutil_get_random_byte(void);unsigned int vsf_sysutil_get_umask(void);void vsf_sysutil_set_umask(unsigned int umask);void vsf_sysutil_make_session_leader(void);void vsf_sysutil_tzset(void);const char* vsf_sysutil_get_current_date(void);void vsf_sysutil_qsort(void* p_base, unsigned int num_elem,                       unsigned int elem_size,                       int (*p_compar)(const void *, const void *));char* vsf_sysutil_getenv(const char* p_var);typedef void (*exitfunc_t)(void);void vsf_sysutil_set_exit_func(exitfunc_t exitfunc);/* Syslogging (bah) */void vsf_sysutil_openlog(void);void vsf_sysutil_syslog(const char* p_text, int severe);/* Credentials handling */int vsf_sysutil_running_as_root(void);void vsf_sysutil_setuid(const struct vsf_sysutil_user* p_user);void vsf_sysutil_setgid(const struct vsf_sysutil_user* p_user);void vsf_sysutil_setuid_numeric(int uid);void vsf_sysutil_setgid_numeric(int gid);int vsf_sysutil_geteuid(void);int vsf_sysutil_getegid(void);void vsf_sysutil_seteuid(const struct vsf_sysutil_user* p_user);void vsf_sysutil_setegid(const struct vsf_sysutil_user* p_user);void vsf_sysutil_seteuid_numeric(int uid);void vsf_sysutil_setegid_numeric(int gid);void vsf_sysutil_clear_supp_groups(void);void vsf_sysutil_initgroups(const struct vsf_sysutil_user* p_user);void vsf_sysutil_chroot(const char* p_root_path);/* Time handling */void vsf_sysutil_update_cached_time(void);long vsf_sysutil_get_cached_time_sec(void);long vsf_sysutil_get_cached_time_usec(void);long vsf_sysutil_parse_time(const char* p_text);void vsf_sysutil_sleep(double seconds);int vsf_sysutil_setmodtime(const char* p_file, long the_time, int is_localtime);#endif /* VSF_SYSUTIL_H */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产不卡| 久久中文娱乐网| 精品免费视频一区二区| 国产精品欧美精品| 污片在线观看一区二区 | 中文在线一区二区 | 91久久精品一区二区三| 欧美成人在线直播| 亚洲综合在线五月| 国产成人精品网址| 欧美成人伊人久久综合网| 亚洲精品乱码久久久久久| 国产在线播放一区二区三区| 在线日韩国产精品| 国产精品免费aⅴ片在线观看| 日韩国产成人精品| 欧美色涩在线第一页| 欧美国产激情一区二区三区蜜月| 日本va欧美va精品发布| 欧美无乱码久久久免费午夜一区 | 91精品国产麻豆国产自产在线 | 成人免费视频视频在线观看免费| 91精品国产色综合久久不卡蜜臀| 亚洲图片欧美激情| 成人小视频在线| 久久久99精品久久| 韩日av一区二区| 精品久久久久一区二区国产| 香蕉成人伊视频在线观看| 色www精品视频在线观看| 国产精品久久久久影视| 国产自产v一区二区三区c| 日韩欧美一区二区三区在线| 石原莉奈在线亚洲二区| 欧美日韩成人一区二区| 亚洲午夜精品久久久久久久久| 91丨porny丨户外露出| 国产精品久久久久久久久免费丝袜| 国产在线播放一区二区三区| 久久夜色精品国产噜噜av| 久久99日本精品| 久久久夜色精品亚洲| 韩国v欧美v日本v亚洲v| 精品国产制服丝袜高跟| 国产一区二区h| 国产日韩一级二级三级| www.亚洲色图.com| 亚洲图片你懂的| 欧美亚洲国产bt| 香蕉av福利精品导航| 日韩一区二区三区电影| 国产一区二区三区在线观看精品| 久久久久久免费| 99亚偷拍自图区亚洲| 亚洲另类色综合网站| 精品视频1区2区| 麻豆精品蜜桃视频网站| 国产亚洲精品福利| 91丨porny丨在线| 天天做天天摸天天爽国产一区| 91精品国产综合久久久久| 国产在线看一区| 国产精品久久久久久久午夜片| 91国内精品野花午夜精品| 日韩av网站免费在线| 亚洲午夜精品在线| 日韩免费成人网| caoporen国产精品视频| 日韩综合一区二区| 国产肉丝袜一区二区| 99免费精品在线观看| 亚洲国产精品麻豆| 国产欧美精品日韩区二区麻豆天美| 99re热视频这里只精品| 视频一区中文字幕| 欧美精彩视频一区二区三区| 91成人免费网站| 国产在线精品一区二区不卡了| 国产精品嫩草影院av蜜臀| 欧美日韩国产片| 国产精品一品二品| 亚洲成人动漫在线免费观看| 2020国产精品| 欧美中文字幕久久| 国产 欧美在线| 日韩精品成人一区二区三区 | 久久亚洲精品国产精品紫薇| 色综合天天综合在线视频| 久久99精品一区二区三区三区| 中文字幕亚洲精品在线观看| 日韩一级黄色大片| 欧洲生活片亚洲生活在线观看| 九色porny丨国产精品| 亚洲.国产.中文慕字在线| 国产精品久久久久久久午夜片| 日韩一区二区三区电影在线观看 | 亚洲欧美一区二区不卡| 久久伊人蜜桃av一区二区| 欧美日本国产视频| 色综合久久久久久久久| 欧美一卡2卡3卡4卡| 91啪亚洲精品| 国产成人一级电影| 激情文学综合丁香| 视频一区在线播放| 亚洲国产视频网站| 亚洲欧美日本韩国| 亚洲欧美激情小说另类| 国产精品网站在线播放| 国产欧美一区二区精品婷婷| 日韩欧美激情一区| 欧美一级黄色片| 日韩一区二区三免费高清| 欧美精品色一区二区三区| 欧美日韩亚洲综合一区二区三区| 91一区二区三区在线观看| 成人h动漫精品| 成人妖精视频yjsp地址| 懂色av一区二区三区蜜臀| 国产黑丝在线一区二区三区| 国产精品亚洲а∨天堂免在线| 国产在线视频一区二区| 国产乱人伦偷精品视频不卡| 国内精品写真在线观看| 精品一区二区免费在线观看| 国内精品免费**视频| 国产一区在线观看视频| 国产精品一区二区果冻传媒| 国产成人av一区二区三区在线| 国产成人亚洲综合色影视| 粉嫩av一区二区三区粉嫩| 成人sese在线| 日本丶国产丶欧美色综合| 欧美日韩欧美一区二区| 日韩女优电影在线观看| 久久免费看少妇高潮| 国产精品午夜久久| 亚洲影院理伦片| 日本成人中文字幕在线视频 | 欧美日韩精品高清| 91精品视频网| wwwwxxxxx欧美| 国产精品午夜在线| 一区二区三区中文字幕电影| 天天综合色天天综合| 老司机免费视频一区二区| 国产成人精品综合在线观看| 91猫先生在线| 88在线观看91蜜桃国自产| 久久蜜桃av一区精品变态类天堂| 中文字幕免费观看一区| 亚洲图片欧美视频| 国产一区不卡精品| 91美女福利视频| 日韩午夜精品电影| 中文字幕一区二区三区在线不卡| 一区二区三国产精华液| 精品亚洲国产成人av制服丝袜| 成人美女在线视频| 欧美乱妇一区二区三区不卡视频| 久久一留热品黄| 亚洲18色成人| 成人国产精品免费观看动漫| 欧美日本在线视频| 亚洲国产岛国毛片在线| 天天色图综合网| 91在线码无精品| 精品成人a区在线观看| 亚洲综合久久久| 成人丝袜视频网| 精品国产乱码久久久久久免费| 亚洲日本乱码在线观看| 精品一区二区三区免费毛片爱| 在线看不卡av| 国产精品久久久久久妇女6080| 免费日韩伦理电影| 欧美午夜精品一区二区三区| 亚洲综合色成人| 99久久久国产精品| 欧美精品一区二区三区蜜桃视频| 亚洲一卡二卡三卡四卡无卡久久| 风间由美中文字幕在线看视频国产欧美 | 亚洲精品在线网站| 亚洲成人激情自拍| 色婷婷精品久久二区二区蜜臀av| 久久久久高清精品| 精品一区二区三区在线观看| 欧美日韩视频第一区| 亚洲精品少妇30p| 北岛玲一区二区三区四区| 久久久国产精品不卡| 久久99久国产精品黄毛片色诱| 欧美日韩成人在线一区| 一个色综合网站| 色综合久久66| 日韩理论片网站| 91久久香蕉国产日韩欧美9色| 亚洲国产成人自拍| eeuss鲁片一区二区三区在线看| 国产亚洲欧美中文|