Lines Matching refs:new_asoc

312 	struct sctp_association *new_asoc;  in sctp_sf_do_5_1B_init()  local
398 new_asoc = sctp_make_temp_asoc(ep, chunk, GFP_ATOMIC); in sctp_sf_do_5_1B_init()
399 if (!new_asoc) in sctp_sf_do_5_1B_init()
402 if (sctp_assoc_set_bind_addr_from_ep(new_asoc, in sctp_sf_do_5_1B_init()
408 if (!sctp_process_init(new_asoc, chunk, sctp_source(chunk), in sctp_sf_do_5_1B_init()
423 repl = sctp_make_init_ack(new_asoc, chunk, GFP_ATOMIC, len); in sctp_sf_do_5_1B_init()
449 sctp_add_cmd_sf(commands, SCTP_CMD_NEW_ASOC, SCTP_ASOC(new_asoc)); in sctp_sf_do_5_1B_init()
464 sctp_association_free(new_asoc); in sctp_sf_do_5_1B_init()
656 struct sctp_association *new_asoc; in sctp_sf_do_5_1D_ce() local
702 new_asoc = sctp_unpack_cookie(ep, asoc, chunk, GFP_ATOMIC, &error, in sctp_sf_do_5_1D_ce()
711 if (!new_asoc) { in sctp_sf_do_5_1D_ce()
741 if (!sctp_process_init(new_asoc, chunk, in sctp_sf_do_5_1D_ce()
750 error = sctp_auth_asoc_init_active_key(new_asoc, GFP_ATOMIC); in sctp_sf_do_5_1D_ce()
765 if (!net->sctp.auth_enable || !new_asoc->peer.auth_capable) { in sctp_sf_do_5_1D_ce()
766 sctp_association_free(new_asoc); in sctp_sf_do_5_1D_ce()
779 ret = sctp_sf_authenticate(net, ep, new_asoc, type, &auth); in sctp_sf_do_5_1D_ce()
781 sctp_association_free(new_asoc); in sctp_sf_do_5_1D_ce()
786 repl = sctp_make_cookie_ack(new_asoc, chunk); in sctp_sf_do_5_1D_ce()
796 ev = sctp_ulpevent_make_assoc_change(new_asoc, 0, SCTP_COMM_UP, 0, in sctp_sf_do_5_1D_ce()
797 new_asoc->c.sinit_num_ostreams, in sctp_sf_do_5_1D_ce()
798 new_asoc->c.sinit_max_instreams, in sctp_sf_do_5_1D_ce()
808 if (new_asoc->peer.adaptation_ind) { in sctp_sf_do_5_1D_ce()
809 ai_ev = sctp_ulpevent_make_adaptation_indication(new_asoc, in sctp_sf_do_5_1D_ce()
820 sctp_add_cmd_sf(commands, SCTP_CMD_NEW_ASOC, SCTP_ASOC(new_asoc)); in sctp_sf_do_5_1D_ce()
827 if (new_asoc->timeouts[SCTP_EVENT_TIMEOUT_AUTOCLOSE]) in sctp_sf_do_5_1D_ce()
849 sctp_association_free(new_asoc); in sctp_sf_do_5_1D_ce()
1264 static int sctp_sf_check_restart_addrs(const struct sctp_association *new_asoc, in sctp_sf_check_restart_addrs() argument
1269 struct net *net = sock_net(new_asoc->base.sk); in sctp_sf_check_restart_addrs()
1284 list_for_each_entry(new_addr, &new_asoc->peer.transport_addr_list, in sctp_sf_check_restart_addrs()
1304 static void sctp_tietags_populate(struct sctp_association *new_asoc, in sctp_tietags_populate() argument
1312 new_asoc->c.my_vtag = asoc->c.my_vtag; in sctp_tietags_populate()
1313 new_asoc->c.my_ttag = asoc->c.my_vtag; in sctp_tietags_populate()
1314 new_asoc->c.peer_ttag = 0; in sctp_tietags_populate()
1318 new_asoc->c.my_vtag = asoc->c.my_vtag; in sctp_tietags_populate()
1319 new_asoc->c.my_ttag = asoc->c.my_vtag; in sctp_tietags_populate()
1320 new_asoc->c.peer_ttag = asoc->c.peer_vtag; in sctp_tietags_populate()
1327 new_asoc->c.my_ttag = asoc->c.my_vtag; in sctp_tietags_populate()
1328 new_asoc->c.peer_ttag = asoc->c.peer_vtag; in sctp_tietags_populate()
1336 new_asoc->rwnd = asoc->rwnd; in sctp_tietags_populate()
1337 new_asoc->c.sinit_num_ostreams = asoc->c.sinit_num_ostreams; in sctp_tietags_populate()
1338 new_asoc->c.sinit_max_instreams = asoc->c.sinit_max_instreams; in sctp_tietags_populate()
1339 new_asoc->c.initial_tsn = asoc->c.initial_tsn; in sctp_tietags_populate()
1351 static char sctp_tietags_compare(struct sctp_association *new_asoc, in sctp_tietags_compare() argument
1355 if ((asoc->c.my_vtag != new_asoc->c.my_vtag) && in sctp_tietags_compare()
1356 (asoc->c.peer_vtag != new_asoc->c.peer_vtag) && in sctp_tietags_compare()
1357 (asoc->c.my_vtag == new_asoc->c.my_ttag) && in sctp_tietags_compare()
1358 (asoc->c.peer_vtag == new_asoc->c.peer_ttag)) in sctp_tietags_compare()
1362 if ((asoc->c.my_vtag == new_asoc->c.my_vtag) && in sctp_tietags_compare()
1363 ((asoc->c.peer_vtag != new_asoc->c.peer_vtag) || in sctp_tietags_compare()
1369 if ((asoc->c.my_vtag == new_asoc->c.my_vtag) && in sctp_tietags_compare()
1370 (asoc->c.peer_vtag == new_asoc->c.peer_vtag)) in sctp_tietags_compare()
1374 if ((asoc->c.my_vtag != new_asoc->c.my_vtag) && in sctp_tietags_compare()
1375 (asoc->c.peer_vtag == new_asoc->c.peer_vtag) && in sctp_tietags_compare()
1376 (0 == new_asoc->c.my_ttag) && in sctp_tietags_compare()
1377 (0 == new_asoc->c.peer_ttag)) in sctp_tietags_compare()
1397 struct sctp_association *new_asoc; in sctp_sf_do_unexpected_init() local
1471 new_asoc = sctp_make_temp_asoc(ep, chunk, GFP_ATOMIC); in sctp_sf_do_unexpected_init()
1472 if (!new_asoc) in sctp_sf_do_unexpected_init()
1475 if (sctp_assoc_set_bind_addr_from_ep(new_asoc, in sctp_sf_do_unexpected_init()
1483 if (!sctp_process_init(new_asoc, chunk, sctp_source(chunk), in sctp_sf_do_unexpected_init()
1494 if (!sctp_sf_check_restart_addrs(new_asoc, asoc, chunk, in sctp_sf_do_unexpected_init()
1501 sctp_tietags_populate(new_asoc, asoc); in sctp_sf_do_unexpected_init()
1514 repl = sctp_make_init_ack(new_asoc, chunk, GFP_ATOMIC, len); in sctp_sf_do_unexpected_init()
1539 sctp_add_cmd_sf(commands, SCTP_CMD_NEW_ASOC, SCTP_ASOC(new_asoc)); in sctp_sf_do_unexpected_init()
1555 if (new_asoc) in sctp_sf_do_unexpected_init()
1556 sctp_association_free(new_asoc); in sctp_sf_do_unexpected_init()
1703 struct sctp_association *new_asoc) in sctp_sf_do_dupcook_a() argument
1716 if (!sctp_process_init(new_asoc, chunk, sctp_source(chunk), peer_init, in sctp_sf_do_dupcook_a()
1724 if (!sctp_sf_check_restart_addrs(new_asoc, asoc, chunk, commands)) { in sctp_sf_do_dupcook_a()
1766 repl = sctp_make_cookie_ack(new_asoc, chunk); in sctp_sf_do_dupcook_a()
1772 new_asoc->c.sinit_num_ostreams, in sctp_sf_do_dupcook_a()
1773 new_asoc->c.sinit_max_instreams, in sctp_sf_do_dupcook_a()
1779 sctp_add_cmd_sf(commands, SCTP_CMD_UPDATE_ASSOC, SCTP_ASOC(new_asoc)); in sctp_sf_do_dupcook_a()
1818 struct sctp_association *new_asoc) in sctp_sf_do_dupcook_b() argument
1827 if (!sctp_process_init(new_asoc, chunk, sctp_source(chunk), peer_init, in sctp_sf_do_dupcook_b()
1832 sctp_add_cmd_sf(commands, SCTP_CMD_UPDATE_ASSOC, SCTP_ASOC(new_asoc)); in sctp_sf_do_dupcook_b()
1838 repl = sctp_make_cookie_ack(new_asoc, chunk); in sctp_sf_do_dupcook_b()
1889 struct sctp_association *new_asoc) in sctp_sf_do_dupcook_c() argument
1911 struct sctp_association *new_asoc) in sctp_sf_do_dupcook_d() argument
1962 repl = sctp_make_cookie_ack(new_asoc, chunk); in sctp_sf_do_dupcook_d()
2010 struct sctp_association *new_asoc; in sctp_sf_do_5_2_4_dupcook() local
2037 new_asoc = sctp_unpack_cookie(ep, asoc, chunk, GFP_ATOMIC, &error, in sctp_sf_do_5_2_4_dupcook()
2046 if (!new_asoc) { in sctp_sf_do_5_2_4_dupcook()
2067 action = sctp_tietags_compare(new_asoc, asoc); in sctp_sf_do_5_2_4_dupcook()
2072 new_asoc); in sctp_sf_do_5_2_4_dupcook()
2077 new_asoc); in sctp_sf_do_5_2_4_dupcook()
2082 new_asoc); in sctp_sf_do_5_2_4_dupcook()
2087 new_asoc); in sctp_sf_do_5_2_4_dupcook()
2096 sctp_add_cmd_sf(commands, SCTP_CMD_SET_ASOC, SCTP_ASOC(new_asoc)); in sctp_sf_do_5_2_4_dupcook()