DO2
#define DO4(buf,i) DO2(buf,i); DO2(buf,i+2);
#define DO4(buf,i) DO2(buf,i); DO2(buf,i+2);
#define DO4(buf,i) DO2(buf,i); DO2(buf,i+2);
DO2(ICMP_ECHOREPLY, 11);
DO2(ICMP_ECHO, 12);
DO2(ICMP_UNREACH, 13);
DO2(ICMP_REDIRECT, 14);
DO2(ICMP_TIMXCEED, 15);
DO2(ICMP_PARAMPROB, 16);
DO2(ICMP6_ECHO_REPLY, 9);
DO2(ICMP6_ECHO_REQUEST, 10);
DO2(ICMP6_DST_UNREACH, 11);
DO2(ND_REDIRECT, 12);
DO2(ICMP6_TIME_EXCEEDED, 13);
DO2(ICMP6_PARAM_PROB, 14);
DO2(ND_NEIGHBOR_SOLICIT, 15);
DO2(ND_NEIGHBOR_ADVERT, 16);
#define DO4(buf,i) DO2(buf,i); DO2(buf,i+2);