ipo               840 net/pfkeyv2.c  	struct ipsec_policy *ipo, *tmpipo;
ipo              1398 net/pfkeyv2.c  			for (ipo = TAILQ_FIRST(&ipsec_policy_head);
ipo              1399 net/pfkeyv2.c  			    ipo != NULL; ipo = tmpipo) {
ipo              1400 net/pfkeyv2.c  				tmpipo = TAILQ_NEXT(ipo, ipo_list);
ipo              1401 net/pfkeyv2.c  				if (!(ipo->ipo_flags & IPSP_POLICY_SOCKET))
ipo              1402 net/pfkeyv2.c  					ipsec_delete_policy(ipo);
ipo              1549 net/pfkeyv2.c  			ipo = ((struct sockaddr_encap *) re.re_rt->rt_gateway)->sen_ipsp;
ipo              1553 net/pfkeyv2.c  			if (bcmp(&ipo->ipo_addr, &encapdst,
ipo              1555 net/pfkeyv2.c  			    bcmp(&ipo->ipo_mask, &encapnetmask,
ipo              1557 net/pfkeyv2.c  				ipo = NULL; /* Fall through */
ipo              1561 net/pfkeyv2.c  			ipo = NULL;
ipo              1567 net/pfkeyv2.c  		if (exists && (ipo->ipo_flags & IPSP_POLICY_STATIC)) {
ipo              1578 net/pfkeyv2.c  				rval = ipsec_delete_policy(ipo);
ipo              1598 net/pfkeyv2.c  			ipo = pool_get(&ipsec_policy_pool, 0);
ipo              1599 net/pfkeyv2.c  			if (ipo == NULL) {
ipo              1605 net/pfkeyv2.c  			bzero(ipo, sizeof(struct ipsec_policy));
ipo              1606 net/pfkeyv2.c  			ipo->ipo_ref_count = 1;
ipo              1607 net/pfkeyv2.c  			TAILQ_INIT(&ipo->ipo_acquires);
ipo              1613 net/pfkeyv2.c  			encapgw.sen_ipsp = ipo;
ipo              1616 net/pfkeyv2.c  			bcopy(&encapdst, &ipo->ipo_addr,
ipo              1618 net/pfkeyv2.c  			bcopy(&encapnetmask, &ipo->ipo_mask,
ipo              1624 net/pfkeyv2.c  			ipo->ipo_type = IPSP_IPSEC_USE;
ipo              1628 net/pfkeyv2.c  			ipo->ipo_type = IPSP_IPSEC_ACQUIRE;
ipo              1632 net/pfkeyv2.c  			ipo->ipo_type = IPSP_IPSEC_REQUIRE;
ipo              1636 net/pfkeyv2.c  			ipo->ipo_type = IPSP_DENY;
ipo              1640 net/pfkeyv2.c  			ipo->ipo_type = IPSP_PERMIT;
ipo              1644 net/pfkeyv2.c  			ipo->ipo_type = IPSP_IPSEC_DONTACQ;
ipo              1649 net/pfkeyv2.c  				pool_put(&ipsec_policy_pool, ipo);
ipo              1651 net/pfkeyv2.c  				ipsec_delete_policy(ipo);
ipo              1659 net/pfkeyv2.c  			ipo->ipo_flags |= IPSP_POLICY_STATIC;
ipo              1662 net/pfkeyv2.c  			bcopy(sunionp, &ipo->ipo_dst,
ipo              1665 net/pfkeyv2.c  			bzero(&ipo->ipo_dst, sizeof(union sockaddr_union));
ipo              1668 net/pfkeyv2.c  			bcopy(ssrc, &ipo->ipo_src,
ipo              1671 net/pfkeyv2.c  			bzero(&ipo->ipo_src, sizeof(union sockaddr_union));
ipo              1673 net/pfkeyv2.c  		ipo->ipo_sproto = SADB_X_GETSPROTO(smsg->sadb_msg_satype);
ipo              1675 net/pfkeyv2.c  		if (ipo->ipo_srcid) {
ipo              1676 net/pfkeyv2.c  			ipsp_reffree(ipo->ipo_srcid);
ipo              1677 net/pfkeyv2.c  			ipo->ipo_srcid = NULL;
ipo              1680 net/pfkeyv2.c  		if (ipo->ipo_dstid) {
ipo              1681 net/pfkeyv2.c  			ipsp_reffree(ipo->ipo_dstid);
ipo              1682 net/pfkeyv2.c  			ipo->ipo_dstid = NULL;
ipo              1689 net/pfkeyv2.c  			MALLOC(ipo->ipo_srcid, struct ipsec_ref *, clen +
ipo              1691 net/pfkeyv2.c  			if (ipo->ipo_srcid == NULL) {
ipo              1693 net/pfkeyv2.c  					ipsec_delete_policy(ipo);
ipo              1695 net/pfkeyv2.c  					pool_put(&ipsec_policy_pool, ipo);
ipo              1700 net/pfkeyv2.c  			ipo->ipo_srcid->ref_type = sid->sadb_ident_type;
ipo              1701 net/pfkeyv2.c  			ipo->ipo_srcid->ref_len = clen;
ipo              1702 net/pfkeyv2.c  			ipo->ipo_srcid->ref_count = 1;
ipo              1703 net/pfkeyv2.c  			ipo->ipo_srcid->ref_malloctype = M_CREDENTIALS;
ipo              1704 net/pfkeyv2.c  			bcopy(sid + 1, ipo->ipo_srcid + 1, ipo->ipo_srcid->ref_len);
ipo              1711 net/pfkeyv2.c  			MALLOC(ipo->ipo_dstid, struct ipsec_ref *,
ipo              1714 net/pfkeyv2.c  			if (ipo->ipo_dstid == NULL) {
ipo              1716 net/pfkeyv2.c  					ipsec_delete_policy(ipo);
ipo              1718 net/pfkeyv2.c  					if (ipo->ipo_dstid)
ipo              1719 net/pfkeyv2.c  						ipsp_reffree(ipo->ipo_dstid);
ipo              1720 net/pfkeyv2.c  					pool_put(&ipsec_policy_pool, ipo);
ipo              1727 net/pfkeyv2.c  			ipo->ipo_dstid->ref_type = sid->sadb_ident_type;
ipo              1728 net/pfkeyv2.c  			ipo->ipo_dstid->ref_len = clen;
ipo              1729 net/pfkeyv2.c  			ipo->ipo_dstid->ref_count = 1;
ipo              1730 net/pfkeyv2.c  			ipo->ipo_dstid->ref_malloctype = M_CREDENTIALS;
ipo              1731 net/pfkeyv2.c  			bcopy(sid + 1, ipo->ipo_dstid + 1,
ipo              1732 net/pfkeyv2.c  			    ipo->ipo_dstid->ref_len);
ipo              1745 net/pfkeyv2.c  				if (ipo->ipo_tdb)
ipo              1746 net/pfkeyv2.c  					TAILQ_REMOVE(&ipo->ipo_tdb->tdb_policy_head,
ipo              1747 net/pfkeyv2.c  					    ipo, ipo_tdb_next);
ipo              1749 net/pfkeyv2.c  				if (ipo->ipo_srcid)
ipo              1750 net/pfkeyv2.c  					ipsp_reffree(ipo->ipo_srcid);
ipo              1751 net/pfkeyv2.c  				if (ipo->ipo_dstid)
ipo              1752 net/pfkeyv2.c  					ipsp_reffree(ipo->ipo_dstid);
ipo              1753 net/pfkeyv2.c  				pool_put(&ipsec_policy_pool, ipo);
ipo              1759 net/pfkeyv2.c  			TAILQ_INSERT_HEAD(&ipsec_policy_head, ipo, ipo_list);
ipo              1762 net/pfkeyv2.c  			ipo->ipo_last_searched = ipo->ipo_flags = 0;
ipo              1858 net/pfkeyv2.c  pfkeyv2_acquire(struct ipsec_policy *ipo, union sockaddr_union *gw,
ipo              1881 net/pfkeyv2.c  		PADUP(SA_LEN(&ipo->ipo_src.sa))) +
ipo              1885 net/pfkeyv2.c  	if (ipo->ipo_srcid)
ipo              1886 net/pfkeyv2.c  		i += sizeof(struct sadb_ident) + PADUP(ipo->ipo_srcid->ref_len);
ipo              1888 net/pfkeyv2.c  	if (ipo->ipo_dstid)
ipo              1889 net/pfkeyv2.c  		i += sizeof(struct sadb_ident) + PADUP(ipo->ipo_dstid->ref_len);
ipo              1891 net/pfkeyv2.c  	if (ipo->ipo_local_cred)
ipo              1892 net/pfkeyv2.c  		i += sizeof(struct sadb_x_cred) + PADUP(ipo->ipo_local_cred->ref_len);
ipo              1894 net/pfkeyv2.c  	if (ipo->ipo_local_auth)
ipo              1895 net/pfkeyv2.c  		i += sizeof(struct sadb_x_cred) + PADUP(ipo->ipo_local_auth->ref_len);
ipo              1917 net/pfkeyv2.c  	if (ipo->ipo_sproto == IPPROTO_ESP)
ipo              1919 net/pfkeyv2.c  	else if (ipo->ipo_sproto == IPPROTO_AH)
ipo              1921 net/pfkeyv2.c  	else if (ipo->ipo_sproto == IPPROTO_IPCOMP)
ipo              1943 net/pfkeyv2.c  	if (ipo->ipo_srcid) {
ipo              1945 net/pfkeyv2.c  		p += sizeof(struct sadb_ident) + PADUP(ipo->ipo_srcid->ref_len);
ipo              1948 net/pfkeyv2.c  		    PADUP(ipo->ipo_srcid->ref_len)) / sizeof(u_int64_t);
ipo              1949 net/pfkeyv2.c  		srcid->sadb_ident_type = ipo->ipo_srcid->ref_type;
ipo              1950 net/pfkeyv2.c  		bcopy(ipo->ipo_srcid + 1, headers[SADB_EXT_IDENTITY_SRC] +
ipo              1951 net/pfkeyv2.c  		    sizeof(struct sadb_ident), ipo->ipo_srcid->ref_len);
ipo              1954 net/pfkeyv2.c  	if (ipo->ipo_dstid) {
ipo              1956 net/pfkeyv2.c  		p += sizeof(struct sadb_ident) + PADUP(ipo->ipo_dstid->ref_len);
ipo              1959 net/pfkeyv2.c  		    PADUP(ipo->ipo_dstid->ref_len)) / sizeof(u_int64_t);
ipo              1960 net/pfkeyv2.c  		dstid->sadb_ident_type = ipo->ipo_dstid->ref_type;
ipo              1961 net/pfkeyv2.c  		bcopy(ipo->ipo_dstid + 1, headers[SADB_EXT_IDENTITY_DST] +
ipo              1962 net/pfkeyv2.c  		    sizeof(struct sadb_ident), ipo->ipo_dstid->ref_len);
ipo              1965 net/pfkeyv2.c  	if (ipo->ipo_local_cred) {
ipo              1967 net/pfkeyv2.c  		p += sizeof(struct sadb_x_cred) + PADUP(ipo->ipo_local_cred->ref_len);
ipo              1970 net/pfkeyv2.c  		    PADUP(ipo->ipo_local_cred->ref_len)) / sizeof(u_int64_t);
ipo              1971 net/pfkeyv2.c  		switch (ipo->ipo_local_cred->ref_type) {
ipo              1979 net/pfkeyv2.c  		bcopy(ipo->ipo_local_cred + 1, headers[SADB_X_EXT_LOCAL_CREDENTIALS] +
ipo              1980 net/pfkeyv2.c  		    sizeof(struct sadb_x_cred), ipo->ipo_local_cred->ref_len);
ipo              1983 net/pfkeyv2.c  	if (ipo->ipo_local_auth) {
ipo              1985 net/pfkeyv2.c  		p += sizeof(struct sadb_x_cred) + PADUP(ipo->ipo_local_auth->ref_len);
ipo              1988 net/pfkeyv2.c  		    PADUP(ipo->ipo_local_auth->ref_len)) / sizeof(u_int64_t);
ipo              1989 net/pfkeyv2.c  		switch (ipo->ipo_local_auth->ref_type) {
ipo              1998 net/pfkeyv2.c  		bcopy(ipo->ipo_local_auth + 1, headers[SADB_X_EXT_LOCAL_AUTH] +
ipo              1999 net/pfkeyv2.c  		    sizeof(struct sadb_x_cred), ipo->ipo_local_auth->ref_len);
ipo              2020 net/pfkeyv2.c  		if (ipo->ipo_sproto == IPPROTO_ESP) {
ipo              2057 net/pfkeyv2.c  		} else if (ipo->ipo_sproto == IPPROTO_IPCOMP) {
ipo              2281 net/pfkeyv2.c  pfkeyv2_dump_policy(struct ipsec_policy *ipo, void **headers, void **buffer,
ipo              2292 net/pfkeyv2.c  	switch (ipo->ipo_addr.sen_type) {
ipo              2310 net/pfkeyv2.c  	switch (ipo->ipo_src.sa.sa_family) {
ipo              2330 net/pfkeyv2.c  	switch (ipo->ipo_dst.sa.sa_family) {
ipo              2349 net/pfkeyv2.c  	if (ipo->ipo_srcid)
ipo              2350 net/pfkeyv2.c  		i += sizeof(struct sadb_ident) + PADUP(ipo->ipo_srcid->ref_len);
ipo              2351 net/pfkeyv2.c  	if (ipo->ipo_dstid)
ipo              2352 net/pfkeyv2.c  		i += sizeof(struct sadb_ident) + PADUP(ipo->ipo_dstid->ref_len);
ipo              2371 net/pfkeyv2.c  	if (ipo->ipo_src.sa.sa_family) {
ipo              2373 net/pfkeyv2.c  		export_address(&p, (struct sockaddr *)&ipo->ipo_src);
ipo              2377 net/pfkeyv2.c  	if (ipo->ipo_dst.sa.sa_family) {
ipo              2379 net/pfkeyv2.c  		export_address(&p, (struct sockaddr *)&ipo->ipo_dst);
ipo              2383 net/pfkeyv2.c  	export_flow(&p, ipo->ipo_type, &ipo->ipo_addr, &ipo->ipo_mask,
ipo              2388 net/pfkeyv2.c  	if (perm == 0 && ipo->ipo_srcid) {
ipo              2390 net/pfkeyv2.c  		p += sizeof(struct sadb_ident) + PADUP(ipo->ipo_srcid->ref_len);
ipo              2393 net/pfkeyv2.c  		    PADUP(ipo->ipo_srcid->ref_len)) / sizeof(uint64_t);
ipo              2394 net/pfkeyv2.c  		ident->sadb_ident_type = ipo->ipo_srcid->ref_type;
ipo              2395 net/pfkeyv2.c  		bcopy(ipo->ipo_srcid + 1, headers[SADB_EXT_IDENTITY_SRC] +
ipo              2396 net/pfkeyv2.c  		    sizeof(struct sadb_ident), ipo->ipo_srcid->ref_len);
ipo              2398 net/pfkeyv2.c  	if (perm == 0 && ipo->ipo_dstid) {
ipo              2400 net/pfkeyv2.c  		p += sizeof(struct sadb_ident) + PADUP(ipo->ipo_dstid->ref_len);
ipo              2403 net/pfkeyv2.c  		    PADUP(ipo->ipo_dstid->ref_len)) / sizeof(uint64_t);
ipo              2404 net/pfkeyv2.c  		ident->sadb_ident_type = ipo->ipo_dstid->ref_type;
ipo              2405 net/pfkeyv2.c  		bcopy(ipo->ipo_dstid + 1, headers[SADB_EXT_IDENTITY_DST] +
ipo              2406 net/pfkeyv2.c  		    sizeof(struct sadb_ident), ipo->ipo_dstid->ref_len);
ipo              2421 net/pfkeyv2.c  	struct ipsec_policy *ipo;
ipo              2423 net/pfkeyv2.c  	TAILQ_FOREACH(ipo, &ipsec_policy_head, ipo_list)
ipo              2424 net/pfkeyv2.c  		rval = walker(ipo, (void *)arg);
ipo              2429 net/pfkeyv2.c  pfkeyv2_sysctl_policydumper(struct ipsec_policy *ipo, void *arg)
ipo              2436 net/pfkeyv2.c  	if (ipo->ipo_flags & IPSP_POLICY_SOCKET)
ipo              2444 net/pfkeyv2.c  		if ((error = pfkeyv2_dump_policy(ipo, headers, &buffer,
ipo              2454 net/pfkeyv2.c  		if (ipo->ipo_sproto == IPPROTO_ESP)
ipo              2456 net/pfkeyv2.c  		else if (ipo->ipo_sproto == IPPROTO_AH)
ipo              2458 net/pfkeyv2.c  		else if (ipo->ipo_sproto == IPPROTO_IPCOMP)
ipo              2460 net/pfkeyv2.c  		else if (ipo->ipo_sproto == IPPROTO_IPIP)
ipo              2478 net/pfkeyv2.c  		if ((error = pfkeyv2_dump_policy(ipo, NULL, NULL,
ipo               277 netinet/ip_ether.c 	struct ip *ipo;
ipo               365 netinet/ip_ether.c 		ipo = mtod(m, struct ip *);
ipo               367 netinet/ip_ether.c 		ipo->ip_v = IPVERSION;
ipo               368 netinet/ip_ether.c 		ipo->ip_hl = 5;
ipo               369 netinet/ip_ether.c 		ipo->ip_len = htons(m->m_pkthdr.len);
ipo               370 netinet/ip_ether.c 		ipo->ip_ttl = ip_defttl;
ipo               371 netinet/ip_ether.c 		ipo->ip_p = IPPROTO_ETHERIP;
ipo               372 netinet/ip_ether.c 		ipo->ip_tos = 0;
ipo               373 netinet/ip_ether.c 		ipo->ip_off = 0;
ipo               374 netinet/ip_ether.c 		ipo->ip_sum = 0;
ipo               375 netinet/ip_ether.c 		ipo->ip_id = htons(ip_randomid());
ipo               382 netinet/ip_ether.c 		ipo->ip_src = tdb->tdb_src.sin.sin_addr;
ipo               383 netinet/ip_ether.c 		ipo->ip_dst = tdb->tdb_dst.sin.sin_addr;
ipo               144 netinet/ip_ipip.c 	struct ip *ipo;
ipo               186 netinet/ip_ipip.c 	ipo = mtod(m, struct ip *);
ipo               192 netinet/ip_ipip.c 		otos = ipo->ip_tos;
ipo               255 netinet/ip_ipip.c                 ipo = mtod(m, struct ip *);
ipo               256 netinet/ip_ipip.c                 nxt = ipo->ip_p;
ipo               257 netinet/ip_ipip.c 		if (!ip_ecn_egress(ECN_ALLOWED, &otos, &ipo->ip_tos)) {
ipo               265 netinet/ip_ipip.c                 ip6 = (struct ip6_hdr *) ipo;
ipo               287 netinet/ip_ipip.c 				if (ipo) {
ipo               295 netinet/ip_ipip.c 					    ipo->ip_src.s_addr)	{
ipo               384 netinet/ip_ipip.c 	struct ip *ipo;
ipo               421 netinet/ip_ipip.c 		ipo = mtod(m, struct ip *);
ipo               423 netinet/ip_ipip.c 		ipo->ip_v = IPVERSION;
ipo               424 netinet/ip_ipip.c 		ipo->ip_hl = 5;
ipo               425 netinet/ip_ipip.c 		ipo->ip_len = htons(m->m_pkthdr.len);
ipo               426 netinet/ip_ipip.c 		ipo->ip_ttl = ip_defttl;
ipo               427 netinet/ip_ipip.c 		ipo->ip_sum = 0;
ipo               428 netinet/ip_ipip.c 		ipo->ip_src = tdb->tdb_src.sin.sin_addr;
ipo               429 netinet/ip_ipip.c 		ipo->ip_dst = tdb->tdb_dst.sin.sin_addr;
ipo               435 netinet/ip_ipip.c 		ipo->ip_id = htons(ip_randomid());
ipo               444 netinet/ip_ipip.c 			ipo->ip_p = IPPROTO_IPIP;
ipo               452 netinet/ip_ipip.c 			    sizeof(u_int16_t), (caddr_t) &ipo->ip_off);
ipo               453 netinet/ip_ipip.c 			NTOHS(ipo->ip_off);
ipo               454 netinet/ip_ipip.c 			ipo->ip_off &= ~(IP_DF | IP_MF | IP_OFFMASK);
ipo               455 netinet/ip_ipip.c 			HTONS(ipo->ip_off);
ipo               466 netinet/ip_ipip.c 			ipo->ip_p = IPPROTO_IPV6;
ipo               467 netinet/ip_ipip.c 			ipo->ip_off = 0;
ipo               479 netinet/ip_ipip.c 		ipo->ip_tos = otos;
ipo               802 netinet/ip_ipsp.c 	struct ipsec_policy *ipo;
ipo               824 netinet/ip_ipsp.c 	for (ipo = TAILQ_FIRST(&tdbp->tdb_policy_head); ipo;
ipo               825 netinet/ip_ipsp.c 	    ipo = TAILQ_FIRST(&tdbp->tdb_policy_head))	{
ipo               826 netinet/ip_ipsp.c 		TAILQ_REMOVE(&tdbp->tdb_policy_head, ipo, ipo_tdb_next);
ipo               827 netinet/ip_ipsp.c 		ipo->ipo_tdb = NULL;
ipo               828 netinet/ip_ipsp.c 		ipo->ipo_last_searched = 0; /* Force a re-search. */
ipo                86 netinet/ip_spd.c 	struct ipsec_policy *ipo;
ipo               255 netinet/ip_spd.c 	ipo = ((struct sockaddr_encap *) (re->re_rt->rt_gateway))->sen_ipsp;
ipo               257 netinet/ip_spd.c 	if (ipo == NULL) {
ipo               263 netinet/ip_spd.c 	switch (ipo->ipo_type) {
ipo               267 netinet/ip_spd.c 		    inp, ipo);
ipo               286 netinet/ip_spd.c 	switch (ipo->ipo_dst.sa.sa_family) {
ipo               289 netinet/ip_spd.c 		if ((ipo->ipo_dst.sin.sin_addr.s_addr == INADDR_ANY) ||
ipo               290 netinet/ip_spd.c 		    (ipo->ipo_dst.sin.sin_addr.s_addr == INADDR_BROADCAST))
ipo               297 netinet/ip_spd.c 		if ((IN6_IS_ADDR_UNSPECIFIED(&ipo->ipo_dst.sin6.sin6_addr)) ||
ipo               298 netinet/ip_spd.c 		    (bcmp(&ipo->ipo_dst.sin6.sin6_addr, &in6mask128,
ipo               306 netinet/ip_spd.c 	switch (ipo->ipo_src.sa.sa_family) {
ipo               309 netinet/ip_spd.c 		if (ipo->ipo_src.sin.sin_addr.s_addr == INADDR_ANY)
ipo               316 netinet/ip_spd.c 		if (IN6_IS_ADDR_UNSPECIFIED(&ipo->ipo_src.sin6.sin6_addr))
ipo               323 netinet/ip_spd.c 	if ((ipo->ipo_tdb) && (ipo->ipo_tdb->tdb_flags & TDBF_INVALID)) {
ipo               324 netinet/ip_spd.c 		TAILQ_REMOVE(&ipo->ipo_tdb->tdb_policy_head, ipo,
ipo               326 netinet/ip_spd.c 		ipo->ipo_tdb = NULL;
ipo               343 netinet/ip_spd.c 			    !bcmp(&sdst, &ipo->ipo_dst, sdst.sa.sa_len)) {
ipo               350 netinet/ip_spd.c 		if (ipo->ipo_tdb) {
ipo               351 netinet/ip_spd.c 			if ((ipo->ipo_last_searched <= ipsec_last_added) ||
ipo               352 netinet/ip_spd.c 			    (ipo->ipo_sproto != ipo->ipo_tdb->tdb_sproto) ||
ipo               353 netinet/ip_spd.c 			    bcmp(dignore ? &sdst : &ipo->ipo_dst,
ipo               354 netinet/ip_spd.c 				&ipo->ipo_tdb->tdb_dst,
ipo               355 netinet/ip_spd.c 				ipo->ipo_tdb->tdb_dst.sa.sa_len))
ipo               358 netinet/ip_spd.c 			if (!ipsp_aux_match(ipo->ipo_tdb,
ipo               359 netinet/ip_spd.c 			    ipo->ipo_srcid, ipo->ipo_dstid,
ipo               360 netinet/ip_spd.c 			    ipo->ipo_local_cred, NULL,
ipo               361 netinet/ip_spd.c 			    &ipo->ipo_addr, &ipo->ipo_mask))
ipo               367 netinet/ip_spd.c 			    tdbp, inp, ipo);
ipo               371 netinet/ip_spd.c 			TAILQ_REMOVE(&ipo->ipo_tdb->tdb_policy_head, ipo,
ipo               373 netinet/ip_spd.c 			ipo->ipo_tdb = NULL;
ipo               374 netinet/ip_spd.c 			ipo->ipo_last_searched = 0;
ipo               386 netinet/ip_spd.c 		if (ipo->ipo_last_searched <= ipsec_last_added)	{
ipo               389 netinet/ip_spd.c 				ipo->ipo_last_searched = time_second;
ipo               392 netinet/ip_spd.c 			ipo->ipo_tdb =
ipo               393 netinet/ip_spd.c 			    gettdbbyaddr(dignore ? &sdst : &ipo->ipo_dst,
ipo               394 netinet/ip_spd.c 				ipo->ipo_sproto, ipo->ipo_srcid,
ipo               395 netinet/ip_spd.c 				ipo->ipo_dstid, ipo->ipo_local_cred, m, af,
ipo               396 netinet/ip_spd.c 				&ipo->ipo_addr, &ipo->ipo_mask);
ipo               397 netinet/ip_spd.c 			if (ipo->ipo_tdb) {
ipo               398 netinet/ip_spd.c 				TAILQ_INSERT_TAIL(&ipo->ipo_tdb->tdb_policy_head,
ipo               399 netinet/ip_spd.c 				    ipo, ipo_tdb_next);
ipo               402 netinet/ip_spd.c 				    direction, tdbp, inp, ipo);
ipo               407 netinet/ip_spd.c 		switch (ipo->ipo_type) {
ipo               410 netinet/ip_spd.c 			if (ipsp_acquire_sa(ipo,
ipo               411 netinet/ip_spd.c 			    dignore ? &sdst : &ipo->ipo_dst,
ipo               412 netinet/ip_spd.c 			    signore ? NULL : &ipo->ipo_src, ddst, m) != 0) {
ipo               424 netinet/ip_spd.c 			ipsp_acquire_sa(ipo, dignore ? &sdst : &ipo->ipo_dst,
ipo               425 netinet/ip_spd.c 			    signore ? NULL : &ipo->ipo_src, ddst, NULL);
ipo               431 netinet/ip_spd.c 			    tdbp, inp, ipo);
ipo               436 netinet/ip_spd.c 			if (ipo->ipo_tdb == tdbp) {
ipo               439 netinet/ip_spd.c 				    direction, tdbp, inp, ipo);
ipo               442 netinet/ip_spd.c 			if (bcmp(dignore ? &ssrc : &ipo->ipo_dst,
ipo               444 netinet/ip_spd.c 			    (ipo->ipo_sproto != tdbp->tdb_sproto))
ipo               448 netinet/ip_spd.c 			if (ipo->ipo_srcid) {
ipo               450 netinet/ip_spd.c 				    !ipsp_ref_match(ipo->ipo_srcid,
ipo               456 netinet/ip_spd.c 			if (ipo->ipo_dstid) {
ipo               458 netinet/ip_spd.c 				    !ipsp_ref_match(ipo->ipo_dstid,
ipo               464 netinet/ip_spd.c 			if (ipo->ipo_tdb)
ipo               465 netinet/ip_spd.c 				TAILQ_REMOVE(&ipo->ipo_tdb->tdb_policy_head,
ipo               466 netinet/ip_spd.c 				    ipo, ipo_tdb_next);
ipo               467 netinet/ip_spd.c 			ipo->ipo_tdb = tdbp;
ipo               468 netinet/ip_spd.c 			TAILQ_INSERT_TAIL(&tdbp->tdb_policy_head, ipo,
ipo               472 netinet/ip_spd.c 			    tdbp, inp, ipo);
ipo               479 netinet/ip_spd.c 		if (ipo->ipo_tdb) {
ipo               487 netinet/ip_spd.c 			if (ipo->ipo_sproto == ipo->ipo_tdb->tdb_sproto &&
ipo               488 netinet/ip_spd.c 			    !bcmp(&ipo->ipo_tdb->tdb_src,
ipo               489 netinet/ip_spd.c 				dignore ? &ssrc : &ipo->ipo_dst,
ipo               490 netinet/ip_spd.c 				ipo->ipo_tdb->tdb_src.sa.sa_len))
ipo               494 netinet/ip_spd.c 			TAILQ_REMOVE(&ipo->ipo_tdb->tdb_policy_head, ipo,
ipo               496 netinet/ip_spd.c 			ipo->ipo_last_searched = 0;
ipo               497 netinet/ip_spd.c 			ipo->ipo_tdb = NULL;
ipo               501 netinet/ip_spd.c 		if (ipo->ipo_last_searched <= ipsec_last_added)	{
ipo               503 netinet/ip_spd.c 				ipo->ipo_last_searched = time_second;
ipo               505 netinet/ip_spd.c 			ipo->ipo_tdb =
ipo               506 netinet/ip_spd.c 			    gettdbbysrc(dignore ? &ssrc : &ipo->ipo_dst,
ipo               507 netinet/ip_spd.c 				ipo->ipo_sproto, ipo->ipo_srcid,
ipo               508 netinet/ip_spd.c 				ipo->ipo_dstid, m, af, &ipo->ipo_addr,
ipo               509 netinet/ip_spd.c 				&ipo->ipo_mask);
ipo               510 netinet/ip_spd.c 			if (ipo->ipo_tdb)
ipo               511 netinet/ip_spd.c 				TAILQ_INSERT_TAIL(&ipo->ipo_tdb->tdb_policy_head,
ipo               512 netinet/ip_spd.c 				    ipo, ipo_tdb_next);
ipo               516 netinet/ip_spd.c 		switch (ipo->ipo_type) {
ipo               519 netinet/ip_spd.c 			if (ipo->ipo_tdb) {
ipo               525 netinet/ip_spd.c 			if ((*error = ipsp_acquire_sa(ipo,
ipo               526 netinet/ip_spd.c 			    dignore ? &ssrc : &ipo->ipo_dst,
ipo               527 netinet/ip_spd.c 			    signore ? NULL : &ipo->ipo_src, ddst, m)) != 0)
ipo               538 netinet/ip_spd.c 			if (ipo->ipo_tdb) {
ipo               541 netinet/ip_spd.c 				    direction, tdbp, inp, ipo);
ipo               545 netinet/ip_spd.c 			ipsp_acquire_sa(ipo, dignore ? &ssrc : &ipo->ipo_dst,
ipo               546 netinet/ip_spd.c 			    signore ? NULL : &ipo->ipo_src, ddst, NULL);
ipo               552 netinet/ip_spd.c 			    tdbp, inp, ipo);
ipo               565 netinet/ip_spd.c ipsec_delete_policy(struct ipsec_policy *ipo)
ipo               570 netinet/ip_spd.c 	if (--ipo->ipo_ref_count > 0)
ipo               574 netinet/ip_spd.c 	if (!(ipo->ipo_flags & IPSP_POLICY_SOCKET))
ipo               575 netinet/ip_spd.c 		err = rtrequest(RTM_DELETE, (struct sockaddr *) &ipo->ipo_addr,
ipo               577 netinet/ip_spd.c 		    (struct sockaddr *) &ipo->ipo_mask,
ipo               580 netinet/ip_spd.c 	if (ipo->ipo_tdb != NULL)
ipo               581 netinet/ip_spd.c 		TAILQ_REMOVE(&ipo->ipo_tdb->tdb_policy_head, ipo,
ipo               584 netinet/ip_spd.c 	while ((ipa = TAILQ_FIRST(&ipo->ipo_acquires)) != NULL)
ipo               587 netinet/ip_spd.c 	TAILQ_REMOVE(&ipsec_policy_head, ipo, ipo_list);
ipo               589 netinet/ip_spd.c 	if (ipo->ipo_srcid)
ipo               590 netinet/ip_spd.c 		ipsp_reffree(ipo->ipo_srcid);
ipo               591 netinet/ip_spd.c 	if (ipo->ipo_dstid)
ipo               592 netinet/ip_spd.c 		ipsp_reffree(ipo->ipo_dstid);
ipo               593 netinet/ip_spd.c 	if (ipo->ipo_local_cred)
ipo               594 netinet/ip_spd.c 		ipsp_reffree(ipo->ipo_local_cred);
ipo               595 netinet/ip_spd.c 	if (ipo->ipo_local_auth)
ipo               596 netinet/ip_spd.c 		ipsp_reffree(ipo->ipo_local_auth);
ipo               598 netinet/ip_spd.c 	pool_put(&ipsec_policy_pool, ipo);
ipo               600 netinet/ip_spd.c 	if (!(ipo->ipo_flags & IPSP_POLICY_SOCKET))
ipo               729 netinet/ip_spd.c ipsp_pending_acquire(struct ipsec_policy *ipo, union sockaddr_union *gw)
ipo               733 netinet/ip_spd.c 	TAILQ_FOREACH (ipa, &ipo->ipo_acquires, ipa_ipo_next) {
ipo               746 netinet/ip_spd.c ipsp_acquire_sa(struct ipsec_policy *ipo, union sockaddr_union *gw,
ipo               759 netinet/ip_spd.c 	if (ipo->ipo_flags & IPSP_POLICY_SOCKET &&
ipo               760 netinet/ip_spd.c 	    ipo->ipo_local_auth == NULL)
ipo               764 netinet/ip_spd.c 	if ((ipa = ipsp_pending_acquire(ipo, gw)) != NULL)
ipo               787 netinet/ip_spd.c 	switch (ipo->ipo_addr.sen_type) {
ipo               791 netinet/ip_spd.c 		ipa->ipa_info.sen_direction = ipo->ipo_addr.sen_direction;
ipo               792 netinet/ip_spd.c 		ipa->ipa_mask.sen_direction = ipo->ipo_mask.sen_direction;
ipo               794 netinet/ip_spd.c 		if (ipo->ipo_mask.sen_ip_src.s_addr == INADDR_ANY ||
ipo               795 netinet/ip_spd.c 		    ipo->ipo_addr.sen_ip_src.s_addr == INADDR_ANY ||
ipo               796 netinet/ip_spd.c 		    ipsp_is_unspecified(ipo->ipo_dst)) {
ipo               800 netinet/ip_spd.c 			ipa->ipa_info.sen_ip_src = ipo->ipo_addr.sen_ip_src;
ipo               801 netinet/ip_spd.c 			ipa->ipa_mask.sen_ip_src = ipo->ipo_mask.sen_ip_src;
ipo               804 netinet/ip_spd.c 		if (ipo->ipo_mask.sen_ip_dst.s_addr == INADDR_ANY ||
ipo               805 netinet/ip_spd.c 		    ipo->ipo_addr.sen_ip_dst.s_addr == INADDR_ANY ||
ipo               806 netinet/ip_spd.c 		    ipsp_is_unspecified(ipo->ipo_dst)) {
ipo               810 netinet/ip_spd.c 			ipa->ipa_info.sen_ip_dst = ipo->ipo_addr.sen_ip_dst;
ipo               811 netinet/ip_spd.c 			ipa->ipa_mask.sen_ip_dst = ipo->ipo_mask.sen_ip_dst;
ipo               814 netinet/ip_spd.c 		ipa->ipa_info.sen_proto = ipo->ipo_addr.sen_proto;
ipo               815 netinet/ip_spd.c 		ipa->ipa_mask.sen_proto = ipo->ipo_mask.sen_proto;
ipo               817 netinet/ip_spd.c 		if (ipo->ipo_addr.sen_proto) {
ipo               818 netinet/ip_spd.c 			ipa->ipa_info.sen_sport = ipo->ipo_addr.sen_sport;
ipo               819 netinet/ip_spd.c 			ipa->ipa_mask.sen_sport = ipo->ipo_mask.sen_sport;
ipo               821 netinet/ip_spd.c 			ipa->ipa_info.sen_dport = ipo->ipo_addr.sen_dport;
ipo               822 netinet/ip_spd.c 			ipa->ipa_mask.sen_dport = ipo->ipo_mask.sen_dport;
ipo               831 netinet/ip_spd.c 		    ipo->ipo_addr.sen_ip6_direction;
ipo               833 netinet/ip_spd.c 		    ipo->ipo_mask.sen_ip6_direction;
ipo               835 netinet/ip_spd.c 		if (IN6_IS_ADDR_UNSPECIFIED(&ipo->ipo_mask.sen_ip6_src) ||
ipo               836 netinet/ip_spd.c 		    IN6_IS_ADDR_UNSPECIFIED(&ipo->ipo_addr.sen_ip6_src) ||
ipo               837 netinet/ip_spd.c 		    ipsp_is_unspecified(ipo->ipo_dst)) {
ipo               841 netinet/ip_spd.c 			ipa->ipa_info.sen_ip6_src = ipo->ipo_addr.sen_ip6_src;
ipo               842 netinet/ip_spd.c 			ipa->ipa_mask.sen_ip6_src = ipo->ipo_mask.sen_ip6_src;
ipo               845 netinet/ip_spd.c 		if (IN6_IS_ADDR_UNSPECIFIED(&ipo->ipo_mask.sen_ip6_dst) ||
ipo               846 netinet/ip_spd.c 		    IN6_IS_ADDR_UNSPECIFIED(&ipo->ipo_addr.sen_ip6_dst) ||
ipo               847 netinet/ip_spd.c 		    ipsp_is_unspecified(ipo->ipo_dst)) {
ipo               851 netinet/ip_spd.c 			ipa->ipa_info.sen_ip6_dst = ipo->ipo_addr.sen_ip6_dst;
ipo               852 netinet/ip_spd.c 			ipa->ipa_mask.sen_ip6_dst = ipo->ipo_mask.sen_ip6_dst;
ipo               855 netinet/ip_spd.c 		ipa->ipa_info.sen_ip6_proto = ipo->ipo_addr.sen_ip6_proto;
ipo               856 netinet/ip_spd.c 		ipa->ipa_mask.sen_ip6_proto = ipo->ipo_mask.sen_ip6_proto;
ipo               858 netinet/ip_spd.c 		if (ipo->ipo_mask.sen_ip6_proto) {
ipo               860 netinet/ip_spd.c 			    ipo->ipo_addr.sen_ip6_sport;
ipo               862 netinet/ip_spd.c 			    ipo->ipo_mask.sen_ip6_sport;
ipo               864 netinet/ip_spd.c 			    ipo->ipo_addr.sen_ip6_dport;
ipo               866 netinet/ip_spd.c 			    ipo->ipo_mask.sen_ip6_dport;
ipo               879 netinet/ip_spd.c 	TAILQ_INSERT_TAIL(&ipo->ipo_acquires, ipa, ipa_ipo_next);
ipo               880 netinet/ip_spd.c 	ipa->ipa_policy = ipo;
ipo               883 netinet/ip_spd.c 	return pfkeyv2_acquire(ipo, gw, laddr, &ipa->ipa_seq, ddst);
ipo               891 netinet/ip_spd.c     struct tdb *tdbp, struct inpcb *inp, struct ipsec_policy *ipo)
ipo              1043 netinet/ip_spd.c 			if (ipo != NULL && m != NULL &&
ipo              1044 netinet/ip_spd.c 			    ipo->ipo_tdb != NULL &&
ipo              1045 netinet/ip_spd.c 			    ipo->ipo_tdb != inp->inp_tdb_out) {
ipo              1092 netinet/ip_spd.c 			if (ipo != NULL && ipo->ipo_tdb != NULL &&
ipo              1093 netinet/ip_spd.c 			    ipo->ipo_tdb != inp->inp_tdb_out && m != NULL)
ipo              1151 netinet/ip_spd.c 	tdbi->spi = ipo->ipo_tdb->tdb_spi;
ipo              1152 netinet/ip_spd.c 	tdbi->proto = ipo->ipo_tdb->tdb_sproto;
ipo              1153 netinet/ip_spd.c 	bcopy(&ipo->ipo_tdb->tdb_dst, &tdbi->dst,
ipo              1154 netinet/ip_spd.c 	    ipo->ipo_tdb->tdb_dst.sa.sa_len);
ipo              1159 netinet/ip_spd.c 	if (ipo != NULL)
ipo              1160 netinet/ip_spd.c 		return ipo->ipo_tdb;