Lines Matching refs:spidx

343 		/* set spidx in pcb */
348 /* set spidx in pcb */
392 kernsp = key_allocsp(&currsp->spidx, dir);
439 kernsp = key_allocsp(&currsp->spidx, dir);
523 struct secpolicyindex spidx;
526 bzero(&spidx, sizeof(spidx));
529 *error = ipsec_setspidx_mbuf(&spidx, dir, AF_INET, m,
537 sp = key_allocsp(&spidx, dir);
605 /* set spidx in pcb */
639 kernsp = key_allocsp(&currsp->spidx, dir);
682 kernsp = key_allocsp(&currsp->spidx, dir);
765 struct secpolicyindex spidx;
767 bzero(&spidx, sizeof(spidx));
770 *error = ipsec_setspidx_mbuf(&spidx, dir, AF_INET6, m,
776 sp = key_allocsp(&spidx, dir);
804 * set IP address into spidx from mbuf.
815 struct secpolicyindex *spidx,
824 if (spidx == NULL || m == NULL)
827 bzero(spidx, sizeof(*spidx));
829 error = ipsec_setspidx(m, spidx, needport);
832 spidx->dir = dir;
838 bzero(spidx, sizeof(*spidx));
847 struct secpolicyindex *spidx;
861 bzero(&pcb->inp_sp->sp_in->spidx, sizeof(*spidx));
862 bzero(&pcb->inp_sp->sp_out->spidx, sizeof(*spidx));
864 spidx = &pcb->inp_sp->sp_in->spidx;
865 error = ipsec_setspidx(m, spidx, 1);
868 spidx->dir = IPSEC_DIR_INBOUND;
870 spidx = &pcb->inp_sp->sp_out->spidx;
871 error = ipsec_setspidx(m, spidx, 1);
874 spidx->dir = IPSEC_DIR_OUTBOUND;
879 bzero(&pcb->inp_sp->sp_in->spidx, sizeof(*spidx));
880 bzero(&pcb->inp_sp->sp_out->spidx, sizeof(*spidx));
890 struct secpolicyindex *spidx;
901 bzero(&pcb->in6p_sp->sp_in->spidx, sizeof(*spidx));
902 bzero(&pcb->in6p_sp->sp_out->spidx, sizeof(*spidx));
904 spidx = &pcb->in6p_sp->sp_in->spidx;
905 error = ipsec_setspidx(m, spidx, 1);
908 spidx->dir = IPSEC_DIR_INBOUND;
910 spidx = &pcb->in6p_sp->sp_out->spidx;
911 error = ipsec_setspidx(m, spidx, 1);
914 spidx->dir = IPSEC_DIR_OUTBOUND;
919 bzero(&pcb->in6p_sp->sp_in->spidx, sizeof(*spidx));
920 bzero(&pcb->in6p_sp->sp_out->spidx, sizeof(*spidx));
928 * the caller is responsible for error recovery (like clearing up spidx).
931 ipsec_setspidx(m, spidx, needport)
933 struct secpolicyindex *spidx;
984 error = ipsec4_setspidx_ipaddr(m, spidx);
987 ipsec4_get_ulp(m, spidx, needport);
998 error = ipsec6_setspidx_ipaddr(m, spidx);
1001 ipsec6_get_ulp(m, spidx, needport);
1013 ipsec4_get_ulp(m, spidx, needport)
1015 struct secpolicyindex *spidx;
1032 spidx->ul_proto = IPSEC_ULPROTO_ANY;
1033 ((struct sockaddr_in *)&spidx->src)->sin_port = IPSEC_PORT_ANY;
1034 ((struct sockaddr_in *)&spidx->dst)->sin_port = IPSEC_PORT_ANY;
1050 spidx->ul_proto = nxt;
1056 ((struct sockaddr_in *)&spidx->src)->sin_port =
1058 ((struct sockaddr_in *)&spidx->dst)->sin_port =
1062 spidx->ul_proto = nxt;
1068 ((struct sockaddr_in *)&spidx->src)->sin_port =
1070 ((struct sockaddr_in *)&spidx->dst)->sin_port =
1083 spidx->ul_proto = nxt;
1091 ipsec4_setspidx_ipaddr(m, spidx)
1093 struct secpolicyindex *spidx;
1106 sin = (struct sockaddr_in *)&spidx->src;
1111 spidx->prefs = sizeof(struct in_addr) << 3;
1113 sin = (struct sockaddr_in *)&spidx->dst;
1118 spidx->prefd = sizeof(struct in_addr) << 3;
1124 ipsec6_get_ulp(m, spidx, needport)
1126 struct secpolicyindex *spidx;
1141 spidx->ul_proto = IPSEC_ULPROTO_ANY;
1142 ((struct sockaddr_in6 *)&spidx->src)->sin6_port = IPSEC_PORT_ANY;
1143 ((struct sockaddr_in6 *)&spidx->dst)->sin6_port = IPSEC_PORT_ANY;
1152 spidx->ul_proto = nxt;
1158 ((struct sockaddr_in6 *)&spidx->src)->sin6_port = th.th_sport;
1159 ((struct sockaddr_in6 *)&spidx->dst)->sin6_port = th.th_dport;
1162 spidx->ul_proto = nxt;
1168 ((struct sockaddr_in6 *)&spidx->src)->sin6_port = uh.uh_sport;
1169 ((struct sockaddr_in6 *)&spidx->dst)->sin6_port = uh.uh_dport;
1174 spidx->ul_proto = nxt;
1181 ipsec6_setspidx_ipaddr(m, spidx)
1183 struct secpolicyindex *spidx;
1196 sin6 = (struct sockaddr_in6 *)&spidx->src;
1205 spidx->prefs = sizeof(struct in6_addr) << 3;
1207 sin6 = (struct sockaddr_in6 *)&spidx->dst;
1216 spidx->prefd = sizeof(struct in6_addr) << 3;
1743 if (((struct sockaddr *)&isr->sp->spidx.src)->sa_family
1744 != ((struct sockaddr *)&isr->sp->spidx.dst)->sa_family)
1760 switch (((struct sockaddr *)&isr->sp->spidx.src)->sa_family) {
1779 ((struct sockaddr *)&isr->sp->spidx.src)->sa_family);