Just tell me why on earth `libicmp/icmp.h' was ever written
in the form it exists today. It differs from <netinet/ip_icmp.h>
in more than forty macros alone. Backwards is really the nicest
thing I can express about that construct. I have just begun
the process of adapting our source files to fit the official
header file <netinet/ip_icmp.h>, thus abondoning `libicmp/icmp.h'.
ip_icmp.h isn't a standardised header though. I'm not sure about
rewriting ping/etc to use this over icmp.h;
(which means; lemme think about it for a few days, and feel free to
add arguments for the change in the mean time)