• sergeyu's avatar
    Move PseudoTCP and channel auth out of LibjingleTransportFactory. · 28d886c9
    sergeyu authored
    Previously TransportFactory interface was responsible for creation
    and initialization of several protocol layers, including PseudoTCP and
    authentication (TLS). Simplified it so now it only creates raw datagram
    transport channel. PseudoTcpChannelFactory is now responsible for
    setting up PseudoTcpAdapter and AuthenticatingChannelFactory takes care
    of channel authentication. Also added DatagramChannelFactory for
    Datagram channels.
    
    This change will make it possible to replace PseudoTcpChannelFactory
    with an object that creates SCTP-based channels.
    
    Also fixed a bug in SslHmacChannelAuthenticator. It wasn't working
    properly when deleted from the callback. (base::Callback objects
    shouldn't be deleted while being called because when deleted they
    also destroy reference parameters values they are holding).
    
    BUG=402993
    
    Review URL: https://codereview.chromium.org/551173004
    
    Cr-Commit-Position: refs/heads/master@{#294474}
    28d886c9
channel_multiplexer.cc 14.9 KB