Dissect the IPv4 header if the version is wrong, but fix the messages.
Only print the incorporated IP packet if there is one.

Check for the ICMP types that *do* include an IP packet, rather than
checking for a set that doesn't.  This does a better job of handling
unknown ICMP types.
Clean up bounds checking.

Fix link-layer header length for Cisco-style encapsulation while we're
at it.
Don't check for cap_rights_init().

It's a macro, wrapping another function, in at least some versions of
FreeBSD, and AC_CHECK_FUNCS() doesn't handle that.
Regenerate configure script.
Assume non-buggy getaddrinfo() when cross-compiling.

The cross target is probably some flavor of Linux (this includes
Android) or *BSD (or maybe iOS if you're building for a jailbroken
system), and those should have non-buggy getaddrinfo().

If somebody's cross-compiling for a target with a buggy getaddrinfo(),
and tcpdump incorrectly converting IPv6 addresses to host names causes
the universe to collapse into a giant black hole or something equally
horrible, too bad.

Expand a comment while we're at it.