diff --git a/prefab/packet_parsers/ipv4_packet.c b/prefab/packet_parsers/ipv4_packet.c index 0cd9f9f..ab76d68 100644 --- a/prefab/packet_parsers/ipv4_packet.c +++ b/prefab/packet_parsers/ipv4_packet.c @@ -77,11 +77,11 @@ void insert_ipv4_header(uint8_t *hdr, const PcktHeaderElement *headers) { FILL_ADVANCE(hdr, &ipProps->DSF, 1); FILL_WORD_H2N_ADVANCE(hdr, ipProps->TotalLength); FILL_WORD_H2N_ADVANCE(hdr, ipProps->Identification); - uint16_t flags_fragOffset = ((ipProps->Flags & 0x07) << 13) | (flags_fragOffset & ~(0x07 << 13)); + uint16_t flags_fragOffset = ((ipProps->Flags & 0x07) << 13) | (ipProps->FragmentOffset & ~(0x07 << 13)); FILL_ADVANCE(hdr, &ipProps->TTL, 1); FILL_ADVANCE(hdr, &ipProps->Protocol, 1); uint16_t checksum = ip_checksum(ipProps); FILL_WORD_H2N_ADVANCE(hdr, checksum); FILL_ADVANCE(hdr, &ipProps->SourceIPAddr, 4); FILL_ADVANCE(hdr, &ipProps->DestIPAddr, 4); -} \ No newline at end of file +} diff --git a/utils.h b/utils.h index 7bee598..88381aa 100644 --- a/utils.h +++ b/utils.h @@ -31,9 +31,8 @@ #define ntohs(a) htons((a)) #endif -#define ERROR(...) printf(__VA_ARGS__) -#define INFO(...) printf(__VA_ARGS__) -#define MSG(...) printf(__VA_ARGS__) +#define ERROR(...) MSG(__VA_ARGS__) +#define INFO(...) MSG(__VA_ARGS__) #define IPv4(a,b,c,d) ((a) | (b << 8) | (c << 16) | (d << 24)) #define PRINT_IPv4(ip) MSG("%u.%u.%u.%u", (ip & 0xFF), ((ip >> 8) & 0xFF), ((ip >> 16) & 0xFF), ((ip >> 24) & 0xFF))