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