Lines Matching defs:sav
99 ipcomp_init(struct secasvar *sav, const struct xformsw *xsp)
106 tcomp = ipcomp_algorithm_lookup(sav->alg_enc);
109 sav->alg_comp);
112 sav->alg_comp = sav->alg_enc; /* set for doing histogram */
113 sav->tdb_xform = xsp;
114 sav->tdb_compalgxform = tcomp;
118 cric.cri_alg = sav->tdb_compalgxform->type;
120 ses = crypto_newsession(&sav->tdb_cryptoid, &cric, crypto_support);
128 ipcomp_zeroize(struct secasvar *sav)
131 crypto_freesession(sav->tdb_cryptoid);
132 sav->tdb_cryptoid = 0;
139 ipcomp_input(struct mbuf *m, struct secasvar *sav, int skip, int protoff)
175 if (__predict_false(sav->state == SADB_SASTATE_DEAD)) {
181 KEY_SA_REF(sav);
192 crdc->crd_alg = sav->tdb_compalgxform->type;
200 crp->crp_sid = sav->tdb_cryptoid;
204 tc->tc_spi = sav->spi;
205 tc->tc_dst = sav->sah->saidx.dst;
206 tc->tc_proto = sav->sah->saidx.proto;
209 tc->tc_sav = sav;
225 #define IPSEC_COMMON_INPUT_CB(m, sav, skip, protoff) do { \
227 (void)ipsec6_common_input_cb(m, sav, skip, protoff); \
229 (void)ipsec4_common_input_cb(m, sav, skip, protoff); \
233 #define IPSEC_COMMON_INPUT_CB(m, sav, skip, protoff) \
234 ((void)ipsec4_common_input_cb(m, sav, skip, protoff))
247 struct secasvar *sav;
262 sav = tc->tc_sav;
263 saidx = &sav->sah->saidx;
271 if (sav->tdb_cryptoid != 0)
272 sav->tdb_cryptoid = crp->crp_sid;
279 IPCOMP_STATINC(IPCOMP_STAT_HIST + ipcomp_stats[sav->alg_comp]);
315 ipsec_address(&sav->sah->saidx.dst, buf, sizeof(buf)),
316 (u_long) ntohl(sav->spi));
326 ipsec_address(&sav->sah->saidx.dst, buf, sizeof(buf)),
327 (u_long) ntohl(sav->spi));
334 IPSEC_COMMON_INPUT_CB(m, sav, skip, protoff);
336 KEY_SA_UNREF(&sav);
341 if (sav)
342 KEY_SA_UNREF(&sav);
356 struct secasvar *sav, int skip, int protoff, int flags)
365 KASSERT(sav != NULL);
366 KASSERT(sav->tdb_compalgxform != NULL);
367 ipcompx = sav->tdb_compalgxform;
375 return ipsec_process_done(m, isr, sav, 0);
383 switch (sav->sah->saidx.dst.sa.sa_family) {
398 sav->sah->saidx.dst.sa.sa_family,
399 ipsec_address(&sav->sah->saidx.dst, buf, sizeof(buf)),
400 (u_long) ntohl(sav->spi));
408 ipsec_address(&sav->sah->saidx.dst, buf, sizeof(buf)),
409 (u_long) ntohl(sav->spi),
422 ipsec_address(&sav->sah->saidx.dst, buf, sizeof(buf)),
423 (u_long) ntohl(sav->spi));
466 sav->state == SADB_SASTATE_DEAD)) {
475 KEY_SA_REF(sav);
480 tc->tc_spi = sav->spi;
481 tc->tc_dst = sav->sah->saidx.dst;
482 tc->tc_proto = sav->sah->saidx.proto;
486 tc->tc_sav = sav;
494 crp->crp_sid = sav->tdb_cryptoid;
513 struct secasvar *sav;
530 sav = tc->tc_sav;
535 if (sav->tdb_cryptoid != 0)
536 sav->tdb_cryptoid = crp->crp_sid;
543 IPCOMP_STATINC(IPCOMP_STAT_HIST + ipcomp_stats[sav->alg_comp]);
552 ipsec_address(&sav->sah->saidx.dst, buf,
553 sizeof(buf)), (u_long) ntohl(sav->spi));
560 switch (sav->sah->saidx.dst.sa.sa_family) {
574 cpi = ntohl(sav->spi) & 0xffff;
582 switch (sav->sah->saidx.dst.sa.sa_family) {
598 sav->sah->saidx.dst.sa.sa_family,
599 ipsec_address(&sav->sah->saidx.dst, buf,
600 sizeof(buf)), (u_long) ntohl(sav->spi));
616 (void)ipsec_process_done(m, isr, sav, flags);
617 KEY_SA_UNREF(&sav);
623 if (sav)
624 KEY_SA_UNREF(&sav);