Home
last modified time | relevance | path

Searched refs:sctp (Results 1 – 25 of 45) sorted by relevance

12

/titanic_44/usr/src/uts/common/inet/sctp/
H A Dsctp.c77 static void sctp_closei_local(sctp_t *sctp);
79 static void sctp_icmp_error_ipv6(sctp_t *sctp, mblk_t *mp);
129 #define SCTP_CONDEMNED(sctp) \ argument
130 mutex_enter(&(sctp)->sctp_reflock); \
131 ((sctp)->sctp_condemned = B_TRUE); \
132 mutex_exit(&(sctp)->sctp_reflock);
135 #define SCTP_LINK(sctp, sctps) \ argument
137 list_insert_tail(&sctps->sctps_g_list, (sctp)); \
140 #define SCTP_UNLINK(sctp, sctps) \ argument
142 ASSERT((sctp)->sctp_condemned); \
[all …]
H A Dsctp_hash.c160 sctp_t *sctp; in cl_sctp_walk_list_stack() local
168 sctp = list_head(&sctps->sctps_g_list); in cl_sctp_walk_list_stack()
169 while (sctp != NULL) { in cl_sctp_walk_list_stack()
173 mutex_enter(&sctp->sctp_reflock); in cl_sctp_walk_list_stack()
174 if (sctp->sctp_condemned || sctp->sctp_state <= SCTPS_LISTEN) { in cl_sctp_walk_list_stack()
175 mutex_exit(&sctp->sctp_reflock); in cl_sctp_walk_list_stack()
176 sctp = list_next(&sctps->sctps_g_list, sctp); in cl_sctp_walk_list_stack()
179 sctp->sctp_refcnt++; in cl_sctp_walk_list_stack()
180 mutex_exit(&sctp->sctp_reflock); in cl_sctp_walk_list_stack()
184 RUN_SCTP(sctp); in cl_sctp_walk_list_stack()
[all …]
H A Dsctp_input.c320 sctp_input_add_ancillary(sctp_t *sctp, mblk_t **mp, sctp_data_hdr_t *dcp, in sctp_input_add_ancillary() argument
333 conn_t *connp = sctp->sctp_connp; in sctp_input_add_ancillary()
356 if (sctp->sctp_recvsndrcvinfo) in sctp_input_add_ancillary()
363 ira->ira_ruifindex != sctp->sctp_recvifindex) { in sctp_input_add_ancillary()
371 ipp->ipp_hoplimit != sctp->sctp_recvhops) { in sctp_input_add_ancillary()
379 ipp->ipp_tclass != sctp->sctp_recvtclass) { in sctp_input_add_ancillary()
387 ip_cmpbuf(sctp->sctp_hopopts, sctp->sctp_hopoptslen, in sctp_input_add_ancillary()
391 sctp->sctp_v6label_len; in sctp_input_add_ancillary()
395 if (!ip_allocbuf((void **)&sctp->sctp_hopopts, in sctp_input_add_ancillary()
396 &sctp->sctp_hopoptslen, in sctp_input_add_ancillary()
[all …]
H A Dsctp_cookie.c157 validate_init_params(sctp_t *sctp, sctp_chunk_hdr_t *ch, in validate_init_params() argument
171 conn_t *connp = sctp->sctp_connp; in validate_init_params()
295 *errmp = sctp_make_err(sctp, in validate_init_params()
349 sctp->sctp_connp->conn_ipv6_v6only))) { in validate_init_params()
363 sctp_send_abort(sctp, sctp_init2vtag(ch), SCTP_ERR_MISSING_PARM, in validate_init_params()
375 sctp_send_abort(sctp, sctp_init2vtag(ch), serror, details, in validate_init_params()
385 sctp_initialize_params(sctp_t *sctp, sctp_init_chunk_t *init, in sctp_initialize_params() argument
389 sctp->sctp_ftsn = ntohl(init->sic_inittsn); in sctp_initialize_params()
390 sctp->sctp_lastacked = sctp->sctp_ftsn - 1; in sctp_initialize_params()
393 sctp->sctp_fcsn = sctp->sctp_lastacked; in sctp_initialize_params()
[all …]
H A Dsctp_timer.c100 sctp_timer(sctp_t *sctp, mblk_t *mp, clock_t tim) in sctp_timer() argument
105 ASSERT(sctp != NULL && mp != NULL); in sctp_timer()
131 SCTP_REFHOLD(sctp); in sctp_timer()
157 sctp_timer_alloc(sctp_t *sctp, pfv_t func, int sleep) in sctp_timer_alloc() argument
162 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_timer_alloc()
179 sctpt->sctpt_sctp = sctp; in sctp_timer_alloc()
199 sctp_t *sctp; in sctp_timer_fire() local
207 sctp = sctpt->sctpt_sctp; in sctp_timer_fire()
208 ASSERT(sctp != NULL); in sctp_timer_fire()
210 mutex_enter(&sctp->sctp_lock); in sctp_timer_fire()
[all …]
H A Dsctp_opt_data.c64 sctp_get_status(sctp_t *sctp, void *ptr) in sctp_get_status() argument
73 conn_t *connp = sctp->sctp_connp; in sctp_get_status()
75 sstat->sstat_state = sctp->sctp_state; in sctp_get_status()
76 sstat->sstat_rwnd = sctp->sctp_frwnd; in sctp_get_status()
79 if (!sctp->sctp_primary) { in sctp_get_status()
83 fp = sctp->sctp_primary; in sctp_get_status()
90 sp->spinfo_mtu = sctp->sctp_hdr_len; in sctp_get_status()
96 sp->spinfo_mtu = sctp->sctp_hdr6_len; in sctp_get_status()
108 sstat->sstat_instrms = sctp->sctp_num_istr; in sctp_get_status()
109 sstat->sstat_outstrms = sctp->sctp_num_ostr; in sctp_get_status()
[all …]
H A Dsctp_common.c63 sctp_set_saddr(sctp_t *sctp, sctp_faddr_t *fp) in sctp_set_saddr() argument
68 fp->sf_saddr = sctp_get_valid_addr(sctp, v6, &addr_set); in sctp_set_saddr()
86 sctp_get_dest(sctp_t *sctp, sctp_faddr_t *fp) in sctp_get_dest() argument
92 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_get_dest()
93 conn_t *connp = sctp->sctp_connp; in sctp_get_dest()
148 sctp_set_saddr(sctp, fp); in sctp_get_dest()
156 if (!sctp->sctp_loopback) in sctp_get_dest()
157 sctp->sctp_loopback = uinfo.iulp_loopback; in sctp_get_dest()
160 if ((sp = sctp_saddr_lookup(sctp, &laddr, 0)) != NULL && in sctp_get_dest()
177 sctp_set_saddr(sctp, fp); in sctp_get_dest()
[all …]
H A Dsctp_shutdown.c49 sctp_send_shutdown(sctp_t *sctp, int rexmit) in sctp_send_shutdown() argument
56 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_send_shutdown()
58 if (sctp->sctp_state != SCTPS_ESTABLISHED && in sctp_send_shutdown()
59 sctp->sctp_state != SCTPS_SHUTDOWN_PENDING && in sctp_send_shutdown()
60 sctp->sctp_state != SCTPS_SHUTDOWN_SENT) { in sctp_send_shutdown()
64 if (sctp->sctp_state == SCTPS_ESTABLISHED) { in sctp_send_shutdown()
65 sctp->sctp_state = SCTPS_SHUTDOWN_PENDING; in sctp_send_shutdown()
77 sctp->sctp_out_time = ddi_get_lbolt64(); in sctp_send_shutdown()
83 if (sctp->sctp_xmit_head != NULL || sctp->sctp_xmit_unsent != NULL) { in sctp_send_shutdown()
89 fp = sctp->sctp_current; in sctp_send_shutdown()
[all …]
H A Dsctp_output.c128 sctp_sendmsg(sctp_t *sctp, mblk_t *mp, int flags) in sctp_sendmsg() argument
136 uint16_t sid = sctp->sctp_def_stream; in sctp_sendmsg()
137 uint32_t ppid = sctp->sctp_def_ppid; in sctp_sendmsg()
138 uint32_t context = sctp->sctp_def_context; in sctp_sendmsg()
139 uint16_t msg_flags = sctp->sctp_def_flags; in sctp_sendmsg()
142 uint32_t timetolive = sctp->sctp_def_timetolive; in sctp_sendmsg()
143 conn_t *connp = sctp->sctp_connp; in sctp_sendmsg()
179 fp = sctp_lookup_faddr(sctp, addr); in sctp_sendmsg()
229 RUN_SCTP(sctp); in sctp_sendmsg()
230 sctp_user_abort(sctp, mp); in sctp_sendmsg()
[all …]
H A Dsctp_init.c47 sctp_supaddr_param_len(sctp_t *sctp) in sctp_supaddr_param_len() argument
53 sctp_supaddr_param(sctp_t *sctp, uchar_t *p) in sctp_supaddr_param() argument
57 conn_t *connp = sctp->sctp_connp; in sctp_supaddr_param()
70 if (!sctp->sctp_connp->conn_ipv6_v6only) { in sctp_supaddr_param()
91 sctp_options_param_len(const sctp_t *sctp, int option) in sctp_options_param_len() argument
108 sctp_options_param(const sctp_t *sctp, void *p, int option) in sctp_options_param() argument
126 sctp_adaptation_code_param(sctp_t *sctp, uchar_t *p) in sctp_adaptation_code_param() argument
130 if (!sctp->sctp_send_adaptation) { in sctp_adaptation_code_param()
136 *(uint32_t *)(sph + 1) = htonl(sctp->sctp_tx_adaptation_code); in sctp_adaptation_code_param()
142 sctp_init_mp(sctp_t *sctp, sctp_faddr_t *fp) in sctp_init_mp() argument
[all …]
H A Dsctp_bind.c61 sctp_select_port(sctp_t *sctp, in_port_t *requested_port, int *user_specified) in sctp_select_port() argument
63 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_select_port()
64 conn_t *connp = sctp->sctp_connp; in sctp_select_port()
125 sctp_listen(sctp_t *sctp) in sctp_listen() argument
128 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_listen()
129 conn_t *connp = sctp->sctp_connp; in sctp_listen()
131 RUN_SCTP(sctp); in sctp_listen()
136 if (sctp->sctp_state > SCTPS_BOUND || in sctp_listen()
137 (sctp->sctp_connp->conn_state_flags & CONN_CLOSING)) { in sctp_listen()
138 WAKE_SCTP(sctp); in sctp_listen()
[all …]
H A Dsctp_snmp.c56 sctp_t *sctp, *sctp_prev; in sctp_kstat_update() local
94 sctp = list_head(&sctps->sctps_g_list); in sctp_kstat_update()
95 while (sctp != NULL) { in sctp_kstat_update()
96 mutex_enter(&sctp->sctp_reflock); in sctp_kstat_update()
97 if (sctp->sctp_condemned) { in sctp_kstat_update()
98 mutex_exit(&sctp->sctp_reflock); in sctp_kstat_update()
99 sctp = list_next(&sctps->sctps_g_list, sctp); in sctp_kstat_update()
102 sctp->sctp_refcnt++; in sctp_kstat_update()
103 mutex_exit(&sctp->sctp_reflock); in sctp_kstat_update()
107 if (sctp->sctp_connp->conn_zoneid != myzoneid) in sctp_kstat_update()
[all …]
H A Dsctp_heartbeat.c42 sctp_return_heartbeat(sctp_t *sctp, sctp_chunk_hdr_t *hbcp, mblk_t *mp) in sctp_return_heartbeat() argument
52 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_return_heartbeat()
54 BUMP_LOCAL(sctp->sctp_ibchunks); in sctp_return_heartbeat()
65 fp = sctp_lookup_faddr(sctp, &addr); in sctp_return_heartbeat()
70 (void *)sctp, SCTP_PRINTADDR(addr))); in sctp_return_heartbeat()
75 (void *)sctp, SCTP_PRINTADDR(addr))); in sctp_return_heartbeat()
88 smp = sctp_make_mp(sctp, fp, len); in sctp_return_heartbeat()
104 BUMP_LOCAL(sctp->sctp_obchunks); in sctp_return_heartbeat()
106 sctp_set_iplen(sctp, smp, fp->sf_ixa); in sctp_return_heartbeat()
108 BUMP_LOCAL(sctp->sctp_opkts); in sctp_return_heartbeat()
[all …]
H A Dsctp_notify.c46 sctp_notify(sctp_t *sctp, mblk_t *emp, size_t len) in sctp_notify() argument
53 conn_t *connp = sctp->sctp_connp; in sctp_notify()
73 fp = sctp->sctp_primary; in sctp_notify()
118 rwnd = sctp->sctp_ulp_recv(sctp->sctp_ulpd, mp, msgdsize(mp), 0, in sctp_notify()
120 if (rwnd > sctp->sctp_rwnd) { in sctp_notify()
121 sctp->sctp_rwnd = rwnd; in sctp_notify()
126 sctp_assoc_event(sctp_t *sctp, uint16_t state, uint16_t error, in sctp_assoc_event() argument
133 if (!sctp->sctp_recvassocevnt) { in sctp_assoc_event()
145 sacp->sac_flags = sctp->sctp_prsctp_aware ? SCTP_PRSCTP_CAPABLE : 0; in sctp_assoc_event()
149 sacp->sac_outbound_streams = sctp->sctp_num_ostr; in sctp_assoc_event()
[all …]
H A Dsctp_addr.c95 #define SCTP_IPIF_ZONE_MATCH(sctp, ipif) \ argument
96 IPCL_ZONE_MATCH((sctp)->sctp_connp, (ipif)->sctp_ipif_zoneid)
232 sctp_get_all_ipifs(sctp_t *sctp, int sleep) in sctp_get_all_ipifs() argument
238 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_get_all_ipifs()
240 conn_t *connp = sctp->sctp_connp; in sctp_get_all_ipifs()
252 !SCTP_IPIF_ZONE_MATCH(sctp, sctp_ipif) || in sctp_get_all_ipifs()
265 error = sctp_ipif_hash_insert(sctp, sctp_ipif, sleep, in sctp_get_all_ipifs()
278 sctp_free_saddrs(sctp); in sctp_get_all_ipifs()
293 sctp_valid_addr_list(sctp_t *sctp, const void *addrs, uint32_t addrcnt, in sctp_valid_addr_list() argument
308 conn_t *connp = sctp->sctp_connp; in sctp_valid_addr_list()
[all …]
H A Dsctp_asconf.c171 sctp_asconf_unrec_parm(sctp_t *sctp, sctp_parm_hdr_t *ph, uint32_t cid, in sctp_asconf_unrec_parm() argument
225 sctp_asconf_ack_unrec_parm(sctp_t *sctp, sctp_parm_hdr_t *ph, in sctp_asconf_ack_unrec_parm() argument
229 sctp_error_event(sctp, (sctp_chunk_hdr_t *)ph, B_TRUE); in sctp_asconf_ack_unrec_parm()
270 sctp_asconf_send(sctp_t *sctp, sctp_asconf_t *asc, sctp_faddr_t *fp, in sctp_asconf_send() argument
280 isv4 = (fp != NULL) ? fp->sf_isv4 : sctp->sctp_current->sf_isv4; in sctp_asconf_send()
320 if (sctp->sctp_cxmit_list == NULL) { in sctp_asconf_send()
321 sctp->sctp_cxmit_list = nmp; in sctp_asconf_send()
323 linkb(sctp->sctp_cxmit_list, nmp); in sctp_asconf_send()
326 BUMP_LOCAL(sctp->sctp_obchunks); in sctp_asconf_send()
329 sctp_wput_asconf(sctp, fp); in sctp_asconf_send()
[all …]
H A Dsctp_conn.c136 sctp_conn_request(sctp_t *sctp, mblk_t *mp, uint_t ifindex, uint_t ip_hdr_len, in sctp_conn_request() argument
148 sctp_listen_cnt_t *slc = sctp->sctp_listen_cnt; in sctp_conn_request()
160 connp = sctp->sctp_connp; in sctp_conn_request()
161 sctps = sctp->sctp_sctps; in sctp_conn_request()
190 if ((eager = sctp_create_eager(sctp)) == NULL) { in sctp_conn_request()
274 err = sctp_accept_comm(sctp, eager, mp, ip_hdr_len, iack); in sctp_conn_request()
331 if ((eager->sctp_ulpd = sctp->sctp_ulp_newconn(sctp->sctp_ulpd, in sctp_conn_request()
349 sctp_connect(sctp_t *sctp, const struct sockaddr *dst, uint32_t addrlen, in sctp_connect() argument
360 int sleep = sctp->sctp_cansleep ? KM_SLEEP : KM_NOSLEEP; in sctp_connect()
363 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_connect()
[all …]
H A Dsctp_error.c97 sctp_user_abort(sctp_t *sctp, mblk_t *data) in sctp_user_abort() argument
102 sctp_faddr_t *fp = sctp->sctp_current; in sctp_user_abort()
104 sctp_stack_t *sctps = sctp->sctp_sctps; in sctp_user_abort()
111 if (sctp->sctp_state < SCTPS_COOKIE_WAIT) { in sctp_user_abort()
112 sctp_clean_death(sctp, ECONNABORTED); in sctp_user_abort()
116 mp = sctp_make_mp(sctp, fp, 0); in sctp_user_abort()
127 hdrlen = sctp->sctp_hdr_len; in sctp_user_abort()
129 hdrlen = sctp->sctp_hdr6_len; in sctp_user_abort()
153 BUMP_LOCAL(sctp->sctp_opkts); in sctp_user_abort()
154 BUMP_LOCAL(sctp->sctp_obchunks); in sctp_user_abort()
[all …]
H A Dsctp_impl.h144 #define SCTP_FADDR_TIMER_RESTART(sctp, fp, intvl) \ argument
148 sctp_timer((sctp), (fp)->sf_timer_mp, (intvl)); \
160 #define SCTP_MAX_RTO(sctp, fp) { \ argument
166 (sctp)->sctp_maxrto = \
167 MAX((sctp)->sctp_maxrto, (fp)->sf_rto); \
169 sctp, struct sctp_faddr_s, fp); \
172 #define SCTP_CALC_RXT(sctp, fp, max) \ argument
176 SCTP_MAX_RTO(sctp, fp); \
186 #define SCTP_REFHOLD(sctp) { \ argument
187 mutex_enter(&(sctp)->sctp_reflock); \
[all …]
H A Dsctp_asconf.h32 #define SCTP_FADDR_RC_TIMER_RESTART(sctp, fp, intvl) \ argument
34 (fp)->sf_rc_timer_mp = sctp_timer_alloc((sctp), \
42 sctp_timer((sctp), (fp)->sf_rc_timer_mp, (intvl)); \
H A Dsctp_misc.c37 sctp_display(sctp_t *sctp, char *sup_buf) in sctp_display() argument
45 if (sctp == NULL) in sctp_display()
48 connp = sctp->sctp_connp; in sctp_display()
51 switch (sctp->sctp_state) { in sctp_display()
83 (void) mi_sprintf(buf1, "SCTPUnkState(%d)", sctp->sctp_state); in sctp_display()
/titanic_44/usr/src/cmd/mdb/common/modules/sctp/
H A Dsctp.c341 sctp_t sctp; in sctp_xmit_list() local
346 if (mdb_vread(&sctp, sizeof (sctp), addr) == -1) in sctp_xmit_list()
350 if (sctp_sent_list(sctp.sctp_xmit_head) < 0) in sctp_xmit_list()
354 if (sctp_unsent_list(sctp.sctp_xmit_unsent) < 0) in sctp_xmit_list()
545 state2str(sctp_t *sctp) in state2str() argument
547 switch (sctp->sctp_state) { in state2str()
563 show_sctp_flags(sctp_t *sctp) in show_sctp_flags() argument
566 sctp->sctp_understands_asconf); in show_sctp_flags()
567 mdb_printf("\tdebug\t\t\t%d\n", sctp->sctp_connp->conn_debug); in show_sctp_flags()
568 mdb_printf("\tcchunk_pend\t\t%d\n", sctp->sctp_cchunk_pend); in show_sctp_flags()
[all …]
/titanic_44/usr/src/cmd/mdb/common/modules/genunix/
H A Dvfs.c562 sctp_getsockaddr(sctp_t *sctp, struct sockaddr *addr) in sctp_getsockaddr() argument
574 conn_t *connp = sctp->sctp_connp; in sctp_getsockaddr()
577 if (sctp->sctp_nsaddrs == 0) in sctp_getsockaddr()
583 if (sctp->sctp_state >= SCTPS_ESTABLISHED && !sctp->sctp_loopback) { in sctp_getsockaddr()
588 if (sctp->sctp_saddrs[i].ipif_count == 0) in sctp_getsockaddr()
591 pobj = list_object(&sctp->sctp_saddrs[i].sctp_ipif_list, in sctp_getsockaddr()
592 sctp->sctp_saddrs[i].sctp_ipif_list.list_head.list_next); in sctp_getsockaddr()
599 for (l = 0; l < sctp->sctp_saddrs[i].ipif_count; l++) { in sctp_getsockaddr()
617 if (scanned >= sctp->sctp_nsaddrs) in sctp_getsockaddr()
621 pnode = list_d2l(&sctp->sctp_saddrs[i]. in sctp_getsockaddr()
[all …]
/titanic_44/usr/src/cmd/mdb/intel/amd64/sctp/
H A DMakefile28 MODULE = sctp.so
31 MODSRCS = sctp.c
/titanic_44/usr/src/cmd/mdb/sparc/v9/sctp/
H A DMakefile28 MODULE = sctp.so
31 MODSRCS = sctp.c

12