Lines Matching defs:ss

141 #define	RESET_SPDSOCK_DUMP_POLHEAD(ss, iph) { \
143 (ss)->spdsock_dump_head = (iph); \
144 (ss)->spdsock_dump_gen = (iph)->iph_gen; \
145 (ss)->spdsock_dump_cur_type = 0; \
146 (ss)->spdsock_dump_cur_af = IPSEC_AF_V4; \
147 (ss)->spdsock_dump_cur_rule = NULL; \
148 (ss)->spdsock_dump_count = 0; \
149 (ss)->spdsock_dump_cur_chain = 0; \
214 spdsock_t *ss = (spdsock_t *)q->q_ptr;
215 spd_stack_t *spds = ss->spdsock_spds;
237 spdsock_t *ss = (spdsock_t *)q->q_ptr;
238 spd_stack_t *spds = ss->spdsock_spds;
606 spdsock_t *ss = (spdsock_t *)q->q_ptr;
607 netstack_t *ns = ss->spdsock_spds->spds_netstack;
1042 spdsock_t *ss = (spdsock_t *)q->q_ptr;
1043 spd_stack_t *spds = ss->spdsock_spds;
1201 spdsock_t *ss = (spdsock_t *)q->q_ptr;
1202 netstack_t *ns = ss->spdsock_spds->spds_netstack;
1315 spdsock_t *ss = (spdsock_t *)q->q_ptr;
1316 netstack_t *ns = ss->spdsock_spds->spds_netstack;
1442 spdsock_dump_finish(spdsock_t *ss, int error)
1445 ipsec_policy_head_t *iph = ss->spdsock_dump_head;
1446 mblk_t *req = ss->spdsock_dump_req;
1447 netstack_t *ns = ss->spdsock_spds->spds_netstack;
1450 m = spdsock_dump_ruleset(req, iph, ss->spdsock_dump_count, error);
1453 if (ss->spdsock_itp != NULL) {
1454 ITP_REFRELE(ss->spdsock_itp, ns);
1455 ss->spdsock_itp = NULL;
1457 ss->spdsock_dump_req = NULL;
1858 spdsock_dump_next_in_chain(spdsock_t *ss, ipsec_policy_head_t *iph,
1863 ss->spdsock_dump_count++;
1864 ss->spdsock_dump_cur_rule = cur->ipsp_hash.hash_next;
1869 spdsock_dump_next_rule(spdsock_t *ss, ipsec_policy_head_t *iph)
1877 cur = ss->spdsock_dump_cur_rule;
1880 return (spdsock_dump_next_in_chain(ss, iph, cur));
1882 type = ss->spdsock_dump_cur_type;
1885 chain = ss->spdsock_dump_cur_chain;
1893 ss->spdsock_dump_cur_chain = chain;
1894 return (spdsock_dump_next_in_chain(ss, iph, cur));
1897 ss->spdsock_dump_cur_chain = nchains;
1899 af = ss->spdsock_dump_cur_af;
1904 ss->spdsock_dump_cur_af = af;
1905 return (spdsock_dump_next_in_chain(ss, iph, cur));
1913 ss->spdsock_dump_cur_chain = 0;
1914 ss->spdsock_dump_cur_type = type;
1915 ss->spdsock_dump_cur_af = IPSEC_AF_V4;
1926 spdsock_dump_iterate_next_tunnel(spdsock_t *ss, ipsec_stack_t *ipss)
1931 if (ipss->ipsec_tunnel_policy_gen > ss->spdsock_dump_tun_gen) {
1934 } else if (ss->spdsock_itp == NULL) {
1939 itp = AVL_NEXT(&ipss->ipsec_tunnel_policies, ss->spdsock_itp);
1944 if (ss->spdsock_itp != NULL) {
1945 ITP_REFRELE(ss->spdsock_itp, ipss->ipsec_netstack);
1947 ss->spdsock_itp = itp;
1952 spdsock_dump_next_record(spdsock_t *ss)
1958 netstack_t *ns = ss->spdsock_spds->spds_netstack;
1961 iph = ss->spdsock_dump_head;
1967 if (iph->iph_gen != ss->spdsock_dump_gen) {
1969 return (spdsock_dump_finish(ss, EAGAIN));
1972 while ((rule = spdsock_dump_next_rule(ss, iph)) == NULL) {
1974 if (--(ss->spdsock_dump_remaining_polheads) == 0)
1975 return (spdsock_dump_finish(ss, 0));
1993 itp = spdsock_dump_iterate_next_tunnel(ss, ipss);
1996 return (spdsock_dump_finish(ss, EAGAIN));
2000 IPPH_REFRELE(ss->spdsock_dump_head, ns);
2001 if (ss->spdsock_dump_active) {
2002 ss->spdsock_dump_tunnel =
2006 ss->spdsock_dump_tunnel =
2014 RESET_SPDSOCK_DUMP_POLHEAD(ss, iph);
2017 m = spdsock_encode_rule(ss->spdsock_dump_req, rule,
2018 ss->spdsock_dump_cur_type, ss->spdsock_dump_cur_af,
2019 (ss->spdsock_itp == NULL) ? NULL : ss->spdsock_itp->itp_name,
2020 ss->spdsock_dump_tunnel);
2024 return (spdsock_dump_finish(ss, ENOMEM));
2032 spdsock_dump_some(queue_t *q, spdsock_t *ss)
2036 while ((ss->spdsock_dump_req != NULL) && canputnext(q)) {
2037 m = spdsock_dump_next_record(ss);
2063 spdsock_t *ss = (spdsock_t *)q->q_ptr;
2064 netstack_t *ns = ss->spdsock_spds->spds_netstack;
2071 ss->spdsock_dump_remaining_polheads = 1 +
2073 ss->spdsock_dump_tun_gen = ipss->ipsec_tunnel_policy_gen;
2077 ss->spdsock_dump_active = B_TRUE;
2080 ss->spdsock_dump_active = B_FALSE;
2082 ASSERT(ss->spdsock_itp == NULL);
2084 ss->spdsock_dump_remaining_polheads = 1;
2097 ss->spdsock_dump_req = mp;
2098 RESET_SPDSOCK_DUMP_POLHEAD(ss, iph);
2126 spdsock_t *ss = (spdsock_t *)q->q_ptr;
2127 netstack_t *ns = ss->spdsock_spds->spds_netstack;
2268 spdsock_t *ss = (spdsock_t *)q->q_ptr;
2269 ipsec_stack_t *ipss = ss->spdsock_spds->spds_netstack->netstack_ipsec;
2404 spdsock_t *ss = (spdsock_t *)q->q_ptr;
2405 ipsec_stack_t *ipss = ss->spdsock_spds->spds_netstack->netstack_ipsec;
2789 spdsock_t *ss = (spdsock_t *)q->q_ptr;
2790 spd_stack_t *spds = ss->spdsock_spds;
2894 spdsock_t *ss = (spdsock_t *)q->q_ptr;
2895 netstack_t *ns = ss->spdsock_spds->spds_netstack;
2946 ss->spdsock_itp = itp;
2947 ss->spdsock_dump_tunnel = itp->itp_flags &
2954 ss->spdsock_itp = NULL;
2980 spdsock_t *ss = (spdsock_t *)q->q_ptr;
2981 spd_stack_t *spds = ss->spdsock_spds;
3055 spdsock_t *ss = (spdsock_t *)q->q_ptr;
3057 ASSERT(ss != NULL);
3059 ss->spdsock_timeout_arg = mp;
3060 ss->spdsock_timeout = qtimeout(q, spdsock_loadcheck,
3181 spdsock_t *ss = (spdsock_t *)q->q_ptr;
3183 ipsec_stack_t *ipss = ss->spdsock_spds->spds_netstack->netstack_ipsec;
3185 ASSERT(ss != NULL);
3187 ss->spdsock_timeout = 0;
3188 mp = ss->spdsock_timeout_arg;
3190 ss->spdsock_timeout_arg = NULL;
3201 spdsock_copy_info(struct T_info_ack *tap, spdsock_t *ss)
3204 tap->CURRENT_state = ss->spdsock_state;
3217 spdsock_t *ss = (spdsock_t *)q->q_ptr;
3232 spdsock_copy_info(&tcap->INFO_ack, ss);
3319 spdsock_t *ss = (spdsock_t *)q->q_ptr;
3320 spd_stack_t *spds = ss->spdsock_spds;
3351 spdsock_t *ss = (spdsock_t *)q->q_ptr;
3352 spd_stack_t *spds = ss->spdsock_spds;
3444 spdsock_t *ss = (spdsock_t *)q->q_ptr;
3445 spd_stack_t *spds = ss->spdsock_spds;
3451 if (ss->spdsock_dump_req != NULL) {
3502 spdsock_t *ss;
3529 ss = kmem_zalloc(sizeof (spdsock_t), KM_NOSLEEP);
3530 if (ss == NULL) {
3536 ss->spdsock_minor = ssminor;
3537 ss->spdsock_state = TS_UNBND;
3538 ss->spdsock_dump_req = NULL;
3540 ss->spdsock_spds = spds;
3542 q->q_ptr = ss;
3543 oq->q_ptr = ss;
3553 *devp = makedevice(getmajor(*devp), ss->spdsock_minor);
3567 spdsock_t *ss = q->q_ptr;
3569 if (ss->spdsock_dump_req != NULL)
3570 spdsock_dump_some(q, ss);
3572 if (ss->spdsock_dump_req == NULL)
3583 spdsock_t *ss = q->q_ptr;
3585 ipsec_stack_t *ipss = ss->spdsock_spds->spds_netstack->netstack_ipsec;
3587 if (ss->spdsock_dump_req != NULL) {
3595 if (ss->spdsock_dump_req != NULL)
3608 spdsock_t *ss = q->q_ptr;
3609 spd_stack_t *spds = ss->spdsock_spds;
3614 ASSERT(ss != NULL);
3616 if (ss->spdsock_timeout != 0)
3617 (void) quntimeout(q, ss->spdsock_timeout);
3621 vmem_free(spdsock_vmem, (void *)(uintptr_t)ss->spdsock_minor, 1);
3622 netstack_rele(ss->spdsock_spds->spds_netstack);
3624 kmem_free(ss, sizeof (spdsock_t));