ring_tx: handle EINTR from sendto
[netsniff-ng-new.git] / ipv4.h
blob7004813466820a7c5fd0abf3ac61d492180a1b7b
1 #ifndef IPV4_H
2 #define IPV4_H
4 #include <asm/byteorder.h>
6 #include "built_in.h"
8 struct ipv4hdr {
9 #if defined(__LITTLE_ENDIAN_BITFIELD)
10 __extension__ uint8_t h_ihl:4,
11 h_version:4;
12 #elif defined (__BIG_ENDIAN_BITFIELD)
13 __extension__ uint8_t h_version:4,
14 h_ihl:4;
15 #else
16 # error "Please fix <asm/byteorder.h>"
17 #endif
18 uint8_t h_tos;
19 uint16_t h_tot_len;
20 uint16_t h_id;
21 uint16_t h_frag_off;
22 uint8_t h_ttl;
23 uint8_t h_protocol;
24 uint16_t h_check;
25 uint32_t h_saddr;
26 uint32_t h_daddr;
27 } __packed;
29 #endif /* IPV4_H */