This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
common-tools-tcpdump-mesa/mesa_pkt_dump.h

47 lines
1.3 KiB
C
Raw Normal View History

2018-10-18 11:10:50 +08:00
#ifndef _MESA_PKT_DUMP_H_
#define _MESA_PKT_DUMP_H_ 1
#define MESA_PKT_DUM_H_VER (20181115)
2018-10-18 11:10:50 +08:00
/*
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>DPDK-3.0, PFRINGģʽ<EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ, ͨ<EFBFBD><EFBFBD>ƽ̨ʵʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
*/
#define PKT_DUMP_HDR_MAGIC (0x44554D50) /* 'MESA' */
enum pkt_dump_opt_t{
PKT_DUMP_OPT_RCV_PORT,
PKT_DUMP_OPT_BPF_FILTER,
PKT_DUMP_OPT_DATA_OFFSET,
PKT_DUMP_OPT_THREAD_INDEX,
PKT_DUMP_OPT_ACK, /* sapp<70><70><EFBFBD>ظ<EFBFBD>tcpdump_mesa<73><61>ack<63><6B> */
PKT_DUMP_OPT_PERCEPTIVE, /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ, <20><><EFBFBD>Է<EFBFBD><D4B7>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
PKT_DUMP_OPT_GREEDY_SEEK, /* ƫ<>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ڲ<EFBFBD>IP, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3>²<EFBFBD><C2B2><EFBFBD>BUG */
2018-10-18 11:10:50 +08:00
};
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>ARM, PowerPC, MIPS<50><53><EFBFBD><EFBFBD>ֲ */
struct pkt_dump_opt{
unsigned short opt_type;
unsigned short opt_len;
/* actual opt value */
}__attribute__((packed, aligned(1)));
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>ARM, PowerPC, MIPS<50><53><EFBFBD><EFBFBD>ֲ */
struct pkt_dump_handshake{
unsigned int magic; /* <20>̶<EFBFBD>Ϊ0x44554D50, 'DUMP' */
unsigned int version; /* <20><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>˫<EFBFBD><CBAB><EFBFBD>İ汾<C4B0><E6B1BE>, һ<><D2BB>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>20170106<30><36> */
unsigned int opt_num; /* <20><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><EFBFBD>˽<EFBFBD><CBBD>ն˿ں<CBBF>, BPF<50><46><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD>offsetֵ<74>ȵ<EFBFBD> */
}__attribute__((packed, aligned(1)));
struct perceptive_info{
unsigned char thread_id;
unsigned char pad;
unsigned int pkt_seq; /* <20><>0<EFBFBD><30>ʼ<EFBFBD>ۼ<EFBFBD>, <20><><EFBFBD><EFBFBD>seq<65>пն<D0BF>, ˵<><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>˶<EFBFBD><CBB6>ٰ<EFBFBD> */
}__attribute__((packed, aligned(1)));
#endif