00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 typedef struct {
00030 struct in_addr primary_address;
00031 u_int32_t index;
00032 struct hardware hw_address;
00033 char name [IFNAMSIZ];
00034 } trace_interface_packet_t;
00035
00036 typedef struct {
00037 u_int32_t index;
00038 struct iaddr from;
00039 u_int16_t from_port;
00040 struct hardware hfrom;
00041 u_int8_t havehfrom;
00042 } trace_inpacket_t;
00043
00044 typedef struct {
00045 u_int32_t index;
00046 struct iaddr from;
00047 struct iaddr to;
00048 u_int16_t to_port;
00049 struct hardware hto;
00050 u_int8_t havehto;
00051 } trace_outpacket_t;
00052
00053 void trace_interface_register (trace_type_t *, struct interface_info *);
00054 void trace_interface_input (trace_type_t *, unsigned, char *);
00055 void trace_interface_stop (trace_type_t *);
00056 void trace_inpacket_stash (struct interface_info *,
00057 struct dhcp_packet *, unsigned, unsigned int,
00058 struct iaddr, struct hardware *);
00059 void trace_inpacket_input (trace_type_t *, unsigned, char *);
00060 void trace_inpacket_stop (trace_type_t *);
00061 void trace_outpacket_input (trace_type_t *, unsigned, char *);
00062 void trace_outpacket_stop (trace_type_t *);
00063 ssize_t trace_packet_send (struct interface_info *,
00064 struct packet *, struct dhcp_packet *, size_t,
00065 struct in_addr,
00066 struct sockaddr_in *, struct hardware *);
00067 void trace_icmp_input_input (trace_type_t *, unsigned, char *);
00068 void trace_icmp_input_stop (trace_type_t *);
00069 void trace_icmp_output_input (trace_type_t *, unsigned, char *);
00070 void trace_icmp_output_stop (trace_type_t *);
00071 void trace_seed_stash (trace_type_t *, unsigned);
00072 void trace_seed_input (trace_type_t *, unsigned, char *);
00073 void trace_seed_stop (trace_type_t *);