Lines Matching refs:spds

140 #define	ss1dbg(spds, a)	if (spds->spds_debug != 0) printf a  argument
141 #define ss2dbg(spds, a) if (spds->spds_debug > 1) printf a argument
142 #define ss3dbg(spds, a) if (spds->spds_debug > 2) printf a argument
218 spd_stack_t *spds = ss->spdsock_spds; in spdsock_param_get() local
220 mutex_enter(&spds->spds_param_lock); in spdsock_param_get()
222 mutex_exit(&spds->spds_param_lock); in spdsock_param_get()
241 spd_stack_t *spds = ss->spdsock_spds; in spdsock_param_set() local
247 mutex_enter(&spds->spds_param_lock); in spdsock_param_set()
254 mutex_exit(&spds->spds_param_lock); in spdsock_param_set()
260 mutex_exit(&spds->spds_param_lock); in spdsock_param_set()
317 spd_stack_t *spds; in spdsock_stack_init() local
320 spds = (spd_stack_t *)kmem_zalloc(sizeof (*spds), KM_SLEEP); in spdsock_stack_init()
321 spds->spds_netstack = ns; in spdsock_stack_init()
323 ASSERT(spds->spds_g_nd == NULL); in spdsock_stack_init()
326 spds->spds_params = ssp; in spdsock_stack_init()
329 (void) spdsock_param_register(&spds->spds_g_nd, ssp, in spdsock_stack_init()
332 mutex_init(&spds->spds_param_lock, NULL, MUTEX_DEFAULT, NULL); in spdsock_stack_init()
333 mutex_init(&spds->spds_alg_lock, NULL, MUTEX_DEFAULT, NULL); in spdsock_stack_init()
335 return (spds); in spdsock_stack_init()
353 spd_stack_t *spds = (spd_stack_t *)arg; in spdsock_stack_shutdown() local
355 if (spds->spds_mp_algs != NULL) { in spdsock_stack_shutdown()
356 freemsg(spds->spds_mp_algs); in spdsock_stack_shutdown()
357 spds->spds_mp_algs = NULL; in spdsock_stack_shutdown()
365 spd_stack_t *spds = (spd_stack_t *)arg; in spdsock_stack_fini() local
367 ASSERT(spds->spds_mp_algs == NULL); in spdsock_stack_fini()
368 mutex_destroy(&spds->spds_param_lock); in spdsock_stack_fini()
369 mutex_destroy(&spds->spds_alg_lock); in spdsock_stack_fini()
370 nd_free(&spds->spds_g_nd); in spdsock_stack_fini()
371 kmem_free(spds->spds_params, sizeof (lcl_param_arr)); in spdsock_stack_fini()
372 spds->spds_params = NULL; in spdsock_stack_fini()
374 kmem_free(spds, sizeof (*spds)); in spdsock_stack_fini()
781 spd_stack_t *spds) in spdsock_check_action() argument
802 return (ipsec_check_action(act, diag, spds->spds_netstack)); in spdsock_check_action()
810 int *diag, spd_stack_t *spds) in spdsock_ext_to_actvec() argument
872 diag, spds)) in spdsock_ext_to_actvec()
987 tmprule_t **rp, uint64_t *index, spd_stack_t *spds) in mkrule() argument
995 index, spds->spds_netstack); in mkrule()
1013 tmprule_t **rp, uint64_t *index, spd_stack_t *spds) in mkrulepair() argument
1019 index, spds); in mkrulepair()
1025 index, spds); in mkrulepair()
1046 spd_stack_t *spds = ss->spdsock_spds; in spdsock_addrule() local
1059 spds->spds_netstack, ITP_NAME(itp), active, in spdsock_addrule()
1124 if (!spdsock_ext_to_actvec(extv, &actp, &nact, &diag, spds)) { in spdsock_addrule()
1139 IPSEC_TYPE_OUTBOUND, afs, &rulep, index, spds); in spdsock_addrule()
1146 IPSEC_TYPE_INBOUND, afs, &rulep, index, spds); in spdsock_addrule()
1153 spds->spds_netstack); in spdsock_addrule()
1168 audit_pf_policy(SPD_ADDRULE, cr, spds->spds_netstack, in spdsock_addrule()
1192 audit_pf_policy(SPD_ADDRULE, cr, spds->spds_netstack, in spdsock_addrule()
2549 spdsock_do_updatealg(spd_ext_t *extv[], spd_stack_t *spds) in spdsock_do_updatealg() argument
2560 ASSERT(MUTEX_HELD(&spds->spds_alg_lock)); in spdsock_do_updatealg()
2573 bzero(spds->spds_algs, IPSEC_NALGTYPES * IPSEC_MAX_ALGS * in spdsock_do_updatealg()
2599 spds->spds_algs[alg_type][alg->alg_id]); in spdsock_do_updatealg()
2600 spds->spds_algs[alg_type][alg->alg_id] = in spdsock_do_updatealg()
2608 ss1dbg(spds, ("spdsock_do_updatealg: " in spdsock_do_updatealg()
2649 ss1dbg(spds, ("spdsock_do_updatealg: " in spdsock_do_updatealg()
2685 ss1dbg(spds, ("spdsock_do_updatealg: " in spdsock_do_updatealg()
2712 ss1dbg(spds, ("spdsock_do_updatealg: " in spdsock_do_updatealg()
2729 ss1dbg(spds, ("spdsock_do_updatealg: " in spdsock_do_updatealg()
2758 spds->spds_algs_exec_mode[alg_type] = i; in spdsock_do_updatealg()
2772 spdsock_merge_algs(spds); in spdsock_do_updatealg()
2778 if (spds->spds_algs[alg_type][algid] != NULL) { in spdsock_do_updatealg()
2780 spds->spds_algs[alg_type][algid]); in spdsock_do_updatealg()
2797 spd_stack_t *spds = ss->spdsock_spds; in spdsock_updatealg() local
2798 ipsec_stack_t *ipss = spds->spds_netstack->netstack_ipsec; in spdsock_updatealg()
2813 mutex_enter(&spds->spds_alg_lock); in spdsock_updatealg()
2814 bcopy(extv, spds->spds_extv_algs, in spdsock_updatealg()
2816 if (spds->spds_mp_algs != NULL) in spdsock_updatealg()
2817 freemsg(spds->spds_mp_algs); in spdsock_updatealg()
2818 spds->spds_mp_algs = mp; in spdsock_updatealg()
2819 mutex_exit(&spds->spds_alg_lock); in spdsock_updatealg()
2826 spds->spds_netstack, NULL, B_TRUE, EAGAIN, in spdsock_updatealg()
2836 mutex_enter(&spds->spds_alg_lock); in spdsock_updatealg()
2837 diag = spdsock_do_updatealg(extv, spds); in spdsock_updatealg()
2841 spds->spds_netstack); in spdsock_updatealg()
2842 mutex_exit(&spds->spds_alg_lock); in spdsock_updatealg()
2850 spds->spds_netstack, NULL, B_TRUE, 0, in spdsock_updatealg()
2854 mutex_exit(&spds->spds_alg_lock); in spdsock_updatealg()
2862 spds->spds_netstack, NULL, B_TRUE, diag, in spdsock_updatealg()
2988 spd_stack_t *spds = ss->spdsock_spds; in spdsock_parse() local
2989 netstack_t *ns = spds->spds_netstack; in spdsock_parse()
3008 ss2dbg(spds, in spdsock_parse()
3021 ss3dbg(spds, ("spdsock_parse: pullupmsg() failed.\n")); in spdsock_parse()
3031 ss1dbg(spds, ("Got duplicate extension of type %d.\n", in spdsock_parse()
3037 ss1dbg(spds, ("Got unknown extension of type %d.\n", in spdsock_parse()
3043 ss1dbg(spds, ("Length %d on extension type %d overrun or 0.\n", in spdsock_parse()
3049 ss1dbg(spds, ("Reality check failed on extension type %d.\n", in spdsock_parse()
3173 spd_stack_t *spds = ns->netstack_spdsock; in spdsock_update_pending_algs() local
3175 mutex_enter(&spds->spds_alg_lock); in spdsock_update_pending_algs()
3176 if (spds->spds_mp_algs != NULL) { in spdsock_update_pending_algs()
3177 (void) spdsock_do_updatealg(spds->spds_extv_algs, spds); in spdsock_update_pending_algs()
3178 freemsg(spds->spds_mp_algs); in spdsock_update_pending_algs()
3179 spds->spds_mp_algs = NULL; in spdsock_update_pending_algs()
3181 mutex_exit(&spds->spds_alg_lock); in spdsock_update_pending_algs()
3327 spd_stack_t *spds = ss->spdsock_spds; in spdsock_opt_set() local
3333 if (*i1 > spds->spds_max_buf) in spdsock_opt_set()
3338 if (*i1 > spds->spds_max_buf) in spdsock_opt_set()
3359 spd_stack_t *spds = ss->spdsock_spds; in spdsock_wput_other() local
3366 ss3dbg(spds, ( in spdsock_wput_other()
3433 if (nd_getset(q, spds->spds_g_nd, mp)) { in spdsock_wput_other()
3465 spd_stack_t *spds = ss->spdsock_spds; in spdsock_wput() local
3482 ss2dbg(spds, ("raw M_DATA in spdsock.\n")); in spdsock_wput()
3491 ss2dbg(spds, in spdsock_wput()
3498 ss2dbg(spds, ("T_DATA_REQ\n")); in spdsock_wput()
3504 ss3dbg(spds, ("In default wput case (%d %d).\n", in spdsock_wput()
3527 spd_stack_t *spds; in spdsock_open() local
3540 spds = ns->netstack_spdsock; in spdsock_open()
3541 ASSERT(spds != NULL); in spdsock_open()
3543 ss2dbg(spds, ("Made it into PF_POLICY socket open.\n")); in spdsock_open()
3547 netstack_rele(spds->spds_netstack); in spdsock_open()
3553 netstack_rele(spds->spds_netstack); in spdsock_open()
3561 ss->spdsock_spds = spds; in spdsock_open()
3566 q->q_hiwat = spds->spds_recv_hiwat; in spdsock_open()
3568 oq->q_hiwat = spds->spds_xmit_hiwat; in spdsock_open()
3569 oq->q_lowat = spds->spds_xmit_lowat; in spdsock_open()
3572 (void) proto_set_rx_hiwat(q, NULL, spds->spds_recv_hiwat); in spdsock_open()
3633 spd_stack_t *spds = ss->spdsock_spds; in spdsock_close() local
3643 ss3dbg(spds, ("Driver close, PF_POLICY socket is going away.\n")); in spdsock_close()
3656 spdsock_merge_algs(spd_stack_t *spds) in spdsock_merge_algs() argument
3663 netstack_t *ns = spds->spds_netstack; in spdsock_merge_algs()
3666 ASSERT(MUTEX_HELD(&spds->spds_alg_lock)); in spdsock_merge_algs()
3682 alg = spds->spds_algs[algtype][algid]; in spdsock_merge_algs()
3724 if (spds->spds_algs[algtype][algid] == NULL) in spdsock_merge_algs()
3738 alg = spds->spds_algs[algtype][algid]; in spdsock_merge_algs()
3758 spds->spds_algs[algtype][algid] = NULL; in spdsock_merge_algs()
3764 spds->spds_algs_exec_mode[algtype]; in spdsock_merge_algs()