Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

using pcap_next_ex to capture packet, and I got a lot of return value which is TMOUT #546

Closed
overweight opened this issue Dec 26, 2016 · 24 comments
Labels

Comments

@overweight
Copy link

Hi,
I'm running CentOS 7.1 with:
linux 3.10.0
pcap 1.5.3-3

When I run my app , which I call pcap_open_live(DevName, PCAP_BUF_SIZE, promisc, 1000, szErrbuf) to create a handler, use pcap_next_ex to capture packet.

And I got the follow strace log, It looks like something goes wrong.
there was thousands of pcap_next_ex called in one second, but I got the TMOUT return value.
In the app, I sleep 1 ms every 16 pcap_next_ex called.

Process 21903 attached
18:02:40.754761 select(1, NULL, NULL, NULL, {0, 282}) = 0 (Timeout) <0.000734>
18:02:40.755568 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000013>
18:02:40.755625 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000017>
18:02:40.755670 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000006>
18:02:40.755695 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000006>
18:02:40.755720 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.755758 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.755798 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.755836 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.755876 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.755922 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.755960 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000009>
18:02:40.755996 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000009>
18:02:40.756036 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.756076 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000279>
18:02:40.756399 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000086>
18:02:40.756536 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000222>
18:02:40.756805 select(1, NULL, NULL, NULL, {0, 1000}) = 0 (Timeout) <0.001517>
18:02:40.758362 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000012>
18:02:40.758426 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000084>
18:02:40.758550 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000012>
18:02:40.758594 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.758633 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.758680 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000009>
18:02:40.758718 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.758754 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.758793 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.758831 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000009>
18:02:40.758872 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.758914 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000016>
18:02:40.758957 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.758994 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000016>
18:02:40.759038 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.759073 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.759108 select(1, NULL, NULL, NULL, {0, 1000}) = 0 (Timeout) <0.001527>
18:02:40.760666 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000014>
18:02:40.760714 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.760756 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.760800 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000009>
18:02:40.760842 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.760877 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.760914 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.760962 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.761005 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000015>
18:02:40.761048 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.761088 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000299>
18:02:40.761619 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000012>
18:02:40.761671 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000012>
18:02:40.761712 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.761750 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.761789 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.761828 select(1, NULL, NULL, NULL, {0, 1000}) = 0 (Timeout) <0.001310>
18:02:40.763172 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.763219 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000014>
18:02:40.763261 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.763297 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.763333 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.763370 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000012>
18:02:40.763407 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.763463 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000008>
18:02:40.763500 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.763540 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.763576 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.763612 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000017>
18:02:40.763654 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000011>
18:02:40.763691 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.763727 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000009>
18:02:40.763767 poll([{fd=54, events=POLLIN}], 1, 1000) = 1 ([{fd=54, revents=POLLIN}]) <0.000010>
18:02:40.763807 select(1, NULL, NULL, NULL, {0, 1000}) = 0 (Timeout) <0.001751>

@overweight
Copy link
Author

And when I used tcpdump capture packets from the interface eth0, we only to see dozens of packages .

@infrastation
Copy link
Member

libpcap 1.5.3 is slightly more than 3 years old, could you check with libpcap 1.8.1 and/or the current git master branch and update if the behaviour is still not what you expect?

@eugenepaniot
Copy link

reproduced in libpcap-1.8.1

@guyharris
Copy link
Member

reproduced in libpcap-1.8.1

What kernel version?

@eugenepaniot
Copy link

Kernel version is 3.10.0-327.36.2.el7.x86_64

@eugenepaniot
Copy link

tcpdump version 4.9.0
libpcap version 1.8.1

'/usr/sbin/tcpdump -Z pcap -p -i any -s 0 -U -C 100 -W 200 -w /var/log/siplogger/sip.pcap udp port 5060 or 5090'

There is some debug information:

gdb /usr/sbin/tcpdump --pid=10969
...
(gdb) bt
#0  0x00007fc092f01680 in __poll_nocancel () from /lib64/libc.so.6
#1  0x0000000000496498 in poll (__timeout=<optimized out>, __nfds=1, __fds=0x7fff745b3820) at /usr/include/bits/poll2.h:46
#2  pcap_wait_for_frames_mmap (handle=0x27e12a0) at ./pcap-linux.c:4558
#3  0x000000000049683d in pcap_read_linux_mmap_v2 (handle=0x27e12a0, max_packets=-1, callback=0x4069a0 <dump_packet_and_trunc>, user=0x7fff745b3990 "eo[t\377\177") at ./pcap-linux.c:4964
#4  0x000000000047d95d in pcap_loop (p=0x27e12a0, cnt=cnt@entry=-1, callback=callback@entry=0x4069a0 <dump_packet_and_trunc>, user=user@entry=0x7fff745b3990 "eo[t\377\177") at ./pcap.c:897
#5  0x000000000040533d in main (argc=<optimized out>, argv=<optimized out>) at ./tcpdump.c:2004

@guyharris
Copy link
Member

So did that version of libpcap come with the OS or did you build it from source yourself?

@eugenepaniot
Copy link

I've built RPMs (tcpdump, libpcap) from the source

@guyharris
Copy link
Member

guyharris commented Jun 23, 2017

Where "the source" is the source from tcpdump.org, or where "the source" is source RPMs from somewhere, or "the source" is something else?

@eugenepaniot
Copy link

Tthe source from http://www.tcpdump.org/#latest-releases
Version: 1.8.1
Release Date: October 25, 2016

@guyharris
Copy link
Member

So what's the content of the config.log file when you ran the configure script?

@eugenepaniot
Copy link

There is libpcap-1.8.1 log config.log:

It was created by configure, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info

## --------- ##
## Platform. ##
## --------- ##

hostname = ops01-t01-hlb03
uname -m = x86_64
uname -r = 3.10.0-327.4.5.el7.x86_64
uname -s = Linux
uname -v = #1 SMP Mon Jan 25 22:07:14 UTC 2016

/usr/bin/uname -p = x86_64
/bin/uname -X     = unknown

/bin/arch              = x86_64
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /root/bin


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2350: checking build system type
configure:2364: result: x86_64-redhat-linux-gnu
configure:2384: checking host system type
configure:2397: result: x86_64-redhat-linux-gnu
configure:2417: checking target system type
configure:2430: result: x86_64-redhat-linux-gnu
configure:2538: checking for x86_64-redhat-linux-gnu-gcc
configure:2568: result: no
configure:2578: checking for gcc
configure:2594: found /usr/bin/gcc
configure:2605: result: gcc
configure:2834: checking for C compiler version
configure:2843: gcc --version >&5
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:2854: $? = 0
configure:2843: gcc -v >&5
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) 
configure:2854: $? = 0
configure:2843: gcc -V >&5
gcc: error: unrecognized command line option '-V'
gcc: fatal error: no input files
compilation terminated.
configure:2854: $? = 4
configure:2843: gcc -qversion >&5
gcc: error: unrecognized command line option '-qversion'
gcc: fatal error: no input files
compilation terminated.
configure:2854: $? = 4
configure:2874: checking whether the C compiler works
configure:2896: gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:2900: $? = 0
configure:2948: result: yes
configure:2951: checking for C compiler default output file name
configure:2953: result: a.out
configure:2959: checking for suffix of executables
configure:2966: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:2970: $? = 0
configure:2992: result: 
configure:3014: checking whether we are cross compiling
configure:3022: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:3026: $? = 0
configure:3033: ./conftest
configure:3037: $? = 0
configure:3052: result: no
configure:3057: checking for suffix of object files
configure:3079: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:3083: $? = 0
configure:3104: result: o
configure:3108: checking whether we are using the GNU C compiler
configure:3127: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:3127: $? = 0
configure:3136: result: yes
configure:3145: checking whether gcc accepts -g
configure:3165: gcc -c -g  conftest.c >&5
configure:3165: $? = 0
configure:3206: result: yes
configure:3223: checking for gcc option to accept ISO C89
configure:3286: gcc  -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:3286: $? = 0
configure:3299: result: none needed
configure:3336: checking whether the compiler supports the -fvisibility=hidden option
configure:3362: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing -Werror -fvisibility=hidden  conftest.c >&5
configure:3362: $? = 0
configure:3364: result: yes
configure:3749: checking for inline
configure:3785: gcc -c  -fvisibility=hidden -fpic  conftest.c >&5
configure:3785: $? = 0
configure:3800: result: inline
configure:3812: checking for __attribute__
configure:3839: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:3839: $? = 0
configure:3858: result: yes
configure:3863: checking whether __attribute__((unused)) can be used without warnings
configure:3886: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing -Werror  conftest.c >&5
configure:3886: $? = 0
configure:3900: result: yes
configure:3904: checking whether __attribute__((format)) can be used without warnings
configure:3928: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing -Werror  conftest.c >&5
conftest.c: In function 'main':
conftest.c:22:1: error: control reaches end of non-void function [-Werror=return-type]
 }
 ^
cc1: all warnings being treated as errors
configure:3928: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
| 
| 
| #include <stdlib.h>
| 
| extern int foo(const char *fmt, ...)
| 		  __attribute__ ((format (printf, 1, 2)));
| 
| int
| main(int argc, char **argv)
| {
|   foo("%s", "test");
| }
| 
configure:3942: result: no
configure:3952: checking how to run the C preprocessor
configure:3983: gcc -E  conftest.c
configure:3983: $? = 0
configure:3997: gcc -E  conftest.c
conftest.c:11:28: fatal error: ac_nonexistent.h: No such file or directory
 #include <ac_nonexistent.h>
                            ^
compilation terminated.
configure:3997: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:4022: result: gcc -E
configure:4042: gcc -E  conftest.c
configure:4042: $? = 0
configure:4056: gcc -E  conftest.c
conftest.c:11:28: fatal error: ac_nonexistent.h: No such file or directory
 #include <ac_nonexistent.h>
                            ^
compilation terminated.
configure:4056: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:4085: checking for grep that handles long lines and -e
configure:4143: result: /usr/bin/grep
configure:4148: checking for egrep
configure:4210: result: /usr/bin/grep -E
configure:4215: checking for ANSI C header files
configure:4235: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4235: $? = 0
configure:4308: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:4308: $? = 0
configure:4308: ./conftest
configure:4308: $? = 0
configure:4319: result: yes
configure:4332: checking for sys/types.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4332: checking for sys/stat.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4332: checking for stdlib.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4332: checking for string.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4332: checking for memory.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4332: checking for strings.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4332: checking for inttypes.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4332: checking for stdint.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4332: checking for unistd.h
configure:4332: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4332: $? = 0
configure:4332: result: yes
configure:4346: checking sys/bitypes.h usability
configure:4346: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4346: $? = 0
configure:4346: result: yes
configure:4346: checking sys/bitypes.h presence
configure:4346: gcc -E  conftest.c
configure:4346: $? = 0
configure:4346: result: yes
configure:4346: checking for sys/bitypes.h
configure:4346: result: yes
configure:4357: checking for int8_t
configure:4357: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4357: $? = 0
configure:4357: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:62:21: error: expected expression before ')' token
 if (sizeof ((int8_t)))
                     ^
configure:4357: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #ifdef HAVE_SYS_BITYPES_H
| #include <sys/bitypes.h>
| #endif
| 
| int
| main ()
| {
| if (sizeof ((int8_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:4357: result: yes
configure:4370: checking for u_int8_t
configure:4370: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4370: $? = 0
configure:4370: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:62:23: error: expected expression before ')' token
 if (sizeof ((u_int8_t)))
                       ^
configure:4370: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #ifdef HAVE_SYS_BITYPES_H
| #include <sys/bitypes.h>
| #endif
| 
| int
| main ()
| {
| if (sizeof ((u_int8_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:4370: result: yes
configure:4383: checking for int16_t
configure:4383: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4383: $? = 0
configure:4383: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:58:22: error: expected expression before ')' token
 if (sizeof ((int16_t)))
                      ^
configure:4383: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main ()
| {
| if (sizeof ((int16_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:4383: result: yes
configure:4396: checking for u_int16_t
configure:4396: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4396: $? = 0
configure:4396: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:62:24: error: expected expression before ')' token
 if (sizeof ((u_int16_t)))
                        ^
configure:4396: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #ifdef HAVE_SYS_BITYPES_H
| #include <sys/bitypes.h>
| #endif
| 
| int
| main ()
| {
| if (sizeof ((u_int16_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:4396: result: yes
configure:4409: checking for int32_t
configure:4409: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4409: $? = 0
configure:4409: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:62:22: error: expected expression before ')' token
 if (sizeof ((int32_t)))
                      ^
configure:4409: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #ifdef HAVE_SYS_BITYPES_H
| #include <sys/bitypes.h>
| #endif
| 
| int
| main ()
| {
| if (sizeof ((int32_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:4409: result: yes
configure:4422: checking for u_int32_t
configure:4422: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4422: $? = 0
configure:4422: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:62:24: error: expected expression before ')' token
 if (sizeof ((u_int32_t)))
                        ^
configure:4422: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #ifdef HAVE_SYS_BITYPES_H
| #include <sys/bitypes.h>
| #endif
| 
| int
| main ()
| {
| if (sizeof ((u_int32_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:4422: result: yes
configure:4435: checking for int64_t
configure:4435: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4435: $? = 0
configure:4435: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:62:22: error: expected expression before ')' token
 if (sizeof ((int64_t)))
                      ^
configure:4435: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #ifdef HAVE_SYS_BITYPES_H
| #include <sys/bitypes.h>
| #endif
| 
| int
| main ()
| {
| if (sizeof ((int64_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:4435: result: yes
configure:4448: checking for u_int64_t
configure:4448: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4448: $? = 0
configure:4448: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:62:24: error: expected expression before ')' token
 if (sizeof ((u_int64_t)))
                        ^
configure:4448: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #ifdef HAVE_SYS_BITYPES_H
| #include <sys/bitypes.h>
| #endif
| 
| int
| main ()
| {
| if (sizeof ((u_int64_t)))
| 	    return 0;
|   ;
|   return 0;
| }
configure:4448: result: yes
configure:4472: checking for special C compiler options needed for large files
configure:4517: result: no
configure:4523: checking for _FILE_OFFSET_BITS value needed for large files
configure:4548: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4548: $? = 0
configure:4580: result: no
configure:4665: checking for _LARGEFILE_SOURCE value needed for large files
configure:4684: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:4684: $? = 0
configure:4712: result: no
configure:4737: checking sys/ioccom.h usability
configure:4737: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c:56:24: fatal error: sys/ioccom.h: No such file or directory
 #include <sys/ioccom.h>
                        ^
compilation terminated.
configure:4737: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sys/ioccom.h>
configure:4737: result: no
configure:4737: checking sys/ioccom.h presence
configure:4737: gcc -E  conftest.c
conftest.c:23:24: fatal error: sys/ioccom.h: No such file or directory
 #include <sys/ioccom.h>
                        ^
compilation terminated.
configure:4737: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| /* end confdefs.h.  */
| #include <sys/ioccom.h>
configure:4737: result: no
configure:4737: checking for sys/ioccom.h
configure:4737: result: no
configure:4737: checking sys/select.h usability
configure:4737: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4737: $? = 0
configure:4737: result: yes
configure:4737: checking sys/select.h presence
configure:4737: gcc -E  conftest.c
configure:4737: $? = 0
configure:4737: result: yes
configure:4737: checking for sys/select.h
configure:4737: result: yes
configure:4737: checking sys/sockio.h usability
configure:4737: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c:57:24: fatal error: sys/sockio.h: No such file or directory
 #include <sys/sockio.h>
                        ^
compilation terminated.
configure:4737: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <sys/sockio.h>
configure:4737: result: no
configure:4737: checking sys/sockio.h presence
configure:4737: gcc -E  conftest.c
conftest.c:24:24: fatal error: sys/sockio.h: No such file or directory
 #include <sys/sockio.h>
                        ^
compilation terminated.
configure:4737: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| /* end confdefs.h.  */
| #include <sys/sockio.h>
configure:4737: result: no
configure:4737: checking for sys/sockio.h
configure:4737: result: no
configure:4737: checking limits.h usability
configure:4737: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4737: $? = 0
configure:4737: result: yes
configure:4737: checking limits.h presence
configure:4737: gcc -E  conftest.c
configure:4737: $? = 0
configure:4737: result: yes
configure:4737: checking for limits.h
configure:4737: result: yes
configure:4749: checking linux/types.h usability
configure:4749: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4749: $? = 0
configure:4749: result: yes
configure:4749: checking linux/types.h presence
configure:4749: gcc -E  conftest.c
configure:4749: $? = 0
configure:4749: result: yes
configure:4749: checking for linux/types.h
configure:4749: result: yes
configure:4762: checking linux/if_packet.h usability
configure:4762: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4762: $? = 0
configure:4762: result: yes
configure:4762: checking linux/if_packet.h presence
configure:4762: gcc -E  conftest.c
configure:4762: $? = 0
configure:4762: result: yes
configure:4762: checking for linux/if_packet.h
configure:4762: result: yes
configure:4762: checking netpacket/packet.h usability
configure:4762: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4762: $? = 0
configure:4762: result: yes
configure:4762: checking netpacket/packet.h presence
configure:4762: gcc -E  conftest.c
configure:4762: $? = 0
configure:4762: result: yes
configure:4762: checking for netpacket/packet.h
configure:4762: result: yes
configure:4762: checking netpacket/if_packet.h usability
configure:4762: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c:61:33: fatal error: netpacket/if_packet.h: No such file or directory
 #include <netpacket/if_packet.h>
                                 ^
compilation terminated.
configure:4762: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <netpacket/if_packet.h>
configure:4762: result: no
configure:4762: checking netpacket/if_packet.h presence
configure:4762: gcc -E  conftest.c
conftest.c:28:33: fatal error: netpacket/if_packet.h: No such file or directory
 #include <netpacket/if_packet.h>
                                 ^
compilation terminated.
configure:4762: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| /* end confdefs.h.  */
| #include <netpacket/if_packet.h>
configure:4762: result: no
configure:4762: checking for netpacket/if_packet.h
configure:4762: result: no
configure:4774: checking for net/pfvar.h
configure:4774: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c:32:23: fatal error: net/pfvar.h: No such file or directory
 #include <net/pfvar.h>
                       ^
compilation terminated.
configure:4774: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| /* end confdefs.h.  */
| #include <sys/types.h>
| #include <sys/socket.h>
| #include <net/if.h>
| 
| #include <net/pfvar.h>
configure:4774: result: no
configure:4823: checking for netinet/if_ether.h
configure:4823: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4823: $? = 0
configure:4823: result: yes
configure:4871: checking for linux/sockios.h
configure:4871: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4871: $? = 0
configure:4871: result: yes
configure:4871: checking for linux/if_bonding.h
configure:4871: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4871: $? = 0
configure:4871: result: yes
configure:4889: checking for ANSI ioctl definitions
configure:4917: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:4917: $? = 0
configure:4925: result: yes
configure:4937: checking for strerror
configure:4937: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:4937: $? = 0
configure:4937: result: yes
configure:4937: checking for strlcpy
configure:4937: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
/tmp/ccx4c9Id.o: In function `main':
/root/rpmbuild/BUILD/libpcap-1.8.1/conftest.c:66: undefined reference to `strlcpy'
collect2: error: ld returned 1 exit status
configure:4937: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| /* end confdefs.h.  */
| /* Define strlcpy to an innocuous variant, in case <limits.h> declares strlcpy.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define strlcpy innocuous_strlcpy
| 
| /* System header to define __stub macros and hopefully few prototypes,
|     which can conflict with char strlcpy (); below.
|     Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
|     <limits.h> exists even on freestanding compilers.  */
| 
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
| 
| #undef strlcpy
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char strlcpy ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_strlcpy || defined __stub___strlcpy
| choke me
| #endif
| 
| int
| main ()
| {
| return strlcpy ();
|   ;
|   return 0;
| }
configure:4937: result: no
configure:4951: checking for vsnprintf
configure:4951: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
conftest.c:55:6: warning: conflicting types for built-in function 'vsnprintf' [enabled by default]
 char vsnprintf ();
      ^
configure:4951: $? = 0
configure:4951: result: yes
configure:4951: checking for snprintf
configure:4951: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
conftest.c:56:6: warning: conflicting types for built-in function 'snprintf' [enabled by default]
 char snprintf ();
      ^
configure:4951: $? = 0
configure:4951: result: yes
configure:4974: checking for strtok_r
configure:4974: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:4974: $? = 0
configure:4974: result: yes
configure:5003: checking for library containing gethostbyname
configure:5034: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:5034: $? = 0
configure:5051: result: none required
configure:5104: checking for library containing socket
configure:5135: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:5135: $? = 0
configure:5152: result: none required
configure:5202: checking for library containing putmsg
configure:5233: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:5233: $? = 0
configure:5250: result: none required
configure:5273: checking for ether_hostton
configure:5273: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:5273: $? = 0
configure:5273: result: yes
configure:5290: checking whether ether_hostton is declared
configure:5290: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:54:10: error: 'ether_hostton' undeclared (first use in this function)
   (void) ether_hostton;
          ^
conftest.c:54:10: note: each undeclared identifier is reported only once for each function it appears in
configure:5290: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| /* end confdefs.h.  */
| 
| #include <sys/types.h>
| #include <sys/socket.h>
| #include <netinet/in.h>
| #include <arpa/inet.h>
| struct mbuf;
| struct rtentry;
| #include <net/if.h>
| #include <netinet/if_ether.h>
| 
| 
| int
| main ()
| {
| #ifndef ether_hostton
| #ifdef __cplusplus
|   (void) ether_hostton;
| #else
|   (void) ether_hostton;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:5290: result: no
configure:5319: checking netinet/ether.h usability
configure:5319: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:5319: $? = 0
configure:5319: result: yes
configure:5319: checking netinet/ether.h presence
configure:5319: gcc -E  conftest.c
configure:5319: $? = 0
configure:5319: result: yes
configure:5319: checking for netinet/ether.h
configure:5319: result: yes
configure:5337: checking whether ether_hostton is declared
configure:5337: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:5337: $? = 0
configure:5337: result: yes
configure:5389: checking if --disable-protochain option is specified
configure:5407: result: enabled
configure:5445: checking packet capture type
configure:5510: result: linux
configure:5718: checking for linux/wireless.h
configure:5718: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:5718: $? = 0
configure:5718: result: yes
configure:5757: checking for nl_socket_alloc in -lnl-3
configure:5782: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c -lnl-3 -I/usr/include/libnl3  -lnl-genl-3 -lnl-3   >&5
/usr/bin/ld: cannot find -lnl-3
/usr/bin/ld: cannot find -lnl-genl-3
/usr/bin/ld: cannot find -lnl-3
collect2: error: ld returned 1 exit status
configure:5782: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| #define HAVE_NETINET_ETHER_H 1
| #define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
| #define HAVE_DECL_ETHER_HOSTTON 1
| #define HAVE_LINUX_WIRELESS_H 1
| /* end confdefs.h.  */
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char nl_socket_alloc ();
| int
| main ()
| {
| return nl_socket_alloc ();
|   ;
|   return 0;
| }
configure:5791: result: no
configure:5821: checking for nl_socket_alloc in -lnl
configure:5846: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c -lnl   >&5
/usr/bin/ld: cannot find -lnl
collect2: error: ld returned 1 exit status
configure:5846: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| #define HAVE_NETINET_ETHER_H 1
| #define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
| #define HAVE_DECL_ETHER_HOSTTON 1
| #define HAVE_LINUX_WIRELESS_H 1
| /* end confdefs.h.  */
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char nl_socket_alloc ();
| int
| main ()
| {
| return nl_socket_alloc ();
|   ;
|   return 0;
| }
configure:5855: result: no
configure:5885: checking for nl_handle_alloc in -lnl
configure:5910: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c -lnl   >&5
/usr/bin/ld: cannot find -lnl
collect2: error: ld returned 1 exit status
configure:5910: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| #define HAVE_NETINET_ETHER_H 1
| #define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
| #define HAVE_DECL_ETHER_HOSTTON 1
| #define HAVE_LINUX_WIRELESS_H 1
| /* end confdefs.h.  */
| 
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char nl_handle_alloc ();
| int
| main ()
| {
| return nl_handle_alloc ();
|   ;
|   return 0;
| }
configure:5919: result: no
configure:5948: checking for linux/ethtool.h
configure:5948: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:5948: $? = 0
configure:5948: result: yes
configure:5962: checking if if_packet.h has tpacket_stats defined
configure:5979: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:46:22: warning: unused variable 'stats' [-Wunused-variable]
 struct tpacket_stats stats
                      ^
configure:5979: $? = 0
configure:5987: result: yes
configure:5994: checking if tpacket_auxdata struct has tp_vlan_tci member
configure:6012: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:48:7: warning: unused variable 'i' [-Wunused-variable]
 u_int i = sizeof(((struct tpacket_auxdata *)0)->tp_vlan_tci)
       ^
configure:6012: $? = 0
configure:6020: result: yes
configure:6138: checking for getifaddrs
configure:6138: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:6138: $? = 0
configure:6138: result: yes
configure:6145: checking ifaddrs.h usability
configure:6145: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:6145: $? = 0
configure:6145: result: yes
configure:6145: checking ifaddrs.h presence
configure:6145: gcc -E  conftest.c
configure:6145: $? = 0
configure:6145: result: yes
configure:6145: checking for ifaddrs.h
configure:6145: result: yes
configure:6243: checking for socklen_t
configure:6259: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:50:12: warning: unused variable 'x' [-Wunused-variable]
  socklen_t x;
            ^
configure:6259: $? = 0
configure:6270: result: yes
configure:6281: checking for getaddrinfo
configure:6281: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  -Wl,-z,relro  conftest.c  >&5
configure:6281: $? = 0
configure:6281: result: yes
configure:6301: checking whether to build optimizer debugging code
configure:6313: result: no
configure:6316: checking whether to build parser debugging code
configure:6328: result: no
configure:6395: checking whether we have DAG API headers
configure:6626: result: no
configure:6681: checking whether we have Septel API headers
configure:6712: result: no
configure:6792: checking whether we have Myricom Sniffer API
configure:6874: result: no
configure:6927: checking whether TurboCap is supported
configure:6955: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c:46:24: fatal error: TcApi.h: No such file or directory
      #include <TcApi.h>
                        ^
compilation terminated.
configure:6955: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| #define HAVE_NETINET_ETHER_H 1
| #define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
| #define HAVE_DECL_ETHER_HOSTTON 1
| #define HAVE_LINUX_WIRELESS_H 1
| #define HAVE_LINUX_ETHTOOL_H 1
| #define HAVE_TPACKET_STATS 1
| #define HAVE_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI 1
| #define HAVE_SOCKLEN_T 1
| #define INET6 1
| /* end confdefs.h.  */
| 
| 	    #include <TcApi.h>
| 
| int
| main ()
| {
| 
| 	    TC_INSTANCE a; TC_PORT b; TC_BOARD c;
| 	    TC_INSTANCE i;
| 	    (void)TcInstanceCreateByName("foo", &i);
| 
|   ;
|   return 0;
| }
configure:6973: result: no
configure:6990: checking for flex
configure:7006: found /usr/bin/flex
configure:7017: result: flex
configure:7055: flex conftest.l
configure:7059: $? = 0
configure:7061: checking lex output file root
configure:7075: result: lex.yy
configure:7080: checking lex library

LEX ....

configure:7135: result: no
configure:7153: checking for capable lex
configure:7164: result: yes
configure:7178: checking for bison
configure:7194: found /usr/bin/bison
configure:7205: result: bison -y
configure:7222: checking for capable yacc/bison
configure:7233: result: yes
configure:7525: checking for x86_64-redhat-linux-gnu-ranlib
configure:7555: result: no
configure:7565: checking for ranlib
configure:7581: found /usr/bin/ranlib
configure:7592: result: ranlib
configure:7617: checking for x86_64-redhat-linux-gnu-ar
configure:7647: result: no
configure:7657: checking for ar
configure:7673: found /usr/bin/ar
configure:7684: result: ar
configure:7707: checking whether ln -s works
configure:7711: result: yes
configure:8187: checking if sockaddr struct has the sa_len member
configure:8205: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:51:40: error: 'struct sockaddr' has no member named 'sa_len'
 u_int i = sizeof(((struct sockaddr *)0)->sa_len)
                                        ^
conftest.c:51:7: warning: unused variable 'i' [-Wunused-variable]
 u_int i = sizeof(((struct sockaddr *)0)->sa_len)
       ^
configure:8205: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| #define HAVE_NETINET_ETHER_H 1
| #define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
| #define HAVE_DECL_ETHER_HOSTTON 1
| #define HAVE_LINUX_WIRELESS_H 1
| #define HAVE_LINUX_ETHTOOL_H 1
| #define HAVE_TPACKET_STATS 1
| #define HAVE_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI 1
| #define HAVE_SOCKLEN_T 1
| #define INET6 1
| /* end confdefs.h.  */
| 
| #	include <sys/types.h>
| #	include <sys/socket.h>
| int
| main ()
| {
| u_int i = sizeof(((struct sockaddr *)0)->sa_len)
|   ;
|   return 0;
| }
configure:8213: result: no
configure:8221: checking if sockaddr_storage struct exists
configure:8239: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:51:7: warning: unused variable 'i' [-Wunused-variable]
 u_int i = sizeof (struct sockaddr_storage)
       ^
configure:8239: $? = 0
configure:8247: result: yes
configure:8255: checking if dl_hp_ppa_info_t struct has dl_module_id_1 member
configure:8274: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c:48:23: fatal error: sys/dlpi.h: No such file or directory
 # include <sys/dlpi.h>
                       ^
compilation terminated.
configure:8274: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| #define HAVE_NETINET_ETHER_H 1
| #define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
| #define HAVE_DECL_ETHER_HOSTTON 1
| #define HAVE_LINUX_WIRELESS_H 1
| #define HAVE_LINUX_ETHTOOL_H 1
| #define HAVE_TPACKET_STATS 1
| #define HAVE_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI 1
| #define HAVE_SOCKLEN_T 1
| #define INET6 1
| #define HAVE_SOCKADDR_STORAGE 1
| /* end confdefs.h.  */
| 
| #	include <sys/types.h>
| #	include <sys/dlpi.h>
| #	include <sys/dlpi_ext.h>
| int
| main ()
| {
| u_int i = sizeof(((dl_hp_ppa_info_t *)0)->dl_module_id_1)
|   ;
|   return 0;
| }
configure:8282: result: no
configure:8290: checking if unaligned accesses fail
configure:8377: result: no
configure:8421: checking for USB sniffing support
configure:8429: result: yes
configure:8440: Device for USB sniffing is /dev/usbmon
configure:8448: checking linux/compiler.h usability
configure:8448: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c:81:28: fatal error: linux/compiler.h: No such file or directory
 #include <linux/compiler.h>
                            ^
compilation terminated.
configure:8448: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| #define HAVE_NETINET_ETHER_H 1
| #define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
| #define HAVE_DECL_ETHER_HOSTTON 1
| #define HAVE_LINUX_WIRELESS_H 1
| #define HAVE_LINUX_ETHTOOL_H 1
| #define HAVE_TPACKET_STATS 1
| #define HAVE_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI 1
| #define HAVE_SOCKLEN_T 1
| #define INET6 1
| #define HAVE_SOCKADDR_STORAGE 1
| #define PCAP_SUPPORT_USB 1
| #define LINUX_USB_MON_DEV "/dev/usbmon"
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <linux/compiler.h>
configure:8448: result: no
configure:8448: checking linux/compiler.h presence
configure:8448: gcc -E  conftest.c
conftest.c:48:28: fatal error: linux/compiler.h: No such file or directory
 #include <linux/compiler.h>
                            ^
compilation terminated.
configure:8448: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define inline inline
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_BITYPES_H 1
| #define HAVE_FSEEKO 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_LINUX_TYPES_H 1
| #define HAVE_LINUX_IF_PACKET_H 1
| #define HAVE_NETPACKET_PACKET_H 1
| #define HAVE_NETINET_IF_ETHER_H 1
| #define HAVE_LINUX_SOCKIOS_H 1
| #define HAVE_LINUX_IF_BONDING_H 1
| #define HAVE_STRERROR 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_STRTOK_R 1
| #define HAVE_ETHER_HOSTTON 1
| #define HAVE_NETINET_ETHER_H 1
| #define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
| #define HAVE_DECL_ETHER_HOSTTON 1
| #define HAVE_LINUX_WIRELESS_H 1
| #define HAVE_LINUX_ETHTOOL_H 1
| #define HAVE_TPACKET_STATS 1
| #define HAVE_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI 1
| #define HAVE_SOCKLEN_T 1
| #define INET6 1
| #define HAVE_SOCKADDR_STORAGE 1
| #define PCAP_SUPPORT_USB 1
| #define LINUX_USB_MON_DEV "/dev/usbmon"
| /* end confdefs.h.  */
| #include <linux/compiler.h>
configure:8448: result: no
configure:8448: checking for linux/compiler.h
configure:8448: result: no
configure:8478: checking linux/usbdevice_fs.h usability
configure:8478: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:8478: $? = 0
configure:8478: result: yes
configure:8478: checking linux/usbdevice_fs.h presence
configure:8478: gcc -E  conftest.c
configure:8478: $? = 0
configure:8478: result: yes
configure:8478: checking for linux/usbdevice_fs.h
configure:8478: result: yes
configure:8496: checking if usbdevfs_ctrltransfer struct has bRequestType member
configure:8520: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:93:7: warning: unused variable 'i' [-Wunused-variable]
 u_int i = sizeof(((struct usbdevfs_ctrltransfer *)0)->bRequestType)
       ^
configure:8520: $? = 0
configure:8528: result: yes
configure:8556: checking whether the platform could support netfilter sniffing
configure:8560: result: yes
configure:8570: checking whether we can compile the netfilter support
configure:8596: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:8596: $? = 0
configure:8604: result: yes
configure:8639: checking bluetooth/bluetooth.h usability
configure:8639: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:8639: $? = 0
configure:8639: result: yes
configure:8639: checking bluetooth/bluetooth.h presence
configure:8639: gcc -E  conftest.c
configure:8639: $? = 0
configure:8639: result: yes
configure:8639: checking for bluetooth/bluetooth.h
configure:8639: result: yes
configure:8646: Bluetooth sniffing is supported
configure:8653: checking if struct sockaddr_hci has hci_channel member
configure:8672: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:59:7: warning: unused variable 'i' [-Wunused-variable]
 u_int i = sizeof(((struct sockaddr_hci *)0)->hci_channel)
       ^
configure:8672: $? = 0
configure:8680: result: yes
configure:8690: checking if HCI_CHANNEL_MONITOR is defined
configure:8709: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
conftest.c: In function 'main':
conftest.c:60:7: warning: unused variable 'i' [-Wunused-variable]
 u_int i = HCI_CHANNEL_MONITOR
       ^
configure:8709: $? = 0
configure:8717: result: yes
configure:8806: checking for pkg-config
configure:8822: found /usr/bin/pkg-config
configure:8834: result: pkg-config
configure:8843: checking for D-Bus
configure:8896: result: no
configure:8911: checking linux/net_tstamp.h usability
configure:8911: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing  conftest.c >&5
configure:8911: $? = 0
configure:8911: result: yes
configure:8911: checking linux/net_tstamp.h presence
configure:8911: gcc -E  conftest.c
configure:8911: $? = 0
configure:8911: result: yes
configure:8911: checking for linux/net_tstamp.h
configure:8911: result: yes
configure:8957: checking for a BSD-compatible install
configure:9025: result: /usr/bin/install -c
configure:9158: creating ./config.status

## ---------------------- ##
## Running config.status. ##
## ---------------------- ##

This file was extended by config.status, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  CONFIG_FILES    = 
  CONFIG_HEADERS  = 
  CONFIG_LINKS    = 
  CONFIG_COMMANDS = 
  $ ./config.status 

on ops01-t01-hlb03

config.status:919: creating Makefile
config.status:919: creating pcap-filter.manmisc
config.status:919: creating pcap-linktype.manmisc
config.status:919: creating pcap-tstamp.manmisc
config.status:919: creating pcap-savefile.manfile
config.status:919: creating pcap.3pcap
config.status:919: creating pcap_compile.3pcap
config.status:919: creating pcap_datalink.3pcap
config.status:919: creating pcap_dump_open.3pcap
config.status:919: creating pcap_get_tstamp_precision.3pcap
config.status:919: creating pcap_list_datalinks.3pcap
config.status:919: creating pcap_list_tstamp_types.3pcap
config.status:919: creating pcap_open_dead.3pcap
config.status:919: creating pcap_open_offline.3pcap
config.status:919: creating pcap_set_tstamp_precision.3pcap
config.status:919: creating pcap_set_tstamp_type.3pcap
config.status:919: creating config.h
config.status:1108: executing default-1 commands
configure:10355: WARNING: unrecognized options: --disable-dependency-tracking

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv___attribute__=yes
ac_cv___attribute___format=no
ac_cv___attribute___unused=yes
ac_cv_build=x86_64-redhat-linux-gnu
ac_cv_c_compiler_gnu=yes
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing'
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_LDFLAGS_set=set
ac_cv_env_LDFLAGS_value='-Wl,-z,relro '
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_YACC_set=
ac_cv_env_YACC_value=
ac_cv_env_YFLAGS_set=
ac_cv_env_YFLAGS_value=
ac_cv_env_build_alias_set=set
ac_cv_env_build_alias_value=x86_64-redhat-linux-gnu
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=x86_64-redhat-linux-gnu
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_func_ether_hostton=yes
ac_cv_func_getaddrinfo=yes
ac_cv_func_getifaddrs=yes
ac_cv_func_snprintf=yes
ac_cv_func_strerror=yes
ac_cv_func_strlcpy=no
ac_cv_func_strtok_r=yes
ac_cv_func_vsnprintf=yes
ac_cv_have_decl_ether_hostton=yes
ac_cv_header_bluetooth_bluetooth_h=yes
ac_cv_header_ifaddrs_h=yes
ac_cv_header_inttypes_h=yes
ac_cv_header_limits_h=yes
ac_cv_header_linux_compiler_h=no
ac_cv_header_linux_ethtool_h=yes
ac_cv_header_linux_if_bonding_h=yes
ac_cv_header_linux_if_packet_h=yes
ac_cv_header_linux_net_tstamp_h=yes
ac_cv_header_linux_sockios_h=yes
ac_cv_header_linux_types_h=yes
ac_cv_header_linux_usbdevice_fs_h=yes
ac_cv_header_linux_wireless_h=yes
ac_cv_header_memory_h=yes
ac_cv_header_net_pfvar_h=no
ac_cv_header_netinet_ether_h=yes
ac_cv_header_netinet_if_ether_h=yes
ac_cv_header_netpacket_if_packet_h=no
ac_cv_header_netpacket_packet_h=yes
ac_cv_header_stdc=yes
ac_cv_header_stdint_h=yes
ac_cv_header_stdlib_h=yes
ac_cv_header_string_h=yes
ac_cv_header_strings_h=yes
ac_cv_header_sys_bitypes_h=yes
ac_cv_header_sys_ioccom_h=no
ac_cv_header_sys_select_h=yes
ac_cv_header_sys_sockio_h=no
ac_cv_header_sys_stat_h=yes
ac_cv_header_sys_types_h=yes
ac_cv_header_unistd_h=yes
ac_cv_host=x86_64-redhat-linux-gnu
ac_cv_lbl_dag_api=no
ac_cv_lbl_dl_hp_ppa_info_t_has_dl_module_id_1=no
ac_cv_lbl_gcc_fixincludes=yes
ac_cv_lbl_has_sockaddr_storage=yes
ac_cv_lbl_hci_channel_monitor_is_defined=yes
ac_cv_lbl_inline=inline
ac_cv_lbl_linux_tpacket_auxdata_tp_vlan_tci=yes
ac_cv_lbl_septel_api=no
ac_cv_lbl_snf_api=no
ac_cv_lbl_sockaddr_has_sa_len=no
ac_cv_lbl_sockaddr_hci_has_hci_channel=yes
ac_cv_lbl_tpacket_stats=yes
ac_cv_lbl_turbocap_api=no
ac_cv_lbl_unaligned_fail=no
ac_cv_lib_lex='none needed'
ac_cv_lib_nl_3_nl_socket_alloc=no
ac_cv_lib_nl_nl_handle_alloc=no
ac_cv_lib_nl_nl_socket_alloc=no
ac_cv_netfilter_can_compile=yes
ac_cv_objext=o
ac_cv_path_EGREP='/usr/bin/grep -E'
ac_cv_path_GREP=/usr/bin/grep
ac_cv_path_install='/usr/bin/install -c'
ac_cv_prog_CPP='gcc -E'
ac_cv_prog_LEX=flex
ac_cv_prog_PKGCONFIG=pkg-config
ac_cv_prog_YACC='bison -y'
ac_cv_prog_ac_ct_AR=ar
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_ac_ct_RANLIB=ranlib
ac_cv_prog_cc_c89=
ac_cv_prog_cc_g=yes
ac_cv_prog_lex_root=lex.yy
ac_cv_prog_lex_yytext_pointer=no
ac_cv_search_gethostbyname='none required'
ac_cv_search_putmsg='none required'
ac_cv_search_socket='none required'
ac_cv_sys_file_offset_bits=no
ac_cv_sys_largefile_CC=no
ac_cv_sys_largefile_source=no
ac_cv_target=x86_64-redhat-linux-gnu
ac_cv_type_int16_t=yes
ac_cv_type_int32_t=yes
ac_cv_type_int64_t=yes
ac_cv_type_int8_t=yes
ac_cv_type_u_int16_t=yes
ac_cv_type_u_int32_t=yes
ac_cv_type_u_int64_t=yes
ac_cv_type_u_int8_t=yes
ac_cv_usbdevfs_ctrltransfer_has_bRequestType=yes
tcpdump_cv_capable_lex=yes
tcpdump_cv_capable_yacc=yes

## ----------------- ##
## Output variables. ##
## ----------------- ##

ADDLARCHIVEOBJS=''
ADDLOBJS=''
AR='ar'
BT_MONITOR_SRC='pcap-bt-monitor-linux.c'
BT_SRC='pcap-bt-linux.c'
CC='gcc'
CFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing'
CPP='gcc -E'
CPPFLAGS=''
DBUS_SRC=''
DEFS='-DHAVE_CONFIG_H'
DEPENDENCY_CFLAG=''
DYEXT='so'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP='/usr/bin/grep -E'
EXEEXT=''
GREP='/usr/bin/grep'
HAVE_LINUX_TPACKET_AUXDATA='tp_vlan_tci'
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
LDFLAGS='-Wl,-z,relro '
LEX='flex'
LEXLIB=''
LEX_OUTPUT_ROOT='lex.yy'
LIBOBJS=''
LIBS=''
LN_S='ln -s'
LTLIBOBJS=''
MAN_FILE_FORMATS='5'
MAN_MISC_INFO='7'
MKDEP=''
NETFILTER_SRC='pcap-netfilter-linux.c'
OBJEXT='o'
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_URL=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
PCAP_SUPPORT_BT=''
PCAP_SUPPORT_DBUS=''
PCAP_SUPPORT_NETFILTER=''
PCAP_SUPPORT_PACKET_RING=''
PCAP_SUPPORT_USB=''
PKGCONFIG='pkg-config'
RANLIB='ranlib'
SHELL='/bin/sh'
SHLICC2=''
SSRC=''
USB_SRC='pcap-usb-linux.c'
VALGRINDTEST='valgrindtest'
V_CCOPT=' -fvisibility=hidden -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -fno-strict-aliasing'
V_DEFS=' -D_U_="__attribute__((unused))"'
V_FINDALLDEVS='fad-getad.c'
V_INCLS=''
V_LEX=''
V_PCAP='linux'
V_RPATH_OPT='-Wl,-rpath,'
V_SHLIB_CMD='$(CC)'
V_SHLIB_OPT='-shared'
V_SONAME_OPT='-Wl,-soname,'
V_YACC=''
YACC='bison -y'
YFLAGS=''
ac_ct_CC='gcc'
bindir='/usr/bin'
build='x86_64-redhat-linux-gnu'
build_alias='x86_64-redhat-linux-gnu'
build_cpu='x86_64'
build_os='linux-gnu'
build_vendor='redhat'
datadir='/usr/share'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE}'
dvidir='${docdir}'
exec_prefix='/usr'
host='x86_64-redhat-linux-gnu'
host_alias='x86_64-redhat-linux-gnu'
host_cpu='x86_64'
host_os='linux-gnu'
host_vendor='redhat'
htmldir='${docdir}'
includedir='/usr/include'
infodir='/usr/share/info'
libdir='/usr/lib64'
libexecdir='/usr/libexec'
localedir='${datarootdir}/locale'
localstatedir='/var'
mandir='/usr/share/man'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/usr'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='/usr/sbin'
sharedstatedir='/var/lib'
sysconfdir='/etc'
target='x86_64-redhat-linux-gnu'
target_alias=''
target_cpu='x86_64'
target_os='linux-gnu'
target_vendor='redhat'

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME ""
#define PACKAGE_TARNAME ""
#define PACKAGE_VERSION ""
#define PACKAGE_STRING ""
#define PACKAGE_BUGREPORT ""
#define PACKAGE_URL ""
#define inline inline
#define HAVE___ATTRIBUTE__ 1
#define STDC_HEADERS 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
#define HAVE_MEMORY_H 1
#define HAVE_STRINGS_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_STDINT_H 1
#define HAVE_UNISTD_H 1
#define HAVE_SYS_BITYPES_H 1
#define HAVE_FSEEKO 1
#define HAVE_SYS_SELECT_H 1
#define HAVE_LIMITS_H 1
#define HAVE_LINUX_TYPES_H 1
#define HAVE_LINUX_IF_PACKET_H 1
#define HAVE_NETPACKET_PACKET_H 1
#define HAVE_NETINET_IF_ETHER_H 1
#define HAVE_LINUX_SOCKIOS_H 1
#define HAVE_LINUX_IF_BONDING_H 1
#define HAVE_STRERROR 1
#define HAVE_VSNPRINTF 1
#define HAVE_SNPRINTF 1
#define HAVE_STRTOK_R 1
#define HAVE_ETHER_HOSTTON 1
#define HAVE_NETINET_ETHER_H 1
#define NETINET_ETHER_H_DECLARES_ETHER_HOSTTON /**/
#define HAVE_DECL_ETHER_HOSTTON 1
#define HAVE_LINUX_WIRELESS_H 1
#define HAVE_LINUX_ETHTOOL_H 1
#define HAVE_TPACKET_STATS 1
#define HAVE_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI 1
#define HAVE_SOCKLEN_T 1
#define INET6 1
#define HAVE_SOCKADDR_STORAGE 1
#define PCAP_SUPPORT_USB 1
#define LINUX_USB_MON_DEV "/dev/usbmon"
#define HAVE_LINUX_USBDEVICE_FS_H 1
#define HAVE_USBDEVFS_CTRLTRANSFER_BREQUESTTYPE 1
#define PCAP_SUPPORT_NETFILTER 1
#define PCAP_SUPPORT_BT 1
#define SOCKADDR_HCI_HAS_HCI_CHANNEL /**/
#define PCAP_SUPPORT_BT_MONITOR /**/
#define HAVE_LINUX_NET_TSTAMP_H 1
#define PCAP_SUPPORT_PACKET_RING 1

configure: exit 0

## ---------------------- ##
## Running config.status. ##
## ---------------------- ##

This file was extended by config.status, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  CONFIG_FILES    = 
  CONFIG_HEADERS  = 
  CONFIG_LINKS    = 
  CONFIG_COMMANDS = 
  $ ./config.status --file=pcap-config.tmp:./pcap-config.in

on ops01-t01-hlb03

config.status:919: creating pcap-config.tmp

@guyharris
Copy link
Member

What does egrep HDRLEN /usr/include/linux/if_packet.h print?

@eugenepaniot
Copy link

There is it:

# egrep HDRLEN /usr/include/linux/if_packet.h
#define PACKET_HDRLEN			11
#define TPACKET_HDRLEN		(TPACKET_ALIGN(sizeof(struct tpacket_hdr)) + sizeof(struct sockaddr_ll))
#define TPACKET2_HDRLEN		(TPACKET_ALIGN(sizeof(struct tpacket2_hdr)) + sizeof(struct sockaddr_ll))
#define TPACKET3_HDRLEN		(TPACKET_ALIGN(sizeof(struct tpacket3_hdr)) + sizeof(struct sockaddr_ll))

@eugenepaniot
Copy link

Today we've got issue again.

$ ps axwuf | grep tcp
pcap     12892 42.3  0.2  35908 16184 ?        R    Jun08 15240:34 /usr/sbin/tcpdump -Z pcap -p -i any -s 0 -U -C 100 -W 200 -w /var/log/siplogger/sip.pcap udp port 5060 or 5090
$ strace -ff -p 12892
...
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 1000)  = 1 ([{fd=3, revents=POLLIN
$ gdb /usr/sbin/tcpdump 12892
...
#0  0x00007f0aa8391680 in __poll_nocancel () from /lib64/libc.so.6
#1  0x0000000000496498 in poll (__timeout=<optimized out>, __nfds=1, __fds=0x7ffe21908b90) at /usr/include/bits/poll2.h:46
#2  pcap_wait_for_frames_mmap (handle=0x269b2a0) at ./pcap-linux.c:4558
#3  0x000000000049683d in pcap_read_linux_mmap_v2 (handle=0x269b2a0, max_packets=-1, callback=0x4069a0 <dump_packet_and_trunc>, user=0x7ffe21908d00 "e\277\220!\376\177") at ./pcap-linux.c:4964
#4  0x000000000047d95d in pcap_loop (p=0x269b2a0, cnt=cnt@entry=-1, callback=callback@entry=0x4069a0 <dump_packet_and_trunc>, user=user@entry=0x7ffe21908d00 "e\277\220!\376\177") at ./pcap.c:897
#5  0x000000000040533d in main (argc=<optimized out>, argv=<optimized out>) at ./tcpdump.c:2004
...
(gdb) p pcap_wait_for_frames_mmap::pollinfo
$9 = {fd = 3, events = 1, revents = 1}
...
(gdb) p pcap_version_string
$10 = "libpcap version 1.8.1"
...
(gdb) p version
$11 = 0x4a04a0 <version> "4.9.0"
...
(gdb) p pcap_read_linux_mmap_v2::ret
$15 = <optimized out>
...
(gdb) p pcap_read_linux_mmap_v2::h.raw
$17 = <optimized out>
...
(gdb) p pcap_read_linux_mmap_v2::handlep->packets_read
$19 = 1192825301

I have a coredump of the process and ready to send for futher investigation. And I will work on reproducing the issue.

@eugenepaniot
Copy link

How to reproduce the issue

Issue reproducing under hight load with float IP configured on the servers(2 vms) througth heartbeat.

  1. Execute tcpdump: /usr/sbin/tcpdump -Z pcap -p -i any -s 0 -U -C 100 -W 200 -w /var/log/siplogger/sip.pcap udp port 5060 or 5090
  2. Generate hight traffic (~300Mb) to the configured VIP address, for example with "inviteflood" (https://tools.kali.org/sniffingspoofing/inviteflood)
  3. Perform VIP takeover to the passive node /usr/share/heartbeat/hb_takeover
  4. As a result hight CPU usage on the previouse actived node strace -ff -p ... (poll([{fd=3, events=POLLIN}], 1, 1000) = 1 ([{fd=3, revents=POLLIN}]))

GDB

gdb /usr/sbin/tcpdump 2879
...
(gdb) p pcap_version_string
$2 = "libpcap version 1.9.0-PRE-GIT_2017_07_07"
(gdb) p version
$3 = 0x4f5a20 <version> "4.10.0-PRE-GIT_2017_07_07"
(gdb) bt
#0  0x00007f62fb93a680 in __poll_nocancel () from /lib64/libc.so.6
#1  0x00000000004ec5f2 in pcap_wait_for_frames_mmap (handle=0xbc32a0) at ./pcap-linux.c:4587
#2  0x00000000004ecfd3 in pcap_read_linux_mmap_v2 (handle=0xbc32a0, max_packets=-1, callback=0x405b50 <dump_packet_and_trunc>, user=0x7fff4984d510 "e߄I\377\177") at ./pcap-linux.c:4999
#3  0x00000000004c8249 in pcap_loop (p=0xbc32a0, cnt=-1, callback=0x405b50 <dump_packet_and_trunc>, user=0x7fff4984d510 "e߄I\377\177") at ./pcap.c:1712
#4  0x000000000040556e in main (argc=20, argv=0x7fff4984d6e8) at ./tcpdump.c:2101
(gdb) p pcap_wait_for_frames_mmap::pollinfo
$4 = {fd = 3, events = 1, revents = 1}
(gdb) p pcap_read_linux_mmap_v2::ret
$7 = 0
(gdb) p pcap_wait_for_frames_mmap::handlep->poll_timeout
$10 = 1000
(gdb) p pcap_wait_for_frames_mmap::pollinfo.revents
$12 = 1
(gdb) p pcap_wait_for_frames_mmap::pollinfo.events
$15 = 1

@guyharris
Copy link
Member

#define TPACKET3_HDRLEN

So why is it calling pcap_read_linux_mmap_v2()? It should be using TPACKET_V3, not TPACKET_V2.

@eugenepaniot
Copy link

It was disabled by this patch:

From 1ce0a55f93bdddb4bdf0956f094f4198f714a42c Mon Sep 17 00:00:00 2001
From: Michal Sekletar <msekleta@redhat.com>
Date: Mon, 29 Sep 2014 09:25:52 +0200
Subject: [PATCH 4/4] pcap-linux: don't use TPACKETV3 for memory mmapped
 capture

There has been numerous reports from users complaining about changes in behavior
of libpcap when using libpcap compiled with TPACKETV3 support. Back out and
disable it.

See: https://github.com/the-tcpdump-group/libpcap/issues/380
See: https://github.com/the-tcpdump-group/libpcap/issues/364

Resolves: #1131500
---
 pcap-linux.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/pcap-linux.c b/pcap-linux.c
index 939717f..f3b4ef4 100644
--- a/pcap-linux.c
+++ b/pcap-linux.c
@@ -194,9 +194,6 @@
 # ifdef PCAP_SUPPORT_PACKET_RING
 # ifdef TPACKET_HDRLEN
 #  define HAVE_PACKET_RING
-#  ifdef TPACKET3_HDRLEN
-#   define HAVE_TPACKET3
-#  endif /* TPACKET3_HDRLEN */
 #  ifdef TPACKET2_HDRLEN
 #   define HAVE_TPACKET2
 #  else  /* TPACKET2_HDRLEN */
-- 

Since #380 and #364 issues still open, I'm not delete this patch from the build.

@guyharris
Copy link
Member

guyharris commented Jul 11, 2017

#1131500 is the bug in which I point out:

Note that libpcap issues 380 and 364 are both due to a kernel bug, wherein TPACKET_V3 was delivering wakeups whenever a packet was added to a buffer (not all that useful, as you're not supposed to process that buffer in userland until it's closed) and not delivering wakeups when a buffer is closed (very bad, as it means that you won't see that the buffer is closed until another packet arrives, adding an arbitrary random non-useful delay, and can allow an arbitrary number of empty closed buffers to pile up unprocessed, potentially causing packet drops).

The fix for this, from Dan Collins, was checked in:

http://www.spinics.net/lists/netdev/msg309630.html

and is in the 3.19 kernel.

and in which Michal Sekletar says:

We were discussing the possibility to reenable TPACKET_V3 in Fedora and we will do that for Fedora 27.

Also these fixes were recently backported to RHEL/CentOS kernel. We could potentially reenable TPACKET_V3 there as well. But for now we will stay with TPACKET_V2 in RHEL/CentOS.

I will close the issues in question, as modern kernels have the fix.

@guyharris
Copy link
Member

poll() is saying there's something to read from the packet ring. If you ^C the tcpdump, how many packets is it reporting as having been captured and how many packets is it reported as having been dropped?

@guyharris
Copy link
Member

Note that, with TPACKET_V1 and TPACKET_V2:

  1. A wakeup is delivered for each packet, so, if you're blocked in a select()/poll()/epoll(), you get woken up when the first packet arrives - there's no batching of wakeups;
  2. The original TPACKET_V1/TPACKET_V2 code used the specified timeout as a timeout for poll(), so, if you've specified a timeout, you'll get periodic wakeups even if packets aren't arriving very fast or at all - this was presumably done with the intent of matching BPF's "don't wait forever" behavior, so it's been preserved. That'll deliver wakeups at least once per second in tcpdump; if you're getting more frequent wakeups, it's probably because packets are arriving fast enough that, when libpcap is finished draining all the packets made available to userland, it goes back, does a poll(), and proceeds to wake up again, because more packets have arrived since the last one was processed.

@guyharris
Copy link
Member

And even with TPACKET_V3 in pre-3.19 kernels, you'll still get per-packet wakeups, so, with a pre-3.19 kernel, you're stuck with per-packet wakeups no matter what you do.

TPACKET_V3 still makes more efficient use of the ring buffer, as it allows multiple packets to be packed into one slot, rather than putting only one packet in a slot even if there's plenty of room for multiple packets, so it's still worth using. However on pre-3.19 kernels, if you're using select()/poll()/epoll() on the pcap_t FD in your own code, you have to use non-blocking mode and have a reasonably short timeout, and have to attempt to read a packet when the timeout expires, because, prior to 3.19, you do not get a wakeup when a slot is handed to userland. A slot will be handed to userland when the PF_PACKET socket timeout expires, even if it's empty, so, if packets aren't arriving frequently, you could get empty slots piling up, and if you don't periodically run pcap_dispatch() (which pcap_next() and pcap_next_ex() call), those slots won't be handed back to the kernel, and you'll eventually run out of slots for the kernel, and packets will be dropped.

(Executive summary: if you want to capture packets on Linux, you really want 3.19 or later if you can get it and, if not, you at least want a kernel with the wakeups fixed by applying the appropriate patch, if you can get that.)

@infrastation
Copy link
Member

The conclusion of this is that things work as intended with current Linux kernels and current libpcap, so there is nothing to be done, correct?

@guyharris
Copy link
Member

The conclusion of this is that things work as intended with current Linux kernels and current libpcap, so there is nothing to be done, correct?

That's what I'd say. Current kernels correctly wake up userland, and current libpcap applies a workaround with broken kernels and doesn't apply the workaround with fixed kernels.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

4 participants