I have some changes to support that. The main change is to add a "union h6addr" to "tcpdump-stdinc.h", along with defintions of IN6_IS_ADDR_UNSPECIFIED, AF_INET6, and NI_MAXHOST if they're not defined.
Some side-effects of this: 1) it defines DEFAULT_SNAPLEN as 96 unconditionally, rather than, as is done now, as 68 if INET6 isn't defined and as 96 if it is defined; 2) "bgp_update_print()" can't decode the unfeasible routes, as it doesn't know whether this is for a v4 or v6 route (currently, if INET6 isn't defined, it assumes a v4 route, but if it is defined, it doesn't try to decode them). The first seems OK to me, although some might find it a surprise. You can always use "-s 68" if you want 68 bytes. I'm not sure what the right thing to do about the second side-effect is. Have a command-line option to control how to decode them? (Note that if v6 routes are printed by a v4-only build of current tcpdump, it'll decode them incorrectly.) - This is the tcpdump-workers list. Visit https://lists.sandelman.ca/ to unsubscribe.