Wireshark-commits: [Wireshark-commits] master ec30d0b: QUIC: implement connection migration (draft

From: Wireshark code review <code-review-do-not-reply@xxxxxxxxxxxxx>
Date: Mon, 23 Apr 2018 18:54:30 +0000
URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=ec30d0b004d7ef757f68698af075b26d4efe34f4
Submitter: Alexis La Goutte (alexis.lagoutte@xxxxxxxxx)
Changed: branch: master
Repository: wireshark

Commits:

ec30d0b by Peter Wu (peter@xxxxxxxxxxxxx):

    QUIC: implement connection migration (draft -10 and -11)
    
    QUIC connections can survive address and port changes and should not be
    tracked per UDP conversation, but by Connection ID instead. To make this
    possible, early on (before full dissection), DCID and SCID are parsed
    from the header and then used to associate packets with new or existing
    QUIC connections.
    
    Previously a "connection" was always created when missing (in a
    conversation). Now it will only be created if an Initial Packet is
    found (by DCID or address + port). If not found, as side-effect packet
    number tracking will fail. This can be changed if needed.
    
    This work also prepares for proper draft-11 short packet dissection and
    use of NEW_CONNECTION_ID frames. Additionally, it now assumes draft 11
    rather than draft 10 if the version number is not recognized.
    
    Only tested with ngtcp2-10.pcap which has a single UDP conversation.
    
    Bug: 13881
    Change-Id: I58740c38bb62400d22481a26f83f247f9b539d56
    Reviewed-on: https://code.wireshark.org/review/27068
    Petri-Dish: Peter Wu <peter@xxxxxxxxxxxxx>
    Tested-by: Petri Dish Buildbot
    Reviewed-by: Alexis La Goutte <alexis.lagoutte@xxxxxxxxx>
    

Actions performed:

    from  88576ea   QUIC: fix decoding of initial_max_streams_uni/bidi
    adds  ec30d0b   QUIC: implement connection migration (draft -10 and -11)


Summary of changes:
 epan/dissectors/packet-quic.c | 524 ++++++++++++++++++++++++++++++++++--------
 1 file changed, 426 insertions(+), 98 deletions(-)