⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ftlib.h

📁 netflow,抓包
💻 H
📖 第 1 页 / 共 5 页
字号:
#define FT_XFIELD_DST_AS          0x0000000008000000LL#define FT_XFIELD_IN_ENCAPS       0x0000000010000000LL#define FT_XFIELD_OUT_ENCAPS      0x0000000020000000LL#define FT_XFIELD_PEER_NEXTHOP    0x0000000040000000LL#define FT_XFIELD_ROUTER_SC       0x0000000080000000LL#define FT_XFIELD_EXTRA_PKTS      0x0000000100000000LL#define FT_XFIELD_MARKED_TOS      0x0000000200000000LL#define FT_XFIELD_SRC_TAG         0x0000000400000000LL#define FT_XFIELD_DST_TAG         0x0000000800000000LL#define FT_XFIELD_V1_MASK         0x0000000000FF31EFLL#define FT_XFIELD_V5_MASK         0x000000000FFF37EFLL#define FT_XFIELD_V6_MASK         0x000000007FFF37EFLL#define FT_XFIELD_V7_MASK         0x000000008FFF37EFLL#define FT_XFIELD_V8_1_MASK       0x000000000C0607FFLL#define FT_XFIELD_V8_2_MASK       0x00000000003807FFLL#define FT_XFIELD_V8_3_MASK       0x00000000050217FFLL#define FT_XFIELD_V8_4_MASK       0x000000000A0427FFLL#define FT_XFIELD_V8_5_MASK       0x000000000F0637FFLL#define FT_XFIELD_V8_6_MASK       0x00000003804427EFLL#define FT_XFIELD_V8_7_MASK       0x00000003804637EFLL#define FT_XFIELD_V8_8_MASK       0x00000003807E37EFLL#define FT_XFIELD_V8_9_MASK       0x000000000C4607FFLL#define FT_XFIELD_V8_10_MASK      0x00000000007807FFLL#define FT_XFIELD_V8_11_MASK      0x00000000054217FFLL#define FT_XFIELD_V8_12_MASK      0x000000000A4427FFLL#define FT_XFIELD_V8_13_MASK      0x000000000F4637FFLL#define FT_XFIELD_V8_14_MASK      0x00000000037E37FFLL#define FT_XFIELD_V1005_MASK      0x0000000C0FFF37EFLL#define FT_XFIELD_TAGGING_MASK    0x000000000FFF37EFLL#define FT_XFIELD_ASC_UNIX_SECS "unix_secs"#define FT_XFIELD_ASC_UNIX_NSECS "unix_nsecs"#define FT_XFIELD_ASC_SYSUPTIME "sysuptime"#define FT_XFIELD_ASC_EXADDR "exaddr"#define FT_XFIELD_ASC_DFLOWS "dflows"#define FT_XFIELD_ASC_DPKTS "dpkts"#define FT_XFIELD_ASC_DOCTETS "doctets"#define FT_XFIELD_ASC_FIRST "first"#define FT_XFIELD_ASC_LAST "last"#define FT_XFIELD_ASC_ENGINE_TYPE "engine_type"#define FT_XFIELD_ASC_ENGINE_ID "engine_id"#define FT_XFIELD_ASC_SRCADDR "srcaddr"#define FT_XFIELD_ASC_DSTADDR "dstaddr"#define FT_XFIELD_ASC_NEXTHOP "nexthop"#define FT_XFIELD_ASC_INPUT "input"#define FT_XFIELD_ASC_OUTPUT "output"#define FT_XFIELD_ASC_SRCPORT "srcport"#define FT_XFIELD_ASC_DSTPORT "dstport"#define FT_XFIELD_ASC_PROT "prot"#define FT_XFIELD_ASC_TOS "tos"#define FT_XFIELD_ASC_TCP_FLAGS "tcp_flags"#define FT_XFIELD_ASC_SRC_MASK "src_mask"#define FT_XFIELD_ASC_DST_MASK "dst_mask"#define FT_XFIELD_ASC_SRC_AS "src_as"#define FT_XFIELD_ASC_DST_AS "dst_as"#define FT_XFIELD_ASC_IN_ENCAPS "in_encaps"#define FT_XFIELD_ASC_OUT_ENCAPS "out_encaps"#define FT_XFIELD_ASC_PEER_NEXTHOP "peer_nexthop"#define FT_XFIELD_ASC_ROUTER_SC "router_sc"#define FT_XFIELD_ASC_MARKED_TOS "marked_tos"#define FT_XFIELD_ASC_EXTRA_PKTS "extra_pkts"#define FT_XFIELD_ASC_SRC_TAG "src_tag"#define FT_XFIELD_ASC_DST_TAG "dst_tag"struct ftipmask {  u_int32 src_mask;  u_int32 dst_mask;  u_int32 mcast_mask;  u_int32 mcast_val;};struct fttlv {  u_int16 t, l;         /* type, length */  char *v;              /* value */};struct ftprof {  struct timeval  t0;   /* start time */  struct timeval  t1;   /* end time */  struct rusage r0;     /* system resources used */  u_int64 nflows;       /* total # of flows processed */};struct ftset {  int byte_order;  int z_level;  char *hostname;  char *comments;  char hnbuf[FT_HOSTNAME_LEN];  u_int16 as_sub;};struct fttime {  u_int32 secs;  u_int32 msecs;};struct ftver {  u_int8 s_version;  u_int8 agg_version;  u_int8 agg_method;  u_int8 set;  u_int16 d_version;};struct ftdecode {  char buf[FT_IO_MAXDECODE]; /* buffer PDU decoded into - num records */  int count;                 /* number of stream records */  int rec_size;              /* size of stream record */  int byte_order;            /* byte order to decode to */  u_int32 exporter_ip;       /* ip address of exporter */  u_int16 as_sub;            /* replace AS0 with this */};struct ftencode {  char buf[FT_IO_MAXENCODE]; /* buffer stream encodes into */  char *buf_enc;             /* actual encode buffer, will not be &buf if                                FT_ENC_FLAGS_IPHDR is set */  int buf_size;              /* bytes used in buf_enc */  struct ftver ver;          /* version of stream encoding */  u_int32 seq_next[65536];   /* sequence number for each engine_type & id */  int flags;                 /* FT_ENC_FLAGS */  int d_sum;                 /* data checksum for buf_enc */};struct ftpdu {  char buf[FT_RCV_BUFSIZE];  /* raw packet */  int bused;                 /* length of buf used */  struct ftver ftv;          /* version of PDU */  struct ftdecode ftd;       /* decoded records */  int (*decodef)             /* decode function */    (struct ftpdu *ftpdu);};struct ftseq {  u_int32 seq[65536];        /* sequence number for each engine_type & id */  u_int8 seq_set[65536];     /* initial sequence number received? */  u_int32 seq_rcv, seq_exp,          seq_lost;          /* sequence # received / expecting / lost */};struct ftheader_gen {  u_int8  magic1;                 /* 0xCF */  u_int8  magic2;                 /* 0x10 (cisco flow) */  u_int8  byte_order;             /* 1 for little endian (VAX) */                                  /* 2 for big endian (Motorolla) */  u_int8  s_version;              /* flow stream format version 1 or 3 */};struct ftnet {  struct sockaddr_in loc_addr;    /* local side */  struct sockaddr_in rem_addr;    /* remote side (exporter) */  u_int32 loc_ip;                 /* local IP */  u_int32 rem_ip;                 /* remote IP */  u_int16 dst_port;               /* exporter UDP destination port */  int fd;                         /* fd receiving flows on */  struct mymsghdr msg;            /* recvmsg data */  struct {    struct cmsghdr hdr;#ifdef IP_RECVDSTADDR    struct in_addr ip;#else#ifdef IP_PKTINFO    struct in_pktinfo pktinfo;#endif /* else */#endif /* IP RECVDSTADDR */  } msgip;  struct iovec iov[1];            /* msg buffer */};struct ftmap_ifalias {  u_int32 ip;  u_int16 entries;  u_int16 *ifIndex_list;  char *name;  FT_LIST_ENTRY (ftmap_ifalias) chain;};struct ftmap_ifname {  u_int32 ip;  u_int16 ifIndex;  char *name;  FT_LIST_ENTRY (ftmap_ifname) chain;};struct ftmap {  FT_LIST_HEAD(ftmap_ifaliash, ftmap_ifalias) ifalias;  FT_LIST_HEAD(ftmap_ifnameh, ftmap_ifname) ifname;};#define FT_TAG_TYPE_MATCH_SRC_AS         0x1#define FT_TAG_TYPE_MATCH_DST_AS         0x2#define FT_TAG_TYPE_MATCH_AS             0x3#define FT_TAG_TYPE_MATCH_TOS            0x4    #define FT_TAG_TYPE_MATCH_SRC_PREFIX     0x10#define FT_TAG_TYPE_MATCH_DST_PREFIX     0x20#define FT_TAG_TYPE_MATCH_PREFIX         0x30#define FT_TAG_TYPE_MATCH_ANY            0x40#define FT_TAG_TYPE_MATCH_SRC_TCP_PORT   0x100#define FT_TAG_TYPE_MATCH_DST_TCP_PORT   0x200#define FT_TAG_TYPE_MATCH_TCP_PORT       0x300#define FT_TAG_TYPE_MATCH_SRC_UDP_PORT   0x1000#define FT_TAG_TYPE_MATCH_DST_UDP_PORT   0x2000#define FT_TAG_TYPE_MATCH_UDP_PORT       0x3000#define FT_TAG_DEF_FILTER_EXPORTER     0x1#define FT_TAG_DEF_FILTER_INPUT        0x2#define FT_TAG_DEF_FILTER_OUTPUT       0x4#define FT_TAG_DEF_ACTIVE_DEFAULT      0x8  /* default_defs list is not empty */#define FT_TAG_DEF_ACTIVE_HASH         0x10 /* exp_hash is not empty */#define FT_TAG_TYPE_MATCH_NEXTHOP      0x100 #define FT_TAG_SET_DST_TAG             0x101#define FT_TAG_SET_SRC_TAG             0x202#define FT_TAG_SET_TAG                 0x303#define FT_TAG_OR_DST_TAG              0x110#define FT_TAG_OR_SRC_TAG              0x220#define FT_TAG_OR_TAG                  0x330struct fttag {  FT_SLIST_HEAD(defshead, fttag_def) defs; /* list of definitions */  FT_SLIST_HEAD(acthead, fttag_action) actions; /* list of actions */  int flags;};struct fttag_prefix_look {  struct radix_node rt_nodes[2]; /* radix tree glue */  struct radix_sockaddr_in addr;  u_int8 masklen;  u_int16 set_flags;  u_int32 src_tag;  u_int32 dst_tag;};struct fttag_as_look {  u_int16 set_flags_lookup[65536];  u_int32 src_tag_lookup[65536];  u_int32 dst_tag_lookup[65536];};struct fttag_port_look {  u_int16 set_flags_lookup[65536];  u_int32 src_tag_lookup[65536];  u_int32 dst_tag_lookup[65536];};struct fttag_tos_look {  u_int16 set_flags_lookup[256];  u_int32 src_tag_lookup[256];  u_int32 dst_tag_lookup[256];};struct fttag_any_look {  u_int16 set_flags;  u_int32 src_tag;  u_int32 dst_tag;};struct fttag_next_hop_look {  FT_SLIST_ENTRY(fttag_next_hop_look) chain;  u_int32 addr; /* key */  u_int16 set_flags;  u_int32 src_tag;  u_int32 dst_tag;};struct ftxfield_table {  char *name;  u_int64 val;};/* internal representation of header */struct ftiheader {  u_int32 size;                   /* size of header written */  u_int32 fields;                 /* decoded fields - FT_FIELD_* */  u_int8  magic1;                 /* 0xCF */  u_int8  magic2;                 /* 0xL0 (cisco flow) */  u_int8  byte_order;             /* 1 for little endian (VAX) */                                  /* 2 for big endian (Motorolla) */  u_int8  s_version;              /* flow stream format version 1 or 2 */  u_int16 d_version;              /* 1 or 5  - stream version 1 */                                  /* 1,5,7,8 - stream version 2 */  u_int8  agg_version;            /* v8 aggregation version */  u_int8  agg_method;             /* v8 aggregation method */  u_int32 exporter_ip;            /* IP address of exporter */  u_int32 cap_start;              /* start time of flow capture */  u_int32 cap_end;                /* end time of flow capture */  u_int32 flags;                  /* FT_HEADER_FLAG_* */  u_int32 rotation;               /* rotation schedule */  u_int32 flows_count;            /* # flows */  u_int32 flows_lost;             /* # lost flows */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -