Lines Matching defs:sctp

47 sctp_supaddr_param_len(sctp_t *sctp)
53 sctp_supaddr_param(sctp_t *sctp, uchar_t *p)
57 conn_t *connp = sctp->sctp_connp;
70 if (!sctp->sctp_connp->conn_ipv6_v6only) {
91 sctp_options_param_len(const sctp_t *sctp, int option)
108 sctp_options_param(const sctp_t *sctp, void *p, int option)
126 sctp_adaptation_code_param(sctp_t *sctp, uchar_t *p)
130 if (!sctp->sctp_send_adaptation) {
136 *(uint32_t *)(sph + 1) = htonl(sctp->sctp_tx_adaptation_code);
142 sctp_init_mp(sctp_t *sctp, sctp_faddr_t *fp)
151 sctp_stack_t *sctps = sctp->sctp_sctps;
152 conn_t *connp = sctp->sctp_connp;
157 if (sctp->sctp_connp->conn_ipv6_v6only)
163 if (sctp->sctp_send_adaptation) {
166 initlen += sctp_supaddr_param_len(sctp);
167 initlen += sctp_addr_params(sctp, supp_af, NULL, B_TRUE);
168 if (sctp->sctp_prsctp_aware && sctps->sctps_prsctp_enabled)
169 initlen += sctp_options_param_len(sctp, SCTP_PRSCTP_OPTION);
175 sctp->sctp_sctph->sh_verf = 0;
176 sctp->sctp_sctph6->sh_verf = 0;
178 mp = sctp_make_mp(sctp, fp, initlen);
184 if (sctp->sctp_nsaddrs == 0) {
200 icp->sic_inittag = sctp->sctp_lvtag;
201 U32_TO_ABE32(sctp->sctp_rwnd, &(icp->sic_a_rwnd));
202 U16_TO_ABE16(sctp->sctp_num_ostr, &(icp->sic_outstr));
203 U16_TO_ABE16(sctp->sctp_num_istr, &(icp->sic_instr));
204 U32_TO_ABE32(sctp->sctp_ltsn, &(icp->sic_inittsn));
209 p += sctp_adaptation_code_param(sctp, p);
212 p += sctp_supaddr_param(sctp, p);
215 p += sctp_addr_params(sctp, supp_af, p, B_FALSE);
218 if (sctp->sctp_prsctp_aware && sctps->sctps_prsctp_enabled)
219 p += sctp_options_param(sctp, p, SCTP_PRSCTP_OPTION);
221 BUMP_LOCAL(sctp->sctp_obchunks);
223 sctp_set_iplen(sctp, mp, fp->sf_ixa);
242 sctp_addr_params(sctp_t *sctp, int af, uchar_t *p, boolean_t modify)
246 ASSERT(sctp->sctp_nsaddrs > 0);
252 if ((!modify && sctp->sctp_nsaddrs == 1) || sctp->sctp_loopback ||
253 sctp->sctp_linklocal) {
257 param_len = sctp_saddr_info(sctp, af, p, modify);
258 return ((sctp->sctp_nsaddrs == 1) ? 0 : param_len);