Lines Matching refs:transport

316 	struct sctp_transport *transport;  in sctp_association_free()  local
376 transport = list_entry(pos, struct sctp_transport, transports); in sctp_association_free()
378 sctp_unhash_transport(transport); in sctp_association_free()
379 sctp_transport_free(transport); in sctp_association_free()
423 struct sctp_transport *transport) in sctp_assoc_set_primary() argument
431 asoc->peer.primary_path != transport) in sctp_assoc_set_primary()
434 asoc->peer.primary_path = transport; in sctp_assoc_set_primary()
435 sctp_ulpevent_notify_peer_addr_change(transport, in sctp_assoc_set_primary()
439 memcpy(&asoc->peer.primary_addr, &transport->ipaddr, in sctp_assoc_set_primary()
445 if ((transport->state == SCTP_ACTIVE) || in sctp_assoc_set_primary()
446 (transport->state == SCTP_UNKNOWN)) in sctp_assoc_set_primary()
447 asoc->peer.active_path = transport; in sctp_assoc_set_primary()
466 if (transport->cacc.changeover_active) in sctp_assoc_set_primary()
467 transport->cacc.cycling_changeover = changeover; in sctp_assoc_set_primary()
472 transport->cacc.changeover_active = changeover; in sctp_assoc_set_primary()
477 transport->cacc.next_tsn_at_change = asoc->next_tsn; in sctp_assoc_set_primary()
484 struct sctp_transport *transport; in sctp_assoc_rm_peer() local
504 transport = list_entry(pos, struct sctp_transport, transports); in sctp_assoc_rm_peer()
508 sctp_assoc_set_primary(asoc, transport); in sctp_assoc_rm_peer()
510 asoc->peer.active_path = transport; in sctp_assoc_rm_peer()
512 asoc->peer.retran_path = transport; in sctp_assoc_rm_peer()
514 asoc->peer.last_data_from = transport; in sctp_assoc_rm_peer()
517 asoc->strreset_chunk->transport == peer) { in sctp_assoc_rm_peer()
518 asoc->strreset_chunk->transport = transport; in sctp_assoc_rm_peer()
519 sctp_transport_reset_reconf_timer(transport); in sctp_assoc_rm_peer()
542 asoc->addip_last_asconf->transport == peer) in sctp_assoc_rm_peer()
543 asoc->addip_last_asconf->transport = NULL; in sctp_assoc_rm_peer()
554 ch->transport = NULL; in sctp_assoc_rm_peer()
572 if (ch->transport == peer) in sctp_assoc_rm_peer()
573 ch->transport = NULL; in sctp_assoc_rm_peer()
744 struct sctp_transport *transport; in sctp_assoc_del_peer() local
747 transport = list_entry(pos, struct sctp_transport, transports); in sctp_assoc_del_peer()
748 if (sctp_cmp_addr_exact(addr, &transport->ipaddr)) { in sctp_assoc_del_peer()
750 sctp_assoc_rm_peer(asoc, transport); in sctp_assoc_del_peer()
794 struct sctp_transport *transport, in sctp_assoc_control_transport() argument
808 if (transport->state == SCTP_PF && in sctp_assoc_control_transport()
811 else if (transport->state == SCTP_UNCONFIRMED && in sctp_assoc_control_transport()
815 transport->state = SCTP_ACTIVE; in sctp_assoc_control_transport()
816 sctp_transport_pl_reset(transport); in sctp_assoc_control_transport()
824 if (transport->state != SCTP_UNCONFIRMED) { in sctp_assoc_control_transport()
825 transport->state = SCTP_INACTIVE; in sctp_assoc_control_transport()
826 sctp_transport_pl_reset(transport); in sctp_assoc_control_transport()
829 sctp_transport_dst_release(transport); in sctp_assoc_control_transport()
835 transport->state = SCTP_PF; in sctp_assoc_control_transport()
850 sctp_ulpevent_notify_peer_addr_change(transport, in sctp_assoc_control_transport()
927 struct sctp_transport *transport; in sctp_assoc_lookup_tsn() local
960 list_for_each_entry(transport, &asoc->peer.transport_addr_list, in sctp_assoc_lookup_tsn()
963 if (transport == active) in sctp_assoc_lookup_tsn()
965 list_for_each_entry(chunk, &transport->transmitted, in sctp_assoc_lookup_tsn()
968 match = transport; in sctp_assoc_lookup_tsn()
1039 asoc->peer.last_data_from = chunk->transport; in sctp_assoc_bh_rcv()
1047 if (chunk->transport) in sctp_assoc_bh_rcv()
1048 chunk->transport->last_time_heard = ktime_get(); in sctp_assoc_bh_rcv()