+ case "${usergroup_phase}" in
+ local run_cmd
+ run_cmd=run_su
+ shift
+ run_su /opt/local/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/ipv6toolkit-1.4.1/work.log
+ su pbulk -c '"$@"' make /opt/local/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/ipv6toolkit-1.4.1/work.log
===> Building for ipv6toolkit-1.4.1
--- ipv6toolkit.conf ---
--- addr6 ---
--- flow6 ---
--- frag6 ---
--- addr6 ---
gcc -I/opt/local/include -I/usr/include -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/local/include -I/usr/include -Wall -o addr6 tools/addr6.c -lnsl -lsocket -L/opt/local/lib -Wl,-R/opt/local/lib -L/usr/lib/amd64 -Wl,-R/usr/lib/amd64 -lpcap -lm
--- ipv6toolkit.conf ---
echo "# SI6 Networks' IPv6 Toolkit Configuration File" >  data/ipv6toolkit.conf
echo OUI-Database=/opt/local/share/ipv6toolkit/oui.txt >>  data/ipv6toolkit.conf
--- flow6 ---
gcc -I/opt/local/include -I/usr/include -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/local/include -I/usr/include -Wall -o flow6 tools/flow6.c -lnsl -lsocket -L/opt/local/lib -Wl,-R/opt/local/lib -L/usr/lib/amd64 -Wl,-R/usr/lib/amd64 -lpcap -lm
--- icmp6 ---
--- frag6 ---
gcc -I/opt/local/include -I/usr/include -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/local/include -I/usr/include -Wall -o frag6 tools/frag6.c -lnsl -lsocket -L/opt/local/lib -Wl,-R/opt/local/lib -L/usr/lib/amd64 -Wl,-R/usr/lib/amd64 -lpcap -lm
--- icmp6 ---
gcc -I/opt/local/include -I/usr/include -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/local/include -I/usr/include -Wall -o icmp6 tools/icmp6.c -lnsl -lsocket -L/opt/local/lib -Wl,-R/opt/local/lib -L/usr/lib/amd64 -Wl,-R/usr/lib/amd64 -lpcap -lm
--- addr6 ---
In file included from tools/addr6.c:44:
tools/addr6.h:78:9: error: unknown type name 'u_int16_t'
   78 |         u_int16_t                       key_l;                  /* Low-order word of the hash key */
      |         ^~~~~~~~~
tools/addr6.h:79:9: error: unknown type name 'u_int16_t'
   79 |         u_int16_t                       key_h;                  /* High-order word of the hash key */
      |         ^~~~~~~~~
tools/addr6.c:51:1: warning: parameter names (without types) in function declaration
   51 | unsigned int                    is_service_port(u_int16_t);
      | ^~~~~~~~
tools/addr6.c:57:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
   57 | u_int16_t                               key(struct host_list *, struct in6_addr *);
      | ^~~~~~~~~
      | uint16_t
tools/addr6.c:61:63: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   61 | unsigned int                    match_ipv6(struct in6_addr *, u_int8_t *, unsigned int, struct in6_addr *);
      |                                                               ^~~~~~~~
      |                                                               uint8_t
tools/addr6.c:62:81: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   62 | void                                    sanitize_ipv6_prefix(struct in6_addr *, u_int8_t);
      |                                                                                 ^~~~~~~~
      |                                                                                 uint8_t
tools/addr6.c: In function 'main':
tools/addr6.c:86:9: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   86 |         u_int8_t                        blocklen[MAX_BLOCK];
      |         ^~~~~~~~
      |         uint8_t
tools/addr6.c:91:9: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   91 |         u_int8_t                        acceptlen[MAX_ACCEPT];
      |         ^~~~~~~~
      |         uint8_t
tools/addr6.c:207:33: warning: implicit declaration of function 'sanitize_ipv6_prefix' [-Wimplicit-function-declaration]
  207 |                                 sanitize_ipv6_prefix(&accept[naccept], acceptlen[naccept]);
      |                                 ^~~~~~~~~~~~~~~~~~~~
--- flow6 ---
In file included from tools/flow6.c:59:
tools/flow6.h:118:9: error: unknown type name 'u_int8_t'
  118 |         u_int8_t a[ETHER_ADDR_LEN];
      |         ^~~~~~~~
tools/flow6.h:124:3: error: unknown type name 'u_int32_t'
  124 |   u_int32_t     family; /* Protocol Family      */
      |   ^~~~~~~~~
tools/flow6.h:128:9: error: unknown type name 'u_int8_t'
  128 |         u_int8_t        type;
      |         ^~~~~~~~
tools/flow6.h:129:9: error: unknown type name 'u_int8_t'
  129 |         u_int8_t        length;
      |         ^~~~~~~~
tools/flow6.h:130:9: error: unknown type name 'u_int8_t'
  130 |         u_int8_t        address[6];
      |         ^~~~~~~~
tools/flow6.h:134:9: error: unknown type name 'u_int8_t'
  134 |         u_int8_t        type;
      |         ^~~~~~~~
tools/flow6.h:135:9: error: unknown type name 'u_int8_t'
  135 |         u_int8_t        length;
      |         ^~~~~~~~
tools/flow6.h:136:9: error: unknown type name 'u_int8_t'
  136 |         u_int8_t        address[6];
      |         ^~~~~~~~
tools/flow6.h:142:9: error: unknown type name 'u_int32_t'
  142 |         u_int32_t       len;
      |         ^~~~~~~~~
tools/flow6.h:143:9: error: unknown type name 'u_int8_t'
  143 |         u_int8_t zero[3];
      |         ^~~~~~~~
tools/flow6.h:144:9: error: unknown type name 'u_int8_t'
  144 |         u_int8_t        nh;
      |         ^~~~~~~~
tools/flow6.h:152:3: error: unknown type name 'u_int16_t'
  152 |   u_int16_t ether_type;         /* packet type ID field */
      |   ^~~~~~~~~
--- addr6 ---
tools/addr6.c:593:44: warning: implicit declaration of function 'match_ipv6' [-Wimplicit-function-declaration]
  593 |                                         if(match_ipv6(block, blocklen, nblock, &(addr.ip6))){
      |                                            ^~~~~~~~~~
tools/addr6.c: At top level:
tools/addr6.c:702:30: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  702 | unsigned int is_service_port(u_int16_t port){
      |                              ^~~~~~~~~
      |                              uint16_t
--- icmp6 ---
In file included from tools/icmp6.c:58:
tools/icmp6.h:85:3: error: unknown type name 'u_int8_t'
   85 |   u_int8_t a[ETHER_ADDR_LEN];
      |   ^~~~~~~~
--- addr6 ---
tools/addr6.c: In function 'decode_ipv6_address':
--- icmp6 ---
tools/icmp6.h:89:5: error: unknown type name 'u_int8_t'
   89 |     u_int8_t    type;
      |     ^~~~~~~~
tools/icmp6.h:90:5: error: unknown type name 'u_int8_t'
   90 |     u_int8_t    length;
      |     ^~~~~~~~
tools/icmp6.h:91:5: error: unknown type name 'u_int8_t'
   91 |     u_int8_t    address[6];
      |     ^~~~~~~~
tools/icmp6.h:95:5: error: unknown type name 'u_int8_t'
   95 |     u_int8_t    type;
      |     ^~~~~~~~
tools/icmp6.h:96:5: error: unknown type name 'u_int8_t'
   96 |     u_int8_t    length;
      |     ^~~~~~~~
tools/icmp6.h:97:5: error: unknown type name 'u_int8_t'
   97 |     u_int8_t    address[6];
      |     ^~~~~~~~
tools/icmp6.h:103:5: error: unknown type name 'u_int32_t'
  103 |     u_int32_t   len;
      |     ^~~~~~~~~
tools/icmp6.h:104:5: error: unknown type name 'u_int8_t'
  104 |     u_int8_t zero[3];
      |     ^~~~~~~~
tools/icmp6.h:105:5: error: unknown type name 'u_int8_t'
  105 |     u_int8_t    nh;
      |     ^~~~~~~~
tools/icmp6.h:113:3: error: unknown type name 'u_int16_t'
  113 |   u_int16_t ether_type;         /* packet type ID field */
      |   ^~~~~~~~~
tools/icmp6.h:119:3: error: unknown type name 'u_int32_t'
  119 |   u_int32_t     family; /* Protocol Family      */
      |   ^~~~~~~~~
--- addr6 ---
tools/addr6.c:748:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  748 |         u_int16_t       scope;
      |         ^~~~~~~~~
      |         uint16_t
tools/addr6.c:760:30: error: 'struct in6_addr' has no member named 's6_addr16'
  760 |                 if((addr->ip6.s6_addr16[0] & htons(0xff00)) == htons(0xff00)){
      |                              ^
tools/addr6.c:761:38: error: 'struct in6_addr' has no member named 's6_addr16'
  761 |                         if((addr->ip6.s6_addr16[0] & htons(0xfff0)) == htons(0xff00)){
      |                                      ^
--- flow6 ---
tools/flow6.c:78:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
   78 | u_int16_t                       in_chksum(void *, void *, size_t, u_int8_t);
      | ^~~~~~~~~
      | uint16_t
--- addr6 ---
tools/addr6.c:764:43: error: 'struct in6_addr' has no member named 's6_addr16'
  764 |                         else if((addr->ip6.s6_addr16[0] & htons(0xfff0)) == htons(0xff10)){
      |                                           ^
tools/addr6.c:767:43: error: 'struct in6_addr' has no member named 's6_addr16'
  767 |                         else if((addr->ip6.s6_addr16[0] & htons(0xfff0)) == htons(0xff20)){
      |                                           ^
--- flow6 ---
tools/flow6.c:78:67: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   78 | u_int16_t                       in_chksum(void *, void *, size_t, u_int8_t);
      |                                                                   ^~~~~~~~
      |                                                                   uint8_t
--- addr6 ---
tools/addr6.c:770:43: error: 'struct in6_addr' has no member named 's6_addr16'
  770 |                         else if((addr->ip6.s6_addr16[0] & htons(0xfff0)) == htons(0xff30)){
      |                                           ^
tools/addr6.c:773:43: error: 'struct in6_addr' has no member named 's6_addr16'
  773 |                         else if((addr->ip6.s6_addr16[0] & htons(0xfff0)) == htons(0xff40)){
      |                                           ^
--- icmp6 ---
tools/icmp6.c:77:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
   77 | u_int16_t                       in_chksum(void *, void *, size_t, u_int8_t);
      | ^~~~~~~~~
      | uint16_t
--- addr6 ---
tools/addr6.c:776:43: error: 'struct in6_addr' has no member named 's6_addr16'
  776 |                         else if((addr->ip6.s6_addr16[0] & htons(0xfff0)) == htons(0xff50)){
      |                                           ^
--- flow6 ---
tools/flow6.c:80:55: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   80 | unsigned int            match_ipv6(struct in6_addr *, u_int8_t *, unsigned int, struct in6_addr *);
      |                                                       ^~~~~~~~
      |                                                       uint8_t
--- addr6 ---
tools/addr6.c:779:43: error: 'struct in6_addr' has no member named 's6_addr16'
  779 |                         else if((addr->ip6.s6_addr16[0] & htons(0xfff0)) == htons(0xff60)){
      |                                           ^
tools/addr6.c:782:43: error: 'struct in6_addr' has no member named 's6_addr16'
  782 |                         else if((addr->ip6.s6_addr16[0] & htons(0xfff0)) == htons(0xff70)){
      |                                           ^
--- icmp6 ---
tools/icmp6.c:77:67: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   77 | u_int16_t                       in_chksum(void *, void *, size_t, u_int8_t);
      |                                                                   ^~~~~~~~
      |                                                                   uint8_t
--- flow6 ---
tools/flow6.c:82:73: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   82 | void                            sanitize_ipv6_prefix(struct in6_addr *, u_int8_t);
      |                                                                         ^~~~~~~~
      |                                                                         uint8_t
--- addr6 ---
tools/addr6.c:786:47: error: 'struct in6_addr' has no member named 's6_addr16'
  786 |                         scope= htons(addr->ip6.s6_addr16[0]) & 0x000f;
      |                                               ^
--- icmp6 ---
tools/icmp6.c:78:55: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   78 | unsigned int            match_ipv6(struct in6_addr *, u_int8_t *, unsigned int, struct in6_addr *);
      |                                                       ^~~~~~~~
      |                                                       uint8_t
--- flow6 ---
tools/flow6.c:83:91: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   83 | void                            randomize_ipv6_addr(struct in6_addr *, struct in6_addr *, u_int8_t);
      |                                                                                           ^~~~~~~~
      |                                                                                           uint8_t
--- addr6 ---
tools/addr6.c:868:43: error: 'struct in6_addr' has no member named 's6_addr16'
  868 |                         if(ntohs(addr->ip6.s6_addr16[4]) & 0x0300){
      |                                           ^
tools/addr6.c:871:48: error: 'struct in6_addr' has no member named 's6_addr16'
  871 |                         else if(ntohs(addr->ip6.s6_addr16[4]) & 0x3cff){
      |                                                ^
--- icmp6 ---
tools/icmp6.c:80:73: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   80 | void                            sanitize_ipv6_prefix(struct in6_addr *, u_int8_t);
      |                                                                         ^~~~~~~~
      |                                                                         uint8_t
--- flow6 ---
tools/flow6.c:99:57: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
   99 | int                                     predict_flow_id(u_int32_t *, unsigned int, u_int32_t *, unsigned int);
      |                                                         ^~~~~~~~~
      |                                                         uint32_t
--- addr6 ---
tools/addr6.c:887:39: error: 'struct in6_addr' has no member named 's6_addr32'
  887 |                         if( (addr->ip6.s6_addr32[2] & htonl(0x020000ff)) == htonl(0x020000ff) &&
      |                                       ^
tools/addr6.c:888:43: error: 'struct in6_addr' has no member named 's6_addr32'
  888 |                                 (addr->ip6.s6_addr32[3] & htonl(0xff000000)) == htonl(0xfe000000)){
      |                                           ^
--- icmp6 ---
tools/icmp6.c:81:91: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   81 | void                            randomize_ipv6_addr(struct in6_addr *, struct in6_addr *, u_int8_t);
      |                                                                                           ^~~~~~~~
      |                                                                                           uint8_t
--- flow6 ---
tools/flow6.c:99:84: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
   99 | int                                     predict_flow_id(u_int32_t *, unsigned int, u_int32_t *, unsigned int);
      |                                                                                    ^~~~~~~~~
      |                                                                                    uint32_t
--- addr6 ---
tools/addr6.c:890:67: error: 'struct in6_addr' has no member named 's6_addr32'
  890 |                                 addr->iidsubtype= (ntohl(addr->ip6.s6_addr32[2]) >> 8) & 0xfffdffff;
      |                                                                   ^
tools/addr6.c:892:43: error: 'struct in6_addr' has no member named 's6_addr32'
  892 |                         else if((addr->ip6.s6_addr32[2] & htonl(0xfdffffff)) == htonl(0x00005efe)){
      |                                           ^
tools/addr6.c:896:42: error: 'struct in6_addr' has no member named 's6_addr32'
  896 |                         else if(addr->ip6.s6_addr32[2] == 0 && (addr->ip6.s6_addr16[6] & htons(0xff00)) != 0 && addr->ip6.s6_addr16[7] != 0){
      |                                          ^
--- flow6 ---
tools/flow6.c:100:50: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  100 | int                                     inc_sdev(u_int32_t *, unsigned int, u_int32_t *, double *);
      |                                                  ^~~~~~~~~
      |                                                  uint32_t
--- addr6 ---
tools/addr6.c:896:74: error: 'struct in6_addr' has no member named 's6_addr16'
  896 |                         else if(addr->ip6.s6_addr32[2] == 0 && (addr->ip6.s6_addr16[6] & htons(0xff00)) != 0 && addr->ip6.s6_addr16[7] != 0){
      |                                                                          ^
--- icmp6 ---
tools/icmp6.c:107:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  107 | u_int8_t                        icmp6type=0, icmp6code=0;
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c:896:122: error: 'struct in6_addr' has no member named 's6_addr16'
  896 |                         else if(addr->ip6.s6_addr32[2] == 0 && (addr->ip6.s6_addr16[6] & htons(0xff00)) != 0 && addr->ip6.s6_addr16[7] != 0){
      |                                                                                                                          ^
tools/addr6.c:899:42: error: 'struct in6_addr' has no member named 's6_addr32'
  899 |                         else if(addr->ip6.s6_addr32[2] == 0 && \
      |                                          ^
--- flow6 ---
tools/flow6.c:100:77: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  100 | int                                     inc_sdev(u_int32_t *, unsigned int, u_int32_t *, double *);
      |                                                                             ^~~~~~~~~
      |                                                                             uint32_t
--- addr6 ---
tools/addr6.c:900:46: error: 'struct in6_addr' has no member named 's6_addr16'
  900 |                                   ((addr->ip6.s6_addr16[6] & htons(0xff00)) == 0 && is_service_port(ntohs(addr->ip6.s6_addr16[7])))){
      |                                              ^
--- icmp6 ---
tools/icmp6.c:108:1: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  108 | u_int32_t                       mtu, pointer;
      | ^~~~~~~~~
      | uint32_t
--- addr6 ---
tools/addr6.c:900:116: error: 'struct in6_addr' has no member named 's6_addr16'
  900 |                                   ((addr->ip6.s6_addr16[6] & htons(0xff00)) == 0 && is_service_port(ntohs(addr->ip6.s6_addr16[7])))){
      |                                                                                                                    ^
--- flow6 ---
tools/flow6.c:101:51: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  101 | void                            change_endianness(u_int32_t *, unsigned int);
      |                                                   ^~~~~~~~~
      |                                                   uint32_t
--- addr6 ---
tools/addr6.c:903:42: error: 'struct in6_addr' has no member named 's6_addr32'
  903 |                         else if(addr->ip6.s6_addr32[2] == 0 && \
      |                                          ^
tools/addr6.c:904:61: error: 'struct in6_addr' has no member named 's6_addr16'
  904 |                                                  ((addr->ip6.s6_addr16[7] & htons(0xff00)) == 0 && is_service_port(ntohs(addr->ip6.s6_addr16[6])))){
      |                                                             ^
--- icmp6 ---
tools/icmp6.c:109:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  109 | u_int16_t                       ip6length;
      | ^~~~~~~~~
      | uint16_t
--- addr6 ---
tools/addr6.c:904:131: error: 'struct in6_addr' has no member named 's6_addr16'
  904 |                                                  ((addr->ip6.s6_addr16[7] & htons(0xff00)) == 0 && is_service_port(ntohs(addr->ip6.s6_addr16[6])))){
      |                                                                                                                                   ^
tools/addr6.c:907:42: error: 'struct in6_addr' has no member named 's6_addr32'
  907 |                         else if(addr->ip6.s6_addr32[2] == 0 && (addr->ip6.s6_addr16[6] & htons(0xff00)) == 0 && addr->ip6.s6_addr16[7] != 0){
      |                                          ^
--- flow6 ---
tools/flow6.c:155:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  155 | u_int16_t                       mask, ip6length;
      | ^~~~~~~~~
      | uint16_t
--- addr6 ---
tools/addr6.c:907:74: error: 'struct in6_addr' has no member named 's6_addr16'
  907 |                         else if(addr->ip6.s6_addr32[2] == 0 && (addr->ip6.s6_addr16[6] & htons(0xff00)) == 0 && addr->ip6.s6_addr16[7] != 0){
      |                                                                          ^
tools/addr6.c:907:122: error: 'struct in6_addr' has no member named 's6_addr16'
  907 |                         else if(addr->ip6.s6_addr32[2] == 0 && (addr->ip6.s6_addr16[6] & htons(0xff00)) == 0 && addr->ip6.s6_addr16[7] != 0){
      |                                                                                                                          ^
--- icmp6 ---
tools/icmp6.c:113:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  113 | u_int16_t                       targetportl, targetporth, peerportl, peerporth, auxint16;
      | ^~~~~~~~~
      | uint16_t
--- addr6 ---
tools/addr6.c:910:49: error: 'struct in6_addr' has no member named 's6_addr16'
  910 |                         else if( ntohs(addr->ip6.s6_addr16[4]) <= 0x255 && ntohs(addr->ip6.s6_addr16[5]) <= 0x255 && \
      |                                                 ^
--- flow6 ---
tools/flow6.c:156:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  156 | u_int8_t                        hoplimit;
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c:910:91: error: 'struct in6_addr' has no member named 's6_addr16'
  910 |                         else if( ntohs(addr->ip6.s6_addr16[4]) <= 0x255 && ntohs(addr->ip6.s6_addr16[5]) <= 0x255 && \
      |                                                                                           ^
tools/addr6.c:911:56: error: 'struct in6_addr' has no member named 's6_addr16'
  911 |                                         ntohs(addr->ip6.s6_addr16[6]) <= 0x255 && ntohs(addr->ip6.s6_addr16[7]) <= 0x255){
      |                                                        ^
--- icmp6 ---
tools/icmp6.c:114:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  114 | u_int16_t                       tcpurg, tcpwin, icmp6id, icmp6seq;
      | ^~~~~~~~~
      | uint16_t
--- addr6 ---
tools/addr6.c:911:98: error: 'struct in6_addr' has no member named 's6_addr16'
  911 |                                         ntohs(addr->ip6.s6_addr16[6]) <= 0x255 && ntohs(addr->ip6.s6_addr16[7]) <= 0x255){
      |                                                                                                  ^
--- flow6 ---
tools/flow6.c:183:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  183 | u_int16_t                       baseport, lastport, dstport, tcpwin, addr_sig, addr_key;
      | ^~~~~~~~~
      | uint16_t
--- icmp6 ---
tools/icmp6.c:115:1: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  115 | u_int32_t                       tcpseq, tcpack;
      | ^~~~~~~~~
      | uint32_t
--- frag6 ---
In file included from tools/frag6.c:57:
tools/frag6.h:119:3: error: unknown type name 'u_int8_t'
  119 |   u_int8_t a[ETHER_ADDR_LEN];
      |   ^~~~~~~~
tools/frag6.h:125:3: error: unknown type name 'u_int32_t'
  125 |   u_int32_t     family; /* Protocol Family      */
      |   ^~~~~~~~~
tools/frag6.h:130:5: error: unknown type name 'u_int8_t'
  130 |     u_int8_t    type;
      |     ^~~~~~~~
tools/frag6.h:131:5: error: unknown type name 'u_int8_t'
  131 |     u_int8_t    length;
      |     ^~~~~~~~
tools/frag6.h:132:5: error: unknown type name 'u_int8_t'
  132 |     u_int8_t    address[6];
      |     ^~~~~~~~
tools/frag6.h:136:5: error: unknown type name 'u_int8_t'
  136 |     u_int8_t    type;
      |     ^~~~~~~~
tools/frag6.h:137:5: error: unknown type name 'u_int8_t'
  137 |     u_int8_t    length;
      |     ^~~~~~~~
tools/frag6.h:138:5: error: unknown type name 'u_int8_t'
  138 |     u_int8_t    address[6];
      |     ^~~~~~~~
--- flow6 ---
tools/flow6.c:184:1: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  184 | u_int32_t                       tcpseq;
      | ^~~~~~~~~
      | uint32_t
--- frag6 ---
tools/frag6.h:144:5: error: unknown type name 'u_int32_t'
  144 |     u_int32_t   len;
      |     ^~~~~~~~~
tools/frag6.h:145:5: error: unknown type name 'u_int8_t'
  145 |     u_int8_t zero[3];
      |     ^~~~~~~~
tools/frag6.h:146:5: error: unknown type name 'u_int8_t'
  146 |     u_int8_t    nh;
      |     ^~~~~~~~
tools/frag6.h:154:3: error: unknown type name 'u_int16_t'
  154 |   u_int16_t ether_type;         /* packet type ID field */
      |   ^~~~~~~~~
--- icmp6 ---
tools/icmp6.c:116:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  116 | u_int8_t                        tcpflags=0, ip6hoplimit;
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c: In function 'init_host_list':
--- flow6 ---
tools/flow6.c:185:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  185 | u_int8_t                        protocol;
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c:1429:9: warning: implicit declaration of function 'bzero' [-Wimplicit-function-declaration]
 1429 |         bzero(hlist, sizeof(struct host_list));
      |         ^~~~~
tools/addr6.c:1429:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
--- icmp6 ---
tools/icmp6.c:174:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  174 | u_int16_t                       mask;
      | ^~~~~~~~~
      | uint16_t
--- flow6 ---
tools/flow6.c: In function 'main':
tools/flow6.c:202:9: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  202 |         u_int32_t               test1[NSAMPLES], test2[NSAMPLES];
      |         ^~~~~~~~~
      |         uint32_t
--- addr6 ---
tools/addr6.c: At top level:
--- icmp6 ---
tools/icmp6.c:175:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  175 | u_int8_t                        hoplimit;
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c:1452:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 1452 | u_int16_t key(struct host_list *hlist, struct in6_addr *ipv6){
      | ^~~~~~~~~
      | uint16_t
tools/addr6.c: In function 'key':
tools/addr6.c:1453:46: error: 'struct in6_addr' has no member named 's6_addr16'
 1453 |                 return( ((hlist->key_l ^ ipv6->s6_addr16[0] ^ ipv6->s6_addr16[7]) \
      |                                              ^~
tools/addr6.c:1453:67: error: 'struct in6_addr' has no member named 's6_addr16'
 1453 |                 return( ((hlist->key_l ^ ipv6->s6_addr16[0] ^ ipv6->s6_addr16[7]) \
      |                                                                   ^~
--- icmp6 ---
tools/icmp6.c:206:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  206 | u_int8_t                        blocksrclen[MAX_BLOCK_SRC], blockdstlen[MAX_BLOCK_DST];
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c:1454:55: error: 'struct in6_addr' has no member named 's6_addr16'
 1454 |                                 ^ (hlist->key_h ^ ipv6->s6_addr16[1] ^ ipv6->s6_addr16[6])) % MAX_LIST_ENTRIES);
      |                                                       ^~
tools/addr6.c:1454:76: error: 'struct in6_addr' has no member named 's6_addr16'
 1454 |                                 ^ (hlist->key_h ^ ipv6->s6_addr16[1] ^ ipv6->s6_addr16[6])) % MAX_LIST_ENTRIES);
      |                                                                            ^~
--- icmp6 ---
tools/icmp6.c:207:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  207 | u_int8_t                        blocktargetlen[MAX_BLOCK_TARGET];
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c: In function 'add_host_entry':
tools/addr6.c:1466:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 1466 |         u_int16_t                       hkey;
      |         ^~~~~~~~~
      |         uint16_t
--- icmp6 ---
tools/icmp6.c:215:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  215 | u_int8_t                        acceptsrclen[MAX_ACCEPT_SRC], acceptdstlen[MAX_ACCEPT_DST];
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c:1478:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 1478 |         bzero(hentry, sizeof(struct host_entry));
      |         ^~~~~
--- icmp6 ---
tools/icmp6.c:216:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  216 | u_int8_t                        accepttargetlen[MAX_ACCEPT_TARGET];
      | ^~~~~~~~
      | uint8_t
--- addr6 ---
tools/addr6.c: In function 'is_ip6_in_list':
--- flow6 ---
tools/flow6.c:265:41: warning: implicit declaration of function 'sanitize_ipv6_prefix' [-Wimplicit-function-declaration]
  265 |                                         sanitize_ipv6_prefix(&srcaddr, srcpreflen);
      |                                         ^~~~~~~~~~~~~~~~~~~~
--- frag6 ---
tools/frag6.c:76:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
   76 | u_int16_t                       in_chksum(void *, void *, size_t, u_int8_t);
      | ^~~~~~~~~
      | uint16_t
--- addr6 ---
tools/addr6.c:1508:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 1508 |         u_int16_t                       ckey;
      |         ^~~~~~~~~
      |         uint16_t
tools/addr6.c: In function 'is_eq_in6_addr':
tools/addr6.c:1531:23: error: 'struct in6_addr' has no member named 's6_addr16'
 1531 |                 if(ip1->s6_addr16[i] != ip2->s6_addr16[i])
      |                       ^~
--- frag6 ---
tools/frag6.c:76:67: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   76 | u_int16_t                       in_chksum(void *, void *, size_t, u_int8_t);
      |                                                                   ^~~~~~~~
      |                                                                   uint8_t
--- addr6 ---
tools/addr6.c:1531:44: error: 'struct in6_addr' has no member named 's6_addr16'
 1531 |                 if(ip1->s6_addr16[i] != ip2->s6_addr16[i])
      |                                            ^~
--- frag6 ---
tools/frag6.c:78:55: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   78 | unsigned int            match_ipv6(struct in6_addr *, u_int8_t *, unsigned int, struct in6_addr *);
      |                                                       ^~~~~~~~
      |                                                       uint8_t
--- addr6 ---
tools/addr6.c: At top level:
tools/addr6.c:1644:54: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 1644 | unsigned int match_ipv6(struct in6_addr *prefixlist, u_int8_t *prefixlen, unsigned int nprefix,
      |                                                      ^~~~~~~~
      |                                                      uint8_t
--- frag6 ---
tools/frag6.c:80:73: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   80 | void                            sanitize_ipv6_prefix(struct in6_addr *, u_int8_t);
      |                                                                         ^~~~~~~~
      |                                                                         uint8_t
--- flow6 ---
tools/flow6.c:492:17: warning: implicit declaration of function 'randomize_ipv6_addr'; did you mean 'randomize_ether_addr'? [-Wimplicit-function-declaration]
  492 |                 randomize_ipv6_addr(&srcaddr, &randprefix, randpreflen);
      |                 ^~~~~~~~~~~~~~~~~~~
      |                 randomize_ether_addr
--- addr6 ---
tools/addr6.c:1672:54: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 1672 | void sanitize_ipv6_prefix(struct in6_addr *ipv6addr, u_int8_t prefixlen){
      |                                                      ^~~~~~~~
      |                                                      uint8_t
--- icmp6 ---
tools/icmp6.c: In function 'main':
--- frag6 ---
tools/frag6.c:81:91: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
   81 | void                            randomize_ipv6_addr(struct in6_addr *, struct in6_addr *, u_int8_t);
      |                                                                                           ^~~~~~~~
      |                                                                                           uint8_t
--- icmp6 ---
tools/icmp6.c:326:41: warning: implicit declaration of function 'sanitize_ipv6_prefix' [-Wimplicit-function-declaration]
  326 |                                         sanitize_ipv6_prefix(&srcaddr, srcpreflen);
      |                                         ^~~~~~~~~~~~~~~~~~~~
--- frag6 ---
tools/frag6.c:97:58: error: expected ')' before 'unsigned'
   97 | int                             send_fragment2(u_int16_t, unsigned int, unsigned int, unsigned int, unsigned int, char *);
      |                                                          ^~~~~~~~~
      |                                                          )
--- flow6 ---
tools/flow6.c:539:35: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
  539 |                         tcpwin= ((u_int16_t) random() + 1500) & (u_int16_t)0x7f00;
      |                                   ^~~~~~~~~
      |                                   uint16_t
tools/flow6.c:539:35: note: each undeclared identifier is reported only once for each function it appears in
--- frag6 ---
tools/frag6.c:100:57: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  100 | int                                     predict_frag_id(u_int32_t *, unsigned int, u_int32_t *, unsigned int);
      |                                                         ^~~~~~~~~
      |                                                         uint32_t
--- flow6 ---
tools/flow6.c:539:45: error: expected ')' before 'random'
  539 |                         tcpwin= ((u_int16_t) random() + 1500) & (u_int16_t)0x7f00;
      |                                 ~           ^~~~~~~
      |                                             )
--- icmp6 ---
tools/icmp6.c:581:78: error: 'ULONG_MAX' undeclared (first use in this function)
  581 |                                 if((ul_res = strtoul(optarg, &endptr, 0)) == ULONG_MAX){
      |                                                                              ^~~~~~~~~
--- flow6 ---
tools/flow6.c:539:76: error: expected ';' before numeric constant
  539 |                         tcpwin= ((u_int16_t) random() + 1500) & (u_int16_t)0x7f00;
      |                                                                            ^~~~~~
      |                                                                            ;
--- icmp6 ---
tools/icmp6.c:62:1: note: 'ULONG_MAX' is defined in header '<limits.h>'; did you forget to '#include <limits.h>'?
   61 | #include <netinet/udp.h>
  +++ |+#include <limits.h>
   62 | 
tools/icmp6.c:581:78: note: each undeclared identifier is reported only once for each function it appears in
  581 |                                 if((ul_res = strtoul(optarg, &endptr, 0)) == ULONG_MAX){
      |                                                                              ^~~~~~~~~
--- frag6 ---
tools/frag6.c:100:84: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  100 | int                                     predict_frag_id(u_int32_t *, unsigned int, u_int32_t *, unsigned int);
      |                                                                                    ^~~~~~~~~
      |                                                                                    uint32_t
--- flow6 ---
tools/flow6.c:617:56: error: 'struct in6_addr' has no member named 's6_addr16'
  617 |                                                 srcaddr.s6_addr16[5]= addr_sig;
      |                                                        ^
tools/flow6.c:618:56: error: 'struct in6_addr' has no member named 's6_addr16'
  618 |                                                 srcaddr.s6_addr16[7] =  srcaddr.s6_addr16[6] ^ addr_key;
      |                                                        ^
tools/flow6.c:618:80: error: 'struct in6_addr' has no member named 's6_addr16'
  618 |                                                 srcaddr.s6_addr16[7] =  srcaddr.s6_addr16[6] ^ addr_key;
      |                                                                                ^
--- frag6 ---
tools/frag6.c:101:50: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  101 | int                                     inc_sdev(u_int32_t *, unsigned int, u_int32_t *, double *);
      |                                                  ^~~~~~~~~
      |                                                  uint32_t
--- flow6 ---
tools/flow6.c:692:64: error: 'struct in6_addr' has no member named 's6_addr16'
  692 |                                         if(pkt_ns->nd_ns_target.s6_addr16[5] != addr_sig || \
      |                                                                ^
tools/flow6.c:693:69: error: 'struct in6_addr' has no member named 's6_addr16'
  693 |                                                 pkt_ns->nd_ns_target.s6_addr16[7] !=  (pkt_ns->nd_ns_target.s6_addr16[6] ^ addr_key))
      |                                                                     ^
tools/flow6.c:693:108: error: 'struct in6_addr' has no member named 's6_addr16'
  693 |                                                 pkt_ns->nd_ns_target.s6_addr16[7] !=  (pkt_ns->nd_ns_target.s6_addr16[6] ^ addr_key))
      |                                                                                                            ^
--- frag6 ---
tools/frag6.c:101:77: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  101 | int                                     inc_sdev(u_int32_t *, unsigned int, u_int32_t *, double *);
      |                                                                             ^~~~~~~~~
      |                                                                             uint32_t
tools/frag6.c:102:51: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  102 | void                            change_endianness(u_int32_t *, unsigned int);
      |                                                   ^~~~~~~~~
      |                                                   uint32_t
--- addr6 ---
tools/addr6.c: In function 'key':
--- flow6 ---
tools/flow6.c:732:44: warning: implicit declaration of function 'in_chksum'; did you mean 'rr_cksum'? [-Wimplicit-function-declaration]
  732 |                                         if(in_chksum(pkt_ipv6, pkt_tcp, pkt_end-((unsigned char *)pkt_tcp), IPPROTO_TCP) != 0)
      |                                            ^~~~~~~~~
      |                                            rr_cksum
--- addr6 ---
tools/addr6.c:1455:1: warning: control reaches end of non-void function [-Wreturn-type]
 1455 | }
      | ^
--- frag6 ---
tools/frag6.c:156:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  156 | u_int16_t                       mask, ip6length;
      | ^~~~~~~~~
      | uint16_t
--- flow6 ---
tools/flow6.c:771:61: error: 'struct in6_addr' has no member named 's6_addr16'
  771 |                                         if(pkt_ipv6->ip6_dst.s6_addr16[5] != addr_sig || \
      |                                                             ^
tools/flow6.c:772:66: error: 'struct in6_addr' has no member named 's6_addr16'
  772 |                                                 pkt_ipv6->ip6_dst.s6_addr16[7] !=  (pkt_ipv6->ip6_dst.s6_addr16[6] ^ addr_key)){
      |                                                                  ^
tools/flow6.c:772:102: error: 'struct in6_addr' has no member named 's6_addr16'
  772 |                                                 pkt_ipv6->ip6_dst.s6_addr16[7] !=  (pkt_ipv6->ip6_dst.s6_addr16[6] ^ addr_key)){
      |                                                                                                      ^
--- frag6 ---
tools/frag6.c:157:1: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  157 | u_int8_t                        hoplimit;
      | ^~~~~~~~
      | uint8_t
--- icmp6 ---
tools/icmp6.c:1126:17: warning: implicit declaration of function 'randomize_ipv6_addr'; did you mean 'randomize_ether_addr'? [-Wimplicit-function-declaration]
 1126 |                 randomize_ipv6_addr(&srcaddr, &randprefix, randpreflen);
      |                 ^~~~~~~~~~~~~~~~~~~
      |                 randomize_ether_addr
--- frag6 ---
tools/frag6.c:167:1: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  167 | u_int32_t                       fsize, foffset, fid, id;
      | ^~~~~~~~~
      | uint32_t
--- flow6 ---
tools/flow6.c:804:20: warning: implicit declaration of function 'predict_flow_id' [-Wimplicit-function-declaration]
  804 |                 if(predict_flow_id(test1, ntest1, test2, ntest2) == -1){
      |                    ^~~~~~~~~~~~~~~
--- icmp6 ---
tools/icmp6.c:1186:35: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
 1186 |                         tcpwin= ((u_int16_t) random() + 1500) & (u_int16_t)0x7f00;
      |                                   ^~~~~~~~~
      |                                   uint16_t
--- frag6 ---
tools/frag6.c:202:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  202 | u_int16_t                       addr_sig, addr_key;
      | ^~~~~~~~~
      | uint16_t
--- flow6 ---
tools/flow6.c: In function 'send_fid_probe':
tools/flow6.c:854:17: warning: implicit declaration of function 'bzero' [-Wimplicit-function-declaration]
  854 |                 bzero(tcp, sizeof(struct tcphdr));
      |                 ^~~~~
tools/flow6.c:854:17: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
tools/flow6.c:869:17: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
  869 |                 bzero(udp, sizeof(struct udphdr));
      |                 ^~~~~
--- frag6 ---
tools/frag6.c:203:1: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  203 | u_int32_t                       icmp6_sig;
      | ^~~~~~~~~
      | uint32_t
--- icmp6 ---
tools/icmp6.c:1186:45: error: expected ')' before 'random'
 1186 |                         tcpwin= ((u_int16_t) random() + 1500) & (u_int16_t)0x7f00;
      |                                 ~           ^~~~~~~
      |                                             )
--- flow6 ---
tools/flow6.c: At top level:
--- icmp6 ---
tools/icmp6.c:1186:76: error: expected ';' before numeric constant
 1186 |                         tcpwin= ((u_int16_t) random() + 1500) & (u_int16_t)0x7f00;
      |                                                                            ^~~~~~
      |                                                                            ;
--- flow6 ---
tools/flow6.c:941:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
  941 | u_int16_t in_chksum(void *ptr_ipv6, void *ptr_icmpv6, size_t len, u_int8_t proto){
      | ^~~~~~~~~
      | uint16_t
--- frag6 ---
tools/frag6.c: In function 'main':
tools/frag6.c:226:9: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
  226 |         u_int32_t               test1[NSAMPLES], test2[NSAMPLES];
      |         ^~~~~~~~~
      |         uint32_t
--- flow6 ---
tools/flow6.c:941:67: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
  941 | u_int16_t in_chksum(void *ptr_ipv6, void *ptr_icmpv6, size_t len, u_int8_t proto){
      |                                                                   ^~~~~~~~
      |                                                                   uint8_t
tools/flow6.c:1088:54: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 1088 | unsigned int match_ipv6(struct in6_addr *prefixlist, u_int8_t *prefixlen, unsigned int nprefix,
      |                                                      ^~~~~~~~
      |                                                      uint8_t
tools/flow6.c:1140:54: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 1140 | void sanitize_ipv6_prefix(struct in6_addr *ipv6addr, u_int8_t prefixlen){
      |                                                      ^~~~~~~~
      |                                                      uint8_t
--- addr6 ---
*** [addr6] Error code 1

bmake: stopped making "all" in /home/pbulk/build/security/ipv6-toolkit/work/ipv6toolkit-v1.4.1
--- icmp6 ---
tools/icmp6.c:1424:36: warning: implicit declaration of function 'match_ipv6' [-Wimplicit-function-declaration]
 1424 |                                 if(match_ipv6(blocksrc, blocksrclen, nblocksrc, &(pkt_ipv6->ip6_src))){
      |                                    ^~~~~~~~~~
--- flow6 ---
tools/flow6.c:1165:78: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 1165 | void randomize_ipv6_addr(struct in6_addr *ipv6addr, struct in6_addr *prefix, u_int8_t preflen){
      |                                                                              ^~~~~~~~
      |                                                                              uint8_t
--- icmp6 ---
tools/icmp6.c: In function 'init_packet_data':
--- frag6 ---
tools/frag6.c:301:41: warning: implicit declaration of function 'sanitize_ipv6_prefix' [-Wimplicit-function-declaration]
  301 |                                         sanitize_ipv6_prefix(&srcaddr, srcpreflen);
      |                                         ^~~~~~~~~~~~~~~~~~~~
--- flow6 ---
tools/flow6.c: In function 'ipv6_to_ether':
--- icmp6 ---
tools/icmp6.c:1572:17: warning: implicit declaration of function 'bzero' [-Wimplicit-function-declaration]
 1572 |                 bzero(&fraghdr, FRAG_HDR_SIZE);
      |                 ^~~~~
tools/icmp6.c:1572:17: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
--- flow6 ---
tools/flow6.c:1361:9: warning: implicit declaration of function 'bcopy' [-Wimplicit-function-declaration]
 1361 |         bcopy( &(idata->ether.a), sllaopt->address, ETH_ALEN);
      |         ^~~~~
tools/flow6.c:1361:9: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
tools/flow6.c:1370:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 1370 |         bzero(&new_sig, sizeof(struct sigaction));
      |         ^~~~~
--- icmp6 ---
tools/icmp6.c: In function 'send_packet':
tools/icmp6.c:1717:41: warning: implicit declaration of function 'bcopy' [-Wimplicit-function-declaration]
 1717 |                                         bcopy(pkt_ipv6, ptr, rhbytes);
      |                                         ^~~~~
tools/icmp6.c:1717:41: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
--- frag6 ---
tools/frag6.c:502:78: error: 'ULONG_MAX' undeclared (first use in this function)
  502 |                                 if((ul_res = strtoul(optarg, &endptr, 0)) == ULONG_MAX){
      |                                                                              ^~~~~~~~~
tools/frag6.c:61:1: note: 'ULONG_MAX' is defined in header '<limits.h>'; did you forget to '#include <limits.h>'?
   60 | #include <math.h>
  +++ |+#include <limits.h>
   61 | 
--- icmp6 ---
tools/icmp6.c:1752:49: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 1752 |                                                 bzero(rhtcp, sizeof(struct tcphdr));
      |                                                 ^~~~~
--- frag6 ---
tools/frag6.c:502:78: note: each undeclared identifier is reported only once for each function it appears in
  502 |                                 if((ul_res = strtoul(optarg, &endptr, 0)) == ULONG_MAX){
      |                                                                              ^~~~~~~~~
--- flow6 ---
tools/flow6.c: In function 'solicited_node':
tools/flow6.c:1516:18: error: 'struct in6_addr' has no member named 's6_addr16'
 1516 |         solicited.s6_addr16[0]= htons(0xff02);
      |                  ^
tools/flow6.c:1517:18: error: 'struct in6_addr' has no member named 's6_addr16'
 1517 |         solicited.s6_addr16[1]= 0x0000;
      |                  ^
tools/flow6.c:1518:18: error: 'struct in6_addr' has no member named 's6_addr16'
 1518 |         solicited.s6_addr16[2]= 0x0000;
      |                  ^
--- icmp6 ---
tools/icmp6.c:1753:73: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
 1753 |                                                 rhtcp->th_sport= htons((u_int16_t) targetport);
      |                                                                         ^~~~~~~~~
      |                                                                         uint16_t
--- flow6 ---
tools/flow6.c:1519:18: error: 'struct in6_addr' has no member named 's6_addr16'
 1519 |         solicited.s6_addr16[3]= 0x0000;
      |                  ^
tools/flow6.c:1520:18: error: 'struct in6_addr' has no member named 's6_addr16'
 1520 |         solicited.s6_addr16[4]= 0x0000;
      |                  ^
tools/flow6.c:1521:18: error: 'struct in6_addr' has no member named 's6_addr16'
 1521 |         solicited.s6_addr16[5]= htons(0x0001);
      |                  ^
tools/flow6.c:1522:18: error: 'struct in6_addr' has no member named 's6_addr16'
 1522 |         solicited.s6_addr16[6]= htons(0xff00) | ipv6addr->s6_addr16[6];
      |                  ^
tools/flow6.c:1522:57: error: 'const struct in6_addr' has no member named 's6_addr16'
 1522 |         solicited.s6_addr16[6]= htons(0xff00) | ipv6addr->s6_addr16[6];
      |                                                         ^~
tools/flow6.c:1523:18: error: 'struct in6_addr' has no member named 's6_addr16'
 1523 |         solicited.s6_addr16[7]= ipv6addr->s6_addr16[7];
      |                  ^
--- icmp6 ---
tools/icmp6.c:1753:83: error: expected ')' before 'targetport'
 1753 |                                                 rhtcp->th_sport= htons((u_int16_t) targetport);
      |                                                                       ~           ^~~~~~~~~~~
      |                                                                                   )
--- flow6 ---
tools/flow6.c:1523:41: error: 'const struct in6_addr' has no member named 's6_addr16'
 1523 |         solicited.s6_addr16[7]= ipv6addr->s6_addr16[7];
      |                                         ^~
tools/flow6.c: In function 'init_iface_data':
tools/flow6.c:1556:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 1556 |         bzero(idata, sizeof(struct iface_data));
      |         ^~~~~
--- frag6 ---
tools/frag6.c:732:17: warning: implicit declaration of function 'randomize_ipv6_addr'; did you mean 'randomize_ether_addr'? [-Wimplicit-function-declaration]
  732 |                 randomize_ipv6_addr(&srcaddr, &randprefix, randpreflen);
      |                 ^~~~~~~~~~~~~~~~~~~
      |                 randomize_ether_addr
--- icmp6 ---
tools/icmp6.c:1754:83: error: expected ')' before 'peerport'
 1754 |                                                 rhtcp->th_dport= htons((u_int16_t) peerport);
      |                                                                       ~           ^~~~~~~~~
      |                                                                                   )
tools/icmp6.c:1764:57: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 1764 |                                                         bcopy(rhbuff, ptr, rhbytes);
      |                                                         ^~~~~
--- flow6 ---
tools/flow6.c: In function 'find_ipv6_router_full':
tools/flow6.c:1715:9: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 1715 |         bcopy( &(idata->ether.a), sllaopt->address, ETH_ALEN);
      |         ^~~~~
--- icmp6 ---
tools/icmp6.c:1768:57: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 1768 |                                                         bcopy(rhbuff, ptr, MIN_IPV6_HLEN+MIN_TCP_HLEN);
      |                                                         ^~~~~
--- flow6 ---
tools/flow6.c:1724:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 1724 |         bzero(&new_sig, sizeof(struct sigaction));
      |         ^~~~~
--- frag6 ---
tools/frag6.c:832:36: warning: implicit declaration of function 'send_fragment2'; did you mean 'send_fragment'? [-Wimplicit-function-declaration]
  832 |                                 if(send_fragment2(sizeof(struct icmp6_hdr)+minfragsize*2-overlap, id, 0, minfragsize, \
      |                                    ^~~~~~~~~~~~~~
      |                                    send_fragment
--- icmp6 ---
tools/icmp6.c:1773:67: error: 'u_int32_t' undeclared (first use in this function); did you mean 'uint32_t'?
 1773 |                                                                 *(u_int32_t *)ptr = random();
      |                                                                   ^~~~~~~~~
      |                                                                   uint32_t
--- flow6 ---
tools/flow6.c:1810:47: error: 'struct in6_addr' has no member named 's6_addr16'
 1810 |                         if( (pkt_ipv6->ip6_src.s6_addr16[0] & htons(0xffc0)) != htons(0xfe80))
      |                                               ^
--- icmp6 ---
tools/icmp6.c:1773:78: error: expected expression before ')' token
 1773 |                                                                 *(u_int32_t *)ptr = random();
      |                                                                              ^
tools/icmp6.c:1789:57: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 1789 |                                                         bcopy(rhbuff, ptr, rhbytes);
      |                                                         ^~~~~
tools/icmp6.c:1793:57: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 1793 |                                                         bcopy(rhbuff, ptr, MIN_IPV6_HLEN+MIN_UDP_HLEN);
      |                                                         ^~~~~
--- flow6 ---
tools/flow6.c: In function 'is_eq_in6_addr':
--- icmp6 ---
tools/icmp6.c:1797:78: error: expected expression before ')' token
 1797 |                                                                 *(u_int32_t *)ptr = random();
      |                                                                              ^
--- flow6 ---
tools/flow6.c:1962:23: error: 'struct in6_addr' has no member named 's6_addr16'
 1962 |                 if(ip1->s6_addr16[i] != ip2->s6_addr16[i])
      |                       ^~
--- frag6 ---
tools/frag6.c:1119:56: error: 'struct in6_addr' has no member named 's6_addr16'
 1119 |                                                 srcaddr.s6_addr16[5]= addr_sig;
      |                                                        ^
--- icmp6 ---
tools/icmp6.c:1813:57: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 1813 |                                                         bcopy(rhbuff, ptr, rhbytes);
      |                                                         ^~~~~
--- frag6 ---
tools/frag6.c:1120:56: error: 'struct in6_addr' has no member named 's6_addr16'
 1120 |                                                 srcaddr.s6_addr16[7] =  srcaddr.s6_addr16[6] ^ addr_key;
      |                                                        ^
--- flow6 ---
tools/flow6.c:1962:44: error: 'struct in6_addr' has no member named 's6_addr16'
 1962 |                 if(ip1->s6_addr16[i] != ip2->s6_addr16[i])
      |                                            ^~
--- icmp6 ---
tools/icmp6.c:1817:57: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 1817 |                                                         bcopy(rhbuff, ptr, MIN_IPV6_HLEN+MIN_ICMP6_HLEN);
      |                                                         ^~~~~
--- flow6 ---
tools/flow6.c: In function 'ether_to_ipv6_linklocal':
--- frag6 ---
tools/frag6.c:1120:80: error: 'struct in6_addr' has no member named 's6_addr16'
 1120 |                                                 srcaddr.s6_addr16[7] =  srcaddr.s6_addr16[6] ^ addr_key;
      |                                                                                ^
--- flow6 ---
tools/flow6.c:1977:17: error: 'struct in6_addr' has no member named 's6_addr16'
 1977 |         ipv6addr->s6_addr16[0]= htons(0xfe80); /* Link-local unicast prefix */
      |                 ^~
--- icmp6 ---
tools/icmp6.c:1821:78: error: expected expression before ')' token
 1821 |                                                                 *(u_int32_t *)ptr = random();
      |                                                                              ^
--- flow6 ---
tools/flow6.c:1980:25: error: 'struct in6_addr' has no member named 's6_addr16'
 1980 |                 ipv6addr->s6_addr16[i]=0x0000;
      |                         ^~
tools/flow6.c:1982:17: error: 'struct in6_addr' has no member named 's6_addr16'
 1982 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                 ^~
--- frag6 ---
tools/frag6.c:1199:64: error: 'struct in6_addr' has no member named 's6_addr16'
 1199 |                                         if(pkt_ns->nd_ns_target.s6_addr16[5] != addr_sig || \
      |                                                                ^
tools/frag6.c:1200:69: error: 'struct in6_addr' has no member named 's6_addr16'
 1200 |                                                 pkt_ns->nd_ns_target.s6_addr16[7] !=  (pkt_ns->nd_ns_target.s6_addr16[6] ^ addr_key))
      |                                                                     ^
--- icmp6 ---
tools/icmp6.c:1831:46: warning: implicit declaration of function 'in_chksum'; did you mean 'rr_cksum'? [-Wimplicit-function-declaration]
 1831 |                         icmp6->icmp6_cksum = in_chksum(v6buffer, icmp6, ptr-((unsigned char *)icmp6), IPPROTO_ICMPV6);
      |                                              ^~~~~~~~~
      |                                              rr_cksum
--- frag6 ---
tools/frag6.c:1200:108: error: 'struct in6_addr' has no member named 's6_addr16'
 1200 |                                                 pkt_ns->nd_ns_target.s6_addr16[7] !=  (pkt_ns->nd_ns_target.s6_addr16[6] ^ addr_key))
      |                                                                                                            ^
--- flow6 ---
tools/flow6.c:1982:42: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
 1982 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                                          ^~~~~~~~~
      |                                          uint16_t
--- icmp6 ---
tools/icmp6.c: At top level:
tools/icmp6.c:2004:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 2004 | u_int16_t in_chksum(void *ptr_ipv6, void *ptr_icmpv6, size_t len, u_int8_t proto){
      | ^~~~~~~~~
      | uint16_t
--- flow6 ---
tools/flow6.c:1982:52: error: expected ')' before 'etheraddr'
 1982 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
--- frag6 ---
tools/frag6.c:1211:127: error: 'u_int32_t' undeclared (first use in this function); did you mean 'uint32_t'?
 1211 |                                         (sizeof(struct ip6_hdr) + sizeof(struct ip6_frag) + sizeof(struct icmp6_hdr) + sizeof(u_int32_t)))
      |                                                                                                                               ^~~~~~~~~
      |                                                                                                                               uint32_t
--- flow6 ---
tools/flow6.c:1983:17: error: 'struct in6_addr' has no member named 's6_addr16'
 1983 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                 ^~
--- frag6 ---
tools/frag6.c:1244:66: error: expected expression before ')' token
 1244 |                                                 if( *(u_int32_t *)((unsigned char *)pkt_icmp6+ sizeof(struct icmp6_hdr)) != icmp6_sig){
      |                                                                  ^
--- icmp6 ---
tools/icmp6.c:2004:67: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 2004 | u_int16_t in_chksum(void *ptr_ipv6, void *ptr_icmpv6, size_t len, u_int8_t proto){
      |                                                                   ^~~~~~~~
      |                                                                   uint8_t
--- flow6 ---
tools/flow6.c:1983:53: error: expected ')' before 'etheraddr'
 1983 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                                         ~           ^~~~~~~~~
      |                                                     )
--- frag6 ---
tools/frag6.c:1256:61: error: 'struct in6_addr' has no member named 's6_addr16'
 1256 |                                         if(pkt_ipv6->ip6_dst.s6_addr16[5] != addr_sig || \
      |                                                             ^
--- flow6 ---
tools/flow6.c:1984:17: error: 'struct in6_addr' has no member named 's6_addr16'
 1984 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                 ^~
--- frag6 ---
tools/frag6.c:1257:66: error: 'struct in6_addr' has no member named 's6_addr16'
 1257 |                                                 pkt_ipv6->ip6_dst.s6_addr16[7] !=  (pkt_ipv6->ip6_dst.s6_addr16[6] ^ addr_key)){
      |                                                                  ^
tools/frag6.c:1257:102: error: 'struct in6_addr' has no member named 's6_addr16'
 1257 |                                                 pkt_ipv6->ip6_dst.s6_addr16[7] !=  (pkt_ipv6->ip6_dst.s6_addr16[6] ^ addr_key)){
      |                                                                                                      ^
tools/frag6.c:1263:66: error: expected expression before ')' token
 1263 |                                                 if( *(u_int32_t *)((unsigned char *)pkt_icmp6+ sizeof(struct icmp6_hdr)) != icmp6_sig){
      |                                                                  ^
--- flow6 ---
tools/flow6.c:1984:51: error: expected ')' before numeric constant
 1984 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                                       ~           ^~~~~~~
      |                                                   )
tools/flow6.c:1985:17: error: 'struct in6_addr' has no member named 's6_addr16'
 1985 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                 ^~
--- icmp6 ---
tools/icmp6.c:2504:54: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 2504 | unsigned int match_ipv6(struct in6_addr *prefixlist, u_int8_t *prefixlen, unsigned int nprefix,
      |                                                      ^~~~~~~~
      |                                                      uint8_t
--- flow6 ---
tools/flow6.c:1985:52: error: expected ')' before 'etheraddr'
 1985 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
tools/flow6.c: In function 'get_if_addrs':
tools/flow6.c:2056:83: error: 'struct in6_addr' has no member named 's6_addr16'
 2056 |                         if( !(idata->ip6_local_flag) &&  (((sockin6ptr->sin6_addr).s6_addr16[0] & htons(0xffc0)) \
      |                                                                                   ^
tools/flow6.c:2069:58: error: 'struct in6_addr' has no member named 's6_addr16'
 2069 |                         else if( ((sockin6ptr->sin6_addr).s6_addr16[0] & htons(0xffc0)) != htons(0xfe80)){
      |                                                          ^
--- icmp6 ---
tools/icmp6.c:2556:54: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 2556 | void sanitize_ipv6_prefix(struct in6_addr *ipv6addr, u_int8_t prefixlen){
      |                                                      ^~~~~~~~
      |                                                      uint8_t
--- frag6 ---
tools/frag6.c:1296:20: warning: implicit declaration of function 'predict_frag_id' [-Wimplicit-function-declaration]
 1296 |                 if(predict_frag_id(test1, ntest1, test2, ntest2) == -1){
      |                    ^~~~~~~~~~~~~~~
--- flow6 ---
tools/flow6.c: In function 'is_ip6_in_prefix_list':
tools/flow6.c:2109:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 2109 |         u_int16_t       mask16;
      |         ^~~~~~~~~
      |         uint16_t
--- icmp6 ---
tools/icmp6.c:2581:78: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 2581 | void randomize_ipv6_addr(struct in6_addr *ipv6addr, struct in6_addr *prefix, u_int8_t preflen){
      |                                                                              ^~~~~~~~
      |                                                                              uint8_t
--- flow6 ---
tools/flow6.c:2117:34: error: 'struct in6_addr' has no member named 's6_addr16'
 2117 |                         if(target->s6_addr16[j] != (plist->prefix[i])->ip6.s6_addr16[j])
      |                                  ^~
tools/flow6.c:2117:75: error: 'struct in6_addr' has no member named 's6_addr16'
 2117 |                         if(target->s6_addr16[j] != (plist->prefix[i])->ip6.s6_addr16[j])
      |                                                                           ^
tools/flow6.c:2123:36: error: 'struct in6_addr' has no member named 's6_addr16'
 2123 |                         if( (target->s6_addr16[full16] & mask16) == ((plist->prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                    ^~
tools/flow6.c:2123:93: error: 'struct in6_addr' has no member named 's6_addr16'
 2123 |                         if( (target->s6_addr16[full16] & mask16) == ((plist->prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                                                                             ^
--- icmp6 ---
tools/icmp6.c: In function 'ipv6_to_ether':
--- flow6 ---
tools/flow6.c: In function 'match_ipv6_to_prefixes':
--- icmp6 ---
tools/icmp6.c:2777:9: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 2777 |         bcopy( &(idata->ether.a), sllaopt->address, ETH_ALEN);
      |         ^~~~~
--- flow6 ---
tools/flow6.c:2140:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 2140 |         u_int16_t       mask;
      |         ^~~~~~~~~
      |         uint16_t
--- frag6 ---
tools/frag6.c: In function 'print_icmp6_echo':
--- flow6 ---
tools/flow6.c:2145:36: error: 'struct in6_addr' has no member named 's6_addr16'
 2145 |                         if(ipv6addr->s6_addr16[j] != (pf->prefix[i])->ip6.s6_addr16[j])
      |                                    ^~
--- icmp6 ---
tools/icmp6.c:2786:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 2786 |         bzero(&new_sig, sizeof(struct sigaction));
      |         ^~~~~
--- flow6 ---
tools/flow6.c:2145:74: error: 'struct in6_addr' has no member named 's6_addr16'
 2145 |                         if(ipv6addr->s6_addr16[j] != (pf->prefix[i])->ip6.s6_addr16[j])
      |                                                                          ^
--- frag6 ---
tools/frag6.c:1536:50: error: 'u_int32_t' undeclared (first use in this function); did you mean 'uint32_t'?
 1536 |                 printf(" (RTT: %u second%s)\n", (u_int32_t)rtt, (rtt>1)?"s":"");
      |                                                  ^~~~~~~~~
      |                                                  uint32_t
--- flow6 ---
tools/flow6.c:2155:56: error: 'struct in6_addr' has no member named 's6_addr16'
 2155 |                                 if((pf->prefix[i])->ip6.s6_addr16[full16] == (ipv6addr->s6_addr16[full16] & htons(mask)))
      |                                                        ^
tools/flow6.c:2155:87: error: 'struct in6_addr' has no member named 's6_addr16'
 2155 |                                 if((pf->prefix[i])->ip6.s6_addr16[full16] == (ipv6addr->s6_addr16[full16] & htons(mask)))
      |                                                                                       ^~
tools/flow6.c: In function 'generate_slaac_address':
tools/flow6.c:2173:17: error: 'struct in6_addr' has no member named 's6_addr16'
 2173 |         ipv6addr->s6_addr16[0]= htons(0xfe80); /* Link-local unicast prefix */
      |                 ^~
tools/flow6.c:2176:25: error: 'struct in6_addr' has no member named 's6_addr16'
 2176 |                 ipv6addr->s6_addr16[i]= prefix->s6_addr16[i];
      |                         ^~
tools/flow6.c:2176:47: error: 'struct in6_addr' has no member named 's6_addr16'
 2176 |                 ipv6addr->s6_addr16[i]= prefix->s6_addr16[i];
      |                                               ^~
--- frag6 ---
tools/frag6.c:1536:60: error: expected ')' before 'rtt'
 1536 |                 printf(" (RTT: %u second%s)\n", (u_int32_t)rtt, (rtt>1)?"s":"");
      |                       ~                                    ^~~
      |                                                            )
--- icmp6 ---
tools/icmp6.c: In function 'solicited_node':
--- flow6 ---
tools/flow6.c:2178:17: error: 'struct in6_addr' has no member named 's6_addr16'
 2178 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t) (etheraddr->a[0] | 0x02) << 8) | etheraddr->a[1]);
      |                 ^~
--- frag6 ---
tools/frag6.c: In function 'print_icmp6_timed':
--- icmp6 ---
tools/icmp6.c:2932:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2932 |         solicited.s6_addr16[0]= htons(0xff02);
      |                  ^
--- frag6 ---
tools/frag6.c:1552:9: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 1552 |         u_int8_t                        pkt_prev_nh;
      |         ^~~~~~~~
      |         uint8_t
--- icmp6 ---
tools/icmp6.c:2933:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2933 |         solicited.s6_addr16[1]= 0x0000;
      |                  ^
--- flow6 ---
tools/flow6.c:2178:42: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
 2178 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t) (etheraddr->a[0] | 0x02) << 8) | etheraddr->a[1]);
      |                                          ^~~~~~~~~
      |                                          uint16_t
tools/flow6.c:2179:17: error: 'struct in6_addr' has no member named 's6_addr16'
 2179 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                 ^~
--- frag6 ---
tools/frag6.c:1563:54: error: invalid use of undefined type 'struct ip6_ext'
 1563 |                 ( (unsigned char *)pkt_ext + (pkt_ext->ip6e_len * 8 + 1)) < pkt_end){
      |                                                      ^~
--- icmp6 ---
tools/icmp6.c:2934:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2934 |         solicited.s6_addr16[2]= 0x0000;
      |                  ^
--- frag6 ---
tools/frag6.c:1568:37: error: invalid use of undefined type 'struct ip6_ext'
 1568 |                 pkt_prev_nh= pkt_ext->ip6e_nxt;
      |                                     ^~
--- icmp6 ---
tools/icmp6.c:2935:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2935 |         solicited.s6_addr16[3]= 0x0000;
      |                  ^
--- frag6 ---
tools/frag6.c:1569:83: error: invalid use of undefined type 'struct ip6_ext'
 1569 |                 pkt_ext= (struct ip6_ext *) ( (unsigned char *)pkt_ext + ((pkt_ext->ip6e_len + 1) * 8));
      |                                                                                   ^~
--- icmp6 ---
tools/icmp6.c:2936:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2936 |         solicited.s6_addr16[4]= 0x0000;
      |                  ^
--- flow6 ---
tools/flow6.c:2179:53: error: expected ')' before 'etheraddr'
 2179 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                                         ~           ^~~~~~~~~
      |                                                     )
--- icmp6 ---
tools/icmp6.c:2937:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2937 |         solicited.s6_addr16[5]= htons(0x0001);
      |                  ^
--- flow6 ---
tools/flow6.c:2180:17: error: 'struct in6_addr' has no member named 's6_addr16'
 2180 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                 ^~
--- icmp6 ---
tools/icmp6.c:2938:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2938 |         solicited.s6_addr16[6]= htons(0xff00) | ipv6addr->s6_addr16[6];
      |                  ^
tools/icmp6.c:2938:57: error: 'const struct in6_addr' has no member named 's6_addr16'
 2938 |         solicited.s6_addr16[6]= htons(0xff00) | ipv6addr->s6_addr16[6];
      |                                                         ^~
--- frag6 ---
tools/frag6.c:1612:22: error: 'u_int32_t' undeclared (first use in this function); did you mean 'uint32_t'?
 1612 |                 if(*(u_int32_t *)(pkt_ptr+sizeof(time_t)) != ((*(u_int32_t *)pkt_ptr) ^ 0xabcdabcd)){
      |                      ^~~~~~~~~
      |                      uint32_t
--- flow6 ---
tools/flow6.c:2180:51: error: expected ')' before numeric constant
 2180 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                                       ~           ^~~~~~~
      |                                                   )
--- icmp6 ---
tools/icmp6.c:2939:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2939 |         solicited.s6_addr16[7]= ipv6addr->s6_addr16[7];
      |                  ^
--- frag6 ---
tools/frag6.c:1612:33: error: expected expression before ')' token
 1612 |                 if(*(u_int32_t *)(pkt_ptr+sizeof(time_t)) != ((*(u_int32_t *)pkt_ptr) ^ 0xabcdabcd)){
      |                                 ^
--- flow6 ---
tools/flow6.c:2181:17: error: 'struct in6_addr' has no member named 's6_addr16'
 2181 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                 ^~
--- icmp6 ---
tools/icmp6.c:2939:41: error: 'const struct in6_addr' has no member named 's6_addr16'
 2939 |         solicited.s6_addr16[7]= ipv6addr->s6_addr16[7];
      |                                         ^~
--- frag6 ---
tools/frag6.c:1612:77: error: expected expression before ')' token
 1612 |                 if(*(u_int32_t *)(pkt_ptr+sizeof(time_t)) != ((*(u_int32_t *)pkt_ptr) ^ 0xabcdabcd)){
      |                                                                             ^
--- flow6 ---
tools/flow6.c:2181:52: error: expected ')' before 'etheraddr'
 2181 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
tools/flow6.c: In function 'src_addr_sel':
tools/flow6.c:2193:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 2193 |         u_int16_t       mask16;
      |         ^~~~~~~~~
      |         uint16_t
tools/flow6.c:2203:17: error: 'struct in6_addr' has no member named 's6_addr16'
 2203 |         if( (dst->s6_addr16[0] & htons(0xffc0)) == htons(0xfe80)){
      |                 ^~
--- icmp6 ---
tools/icmp6.c: In function 'find_ipv6_router_full':
--- flow6 ---
tools/flow6.c:2216:48: error: 'struct in6_addr' has no member named 's6_addr16'
 2216 |                                         if( dst->s6_addr16[j] != (idata->ip6_global.prefix[i])->ip6.s6_addr16[j])
      |                                                ^~
--- icmp6 ---
tools/icmp6.c:3104:9: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 3104 |         bcopy( &(idata->ether.a), sllaopt->address, ETH_ALEN);
      |         ^~~~~
--- frag6 ---
tools/frag6.c: In function 'process_icmp6_timed':
--- flow6 ---
tools/flow6.c:2216:100: error: 'struct in6_addr' has no member named 's6_addr16'
 2216 |                                         if( dst->s6_addr16[j] != (idata->ip6_global.prefix[i])->ip6.s6_addr16[j])
      |                                                                                                    ^
--- icmp6 ---
tools/icmp6.c:3113:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 3113 |         bzero(&new_sig, sizeof(struct sigaction));
      |         ^~~~~
--- flow6 ---
tools/flow6.c:2222:49: error: 'struct in6_addr' has no member named 's6_addr16'
 2222 |                                         if( (dst->s6_addr16[full16] & mask16) == ((idata->ip6_global.prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                                 ^~
--- frag6 ---
tools/frag6.c:1758:9: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 1758 |         u_int8_t                        pkt_prev_nh;
      |         ^~~~~~~~
      |         uint8_t
--- flow6 ---
tools/flow6.c:2222:117: error: 'struct in6_addr' has no member named 's6_addr16'
 2222 |                                         if( (dst->s6_addr16[full16] & mask16) == ((idata->ip6_global.prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                                                                                                     ^
--- frag6 ---
tools/frag6.c:1768:54: error: invalid use of undefined type 'struct ip6_ext'
 1768 |                 ( (unsigned char *)pkt_ext + (pkt_ext->ip6e_len * 8 + 1)) < pkt_end){
      |                                                      ^~
--- flow6 ---
tools/flow6.c: In function 'send_neighbor_advert':
tools/flow6.c:2297:17: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 2297 |                 bcopy(idata->ether.a, tllaopt->address, ETH_ALEN);
      |                 ^~~~~
--- frag6 ---
tools/frag6.c:1773:37: error: invalid use of undefined type 'struct ip6_ext'
 1773 |                 pkt_prev_nh= pkt_ext->ip6e_nxt;
      |                                     ^~
tools/frag6.c:1774:83: error: invalid use of undefined type 'struct ip6_ext'
 1774 |                 pkt_ext= (struct ip6_ext *) ( (unsigned char *)pkt_ext + ((pkt_ext->ip6e_len + 1) * 8));
      |                                                                                   ^~
--- icmp6 ---
tools/icmp6.c:3199:47: error: 'struct in6_addr' has no member named 's6_addr16'
 3199 |                         if( (pkt_ipv6->ip6_src.s6_addr16[0] & htons(0xffc0)) != htons(0xfe80))
      |                                               ^
--- flow6 ---
tools/flow6.c: At top level:
--- frag6 ---
tools/frag6.c: At top level:
--- flow6 ---
tools/flow6.c:2407:21: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 2407 | int predict_flow_id(u_int32_t *s1, unsigned int n1, u_int32_t *s2, unsigned int n2){
      |                     ^~~~~~~~~
      |                     uint32_t
--- frag6 ---
tools/frag6.c:1863:20: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 1863 | int send_fragment2(u_int16_t ip6len, unsigned int id, unsigned int offset, unsigned int fsize, unsigned int order, \
      |                    ^~~~~~~~~
      |                    uint16_t
tools/frag6.c: In function 'send_fragment':
--- icmp6 ---
tools/icmp6.c: In function 'send_neighbor_advert':
--- flow6 ---
tools/flow6.c:2407:53: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 2407 | int predict_flow_id(u_int32_t *s1, unsigned int n1, u_int32_t *s2, unsigned int n2){
      |                                                     ^~~~~~~~~
      |                                                     uint32_t
--- frag6 ---
tools/frag6.c:2074:9: warning: implicit declaration of function 'bzero' [-Wimplicit-function-declaration]
 2074 |         bzero(ptr, FRAG_HDR_SIZE);
      |         ^~~~~
tools/frag6.c:2074:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
--- icmp6 ---
tools/icmp6.c:3353:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 3353 |         u_int16_t       mask16;
      |         ^~~~~~~~~
      |         uint16_t
--- flow6 ---
tools/flow6.c:2465:14: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 2465 | int inc_sdev(u_int32_t *s, unsigned int n, u_int32_t *diff_avg, double *diff_sdev){
      |              ^~~~~~~~~
      |              uint32_t
--- icmp6 ---
tools/icmp6.c:3388:17: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 3388 |                 bcopy(idata->ether.a, tllaopt->address, ETH_ALEN);
      |                 ^~~~~
--- flow6 ---
tools/flow6.c:2465:44: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 2465 | int inc_sdev(u_int32_t *s, unsigned int n, u_int32_t *diff_avg, double *diff_sdev){
      |                                            ^~~~~~~~~
      |                                            uint32_t
--- icmp6 ---
tools/icmp6.c:3464:57: error: 'struct in6_addr' has no member named 's6_addr16'
 3464 |                                         if( pkt_ipv6addr->s6_addr16[j] != (idata->ip6_global.prefix[i])->ip6.s6_addr16[j])
      |                                                         ^~
--- frag6 ---
tools/frag6.c:2139:64: error: 'u_int32_t' undeclared (first use in this function); did you mean 'uint32_t'?
 2139 |                 if(tstamp_f && fsize >= (sizeof(time_t)+sizeof(u_int32_t))){
      |                                                                ^~~~~~~~~
      |                                                                uint32_t
--- icmp6 ---
tools/icmp6.c:3464:109: error: 'struct in6_addr' has no member named 's6_addr16'
 3464 |                                         if( pkt_ipv6addr->s6_addr16[j] != (idata->ip6_global.prefix[i])->ip6.s6_addr16[j])
      |                                                                                                             ^
--- frag6 ---
tools/frag6.c:2151:38: error: expected expression before ')' token
 2151 |                         *(u_int32_t *)ptr= (u_int32_t)tstamp ^ 0xabcdabcd;
      |                                      ^
--- flow6 ---
tools/flow6.c:2533:24: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 2533 | void change_endianness(u_int32_t *s, unsigned int n){
      |                        ^~~~~~~~~
      |                        uint32_t
--- frag6 ---
tools/frag6.c:2162:38: error: expected expression before ')' token
 2162 |                         *(u_int32_t *)ptr = random();
      |                                      ^
--- flow6 ---
tools/flow6.c: In function 'send_neighbor_solicit':
--- icmp6 ---
tools/icmp6.c:3470:58: error: 'struct in6_addr' has no member named 's6_addr16'
 3470 |                                         if( (pkt_ipv6addr->s6_addr16[full16] & mask16) == ((idata->ip6_global.prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                                          ^~
--- flow6 ---
tools/flow6.c:2613:9: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 2613 |         bcopy( &(idata->ether.a), sllaopt->address, ETH_ALEN);
      |         ^~~~~
--- icmp6 ---
tools/icmp6.c:3470:126: error: 'struct in6_addr' has no member named 's6_addr16'
 3470 |                                         if( (pkt_ipv6addr->s6_addr16[full16] & mask16) == ((idata->ip6_global.prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                                                                                                              ^
--- frag6 ---
tools/frag6.c:2167:38: warning: implicit declaration of function 'in_chksum'; did you mean 'rr_cksum'? [-Wimplicit-function-declaration]
 2167 |                 icmp6->icmp6_cksum = in_chksum(v6buffer, icmp6, ptr-((unsigned char *)icmp6), IPPROTO_ICMPV6);
      |                                      ^~~~~~~~~
      |                                      rr_cksum
--- icmp6 ---
tools/icmp6.c: In function 'is_eq_in6_addr':
--- frag6 ---
tools/frag6.c:2182:38: error: expected expression before ')' token
 2182 |                         *(u_int32_t *)ptr= (u_int32_t)tstamp ^ 0xabcdabcd;
      |                                      ^
--- icmp6 ---
tools/icmp6.c:3600:23: error: 'struct in6_addr' has no member named 's6_addr16'
 3600 |                 if(ip1->s6_addr16[i] != ip2->s6_addr16[i])
      |                       ^~
--- frag6 ---
tools/frag6.c:2202:38: error: expected expression before ')' token
 2202 |                         *(u_int32_t *)ptr = random();
      |                                      ^
--- icmp6 ---
tools/icmp6.c:3600:44: error: 'struct in6_addr' has no member named 's6_addr16'
 3600 |                 if(ip1->s6_addr16[i] != ip2->s6_addr16[i])
      |                                            ^~
--- frag6 ---
tools/frag6.c: In function 'send_fid_probe':
--- icmp6 ---
tools/icmp6.c: In function 'ether_to_ipv6_linklocal':
--- frag6 ---
tools/frag6.c:2261:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 2261 |         bzero(frag, sizeof(struct ip6_frag));
      |         ^~~~~
--- icmp6 ---
tools/icmp6.c:3615:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3615 |         ipv6addr->s6_addr16[0]= htons(0xfe80); /* Link-local unicast prefix */
      |                 ^~
tools/icmp6.c:3618:25: error: 'struct in6_addr' has no member named 's6_addr16'
 3618 |                 ipv6addr->s6_addr16[i]=0x0000;
      |                         ^~
tools/icmp6.c:3620:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3620 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                 ^~
--- frag6 ---
tools/frag6.c:2277:11: error: 'u_int32_t' undeclared (first use in this function); did you mean 'uint32_t'?
 2277 |         *(u_int32_t *)ptr= icmp6_sig;
      |           ^~~~~~~~~
      |           uint32_t
tools/frag6.c:2277:22: error: expected expression before ')' token
 2277 |         *(u_int32_t *)ptr= icmp6_sig;
      |                      ^
--- flow6 ---
tools/flow6.c: In function 'src_addr_sel':
tools/flow6.c:2232:1: warning: control reaches end of non-void function [-Wreturn-type]
 2232 | }
      | ^
--- icmp6 ---
tools/icmp6.c:3620:42: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
 3620 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                                          ^~~~~~~~~
      |                                          uint16_t
--- frag6 ---
tools/frag6.c:2281:30: error: expected expression before ')' token
 2281 |                 *(u_int32_t *)ptr= random();
      |                              ^
tools/frag6.c: At top level:
tools/frag6.c:2412:1: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 2412 | u_int16_t in_chksum(void *ptr_ipv6, void *ptr_icmpv6, size_t len, u_int8_t proto){
      | ^~~~~~~~~
      | uint16_t
--- icmp6 ---
tools/icmp6.c:3620:52: error: expected ')' before 'etheraddr'
 3620 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
tools/icmp6.c:3621:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3621 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                 ^~
--- frag6 ---
tools/frag6.c:2412:67: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 2412 | u_int16_t in_chksum(void *ptr_ipv6, void *ptr_icmpv6, size_t len, u_int8_t proto){
      |                                                                   ^~~~~~~~
      |                                                                   uint8_t
--- icmp6 ---
tools/icmp6.c:3621:53: error: expected ')' before 'etheraddr'
 3621 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                                         ~           ^~~~~~~~~
      |                                                     )
--- frag6 ---
tools/frag6.c:2568:54: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 2568 | unsigned int match_ipv6(struct in6_addr *prefixlist, u_int8_t *prefixlen, unsigned int nprefix,
      |                                                      ^~~~~~~~
      |                                                      uint8_t
--- icmp6 ---
tools/icmp6.c:3622:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3622 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                 ^~
--- frag6 ---
tools/frag6.c:2620:54: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 2620 | void sanitize_ipv6_prefix(struct in6_addr *ipv6addr, u_int8_t prefixlen){
      |                                                      ^~~~~~~~
      |                                                      uint8_t
--- flow6 ---
*** [flow6] Error code 1

bmake: stopped making "all" in /home/pbulk/build/security/ipv6-toolkit/work/ipv6toolkit-v1.4.1
--- icmp6 ---
tools/icmp6.c:3622:51: error: expected ')' before numeric constant
 3622 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                                       ~           ^~~~~~~
      |                                                   )
tools/icmp6.c:3623:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3623 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                 ^~
--- frag6 ---
tools/frag6.c:2645:78: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 2645 | void randomize_ipv6_addr(struct in6_addr *ipv6addr, struct in6_addr *prefix, u_int8_t preflen){
      |                                                                              ^~~~~~~~
      |                                                                              uint8_t
--- icmp6 ---
tools/icmp6.c:3623:52: error: expected ')' before 'etheraddr'
 3623 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
--- frag6 ---
tools/frag6.c: In function 'ipv6_to_ether':
--- icmp6 ---
tools/icmp6.c: In function 'match_ipv6_to_prefixes':
--- frag6 ---
tools/frag6.c:2841:9: warning: implicit declaration of function 'bcopy' [-Wimplicit-function-declaration]
 2841 |         bcopy( &(idata->ether.a), sllaopt->address, ETH_ALEN);
      |         ^~~~~
tools/frag6.c:2841:9: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
--- icmp6 ---
tools/icmp6.c:3650:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 3650 |         u_int16_t       mask;
      |         ^~~~~~~~~
      |         uint16_t
--- frag6 ---
tools/frag6.c:2850:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 2850 |         bzero(&new_sig, sizeof(struct sigaction));
      |         ^~~~~
--- icmp6 ---
tools/icmp6.c:3655:36: error: 'struct in6_addr' has no member named 's6_addr16'
 3655 |                         if(ipv6addr->s6_addr16[j] != (pf->prefix[i])->ip6.s6_addr16[j])
      |                                    ^~
tools/icmp6.c:3655:74: error: 'struct in6_addr' has no member named 's6_addr16'
 3655 |                         if(ipv6addr->s6_addr16[j] != (pf->prefix[i])->ip6.s6_addr16[j])
      |                                                                          ^
tools/icmp6.c:3665:56: error: 'struct in6_addr' has no member named 's6_addr16'
 3665 |                                 if((pf->prefix[i])->ip6.s6_addr16[full16] == (ipv6addr->s6_addr16[full16] & htons(mask)))
      |                                                        ^
tools/icmp6.c:3665:87: error: 'struct in6_addr' has no member named 's6_addr16'
 3665 |                                 if((pf->prefix[i])->ip6.s6_addr16[full16] == (ipv6addr->s6_addr16[full16] & htons(mask)))
      |                                                                                       ^~
tools/icmp6.c: In function 'get_if_addrs':
tools/icmp6.c:3726:83: error: 'struct in6_addr' has no member named 's6_addr16'
 3726 |                         if( !(idata->ip6_local_flag) &&  (((sockin6ptr->sin6_addr).s6_addr16[0] & htons(0xffc0)) \
      |                                                                                   ^
--- frag6 ---
tools/frag6.c: In function 'solicited_node':
--- icmp6 ---
tools/icmp6.c:3739:58: error: 'struct in6_addr' has no member named 's6_addr16'
 3739 |                         else if( ((sockin6ptr->sin6_addr).s6_addr16[0] & htons(0xffc0)) != htons(0xfe80)){
      |                                                          ^
--- frag6 ---
tools/frag6.c:2996:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2996 |         solicited.s6_addr16[0]= htons(0xff02);
      |                  ^
--- icmp6 ---
tools/icmp6.c: In function 'generate_slaac_address':
--- frag6 ---
tools/frag6.c:2997:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2997 |         solicited.s6_addr16[1]= 0x0000;
      |                  ^
--- icmp6 ---
tools/icmp6.c:3779:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3779 |         ipv6addr->s6_addr16[0]= htons(0xfe80); /* Link-local unicast prefix */
      |                 ^~
--- frag6 ---
tools/frag6.c:2998:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2998 |         solicited.s6_addr16[2]= 0x0000;
      |                  ^
--- icmp6 ---
tools/icmp6.c:3782:25: error: 'struct in6_addr' has no member named 's6_addr16'
 3782 |                 ipv6addr->s6_addr16[i]= prefix->s6_addr16[i];
      |                         ^~
--- frag6 ---
tools/frag6.c:2999:18: error: 'struct in6_addr' has no member named 's6_addr16'
 2999 |         solicited.s6_addr16[3]= 0x0000;
      |                  ^
--- icmp6 ---
tools/icmp6.c:3782:47: error: 'struct in6_addr' has no member named 's6_addr16'
 3782 |                 ipv6addr->s6_addr16[i]= prefix->s6_addr16[i];
      |                                               ^~
--- frag6 ---
tools/frag6.c:3000:18: error: 'struct in6_addr' has no member named 's6_addr16'
 3000 |         solicited.s6_addr16[4]= 0x0000;
      |                  ^
--- icmp6 ---
tools/icmp6.c:3784:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3784 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t) (etheraddr->a[0] | 0x02) << 8) | etheraddr->a[1]);
      |                 ^~
--- frag6 ---
tools/frag6.c:3001:18: error: 'struct in6_addr' has no member named 's6_addr16'
 3001 |         solicited.s6_addr16[5]= htons(0x0001);
      |                  ^
tools/frag6.c:3002:18: error: 'struct in6_addr' has no member named 's6_addr16'
 3002 |         solicited.s6_addr16[6]= htons(0xff00) | ipv6addr->s6_addr16[6];
      |                  ^
tools/frag6.c:3002:57: error: 'const struct in6_addr' has no member named 's6_addr16'
 3002 |         solicited.s6_addr16[6]= htons(0xff00) | ipv6addr->s6_addr16[6];
      |                                                         ^~
--- icmp6 ---
tools/icmp6.c:3784:42: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
 3784 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t) (etheraddr->a[0] | 0x02) << 8) | etheraddr->a[1]);
      |                                          ^~~~~~~~~
      |                                          uint16_t
--- frag6 ---
tools/frag6.c:3003:18: error: 'struct in6_addr' has no member named 's6_addr16'
 3003 |         solicited.s6_addr16[7]= ipv6addr->s6_addr16[7];
      |                  ^
--- icmp6 ---
tools/icmp6.c:3785:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3785 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                 ^~
--- frag6 ---
tools/frag6.c:3003:41: error: 'const struct in6_addr' has no member named 's6_addr16'
 3003 |         solicited.s6_addr16[7]= ipv6addr->s6_addr16[7];
      |                                         ^~
tools/frag6.c: In function 'init_iface_data':
tools/frag6.c:3036:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 3036 |         bzero(idata, sizeof(struct iface_data));
      |         ^~~~~
--- icmp6 ---
tools/icmp6.c:3785:53: error: expected ')' before 'etheraddr'
 3785 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                                         ~           ^~~~~~~~~
      |                                                     )
--- frag6 ---
tools/frag6.c: In function 'find_ipv6_router_full':
--- icmp6 ---
tools/icmp6.c:3786:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3786 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                 ^~
--- frag6 ---
tools/frag6.c:3195:9: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 3195 |         bcopy( &(idata->ether.a), sllaopt->address, ETH_ALEN);
      |         ^~~~~
tools/frag6.c:3204:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 3204 |         bzero(&new_sig, sizeof(struct sigaction));
      |         ^~~~~
--- icmp6 ---
tools/icmp6.c:3786:51: error: expected ')' before numeric constant
 3786 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                                       ~           ^~~~~~~
      |                                                   )
--- frag6 ---
tools/frag6.c:3290:47: error: 'struct in6_addr' has no member named 's6_addr16'
 3290 |                         if( (pkt_ipv6->ip6_src.s6_addr16[0] & htons(0xffc0)) != htons(0xfe80))
      |                                               ^
--- icmp6 ---
tools/icmp6.c:3787:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3787 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                 ^~
--- frag6 ---
tools/frag6.c: In function 'is_eq_in6_addr':
tools/frag6.c:3442:23: error: 'struct in6_addr' has no member named 's6_addr16'
 3442 |                 if(ip1->s6_addr16[i] != ip2->s6_addr16[i])
      |                       ^~
tools/frag6.c:3442:44: error: 'struct in6_addr' has no member named 's6_addr16'
 3442 |                 if(ip1->s6_addr16[i] != ip2->s6_addr16[i])
      |                                            ^~
--- icmp6 ---
tools/icmp6.c:3787:52: error: expected ')' before 'etheraddr'
 3787 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
tools/icmp6.c: In function 'init_iface_data':
--- frag6 ---
tools/frag6.c: In function 'ether_to_ipv6_linklocal':
--- icmp6 ---
tools/icmp6.c:3798:9: warning: incompatible implicit declaration of built-in function 'bzero' [-Wbuiltin-declaration-mismatch]
 3798 |         bzero(idata, sizeof(struct iface_data));
      |         ^~~~~
--- frag6 ---
tools/frag6.c:3457:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3457 |         ipv6addr->s6_addr16[0]= htons(0xfe80); /* Link-local unicast prefix */
      |                 ^~
tools/frag6.c:3460:25: error: 'struct in6_addr' has no member named 's6_addr16'
 3460 |                 ipv6addr->s6_addr16[i]=0x0000;
      |                         ^~
tools/frag6.c:3462:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3462 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                 ^~
tools/frag6.c:3462:42: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
 3462 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                                          ^~~~~~~~~
      |                                          uint16_t
tools/frag6.c:3462:52: error: expected ')' before 'etheraddr'
 3462 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t)etheraddr->a[0] << 8) | etheraddr->a[1]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
tools/frag6.c:3463:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3463 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                 ^~
tools/frag6.c:3463:53: error: expected ')' before 'etheraddr'
 3463 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                                         ~           ^~~~~~~~~
      |                                                     )
tools/frag6.c:3464:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3464 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                 ^~
tools/frag6.c:3464:51: error: expected ')' before numeric constant
 3464 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                                       ~           ^~~~~~~
      |                                                   )
tools/frag6.c:3465:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3465 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                 ^~
tools/frag6.c:3465:52: error: expected ')' before 'etheraddr'
 3465 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
tools/frag6.c: In function 'get_if_addrs':
--- icmp6 ---
*** [icmp6] Error code 1

bmake: stopped making "all" in /home/pbulk/build/security/ipv6-toolkit/work/ipv6toolkit-v1.4.1
--- frag6 ---
tools/frag6.c:3536:83: error: 'struct in6_addr' has no member named 's6_addr16'
 3536 |                         if( !(idata->ip6_local_flag) &&  (((sockin6ptr->sin6_addr).s6_addr16[0] & htons(0xffc0)) \
      |                                                                                   ^
tools/frag6.c:3549:58: error: 'struct in6_addr' has no member named 's6_addr16'
 3549 |                         else if( ((sockin6ptr->sin6_addr).s6_addr16[0] & htons(0xffc0)) != htons(0xfe80)){
      |                                                          ^
tools/frag6.c: In function 'is_ip6_in_prefix_list':
tools/frag6.c:3590:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 3590 |         u_int16_t       mask16;
      |         ^~~~~~~~~
      |         uint16_t
tools/frag6.c:3598:34: error: 'struct in6_addr' has no member named 's6_addr16'
 3598 |                         if(target->s6_addr16[j] != (plist->prefix[i])->ip6.s6_addr16[j])
      |                                  ^~
tools/frag6.c:3598:75: error: 'struct in6_addr' has no member named 's6_addr16'
 3598 |                         if(target->s6_addr16[j] != (plist->prefix[i])->ip6.s6_addr16[j])
      |                                                                           ^
tools/frag6.c:3604:36: error: 'struct in6_addr' has no member named 's6_addr16'
 3604 |                         if( (target->s6_addr16[full16] & mask16) == ((plist->prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                    ^~
tools/frag6.c:3604:93: error: 'struct in6_addr' has no member named 's6_addr16'
 3604 |                         if( (target->s6_addr16[full16] & mask16) == ((plist->prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                                                                             ^
tools/frag6.c: In function 'match_ipv6_to_prefixes':
tools/frag6.c:3621:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 3621 |         u_int16_t       mask;
      |         ^~~~~~~~~
      |         uint16_t
tools/frag6.c:3626:36: error: 'struct in6_addr' has no member named 's6_addr16'
 3626 |                         if(ipv6addr->s6_addr16[j] != (pf->prefix[i])->ip6.s6_addr16[j])
      |                                    ^~
tools/frag6.c:3626:74: error: 'struct in6_addr' has no member named 's6_addr16'
 3626 |                         if(ipv6addr->s6_addr16[j] != (pf->prefix[i])->ip6.s6_addr16[j])
      |                                                                          ^
tools/frag6.c:3636:56: error: 'struct in6_addr' has no member named 's6_addr16'
 3636 |                                 if((pf->prefix[i])->ip6.s6_addr16[full16] == (ipv6addr->s6_addr16[full16] & htons(mask)))
      |                                                        ^
tools/frag6.c:3636:87: error: 'struct in6_addr' has no member named 's6_addr16'
 3636 |                                 if((pf->prefix[i])->ip6.s6_addr16[full16] == (ipv6addr->s6_addr16[full16] & htons(mask)))
      |                                                                                       ^~
tools/frag6.c: In function 'generate_slaac_address':
tools/frag6.c:3654:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3654 |         ipv6addr->s6_addr16[0]= htons(0xfe80); /* Link-local unicast prefix */
      |                 ^~
tools/frag6.c:3657:25: error: 'struct in6_addr' has no member named 's6_addr16'
 3657 |                 ipv6addr->s6_addr16[i]= prefix->s6_addr16[i];
      |                         ^~
tools/frag6.c:3657:47: error: 'struct in6_addr' has no member named 's6_addr16'
 3657 |                 ipv6addr->s6_addr16[i]= prefix->s6_addr16[i];
      |                                               ^~
tools/frag6.c:3659:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3659 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t) (etheraddr->a[0] | 0x02) << 8) | etheraddr->a[1]);
      |                 ^~
tools/frag6.c:3659:42: error: 'u_int16_t' undeclared (first use in this function); did you mean 'uint16_t'?
 3659 |         ipv6addr->s6_addr16[4]=  htons(((u_int16_t) (etheraddr->a[0] | 0x02) << 8) | etheraddr->a[1]);
      |                                          ^~~~~~~~~
      |                                          uint16_t
tools/frag6.c:3660:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3660 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                 ^~
tools/frag6.c:3660:53: error: expected ')' before 'etheraddr'
 3660 |         ipv6addr->s6_addr16[5]=  htons( ((u_int16_t)etheraddr->a[2] << 8) | 0xff);
      |                                         ~           ^~~~~~~~~
      |                                                     )
tools/frag6.c:3661:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3661 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                 ^~
tools/frag6.c:3661:51: error: expected ')' before numeric constant
 3661 |         ipv6addr->s6_addr16[6]=  htons((u_int16_t) 0xfe00 | etheraddr->a[3]);
      |                                       ~           ^~~~~~~
      |                                                   )
tools/frag6.c:3662:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3662 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                 ^~
tools/frag6.c:3662:52: error: expected ')' before 'etheraddr'
 3662 |         ipv6addr->s6_addr16[7]=  htons(((u_int16_t)etheraddr->a[4] << 8) | etheraddr->a[5]);
      |                                        ~           ^~~~~~~~~
      |                                                    )
tools/frag6.c: In function 'src_addr_sel':
tools/frag6.c:3674:9: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
 3674 |         u_int16_t       mask16;
      |         ^~~~~~~~~
      |         uint16_t
tools/frag6.c:3684:17: error: 'struct in6_addr' has no member named 's6_addr16'
 3684 |         if( (dst->s6_addr16[0] & htons(0xffc0)) == htons(0xfe80)){
      |                 ^~
tools/frag6.c:3697:48: error: 'struct in6_addr' has no member named 's6_addr16'
 3697 |                                         if( dst->s6_addr16[j] != (idata->ip6_global.prefix[i])->ip6.s6_addr16[j])
      |                                                ^~
tools/frag6.c:3697:100: error: 'struct in6_addr' has no member named 's6_addr16'
 3697 |                                         if( dst->s6_addr16[j] != (idata->ip6_global.prefix[i])->ip6.s6_addr16[j])
      |                                                                                                    ^
tools/frag6.c:3703:49: error: 'struct in6_addr' has no member named 's6_addr16'
 3703 |                                         if( (dst->s6_addr16[full16] & mask16) == ((idata->ip6_global.prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                                 ^~
tools/frag6.c:3703:117: error: 'struct in6_addr' has no member named 's6_addr16'
 3703 |                                         if( (dst->s6_addr16[full16] & mask16) == ((idata->ip6_global.prefix[i])->ip6.s6_addr16[full16] & mask16))
      |                                                                                                                     ^
tools/frag6.c: In function 'send_neighbor_advert':
tools/frag6.c:3772:17: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 3772 |                 bcopy(idata->ether.a, tllaopt->address, ETH_ALEN);
      |                 ^~~~~
tools/frag6.c: In function 'valid_icmp6_response':
tools/frag6.c:3892:9: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 3892 |         u_int8_t                        pkt_prev_nh;
      |         ^~~~~~~~
      |         uint8_t
tools/frag6.c:3932:39: error: 'u_int32_t' undeclared (first use in this function); did you mean 'uint32_t'?
 3932 |                                 if( *(u_int32_t *) pkt_ptr != (*(u_int32_t *) (pkt_ptr+sizeof(u_int32_t)) ^ 0xabcdabcd)){
      |                                       ^~~~~~~~~
      |                                       uint32_t
tools/frag6.c:3932:50: error: expected expression before ')' token
 3932 |                                 if( *(u_int32_t *) pkt_ptr != (*(u_int32_t *) (pkt_ptr+sizeof(u_int32_t)) ^ 0xabcdabcd)){
      |                                                  ^
tools/frag6.c:3959:70: error: invalid use of undefined type 'struct ip6_ext'
 3959 |                                 ( (unsigned char *)pkt_ext + (pkt_ext->ip6e_len * 8 + 1)) < pkt_end){
      |                                                                      ^~
tools/frag6.c:3964:53: error: invalid use of undefined type 'struct ip6_ext'
 3964 |                                 pkt_prev_nh= pkt_ext->ip6e_nxt;
      |                                                     ^~
tools/frag6.c:3965:99: error: invalid use of undefined type 'struct ip6_ext'
 3965 |                                 pkt_ext= (struct ip6_ext *) ( (unsigned char *)pkt_ext + ((pkt_ext->ip6e_len + 1) * 8));
      |                                                                                                   ^~
tools/frag6.c:3998:58: error: expected expression before ')' token
 3998 |                                         if( *(u_int32_t *) pkt_ptr != (*(u_int32_t *) (pkt_ptr+sizeof(u_int32_t)) ^ 0xabcdabcd)){
      |                                                          ^
tools/frag6.c:3891:44: warning: variable 'pkt_ptr' set but not used [-Wunused-but-set-variable]
 3891 |         unsigned char           *pkt_end, *pkt_ptr;
      |                                            ^~~~~~~
tools/frag6.c: In function 'valid_icmp6_response2':
tools/frag6.c:4056:9: error: unknown type name 'u_int8_t'; did you mean 'uint8_t'?
 4056 |         u_int8_t                        pkt_prev_nh;
      |         ^~~~~~~~
      |         uint8_t
tools/frag6.c:4108:70: error: invalid use of undefined type 'struct ip6_ext'
 4108 |                                 ( (unsigned char *)pkt_ext + (pkt_ext->ip6e_len * 8 + 1)) < pkt_end){
      |                                                                      ^~
tools/frag6.c:4113:53: error: invalid use of undefined type 'struct ip6_ext'
 4113 |                                 pkt_prev_nh= pkt_ext->ip6e_nxt;
      |                                                     ^~
tools/frag6.c:4114:99: error: invalid use of undefined type 'struct ip6_ext'
 4114 |                                 pkt_ext= (struct ip6_ext *) ( (unsigned char *)pkt_ext + ((pkt_ext->ip6e_len + 1) * 8));
      |                                                                                                   ^~
tools/frag6.c: At top level:
tools/frag6.c:4209:21: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 4209 | int predict_frag_id(u_int32_t *s1, unsigned int n1, u_int32_t *s2, unsigned int n2){
      |                     ^~~~~~~~~
      |                     uint32_t
tools/frag6.c:4209:53: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 4209 | int predict_frag_id(u_int32_t *s1, unsigned int n1, u_int32_t *s2, unsigned int n2){
      |                                                     ^~~~~~~~~
      |                                                     uint32_t
tools/frag6.c:4252:14: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 4252 | int inc_sdev(u_int32_t *s, unsigned int n, u_int32_t *diff_avg, double *diff_sdev){
      |              ^~~~~~~~~
      |              uint32_t
tools/frag6.c:4252:44: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 4252 | int inc_sdev(u_int32_t *s, unsigned int n, u_int32_t *diff_avg, double *diff_sdev){
      |                                            ^~~~~~~~~
      |                                            uint32_t
tools/frag6.c:4320:24: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
 4320 | void change_endianness(u_int32_t *s, unsigned int n){
      |                        ^~~~~~~~~
      |                        uint32_t
tools/frag6.c: In function 'send_neighbor_solicit':
tools/frag6.c:4400:9: warning: incompatible implicit declaration of built-in function 'bcopy' [-Wbuiltin-declaration-mismatch]
 4400 |         bcopy( &(idata->ether.a), sllaopt->address, ETH_ALEN);
      |         ^~~~~
tools/frag6.c: In function 'src_addr_sel':
tools/frag6.c:3713:1: warning: control reaches end of non-void function [-Wreturn-type]
 3713 | }
      | ^
*** [frag6] Error code 1

bmake: stopped making "all" in /home/pbulk/build/security/ipv6-toolkit/work/ipv6toolkit-v1.4.1
bmake: 4 errors

bmake: stopped making "all" in /home/pbulk/build/security/ipv6-toolkit/work/ipv6toolkit-v1.4.1
*** Error code 2

Stop.
bmake[1]: stopped making "all" in /data/jenkins/workspace/pkgsrc-2024Q4-x86_64/security/ipv6-toolkit
*** Error code 1

Stop.
bmake: stopped making "all" in /data/jenkins/workspace/pkgsrc-2024Q4-x86_64/security/ipv6-toolkit