+ /*
+ * Early check for RFC 6980
+ * Drop certain NDP packets if they came in fragmented
+ */
+ switch (icmp6->icmp6_type) {
+ case ND_ROUTER_SOLICIT:
+ case ND_ROUTER_ADVERT:
+ case ND_NEIGHBOR_SOLICIT:
+ case ND_NEIGHBOR_ADVERT:
+ case ND_REDIRECT:
+ if (m->m_pkthdr.pkt_flags & PKTF_REASSEMBLED) {
+ icmp6stat.icp6s_rfc6980_drop++;
+ goto freeit;
+ }
+ break;
+ default:
+ break;
+ }
+