FreeBSD/sys/netinet/ip_ipsec.c
/*
 * Check if protocol type doesn't have a further header and do IPSEC
 * decryption or reject right now.  Protocols with further headers get
 * their IPSEC treatment within the protocol specific processing.
 * Called from ip_input().
 * 1 = drop packet, 0 = continue processing packet.
 */
Check if protocol type doesn't have a further header and do IPSEC
decryption or reject right now.  Protocols with further headers get
their IPSEC treatment within the protocol specific processing.
Check if protocol type doesn ' t have a further header and do IPSEC decryption or reject right now . Protocols with further headers get their IPSEC treatment within the protocol specific processing .
int
ip_ipsec_input(struct mbuf *m, int nxt)
{
	if ((inetsw[ip_protox[nxt]].pr_flags & PR_LASTHDR) != 0)
		return (ipsec4_in_reject(m, NULL));
	return (0);
}
int ip_ipsec_input ( struct mbuf * m , int nxt ) { if ( ( inetsw [ ip_protox [ nxt ] ] . pr_flags & PR_LASTHDR ) != 0 ) return ( ipsec4_in_reject ( m , NULL ) ) ; return ( 0 ) ; }
Check if protocol type doesn't have a further header and do IPSEC
 decryption or reject right now.
Check if protocol type doesn ' t have a further header and do IPSEC decryption or reject right now .
/*
	 * enforce IPsec policy checking if we are seeing last header.
	 * note that we do not visit this with protocols with pcb layer
	 * code - like udp/tcp/raw ip.
	 */