Lines Matching refs:net

51 					struct net *net,
60 struct net *net,
63 static void sctp_send_stale_cookie_err(struct net *net,
70 struct net *net,
77 struct net *net,
84 struct net *net,
91 struct net *net,
100 struct net *net,
107 struct net *net,
116 struct net *net,
124 struct net *net,
132 struct net *net,
140 struct net *net,
152 struct net *net,
160 __sctp_sf_do_9_2_reshutack(struct net *net, const struct sctp_endpoint *ep,
231 enum sctp_disposition sctp_sf_do_4_C(struct net *net, in sctp_sf_do_4_C() argument
241 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_4_C()
249 return sctp_sf_violation_chunk(net, ep, asoc, type, arg, commands); in sctp_sf_do_4_C()
253 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_4_C()
286 SCTP_INC_STATS(net, SCTP_MIB_SHUTDOWNS); in sctp_sf_do_4_C()
287 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_4_C()
316 enum sctp_disposition sctp_sf_do_5_1B_init(struct net *net, in sctp_sf_do_5_1B_init() argument
339 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1B_init()
347 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1B_init()
352 if (ep == sctp_sk(net->sctp.ctl_sock)->ep) { in sctp_sf_do_5_1B_init()
353 SCTP_INC_STATS(net, SCTP_MIB_OUTOFBLUES); in sctp_sf_do_5_1B_init()
354 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1B_init()
361 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1B_init()
370 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1B_init()
374 if (!sctp_verify_init(net, ep, asoc, chunk->chunk_hdr->type, in sctp_sf_do_5_1B_init()
381 packet = sctp_abort_pkt_new(net, ep, asoc, arg, in sctp_sf_do_5_1B_init()
392 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_do_5_1B_init()
398 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, in sctp_sf_do_5_1B_init()
416 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1B_init()
516 enum sctp_disposition sctp_sf_do_5_1C_ack(struct net *net, in sctp_sf_do_5_1C_ack() argument
529 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1C_ack()
536 return sctp_sf_violation_chunk(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1C_ack()
540 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_5_1C_ack()
547 if (!sctp_verify_init(net, ep, asoc, chunk->chunk_hdr->type, in sctp_sf_do_5_1C_ack()
559 packet = sctp_abort_pkt_new(net, ep, asoc, arg, in sctp_sf_do_5_1C_ack()
570 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_do_5_1C_ack()
587 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1C_ack()
589 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_do_5_1C_ack()
590 return sctp_stop_t1_and_abort(net, commands, error, ECONNREFUSED, in sctp_sf_do_5_1C_ack()
635 static bool sctp_auth_chunk_verify(struct net *net, struct sctp_chunk *chunk, in sctp_auth_chunk_verify() argument
651 if (!net->sctp.auth_enable || !asoc->peer.auth_capable) in sctp_auth_chunk_verify()
698 enum sctp_disposition sctp_sf_do_5_1D_ce(struct net *net, in sctp_sf_do_5_1D_ce() argument
715 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1D_ce()
720 if (ep == sctp_sk(net->sctp.ctl_sock)->ep) { in sctp_sf_do_5_1D_ce()
721 SCTP_INC_STATS(net, SCTP_MIB_OUTOFBLUES); in sctp_sf_do_5_1D_ce()
722 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1D_ce()
731 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_5_1D_ce()
741 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1D_ce()
774 sctp_send_stale_cookie_err(net, ep, asoc, chunk, commands, in sctp_sf_do_5_1D_ce()
776 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1D_ce()
780 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1D_ce()
786 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1D_ce()
811 if (!sctp_auth_chunk_verify(net, chunk, new_asoc)) { in sctp_sf_do_5_1D_ce()
813 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1D_ce()
861 SCTP_INC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_5_1D_ce()
862 SCTP_INC_STATS(net, SCTP_MIB_PASSIVEESTABS); in sctp_sf_do_5_1D_ce()
919 enum sctp_disposition sctp_sf_do_5_1E_ca(struct net *net, in sctp_sf_do_5_1E_ca() argument
930 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1E_ca()
935 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_1E_ca()
941 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_5_1E_ca()
962 SCTP_INC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_5_1E_ca()
963 SCTP_INC_STATS(net, SCTP_MIB_ACTIVEESTABS); in sctp_sf_do_5_1E_ca()
1038 enum sctp_disposition sctp_sf_sendbeat_8_3(struct net *net, in sctp_sf_sendbeat_8_3() argument
1053 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_sendbeat_8_3()
1054 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_sendbeat_8_3()
1086 enum sctp_disposition sctp_sf_send_reconf(struct net *net, in sctp_sf_send_reconf() argument
1101 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_send_reconf()
1102 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_send_reconf()
1115 enum sctp_disposition sctp_sf_send_probe(struct net *net, in sctp_sf_send_probe() argument
1163 enum sctp_disposition sctp_sf_beat_8_3(struct net *net, in sctp_sf_beat_8_3() argument
1175 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_beat_8_3()
1180 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_beat_8_3()
1192 return sctp_sf_violation_paramlen(net, ep, asoc, type, arg, in sctp_sf_beat_8_3()
1237 enum sctp_disposition sctp_sf_backbeat_8_3(struct net *net, in sctp_sf_backbeat_8_3() argument
1251 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_backbeat_8_3()
1256 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_backbeat_8_3()
1295 return sctp_sf_send_probe(net, ep, asoc, type, link, commands); in sctp_sf_backbeat_8_3()
1323 static int sctp_sf_send_restart_abort(struct net *net, union sctp_addr *ssa, in sctp_sf_send_restart_abort() argument
1349 ep = sctp_sk(net->sctp.ctl_sock)->ep; in sctp_sf_send_restart_abort()
1354 pkt = sctp_abort_pkt_new(net, ep, NULL, init, errhdr, len); in sctp_sf_send_restart_abort()
1360 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_send_restart_abort()
1392 struct net *net = new_asoc->base.net; in sctp_sf_check_restart_addrs() local
1411 sctp_sf_send_restart_abort(net, &new_addr->ipaddr, init, in sctp_sf_check_restart_addrs()
1511 struct net *net, in sctp_sf_do_unexpected_init() argument
1535 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_unexpected_init()
1539 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_unexpected_init()
1545 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, commands); in sctp_sf_do_unexpected_init()
1548 return sctp_sf_new_encap_port(net, ep, asoc, type, arg, commands); in sctp_sf_do_unexpected_init()
1558 if (!sctp_verify_init(net, ep, asoc, chunk->chunk_hdr->type, in sctp_sf_do_unexpected_init()
1565 packet = sctp_abort_pkt_new(net, ep, asoc, arg, in sctp_sf_do_unexpected_init()
1574 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_do_unexpected_init()
1581 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, in sctp_sf_do_unexpected_init()
1600 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_unexpected_init()
1730 struct net *net, in sctp_sf_do_5_2_1_siminit() argument
1740 return sctp_sf_do_unexpected_init(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_1_siminit()
1785 struct net *net, in sctp_sf_do_5_2_2_dupinit() argument
1795 return sctp_sf_do_unexpected_init(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_2_dupinit()
1809 struct net *net, in sctp_sf_do_5_2_3_initack() argument
1819 if (ep == sctp_sk(net->sctp.ctl_sock)->ep) in sctp_sf_do_5_2_3_initack()
1820 return sctp_sf_ootb(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_3_initack()
1822 return sctp_sf_discard_chunk(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_3_initack()
1829 struct net *net = asoc->base.net; in sctp_sf_do_assoc_update() local
1843 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_do_assoc_update()
1844 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_assoc_update()
1855 struct net *net, in sctp_sf_do_dupcook_a() argument
1879 if (!sctp_auth_chunk_verify(net, chunk, new_asoc)) in sctp_sf_do_dupcook_a()
1896 disposition = __sctp_sf_do_9_2_reshutack(net, ep, asoc, in sctp_sf_do_dupcook_a()
1953 return sctp_sf_do_9_2_start_shutdown(net, ep, asoc, in sctp_sf_do_dupcook_a()
1978 struct net *net, in sctp_sf_do_dupcook_b() argument
1999 if (!sctp_auth_chunk_verify(net, chunk, new_asoc)) in sctp_sf_do_dupcook_b()
2005 SCTP_INC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_dupcook_b()
2062 struct net *net, in sctp_sf_do_dupcook_c() argument
2085 struct net *net, in sctp_sf_do_dupcook_d() argument
2102 if (!sctp_auth_chunk_verify(net, chunk, asoc)) in sctp_sf_do_dupcook_d()
2111 SCTP_INC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_dupcook_d()
2197 struct net *net, in sctp_sf_do_5_2_4_dupcook() argument
2219 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_4_dupcook()
2253 sctp_send_stale_cookie_err(net, ep, asoc, chunk, commands, in sctp_sf_do_5_2_4_dupcook()
2255 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_4_dupcook()
2258 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_4_dupcook()
2265 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_4_dupcook()
2278 retval = sctp_sf_do_dupcook_a(net, ep, asoc, chunk, commands, in sctp_sf_do_5_2_4_dupcook()
2283 retval = sctp_sf_do_dupcook_b(net, ep, asoc, chunk, commands, in sctp_sf_do_5_2_4_dupcook()
2288 retval = sctp_sf_do_dupcook_c(net, ep, asoc, chunk, commands, in sctp_sf_do_5_2_4_dupcook()
2293 retval = sctp_sf_do_dupcook_d(net, ep, asoc, chunk, commands, in sctp_sf_do_5_2_4_dupcook()
2298 retval = sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_5_2_4_dupcook()
2324 struct net *net, in sctp_sf_shutdown_pending_abort() argument
2334 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_pending_abort()
2347 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_pending_abort()
2356 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_pending_abort()
2359 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_pending_abort()
2361 return __sctp_sf_do_9_1_abort(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_pending_abort()
2370 struct net *net, in sctp_sf_shutdown_sent_abort() argument
2380 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_sent_abort()
2393 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_sent_abort()
2402 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_sent_abort()
2405 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_sent_abort()
2415 return __sctp_sf_do_9_1_abort(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_sent_abort()
2424 struct net *net, in sctp_sf_shutdown_ack_sent_abort() argument
2434 return sctp_sf_shutdown_sent_abort(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_ack_sent_abort()
2452 struct net *net, in sctp_sf_cookie_echoed_err() argument
2463 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_cookie_echoed_err()
2469 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_cookie_echoed_err()
2479 return sctp_sf_do_5_2_6_stale(net, ep, asoc, type, in sctp_sf_cookie_echoed_err()
2488 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_cookie_echoed_err()
2517 struct net *net, in sctp_sf_do_5_2_6_stale() argument
2640 struct net *net, in sctp_sf_do_9_1_abort() argument
2650 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_1_abort()
2663 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_1_abort()
2672 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_1_abort()
2675 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_1_abort()
2677 return __sctp_sf_do_9_1_abort(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_1_abort()
2681 struct net *net, in __sctp_sf_do_9_1_abort() argument
2700 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in __sctp_sf_do_9_1_abort()
2701 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in __sctp_sf_do_9_1_abort()
2712 struct net *net, in sctp_sf_cookie_wait_abort() argument
2724 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_cookie_wait_abort()
2737 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_cookie_wait_abort()
2744 return sctp_stop_t1_and_abort(net, commands, error, ECONNREFUSED, asoc, in sctp_sf_cookie_wait_abort()
2752 struct net *net, in sctp_sf_cookie_wait_icmp_abort() argument
2759 return sctp_stop_t1_and_abort(net, commands, SCTP_ERROR_NO_ERROR, in sctp_sf_cookie_wait_icmp_abort()
2768 struct net *net, in sctp_sf_cookie_echoed_abort() argument
2778 return sctp_sf_cookie_wait_abort(net, ep, asoc, type, arg, commands); in sctp_sf_cookie_echoed_abort()
2787 struct net *net, in sctp_stop_t1_and_abort() argument
2797 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_stop_t1_and_abort()
2842 struct net *net, in sctp_sf_do_9_2_shutdown() argument
2856 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_shutdown()
2860 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_9_2_shutdown()
2881 return sctp_sf_violation_ctsn(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_shutdown()
2905 disposition = sctp_sf_do_9_2_shutdown_ack(net, ep, asoc, type, in sctp_sf_do_9_2_shutdown()
2932 struct net *net, in sctp_sf_do_9_2_shut_ctsn() argument
2944 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_shut_ctsn()
2948 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_9_2_shut_ctsn()
2966 return sctp_sf_violation_ctsn(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_shut_ctsn()
2986 __sctp_sf_do_9_2_reshutack(struct net *net, const struct sctp_endpoint *ep, in __sctp_sf_do_9_2_reshutack() argument
2996 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in __sctp_sf_do_9_2_reshutack()
3024 sctp_sf_do_9_2_reshutack(struct net *net, const struct sctp_endpoint *ep, in sctp_sf_do_9_2_reshutack() argument
3032 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_reshutack()
3035 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_reshutack()
3038 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_reshutack()
3040 return __sctp_sf_do_9_2_reshutack(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_reshutack()
3068 enum sctp_disposition sctp_sf_do_ecn_cwr(struct net *net, in sctp_sf_do_ecn_cwr() argument
3080 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_ecn_cwr()
3083 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_ecn_cwr()
3124 enum sctp_disposition sctp_sf_do_ecne(struct net *net, in sctp_sf_do_ecne() argument
3134 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_ecne()
3137 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_ecne()
3180 enum sctp_disposition sctp_sf_eat_data_6_2(struct net *net, in sctp_sf_eat_data_6_2() argument
3194 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_eat_data_6_2()
3198 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_eat_data_6_2()
3207 SCTP_INC_STATS(net, SCTP_MIB_IN_DATA_CHUNK_DISCARDS); in sctp_sf_eat_data_6_2()
3211 SCTP_INC_STATS(net, SCTP_MIB_IN_DATA_CHUNK_DISCARDS); in sctp_sf_eat_data_6_2()
3216 return sctp_sf_abort_violation(net, ep, asoc, chunk, commands, in sctp_sf_eat_data_6_2()
3301 struct net *net, in sctp_sf_eat_data_fast_4_4() argument
3314 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_eat_data_fast_4_4()
3318 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_eat_data_fast_4_4()
3332 return sctp_sf_abort_violation(net, ep, asoc, chunk, commands, in sctp_sf_eat_data_fast_4_4()
3392 enum sctp_disposition sctp_sf_eat_sack_6_2(struct net *net, in sctp_sf_eat_sack_6_2() argument
3404 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_eat_sack_6_2()
3408 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_eat_sack_6_2()
3415 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_eat_sack_6_2()
3424 return sctp_sf_violation_ctsn(net, ep, asoc, type, arg, commands); in sctp_sf_eat_sack_6_2()
3469 struct net *net, in sctp_sf_tabort_8_4_8() argument
3480 packet = sctp_ootb_pkt_new(net, asoc, chunk); in sctp_sf_tabort_8_4_8()
3504 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_tabort_8_4_8()
3506 sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_tabort_8_4_8()
3516 struct net *net, in sctp_sf_new_encap_port() argument
3527 packet = sctp_ootb_pkt_new(net, asoc, chunk); in sctp_sf_new_encap_port()
3544 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_new_encap_port()
3546 sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_new_encap_port()
3558 enum sctp_disposition sctp_sf_operr_notify(struct net *net, in sctp_sf_operr_notify() argument
3569 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_operr_notify()
3573 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_operr_notify()
3577 return sctp_sf_violation_paramlen(net, ep, asoc, type, arg, in sctp_sf_operr_notify()
3596 enum sctp_disposition sctp_sf_do_9_2_final(struct net *net, in sctp_sf_do_9_2_final() argument
3608 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_9_2_final()
3612 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_9_2_final()
3645 SCTP_INC_STATS(net, SCTP_MIB_SHUTDOWNS); in sctp_sf_do_9_2_final()
3646 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_9_2_final()
3679 enum sctp_disposition sctp_sf_ootb(struct net *net, in sctp_sf_ootb() argument
3693 SCTP_INC_STATS(net, SCTP_MIB_OUTOFBLUES); in sctp_sf_ootb()
3702 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_ootb()
3708 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_ootb()
3723 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_ootb()
3746 return sctp_sf_shut_8_4_5(net, ep, asoc, type, arg, commands); in sctp_sf_ootb()
3748 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_ootb()
3750 return sctp_sf_tabort_8_4_8(net, ep, asoc, type, arg, commands); in sctp_sf_ootb()
3775 struct net *net, in sctp_sf_shut_8_4_5() argument
3786 packet = sctp_ootb_pkt_new(net, asoc, chunk); in sctp_sf_shut_8_4_5()
3811 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_shut_8_4_5()
3817 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_shut_8_4_5()
3831 enum sctp_disposition sctp_sf_do_8_5_1_E_sa(struct net *net, in sctp_sf_do_8_5_1_E_sa() argument
3845 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_8_5_1_E_sa()
3853 SCTP_INC_STATS(net, SCTP_MIB_OUTOFBLUES); in sctp_sf_do_8_5_1_E_sa()
3855 return sctp_sf_shut_8_4_5(net, ep, NULL, type, arg, commands); in sctp_sf_do_8_5_1_E_sa()
3859 enum sctp_disposition sctp_sf_do_asconf(struct net *net, in sctp_sf_do_asconf() argument
3875 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_asconf()
3880 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_asconf()
3890 (!net->sctp.addip_noauth && !chunk->auth)) in sctp_sf_do_asconf()
3891 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_asconf()
3898 return sctp_sf_violation_paramlen(net, ep, asoc, type, arg, in sctp_sf_do_asconf()
3973 struct net *net, in sctp_send_next_asconf() argument
3992 return sctp_sf_do_prm_asconf(net, ep, asoc, type, asconf, commands); in sctp_send_next_asconf()
4000 enum sctp_disposition sctp_sf_do_asconf_ack(struct net *net, in sctp_sf_do_asconf_ack() argument
4017 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_asconf_ack()
4023 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_asconf_ack()
4033 (!net->sctp.addip_noauth && !asconf_ack->auth)) in sctp_sf_do_asconf_ack()
4034 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_asconf_ack()
4041 return sctp_sf_violation_paramlen(net, ep, asoc, type, arg, in sctp_sf_do_asconf_ack()
4076 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_do_asconf_ack()
4077 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_asconf_ack()
4087 return sctp_send_next_asconf(net, ep, in sctp_sf_do_asconf_ack()
4106 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_do_asconf_ack()
4107 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_asconf_ack()
4115 enum sctp_disposition sctp_sf_do_reconf(struct net *net, in sctp_sf_do_reconf() argument
4130 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_do_reconf()
4135 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_do_reconf()
4139 return sctp_sf_violation_paramlen(net, ep, asoc, type, arg, in sctp_sf_do_reconf()
4192 enum sctp_disposition sctp_sf_eat_fwd_tsn(struct net *net, in sctp_sf_eat_fwd_tsn() argument
4207 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_eat_fwd_tsn()
4211 return sctp_sf_unk_chunk(net, ep, asoc, type, arg, commands); in sctp_sf_eat_fwd_tsn()
4215 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_eat_fwd_tsn()
4259 struct net *net, in sctp_sf_eat_fwd_tsn_fast() argument
4274 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_eat_fwd_tsn_fast()
4278 return sctp_sf_unk_chunk(net, ep, asoc, type, arg, commands); in sctp_sf_eat_fwd_tsn_fast()
4282 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_eat_fwd_tsn_fast()
4421 enum sctp_disposition sctp_sf_eat_auth(struct net *net, in sctp_sf_eat_auth() argument
4434 return sctp_sf_unk_chunk(net, ep, asoc, type, arg, commands); in sctp_sf_eat_auth()
4439 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_eat_auth()
4444 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_eat_auth()
4465 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_eat_auth()
4468 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_eat_auth()
4517 enum sctp_disposition sctp_sf_unk_chunk(struct net *net, in sctp_sf_unk_chunk() argument
4531 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_unk_chunk()
4538 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_unk_chunk()
4544 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_unk_chunk()
4558 sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_unk_chunk()
4597 enum sctp_disposition sctp_sf_discard_chunk(struct net *net, in sctp_sf_discard_chunk() argument
4607 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_discard_chunk()
4614 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_discard_chunk()
4640 enum sctp_disposition sctp_sf_pdiscard(struct net *net, in sctp_sf_pdiscard() argument
4646 SCTP_INC_STATS(net, SCTP_MIB_IN_PKT_DISCARDS); in sctp_sf_pdiscard()
4667 enum sctp_disposition sctp_sf_violation(struct net *net, in sctp_sf_violation() argument
4677 return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands); in sctp_sf_violation()
4681 return sctp_sf_violation_chunklen(net, ep, asoc, type, arg, in sctp_sf_violation()
4691 struct net *net, in sctp_sf_abort_violation() argument
4741 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_abort_violation()
4755 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_abort_violation()
4758 packet = sctp_ootb_pkt_new(net, asoc, chunk); in sctp_sf_abort_violation()
4773 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_abort_violation()
4776 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_abort_violation()
4779 sctp_sf_pdiscard(net, ep, asoc, SCTP_ST_CHUNK(0), arg, commands); in sctp_sf_abort_violation()
4808 struct net *net, in sctp_sf_violation_chunklen() argument
4817 return sctp_sf_abort_violation(net, ep, asoc, arg, commands, err_str, in sctp_sf_violation_chunklen()
4828 struct net *net, in sctp_sf_violation_paramlen() argument
4848 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_sf_violation_paramlen()
4854 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_violation_paramlen()
4855 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_violation_paramlen()
4858 sctp_sf_pdiscard(net, ep, asoc, SCTP_ST_CHUNK(0), arg, commands); in sctp_sf_violation_paramlen()
4871 struct net *net, in sctp_sf_violation_ctsn() argument
4880 return sctp_sf_abort_violation(net, ep, asoc, arg, commands, err_str, in sctp_sf_violation_ctsn()
4891 struct net *net, in sctp_sf_violation_chunk() argument
4900 return sctp_sf_abort_violation(net, ep, asoc, arg, commands, err_str, in sctp_sf_violation_chunk()
4963 enum sctp_disposition sctp_sf_do_prm_asoc(struct net *net, in sctp_sf_do_prm_asoc() argument
5075 enum sctp_disposition sctp_sf_do_prm_send(struct net *net, in sctp_sf_do_prm_send() argument
5115 struct net *net, in sctp_sf_do_9_2_prm_shutdown() argument
5137 disposition = sctp_sf_do_9_2_start_shutdown(net, ep, asoc, type, in sctp_sf_do_9_2_prm_shutdown()
5172 struct net *net, in sctp_sf_do_9_1_prm_abort() argument
5202 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_do_9_1_prm_abort()
5203 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_9_1_prm_abort()
5209 enum sctp_disposition sctp_sf_error_closed(struct net *net, in sctp_sf_error_closed() argument
5224 struct net *net, in sctp_sf_error_shutdown() argument
5251 struct net *net, in sctp_sf_cookie_wait_prm_shutdown() argument
5264 SCTP_INC_STATS(net, SCTP_MIB_SHUTDOWNS); in sctp_sf_cookie_wait_prm_shutdown()
5286 struct net *net, in sctp_sf_cookie_echoed_prm_shutdown() argument
5296 return sctp_sf_cookie_wait_prm_shutdown(net, ep, asoc, type, arg, commands); in sctp_sf_cookie_echoed_prm_shutdown()
5314 struct net *net, in sctp_sf_cookie_wait_prm_abort() argument
5333 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_cookie_wait_prm_abort()
5363 struct net *net, in sctp_sf_cookie_echoed_prm_abort() argument
5373 return sctp_sf_cookie_wait_prm_abort(net, ep, asoc, type, arg, commands); in sctp_sf_cookie_echoed_prm_abort()
5389 struct net *net, in sctp_sf_shutdown_pending_prm_abort() argument
5400 return sctp_sf_do_9_1_prm_abort(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_pending_prm_abort()
5416 struct net *net, in sctp_sf_shutdown_sent_prm_abort() argument
5431 return sctp_sf_do_9_1_prm_abort(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_sent_prm_abort()
5447 struct net *net, in sctp_sf_shutdown_ack_sent_prm_abort() argument
5457 return sctp_sf_shutdown_sent_prm_abort(net, ep, asoc, type, arg, commands); in sctp_sf_shutdown_ack_sent_prm_abort()
5483 struct net *net, in sctp_sf_do_prm_requestheartbeat() argument
5515 enum sctp_disposition sctp_sf_do_prm_asconf(struct net *net, in sctp_sf_do_prm_asconf() argument
5532 enum sctp_disposition sctp_sf_do_prm_reconf(struct net *net, in sctp_sf_do_prm_reconf() argument
5551 struct net *net, in sctp_sf_ignore_primitive() argument
5575 struct net *net, in sctp_sf_do_no_pending_tsn() argument
5607 struct net *net, in sctp_sf_do_9_2_start_shutdown() argument
5677 struct net *net, in sctp_sf_do_9_2_shutdown_ack() argument
5696 return sctp_sf_pdiscard(net, ep, asoc, type, arg, in sctp_sf_do_9_2_shutdown_ack()
5702 return sctp_sf_violation_chunklen(net, ep, asoc, type, in sctp_sf_do_9_2_shutdown_ack()
5750 enum sctp_disposition sctp_sf_ignore_other(struct net *net, in sctp_sf_ignore_other() argument
5778 enum sctp_disposition sctp_sf_do_6_3_3_rtx(struct net *net, in sctp_sf_do_6_3_3_rtx() argument
5787 SCTP_INC_STATS(net, SCTP_MIB_T3_RTX_EXPIREDS); in sctp_sf_do_6_3_3_rtx()
5809 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_do_6_3_3_rtx()
5810 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_do_6_3_3_rtx()
5866 enum sctp_disposition sctp_sf_do_6_2_sack(struct net *net, in sctp_sf_do_6_2_sack() argument
5873 SCTP_INC_STATS(net, SCTP_MIB_DELAY_SACK_EXPIREDS); in sctp_sf_do_6_2_sack()
5898 struct net *net, in sctp_sf_t1_init_timer_expire() argument
5911 SCTP_INC_STATS(net, SCTP_MIB_T1_INIT_EXPIREDS); in sctp_sf_t1_init_timer_expire()
5963 struct net *net, in sctp_sf_t1_cookie_timer_expire() argument
5975 SCTP_INC_STATS(net, SCTP_MIB_T1_COOKIE_EXPIREDS); in sctp_sf_t1_cookie_timer_expire()
6014 struct net *net, in sctp_sf_t2_timer_expire() argument
6025 SCTP_INC_STATS(net, SCTP_MIB_T2_SHUTDOWN_EXPIREDS); in sctp_sf_t2_timer_expire()
6035 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_t2_timer_expire()
6036 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_t2_timer_expire()
6085 struct net *net, in sctp_sf_t4_timer_expire() argument
6095 SCTP_INC_STATS(net, SCTP_MIB_T4_RTO_EXPIREDS); in sctp_sf_t4_timer_expire()
6120 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_t4_timer_expire()
6121 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_t4_timer_expire()
6157 struct net *net, in sctp_sf_t5_timer_expire() argument
6168 SCTP_INC_STATS(net, SCTP_MIB_T5_SHUTDOWN_GUARD_EXPIREDS); in sctp_sf_t5_timer_expire()
6180 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_sf_t5_timer_expire()
6181 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_sf_t5_timer_expire()
6194 struct net *net, in sctp_sf_autoclose_timer_expire() argument
6203 SCTP_INC_STATS(net, SCTP_MIB_AUTOCLOSE_EXPIREDS); in sctp_sf_autoclose_timer_expire()
6218 disposition = sctp_sf_do_9_2_start_shutdown(net, ep, asoc, type, in sctp_sf_autoclose_timer_expire()
6237 enum sctp_disposition sctp_sf_not_impl(struct net *net, in sctp_sf_not_impl() argument
6254 enum sctp_disposition sctp_sf_bug(struct net *net, in sctp_sf_bug() argument
6274 enum sctp_disposition sctp_sf_timer_ignore(struct net *net, in sctp_sf_timer_ignore() argument
6319 struct net *net, in sctp_abort_pkt_new() argument
6328 packet = sctp_ootb_pkt_new(net, asoc, chunk); in sctp_abort_pkt_new()
6361 struct net *net, in sctp_ootb_pkt_new() argument
6415 transport = sctp_transport_new(net, sctp_source(chunk), GFP_ATOMIC); in sctp_ootb_pkt_new()
6425 sctp_sk(net->sctp.ctl_sock)); in sctp_ootb_pkt_new()
6444 static void sctp_send_stale_cookie_err(struct net *net, in sctp_send_stale_cookie_err() argument
6454 packet = sctp_ootb_pkt_new(net, asoc, chunk); in sctp_send_stale_cookie_err()
6467 SCTP_INC_STATS(net, SCTP_MIB_OUTCTRLCHUNKS); in sctp_send_stale_cookie_err()
6481 struct net *net = sock_net(sk); in sctp_eat_data() local
6616 SCTP_INC_STATS(net, SCTP_MIB_ABORTEDS); in sctp_eat_data()
6617 SCTP_DEC_STATS(net, SCTP_MIB_CURRESTAB); in sctp_eat_data()
6627 SCTP_INC_STATS(net, SCTP_MIB_INUNORDERCHUNKS); in sctp_eat_data()
6631 SCTP_INC_STATS(net, SCTP_MIB_INORDERCHUNKS); in sctp_eat_data()