serial.h
来自「基于linux下的故障录波前置程序」· C头文件 代码 · 共 148 行
H
148 行
#ifndef _Serial_H_
#define _Serial_H_
#include"Global.h"
#define BUILD "30"
#define STD_BUF 1024
#define RF_ANY_SIP 0x01
#define RF_ANY_DIP 0x02
#define RF_ANY_SP 0x04
#define RF_ANY_DP 0x10
#define RF_ANY_FLAGS 0x20
#define MAX_PIDFILE_SUFFIX 11 /* uniqueness extension to PID file, see '-R' */
#ifndef WIN32
#define PRINT_INTERFACE(i) i
#else
#define PRINT_INTERFACE(i) print_interface(i)
#endif
typedef struct _progvars
{
int stateful;
int line_buffer_flag;
int checksums_mode;
int assurance_mode;
int max_pattern;
int test_mode_flag;
int alert_interface_flag;
int verbose_bytedump_flag;
int obfuscation_flag;
int log_cmd_override;
int alert_cmd_override;
int char_data_flag;
int data_flag;
int verbose_flag;
int readmode_flag;
int show2hdr_flag;
int showwifimgmt_flag;
#ifdef WIN32
int syslog_remote_flag;
char syslog_server[STD_BUF];
int syslog_server_port;
#ifdef ENABLE_WIN32_SERVICE
int terminate_service_flag;
int pause_service_flag;
#endif /* ENABLE_WIN32_SERVICE */
#endif /* WIN32 */
int promisc_flag;
int rules_order_flag;
int track_flag;
int daemon_flag;
int quiet_flag;
int pkt_cnt;
int pkt_snaplen;
u_long homenet;
u_long netmask;
u_int32_t obfuscation_net;
u_int32_t obfuscation_mask;
int alert_mode;
int log_plugin_active;
int alert_plugin_active;
u_int32_t log_bitmap;
char pid_filename[STD_BUF];
char *config_file;
char *config_dir;
char *log_dir;
char readfile[STD_BUF];
char pid_path[STD_BUF];
char *interface;
char *pcap_cmd;
char *alert_filename;
char *binLogFile;
int use_utc;
int include_year;
char *chroot_dir;
u_int8_t min_ttl;
u_int8_t log_mode;
int num_rule_types;
char pidfile_suffix[MAX_PIDFILE_SUFFIX+1]; /* room for a null */
DecoderFlags decoder_flags; /* if decode.c alerts are going to be enabled */
#ifdef NEW_DECODER
char *daq_method;
char *interface_list[MAX_IFS];
int interface_count;
char *pcap_filename;
char *daq_filter_string;
#endif // NEW_DECODER
} PV;
/* struct to collect packet statistics */
class Packet_Rec
{
public:
unsigned char* packet;
Packet_Rec* next;
Packet_Rec* pre;
int length;
} ;
/* G L O B A L S ************************************************************/
/* program vars (command line args) */
extern int datalink; /* the datalink value */
extern char *progname; /* name of the program (from argv[0]) */
extern char **progargs;
extern char *username;
extern char *groupname;
extern unsigned long userid;
extern unsigned long groupid;
extern struct passwd *pw;
extern struct group *gr;
extern char *pcap_cmd; /* the BPF command string */
extern char *pktidx; /* index ptr for the current packet */
/* backwards compatibility */
extern FILE *alert; /* alert file ptr */
extern FILE *binlog_ptr; /* binary log file ptr */
extern int flow; /* flow var (probably obsolete) */
extern int thiszone; /* time zone info */
extern u_long netmasks[33]; /* precalculated netmask array */
extern struct pcap_pkthdr *g_pkthdr; /* packet header ptr */
extern u_char *g_pkt; /* ptr to the packet data */
extern u_long g_caplen; /* length of the current packet */
extern char *protocol_names[256];
typedef void (*grinder_t)(Packet *, struct pcap_pkthdr *, u_char *); /* ptr to the packet processor */
int InitSerial(UBYTE netid);
int OpenPcap();
void ProcessLoop(void );
void ProcessData_Bak(void );
void ProcessNsData(void );
void DefineIfaceVar(char *,u_char *, u_char *);
void send_packet(UBYTE sendbuf,int length,int e);
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?