net/pfvar.h is not properly detected on OpenBSD

The autoconf test for net/pfvar.h is missing a header to have the test successfully detect it:

    configure:9992: checking for net/pfvar.h
    configure:9992: gcc -std=gnu99 -c -g -O2 -D_FORTIFY_SOURCE=2 -fstack-protector-all -Wstack-protector -fwrapv --param ssp-buffer-size=1 -fPIE -fasynchronous-unwind-tables  -I${top_srcdir}/src/common conftest.c >&5
    In file included from conftest.c:111:
    /usr/include/net/pfvar.h:132: error: field 'v4' has incomplete type
    /usr/include/net/pfvar.h:133: error: field 'v6' has incomplete type
    /usr/include/net/pfvar.h:947: error: field '_pfra_ip4addr' has incomplete type
    /usr/include/net/pfvar.h:948: error: field '_pfra_ip6addr' has incomplete type
    /usr/include/net/pfvar.h:1002: error: field 'sin' has incomplete type
    /usr/include/net/pfvar.h:1003: error: field 'sin6' has incomplete type
    configure:9992: $? = 1
    configure: failed program was:
    ...

It needs netinet/in.h

This is not problem for the port/package as the OpenBSD ports tree infrastructure pre-defines a bunch of variables for headers that it knows exist, including $ac_cv_header_net_pfvar_h, so autoconf uses the cached result there, however it's a problem if manually building from source and not from ports.

As a bonus, the OPENBSD pre-processor macro is only defined if transparent proxy support is enabled, which it isn't when net/pfvar.h can't be detected (the malloc.h warnings was what made me look into this :-) )

Trac:
Username: rubiate