Having issues compiling this on FreeBSD 11.3
make
c++ -O3 -Wall -O2 -pipe -DBSD *.cpp -lpcap -lstdc++ -o pcapsipdump
pcapsipdump.cpp:474:75: error: use of undeclared identifier 'IPPROTO_FRAGMENT'
} else if (header_ip->version == 6 && header_ipv6->nexthdr == IPPROTO_FRAGMENT &&
^
pcapsipdump.cpp:503:44: error: use of undeclared identifier 'IPPROTO_FRAGMENT'
header_ipv6->nexthdr == IPPROTO_FRAGMENT &&
^
pcapsipdump.cpp:524:87: error: use of undeclared identifier 'IPPROTO_FRAGMENT'
int extra_len = (header_ipv6->version == 6 && header_ipv6->nexthdr == IPPROTO_FRAGMENT) ? 8 : 0;
^
pcapsipdump.cpp:531:73: error: use of undeclared identifier 'IPPROTO_FRAGMENT'
(header_ip->version == 6 && header_ipv6->nexthdr == IPPROTO_FRAGMENT &&
^
pcapsipdump.cpp:660:80: error: use of undeclared identifier 'IPPROTO_FRAGMENT'
if (header_ip->version == 6 && header_ipv6->nexthdr == IPPROTO_FRAGMENT){
^
5 errors generated.
*** Error code 1
Stop.
make: stopped in /usr/home/lexx/pcapsipdump-code
Fixed with
#include <netinet/in.h>Last edit: Alex Rozhnovskiy 2020-11-26