Lines Matching refs:sav

112 	struct secasvar *sav;  in ipcomp_encapcheck()  local
114 sav = key_allocsa_tunnel(src, dst, IPPROTO_IPCOMP); in ipcomp_encapcheck()
115 if (sav == NULL) in ipcomp_encapcheck()
117 key_freesav(&sav); in ipcomp_encapcheck()
159 ipcomp_init(struct secasvar *sav, struct xformsw *xsp) in ipcomp_init() argument
165 tcomp = comp_algorithm_lookup(sav->alg_enc); in ipcomp_init()
168 sav->alg_comp)); in ipcomp_init()
171 sav->alg_comp = sav->alg_enc; /* set for doing histogram */ in ipcomp_init()
172 sav->tdb_xform = xsp; in ipcomp_init()
173 sav->tdb_compalgxform = tcomp; in ipcomp_init()
178 csp.csp_cipher_alg = sav->tdb_compalgxform->type; in ipcomp_init()
180 return crypto_newsession(&sav->tdb_cryptoid, &csp, V_crypto_support); in ipcomp_init()
187 ipcomp_cleanup(struct secasvar *sav) in ipcomp_cleanup() argument
190 crypto_freesession(sav->tdb_cryptoid); in ipcomp_cleanup()
191 sav->tdb_cryptoid = NULL; in ipcomp_cleanup()
198 ipcomp_input(struct mbuf *m, struct secasvar *sav, int skip, int protoff) in ipcomp_input() argument
218 key_freesav(&sav); in ipcomp_input()
230 SECASVAR_RLOCK(sav); in ipcomp_input()
231 cryptoid = sav->tdb_cryptoid; in ipcomp_input()
232 SECASVAR_RUNLOCK(sav); in ipcomp_input()
262 xd->sav = sav; in ipcomp_input()
268 SECASVAR_RLOCK(sav); in ipcomp_input()
269 crp->crp_session = xd->cryptoid = sav->tdb_cryptoid; in ipcomp_input()
270 SECASVAR_RUNLOCK(sav); in ipcomp_input()
275 key_freesav(&sav); in ipcomp_input()
288 struct secasvar *sav; in ipcomp_input_cb() local
299 sav = xd->sav; in ipcomp_input_cb()
303 saidx = &sav->sah->saidx; in ipcomp_input_cb()
312 if (ipsec_updateid(sav, &crp->crp_session, &cryptoid) != 0) in ipcomp_input_cb()
330 IPCOMPSTAT_INC2(ipcomps_hist, sav->alg_comp); in ipcomp_input_cb()
357 ipsec_address(&sav->sah->saidx.dst, buf, sizeof(buf)), in ipcomp_input_cb()
358 (u_long) ntohl(sav->spi))); in ipcomp_input_cb()
368 error = ipsec6_common_input_cb(m, sav, skip, protoff); in ipcomp_input_cb()
373 error = ipsec4_common_input_cb(m, sav, skip, protoff); in ipcomp_input_cb()
384 if (sav != NULL) in ipcomp_input_cb()
385 key_freesav(&sav); in ipcomp_input_cb()
399 ipcomp_output(struct mbuf *m, struct secpolicy *sp, struct secasvar *sav, in ipcomp_output() argument
411 IPSEC_ASSERT(sav != NULL, ("null SA")); in ipcomp_output()
412 ipcompx = sav->tdb_compalgxform; in ipcomp_output()
423 return ipsec_process_done(m, sp, sav, idx); in ipcomp_output()
430 switch (sav->sah->saidx.dst.sa.sa_family) { in ipcomp_output()
445 sav->sah->saidx.dst.sa.sa_family, in ipcomp_output()
446 ipsec_address(&sav->sah->saidx.dst, buf, sizeof(buf)), in ipcomp_output()
447 (u_long) ntohl(sav->spi))); in ipcomp_output()
455 ipsec_address(&sav->sah->saidx.dst, buf, sizeof(buf)), in ipcomp_output()
456 (u_long) ntohl(sav->spi), in ipcomp_output()
469 __func__, ipsec_address(&sav->sah->saidx.dst, buf, in ipcomp_output()
470 sizeof(buf)), (u_long) ntohl(sav->spi))); in ipcomp_output()
476 SECASVAR_RLOCK(sav); in ipcomp_output()
477 cryptoid = sav->tdb_cryptoid; in ipcomp_output()
478 SECASVAR_RUNLOCK(sav); in ipcomp_output()
505 xd->sav = sav; in ipcomp_output()
522 key_freesav(&sav); in ipcomp_output()
536 struct secasvar *sav; in ipcomp_output_cb() local
547 sav = xd->sav; in ipcomp_output_cb()
556 if (ipsec_updateid(sav, &crp->crp_session, &cryptoid) != 0) in ipcomp_output_cb()
574 IPCOMPSTAT_INC2(ipcomps_hist, sav->alg_comp); in ipcomp_output_cb()
588 __func__, ipsec_address(&sav->sah->saidx.dst, buf, in ipcomp_output_cb()
589 sizeof(buf)), (u_long) ntohl(sav->spi))); in ipcomp_output_cb()
597 switch (sav->sah->saidx.dst.sa.sa_family) { in ipcomp_output_cb()
610 ipcomp->comp_cpi = htons((u_int16_t) ntohl(sav->spi)); in ipcomp_output_cb()
618 switch (sav->sah->saidx.dst.sa.sa_family) { in ipcomp_output_cb()
634 sav->sah->saidx.dst.sa.sa_family, in ipcomp_output_cb()
635 ipsec_address(&sav->sah->saidx.dst, buf, in ipcomp_output_cb()
636 sizeof(buf)), (u_long) ntohl(sav->spi))); in ipcomp_output_cb()
654 error = ipsec_process_done(m, sp, sav, idx); in ipcomp_output_cb()
663 key_freesav(&sav); in ipcomp_output_cb()