L3HDR
L3HDR(struct tcphdr, mtod(args->m, struct ip *));
sctp = L3HDR(struct sctphdr, mtod(args->m, struct ip *));
tcp = L3HDR(struct tcphdr, ip);
udp = L3HDR(struct udphdr, ip);
icmp = L3HDR(struct icmphdr, ip);
icmp = L3HDR(ip, struct icmp *);
*port = ntohs(L3HDR(ip, struct tcphdr *)->th_dport);
*port = ntohs(L3HDR(ip, struct udphdr *)->uh_dport);