ip6po_rthdr
if (pktopt && pktopt->ip6po_rthdr) {
optdata = (void *)pktopt->ip6po_rthdr;
ip6e = (struct ip6_ext *)pktopt->ip6po_rthdr;
PKTOPT_EXTHDRCPY(ip6po_rthdr); /* not copy the cached route */
MAKE_EXTHDR(opt->ip6po_rthdr, &exthdrs.ip6e_rthdr);
opt->ip6po_rthdr = malloc(rthlen, M_IP6OPT, M_NOWAIT);
if (opt->ip6po_rthdr == NULL)
memcpy(opt->ip6po_rthdr, rth, rthlen);
if (opt && opt->ip6po_rthdr)