cleanup.h
来自「Firestorm NIDS是一个性能非常高的网络入侵检测系统 (NIDS)。目」· C头文件 代码 · 共 45 行
H
45 行
#ifndef __CLEANUP_HEADER_INCLUDED__#define __CLEANUP_HEADER_INCLUDED__#include <errno.h>#include <unistd.h>#include <stdlib.h>#include <stdio.h>#define EXIT_OK 0#define EXIT_ERR 1#define EXIT_DBG 2/* A cleanup callback handler */typedef void(*proc_cleanup)(int, void *);/* What to call to actually exit */typedef void(*proc_exit)(int);/* Cleanup list element */struct clean_list { struct clean_list *next; proc_cleanup cleanup; void *priv;};/* Static inline functions */static inline const char *get_nerr(int num) { return (num>=sys_nerr) ? "[unknown error]" : sys_errlist[num];}static inline const char *get_err(void){return get_nerr(errno);}/* Cleanup API */void cleanup_exit_func(proc_exit);void cleanup(int, const char *, ...);void cleanup_add(proc_cleanup, void *);void cleanup_final(proc_cleanup, void *);/* Cleanup helper macros */#define cperror(x) \ cleanup(EXIT_ERR, "%s(): " x "(): %s", __FUNCTION__, get_err());#endif /* __CLEANUP_HEADER_INCLUDED__ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?