9 #include "trafgen_proto.h"
11 #define PROTO_MAX_LAYERS 16
26 uint8_t min
, max
, inc
, val
;
43 struct proto_hdr
*headers
[PROTO_MAX_LAYERS
];
45 struct timespec tstamp
;
52 struct randomizer
*rnd
;
56 struct proto_field
**fields
;
60 static inline bool packet_dyn_has_elems(struct packet_dyn
*p
)
62 return (p
->clen
|| p
->rlen
|| p
->slen
);
65 static inline bool packet_dyn_has_only_csums(struct packet_dyn
*p
)
67 return (p
->clen
== 0 && p
->rlen
== 0 && p
->slen
);
70 static inline bool packet_dyn_has_fields(struct packet_dyn
*p
)
75 extern void compile_packets_str(char *str
, bool verbose
, unsigned int cpu
);
76 extern void compile_packets(char *file
, bool verbose
, unsigned int cpu
,
77 bool invoke_cpp
, char *const cpp_argv
[]);
78 extern void cleanup_packets(void);
80 extern void set_fill(uint8_t val
, size_t len
);
82 extern struct packet
*current_packet(void);
83 extern uint32_t current_packet_id(void);
84 extern struct packet
*packet_get(uint32_t id
);
85 extern struct packet
*realloc_packet(void);
87 #endif /* TRAFGEN_CONF */