Lines Matching refs:param
64 union sctp_params param,
1094 struct sctp_paramhdr *param) in sctp_make_violation_paramlen() argument
1098 sizeof(*param); in sctp_make_violation_paramlen()
1106 sizeof(error) + sizeof(*param)); in sctp_make_violation_paramlen()
1108 sctp_addto_param(retval, sizeof(*param), param); in sctp_make_violation_paramlen()
1961 struct sctp_paramhdr *param, in sctp_process_inv_paramlength() argument
1972 *errp = sctp_make_violation_paramlen(asoc, chunk, param); in sctp_process_inv_paramlength()
1982 union sctp_params param, in sctp_process_hn_param() argument
1986 __u16 len = ntohs(param.p->length); in sctp_process_hn_param()
1997 param.v, len, 0); in sctp_process_hn_param()
2005 union sctp_params param) in sctp_verify_ext_param() argument
2007 __u16 num_ext = ntohs(param.p->length) - sizeof(struct sctp_paramhdr); in sctp_verify_ext_param()
2013 switch (param.ext->chunks[i]) { in sctp_verify_ext_param()
2039 union sctp_params param) in sctp_process_ext_param() argument
2041 __u16 num_ext = ntohs(param.p->length) - sizeof(struct sctp_paramhdr); in sctp_process_ext_param()
2045 switch (param.ext->chunks[i]) { in sctp_process_ext_param()
2103 union sctp_params param, in sctp_process_unk_param() argument
2109 switch (param.p->type & SCTP_PARAM_ACTION_MASK) { in sctp_process_unk_param()
2136 ntohs(param.p->length))) in sctp_process_unk_param()
2137 sctp_addto_chunk(*errp, ntohs(param.p->length), in sctp_process_unk_param()
2138 param.v); in sctp_process_unk_param()
2157 union sctp_params param, in sctp_verify_param() argument
2172 switch (param.p->type) { in sctp_verify_param()
2185 if (!sctp_verify_ext_param(net, ep, param)) in sctp_verify_param()
2193 if (ntohs(param.p->length) < sizeof(struct sctp_addip_param) + in sctp_verify_param()
2195 sctp_process_inv_paramlength(asoc, param.p, in sctp_verify_param()
2203 sctp_process_hn_param(asoc, param, chunk, err_chunk); in sctp_verify_param()
2221 if (SCTP_AUTH_RANDOM_LENGTH != ntohs(param.p->length) - in sctp_verify_param()
2223 sctp_process_inv_paramlength(asoc, param.p, in sctp_verify_param()
2238 if (260 < ntohs(param.p->length)) { in sctp_verify_param()
2239 sctp_process_inv_paramlength(asoc, param.p, in sctp_verify_param()
2249 hmacs = (struct sctp_hmac_algo_param *)param.p; in sctp_verify_param()
2250 n_elt = (ntohs(param.p->length) - in sctp_verify_param()
2265 sctp_process_inv_paramlength(asoc, param.p, chunk, in sctp_verify_param()
2273 __func__, ntohs(param.p->type), cid); in sctp_verify_param()
2275 retval = sctp_process_unk_param(asoc, param, chunk, err_chunk); in sctp_verify_param()
2287 union sctp_params param; in sctp_verify_init() local
2301 sctp_walk_params(param, peer_init) { in sctp_verify_init()
2302 if (param.p->type == SCTP_PARAM_STATE_COOKIE) in sctp_verify_init()
2313 if (param.v != (void *)chunk->chunk_end) in sctp_verify_init()
2314 return sctp_process_inv_paramlength(asoc, param.p, chunk, errp); in sctp_verify_init()
2324 sctp_walk_params(param, peer_init) { in sctp_verify_init()
2325 result = sctp_verify_param(net, ep, asoc, param, cid, in sctp_verify_init()
2353 union sctp_params param; in sctp_process_init() local
2376 sctp_walk_params(param, peer_init) { in sctp_process_init()
2378 (param.p->type == SCTP_PARAM_IPV4_ADDRESS || in sctp_process_init()
2379 param.p->type == SCTP_PARAM_IPV6_ADDRESS)) { in sctp_process_init()
2380 af = sctp_get_af_specific(param_type2af(param.p->type)); in sctp_process_init()
2381 if (!af->from_addr_param(&addr, param.addr, in sctp_process_init()
2388 if (!sctp_process_param(asoc, param, peer_addr, gfp)) in sctp_process_init()
2533 union sctp_params param, in sctp_process_param() argument
2552 switch (param.p->type) { in sctp_process_param()
2563 af = sctp_get_af_specific(param_type2af(param.p->type)); in sctp_process_param()
2564 if (!af->from_addr_param(&addr, param.addr, htons(asoc->peer.port), 0)) in sctp_process_param()
2576 stale = ntohl(param.life->lifespan_increment); in sctp_process_param()
2600 sat = ntohs(param.p->length) - sizeof(struct sctp_paramhdr); in sctp_process_param()
2605 switch (param.sat->types[i]) { in sctp_process_param()
2623 ntohs(param.p->length) - sizeof(struct sctp_paramhdr); in sctp_process_param()
2625 asoc->peer.cookie = kmemdup(param.cookie->body, asoc->peer.cookie_len, gfp); in sctp_process_param()
2648 asoc->peer.adaptation_ind = ntohl(param.aind->adaptation_ind); in sctp_process_param()
2655 addr_param = param.v + sizeof(struct sctp_addip_param); in sctp_process_param()
2676 sctp_process_ext_param(asoc, param); in sctp_process_param()
2693 asoc->peer.peer_random = kmemdup(param.p, in sctp_process_param()
2694 ntohs(param.p->length), gfp); in sctp_process_param()
2707 asoc->peer.peer_hmacs = kmemdup(param.p, in sctp_process_param()
2708 ntohs(param.p->length), gfp); in sctp_process_param()
2715 sctp_auth_asoc_set_default_hmac(asoc, param.hmac_algo); in sctp_process_param()
2723 asoc->peer.peer_chunks = kmemdup(param.p, in sctp_process_param()
2724 ntohs(param.p->length), gfp); in sctp_process_param()
2736 __func__, ntohs(param.p->type), asoc); in sctp_process_param()
2851 struct sctp_addip_param param; in sctp_make_asconf_update_ip() local
2852 int paramlen = sizeof(param); in sctp_make_asconf_update_ip()
2895 param.param_hdr.type = flags; in sctp_make_asconf_update_ip()
2896 param.param_hdr.length = htons(paramlen + addr_param_len); in sctp_make_asconf_update_ip()
2897 param.crr_id = htonl(i); in sctp_make_asconf_update_ip()
2899 sctp_addto_chunk(retval, paramlen, ¶m); in sctp_make_asconf_update_ip()
2908 param.param_hdr.type = SCTP_PARAM_DEL_IP; in sctp_make_asconf_update_ip()
2909 param.param_hdr.length = htons(paramlen + addr_param_len); in sctp_make_asconf_update_ip()
2910 param.crr_id = htonl(i); in sctp_make_asconf_update_ip()
2912 sctp_addto_chunk(retval, paramlen, ¶m); in sctp_make_asconf_update_ip()
2937 struct sctp_addip_param param; in sctp_make_asconf_set_prim() local
2939 int len = sizeof(param); in sctp_make_asconf_set_prim()
2952 param.param_hdr.type = SCTP_PARAM_SET_PRIMARY; in sctp_make_asconf_set_prim()
2953 param.param_hdr.length = htons(len); in sctp_make_asconf_set_prim()
2954 param.crr_id = 0; in sctp_make_asconf_set_prim()
2956 sctp_addto_chunk(retval, sizeof(param), ¶m); in sctp_make_asconf_set_prim()
3194 union sctp_params param; in sctp_verify_asconf() local
3197 sctp_walk_params(param, addip) { in sctp_verify_asconf()
3198 size_t length = ntohs(param.p->length); in sctp_verify_asconf()
3200 *errp = param.p; in sctp_verify_asconf()
3201 switch (param.p->type) { in sctp_verify_asconf()
3210 if (param.v != (addip + 1)) in sctp_verify_asconf()
3217 if (param.v != (addip + 1)) in sctp_verify_asconf()
3227 length = ntohs(param.addip->param_hdr.length); in sctp_verify_asconf()
3248 if (param.v != chunk->chunk_end) in sctp_verify_asconf()
3266 union sctp_params param; in sctp_process_asconf() local
3297 sctp_walk_params(param, addip) { in sctp_process_asconf()
3299 if (param.p->type == SCTP_PARAM_IPV4_ADDRESS || in sctp_process_asconf()
3300 param.p->type == SCTP_PARAM_IPV6_ADDRESS) in sctp_process_asconf()
3304 param.addip); in sctp_process_asconf()
3315 sctp_add_asconf_response(asconf_ack, param.addip->crr_id, in sctp_process_asconf()
3316 err_code, param.addip); in sctp_process_asconf()
3868 union sctp_params param; in sctp_verify_reconf() local
3873 sctp_walk_params(param, hdr) { in sctp_verify_reconf()
3874 __u16 length = ntohs(param.p->length); in sctp_verify_reconf()
3876 *errp = param.p; in sctp_verify_reconf()
3879 switch (param.p->type) { in sctp_verify_reconf()
3917 last = param.p->type; in sctp_verify_reconf()