Lines Matching refs:off
209 esp4_input(struct mbuf *m, int off) in esp4_input() argument
211 (void)esp4_input_extended(m, off, NULL); in esp4_input()
215 esp4_input_extended(struct mbuf *m, int off, ifnet_t interface) in esp4_input_extended() argument
238 if (off % 4 != 0 || m->m_pkthdr.len % 4 != 0) { in esp4_input_extended()
240 "(off=%d, pktlen=%d)\n", off, m->m_pkthdr.len)); in esp4_input_extended()
245 if (m->m_len < off + ESPMAXLEN) { in esp4_input_extended()
246 m = m_pullup(m, off + ESPMAXLEN); in esp4_input_extended()
263 !(ip->ip_p == IPPROTO_UDP && off >= sizeof(struct udphdr))) { in esp4_input_extended()
269 esp = (struct esp *)(void *)(((u_int8_t *)ip) + off); in esp4_input_extended()
355 if (m->m_pkthdr.len < off + ESPMAXLEN + siz) { in esp4_input_extended()
374 if (m->m_pkthdr.len < off + ESPMAXLEN + siz) { in esp4_input_extended()
391 if (esp_auth(m, off, m->m_pkthdr.len - off - siz, sav, sum)) { in esp4_input_extended()
444 if (m->m_pkthdr.len < off + esplen + ivlen + sizeof(esptail)) { in esp4_input_extended()
451 if (m->m_len < off + esplen + ivlen) { in esp4_input_extended()
452 m = m_pullup(m, (int)(off + esplen + ivlen)); in esp4_input_extended()
477 if ((*algo->decrypt)(m, off, sav, algo, ivlen)) { in esp4_input_extended()
541 if (m->m_len < off) { in esp4_input_extended()
542 m = m_pullup(m, off); in esp4_input_extended()
553 off -= sizeof(struct udphdr); // off no longer includes the udphdr's size in esp4_input_extended()
559 struct udphdr *encap_uh = (__typeof__(encap_uh))(void *)((caddr_t)ip + off); in esp4_input_extended()
565 ip = esp4_input_strip_udp_encap(m, off); in esp4_input_extended()
566 esp = (struct esp *)(void *)(((u_int8_t *)ip) + off); in esp4_input_extended()
570 if (ipsec4_tunnel_validate(m, (int)(off + esplen + ivlen), nxt, sav, &ifamily)) { in esp4_input_extended()
586 m_adj(m, (int)(off + esplen + ivlen)); in esp4_input_extended()
754 ovbcopy((caddr_t)ip, (caddr_t)(((u_char *)ip) + stripsiz), off); in esp4_input_extended()
802 if (m->m_len < off + sizeof(struct udphdr)) { in esp4_input_extended()
803 m = m_pullup(m, off + sizeof(struct udphdr)); in esp4_input_extended()
812 udp = (struct udphdr *)(void *)(((u_int8_t *)ip) + off); in esp4_input_extended()
886 ip_proto_dispatch_in(m, off, (u_int8_t)nxt, 0); in esp4_input_extended()
928 int off = *offp; in esp6_input_extended() local
945 if (off % 4 != 0 || m->m_pkthdr.len % 4 != 0) { in esp6_input_extended()
947 "(off=%d, pktlen=%d)\n", off, m->m_pkthdr.len)); in esp6_input_extended()
953 IP6_EXTHDR_CHECK(m, off, ESPMAXLEN, {return IPPROTO_DONE;}); in esp6_input_extended()
954 esp = (struct esp *)(void *)(mtod(m, caddr_t) + off); in esp6_input_extended()
956 IP6_EXTHDR_GET(esp, struct esp *, m, off, ESPMAXLEN); in esp6_input_extended()
977 off >= (sizeof(struct udphdr) + sizeof(struct ip6_hdr))))) { in esp6_input_extended()
1068 if (m->m_pkthdr.len < off + ESPMAXLEN + siz) { in esp6_input_extended()
1087 if (m->m_pkthdr.len < off + ESPMAXLEN + siz) { in esp6_input_extended()
1104 if (esp_auth(m, off, m->m_pkthdr.len - off - siz, sav, sum)) { in esp6_input_extended()
1152 if (m->m_pkthdr.len < off + esplen + ivlen + sizeof(esptail)) { in esp6_input_extended()
1160 IP6_EXTHDR_CHECK(m, off, (int)(esplen + ivlen), goto bad); /*XXX*/ in esp6_input_extended()
1162 IP6_EXTHDR_GET(esp, struct esp *, m, off, esplen + ivlen); in esp6_input_extended()
1186 if ((*algo->decrypt)(m, off, sav, algo, ivlen)) { in esp6_input_extended()
1247 if (m->m_len < off) { in esp6_input_extended()
1248 m = m_pullup(m, off); in esp6_input_extended()
1259 off -= sizeof(struct udphdr); // off no longer includes the udphdr's size in esp6_input_extended()
1265 struct udphdr *encap_uh = (__typeof__(encap_uh))(void *)((caddr_t)ip6 + off); in esp6_input_extended()
1271 ip6 = esp6_input_strip_udp_encap(m, off); in esp6_input_extended()
1272 esp = (struct esp *)(void *)(((u_int8_t *)ip6) + off); in esp6_input_extended()
1277 if (ipsec6_tunnel_validate(m, (int)(off + esplen + ivlen), nxt, sav, &ifamily)) { in esp6_input_extended()
1291 m_adj(m, (int)(off + esplen + ivlen)); in esp6_input_extended()
1449 prvnxtp = ip6_get_prevhdr(m, off); /* XXX */ in esp6_input_extended()
1456 if (m->m_len >= stripsiz + off) { in esp6_input_extended()
1457 ovbcopy((caddr_t)ip6, ((caddr_t)ip6) + stripsiz, off); in esp6_input_extended()
1468 n = m_split(m, off, M_DONTWAIT); in esp6_input_extended()
1589 *offp = off; in esp6_input_extended()
1628 int off = 0; in esp6_ctlinput() local
1643 off = ip6cp->ip6c_off; in esp6_ctlinput()
1674 if (m->m_pkthdr.len < off + sizeof(esp)) { in esp6_ctlinput()
1678 if (m->m_len < off + sizeof(esp)) { in esp6_ctlinput()
1683 m_copydata(m, off, sizeof(esp), (caddr_t)&esp); in esp6_ctlinput()
1686 espp = (struct newesp*)(void *)(mtod(m, caddr_t) + off); in esp6_ctlinput()