tree bc2d1ff7d59182f1e054778635127f6f15b8aa8f
parent 54b8caf6f5b1ddb7b6100d13af6377853bfac489
author Masakazu Kitajo <maskit@apache.org> 1570573657 -0700
committer Masakazu Kitajo <maskit@apache.org> 1571238004 -0700

Add QUIC draft-23 support

Squashed commit of the following:

commit 8aab554452ee9f9f770b2406b0df0d033eaae8e0
Merge: fa823387f 32b5dae81
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Oct 8 15:14:18 2019 -0700

    Merge branch 'master' into quic-latest

    * master:
      Add filename to error message in header_rewrite
      Turn on certificate verification, in permissive mode for now
      Concurrent SRV request failures
      Fix use-after-free problem related to logging headers
      ssl_multicert.config -> params->configFilePath
      Adds build targets on CI for 9.0.x
      weak mutex macros
      Fix a build issue on enabling FIPS
      Change the ready checks for ats to use the actual ats port and not the server port. Add ready check on server port for the server
      Address possibe use after free issue in HttpVCTable::remove_entry
      YAML config:  output erroneous keyword and line number in YAML file it appears on in diags.log.
      Convert old sni configuration file in lua to yaml
      First cut at a layout for Release Notes
      Clear api set bit to avoid crash in following redirect.

commit fa823387f81aefe42cabf5a449977dc861b90587
Author: scw00 <scw00@apache.org>
Date:   Fri Sep 27 14:04:31 2019 +0800

    QUIC: Fix test_QUICKeyGenerator

commit e62f4af7a3ee6978986cbd490875286ce1fa2730
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Sep 27 16:35:07 2019 +0900

    Fix a compile warning

commit 887732b49527b4266b4b7956db3f627355b3bd14
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 10 13:01:15 2019 +0900

    Update initial salt

commit c2b9be3a83919b0c863e2d5880956aaf2096e3a7
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 10 10:16:20 2019 +0900

    Update QUIC transport error codes

commit 9d843ebf6e9399ff4dabd62952d7dc6a98f65f93
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 10 09:58:26 2019 +0900

    Rename DISABLE_MIGRATION to DISABLE_ACTIVE_MIGRATION

commit d1951e98e86702f0769947c7541f64aed2045962
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 10 09:54:22 2019 +0900

    Update the length of unpredictable bits field in Stateless Reset Packet

commit 617dd31a7bd904d839abc4fde50eb3f5280ce1e9
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 10 09:51:47 2019 +0900

    Update draft version numbers to 23

commit 2e78599cc634a85f9552f22132bfbdd084319391
Merge: 212fdd319 70de21d9c
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Sep 27 10:24:45 2019 +0900

    Merge branch 'master' into quic-latest

    * master: (23 commits)
      Rearrange config reload notifications
      Removed hardcoded sni.yaml configuration filename in logs
      Clarify docs on the change from redirect_enabled.
      Make code buildable with BoringSSL
      Fix debug output for global_user_agent_header.
      Add documentation for TSHttpTxnRedoCacheLookup
      Add example plugin to show how to use TSRedoCacheLookup.
      TSHttpTxnRedoCacheLookup.
      Fix reference to SMDebug.
      adding TSHttpTxnRedoCacheLookup
      Add AUTest using h2spec
      Track scheduled events to (read|write)_vio.cont from Http2Stream
      Cleanup AuTest for HTTP/2
      Fix AuTest for HTTP/2 using httpbin
      Add base64 encoding/decoding to encryption/decryption, and general code cleanup.
      Update documentation for connect_attempts_timeout.
      Track SSL session cache evictions performed due to full bucket
      Perform a SSL quiet shutdown when close-notify is not sent
      Remove hard coded filename in error message
      Substitution string has changed
      ...

commit 212fdd3198a846eca22e7bbe73a0765c3e4782ee
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Sep 27 10:20:28 2019 +0900

    Fix unit tests

commit 6f470fa831d4401bc85703ad233218e535df9d90
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Sep 26 17:36:39 2019 +0900

    Fix build issues on macOS (or clang)

commit a786041f3e27d34d009636a781cf3bd6972f0882
Author: scw00 <scw00@apache.org>
Date:   Thu Sep 19 08:29:25 2019 +0800

    QUIC: Remove useless default constructor in QUICStreamManager

commit edc4b672b98e38dd95f6d9a80e271e999cd3297a
Author: scw00 <scw00@apache.org>
Date:   Tue Sep 17 14:03:14 2019 +0800

    QUIC: Rename QUICCongestionController.cc to QUICNewRenoCongestionController.cc

commit 45c3f138633466f2bc31dd45bbd617b00e14938b
Author: scw00 <scw00@apache.org>
Date:   Wed Sep 11 14:09:34 2019 +0800

    QUIC: Remove unnecessary allocator

commit 256a74c54f93cf86cd7fc8d866f195b23df2f2f0
Author: scw00 <scw00@apache.org>
Date:   Wed Sep 11 11:30:04 2019 +0800

    QUIC: Add Token Creator

commit 5980fa47083aca5df6d4f04e388ddab5344cdd2b
Author: scw00 <scw00@apache.org>
Date:   Mon Sep 9 15:24:23 2019 +0800

    QUIC: add more infomation to QUICPacketProtectionKeyInfo

commit 814f39e8269d8c19064b698825c2b9441c9eacb5
Author: scw00 <scw00@apache.org>
Date:   Mon Sep 9 12:32:20 2019 +0800

    QUIC: Hidden more pp_key_info detail in QUICContext

commit fecacfbd973b7c5e3b10c21e94fdfff4300768e5
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 10 14:33:52 2019 +0900

    Stabilize unit tests

commit e8565bbee89663a1c89b4052c0fc32ea80bccfb6
Author: scw00 <scw00@apache.org>
Date:   Wed Aug 7 10:55:54 2019 +0800

    QUIC: Adds QUICContext to wrap some common params

commit 5b04932d62ff66602923c7e63250660fd0992e84
Merge: 5c7b68a0d 92d4ef142
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Sep 6 11:16:38 2019 +0900

    Merge branch 'master' into quic-latest

    * master:
      Check F_GETPIPE_SZ is defined to fix macOS build
      Update Server IP in Transaction when attaching a session from the pool
      Add unit tests for MIOBuffer:write()
      Allow disabling HTTP/2 priority frames limit
      Add implementation for TextView::rtrim(char const*)
      Doc: Guide to remap plugin API.
      Add helper functions to apply api timeouts consistently.
      address review comments
      pipe buffer size for log.pipe should be configurable
      Provide stats for the recently introduced HTTP/2 rate limits

commit 5c7b68a0d337fefaf1d4cdde31574c0ab9144034
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Sep 4 14:40:30 2019 +0900

    Send PreferredAddress only if necessary

commit 2b5e2ce18e6367f142f2acad345489716486660a
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 3 17:04:27 2019 +0900

    Fix memory leaks detected by ASAN

commit 13bdd9d05f5348c0aaa37f7669f1fa425c434503
Merge: e7430fabb c65f0a1fb
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 3 14:12:38 2019 +0900

    Merge branch 'master' into quic-latest

    * master: (30 commits)
      Cleanup: Remove unused AllocType and unused functions
      Ran clang-format
      ProxySsn renaming member vars
      cachekey: added --key-type (for parent selection)
      Bumped the version of master to 10.0.0
      ProxySsn Refactor move code to cc
      1) add autest for log filter; 2) support filter for duplicated param name in query parm of URL
      code clean from review comments
      move code to utility function to reduce the interface size
      fix typo issue
      fix the bug if filter word included in param value
      fix the bug if filter word included in param value
      correct the size of DNS buffers
      cachekey: added --canonical-prefix parameter
      static linking asan, tsan, lsan
      Fixed const issue with magick plugin
      CI: added support for disabling curl in the build
      Adds the v9.0.x Docs link to main docs page
      Updates the CI build scripts, adds QUIC support
      Expose client SSL stats via API & Lua
      ...

commit e7430fabb29f91bf6d146834d7eb5ba867b130a0
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 3 14:07:01 2019 +0900

    Fix QUICPinger and tests for it

commit f040d5fa7bcb170d054d5f0773a7aba38312bd3b
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Sep 3 12:33:26 2019 +0900

    Print a raw value of unknown transport parameter

commit 13f9f63aef7e8b76d5aa11048d29112ccfaae533
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Aug 27 14:25:00 2019 +0900

    Use active_connection_id_limit advertised

commit 0e4622e62613fd8b7b9a8d65e2613131a7d1d9c6
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 22 16:38:38 2019 +0900

    Assert sending a frame that is allowed on the encryption level

commit 72b1f79c0af422a1e383d7becf370a580bcfd159
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 22 16:23:53 2019 +0900

    Send PING only on Short packets

commit e7a6cd6292ba54b6804b79298188e7042a73577a
Merge: 3c8e6d12f 5886fb212
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Aug 21 11:42:41 2019 +0900

    Merge branch 'master' into quic-latest

    * master:
      Fix inactivity timeout on QUIC
      Cleanup: Remove unused empty files
      Cleanup: unifdef WRITE_AND_TRANSFER
      Explain how SRV origin selection works
      Doc: fix build errors.
      HTTP/2 fix with realloc
      Fix clang-tidy's mistakes
      Ran make clang-tidy
      Updated clang-tidy configuration, scripts, and Makefiles
      Make proxy.config.http.per_server.min_keep_alive_connections overridable
      Make TS_NULL_MLOC a valid C compile-time constant.
      Doc: Remove python 2 vestiges from conf.py, traffic-server.py.

     Conflicts:
    	iocore/net/QUICNetVConnection.cc

commit 3c8e6d12f9335dc7b55ca45dafb21fc4c3c3c0b8
Merge: 7a9d7fd63 aa319a461
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Mon Aug 19 09:29:44 2019 +0900

    Merge branch 'master' into quic-latest

    * master: (48 commits)
      Fix H2 internal counters
      Reactivate active timeout enforcement
      Avoid AWS auth v4 path/query param double encoding
      Fix QUIC build
      Cleanup: Signal READ_READY event only if the buffer is readable
      Cleanup: Remove unused function & old comments
      Make client_context_dump test resilient to dump order changes
      Record HttpSM Id on new transaction
      make check race condition fix
      Doc: Improve handling of build when documentation is not enabled.
      fix.
      Limit resources used by regex_remap to prevent crashes on resource exhaustion.
      compress plugin: document undocumented options
      Allocate DependencyTree only if HTTP/2 stream priority is enabled
      HTTP/2 rate limiting
      Fixes various issues found in docs
      Remove double call of the SNI action on TLS accept.
      Refactor the alpn/npn handling into common ALPNSupport class
      Update for QUIC integration.
      Fixed the InkAPI to provide the TSVConnProtocolEnable/Disable functions. Update documentation and updated the example plugin.
      ...

commit 7a9d7fd633dfdcd8a931dbbf35b76fa590707581
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Aug 16 11:56:12 2019 +0900

    fix typo

commit 5b5efeccb23e88b25e7b644a4a828208679f6416
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Mon Aug 5 11:08:49 2019 +0900

    Print sending Retry packets

commit d222be218ef38f3f26e8a68b64f691b984f10799
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Aug 2 09:32:09 2019 +0900

    Min/Max length of PreferredAddress

commit fb350263dc0b8cc73d557c8ed1220afccfb9b244
Merge: 4938b7f85 e068b7685
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 1 16:57:48 2019 +0900

    Merge branch 'master' into quic-latest

    * master:
      Add support for updating Container fields as well
      Preserve the raw log fields when wiping using case insensitive contains
      Add soft limit for HTTP Request URI and Header field length. Add a default body_factory template when rejecting a request that's too long
      Doc: Minor typo in CONTRIBUTING.md
      Add QUIC draft-20 support
      Initialize EventIO
      fixed datatype in example plugin
      Cleanup debug logs around SSLWriteBuffer
      Remove unnecesary function name on debug logs in SSLNetVConnection
      TS API - Adds the TSHttpTxnNextHopNameGet() function.

     Conflicts:
    	.gitignore
    	iocore/net/P_QUICNetVConnection.h
    	iocore/net/QUICNetVConnection.cc
    	iocore/net/QUICPacketHandler.cc
    	iocore/net/quic/Makefile.am
    	iocore/net/quic/Mock.h
    	iocore/net/quic/QUICAckFrameCreator.cc
    	iocore/net/quic/QUICAckFrameCreator.h
    	iocore/net/quic/QUICAltConnectionManager.cc
    	iocore/net/quic/QUICAltConnectionManager.h
    	iocore/net/quic/QUICBidirectionalStream.cc
    	iocore/net/quic/QUICBidirectionalStream.h
    	iocore/net/quic/QUICConfig.h
    	iocore/net/quic/QUICCongestionController.cc
    	iocore/net/quic/QUICCryptoStream.cc
    	iocore/net/quic/QUICCryptoStream.h
    	iocore/net/quic/QUICDebugNames.cc
    	iocore/net/quic/QUICFlowController.cc
    	iocore/net/quic/QUICFlowController.h
    	iocore/net/quic/QUICFrame.cc
    	iocore/net/quic/QUICFrame.h
    	iocore/net/quic/QUICFrameDispatcher.cc
    	iocore/net/quic/QUICFrameDispatcher.h
    	iocore/net/quic/QUICFrameGenerator.cc
    	iocore/net/quic/QUICFrameGenerator.h
    	iocore/net/quic/QUICHandshake.cc
    	iocore/net/quic/QUICHandshake.h
    	iocore/net/quic/QUICKeyGenerator.cc
    	iocore/net/quic/QUICLossDetector.cc
    	iocore/net/quic/QUICLossDetector.h
    	iocore/net/quic/QUICPacket.cc
    	iocore/net/quic/QUICPacket.h
    	iocore/net/quic/QUICPacketFactory.cc
    	iocore/net/quic/QUICPacketFactory.h
    	iocore/net/quic/QUICPacketHeaderProtector.cc
    	iocore/net/quic/QUICPacketReceiveQueue.cc
    	iocore/net/quic/QUICPacketReceiveQueue.h
    	iocore/net/quic/QUICPathValidator.cc
    	iocore/net/quic/QUICPathValidator.h
    	iocore/net/quic/QUICPinger.cc
    	iocore/net/quic/QUICPinger.h
    	iocore/net/quic/QUICStreamManager.cc
    	iocore/net/quic/QUICStreamManager.h
    	iocore/net/quic/QUICTransportParameters.h
    	iocore/net/quic/QUICTypes.cc
    	iocore/net/quic/QUICTypes.h
    	iocore/net/quic/QUICUnidirectionalStream.cc
    	iocore/net/quic/QUICUnidirectionalStream.h
    	iocore/net/quic/test/test_QUICAckFrameCreator.cc
    	iocore/net/quic/test/test_QUICFlowController.cc
    	iocore/net/quic/test/test_QUICFrame.cc
    	iocore/net/quic/test/test_QUICFrameDispatcher.cc
    	iocore/net/quic/test/test_QUICInvariants.cc
    	iocore/net/quic/test/test_QUICKeyGenerator.cc
    	iocore/net/quic/test/test_QUICLossDetector.cc
    	iocore/net/quic/test/test_QUICPacket.cc
    	iocore/net/quic/test/test_QUICPacketFactory.cc
    	iocore/net/quic/test/test_QUICPacketHeaderProtector.cc
    	iocore/net/quic/test/test_QUICStream.cc
    	iocore/net/quic/test/test_QUICStreamManager.cc
    	iocore/net/quic/test/test_QUICType.cc
    	mgmt/RecordsConfig.cc
    	src/traffic_quic/quic_client.cc
    	src/tscore/ink_inet.cc

commit 4938b7f854cb06411d6fd061bdbde28a53074103
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 1 14:21:50 2019 +0900

    Make QUICFrame:to_io_buffer_block pure virtual

commit baaf97c51637116fcdd1ba3bf475788115c8662c
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 1 14:04:13 2019 +0900

    Convert QUICAckFrame::store to to_io_buffer_block

commit ad565245ed077205a6955a77d3250e2a39f5775b
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 1 12:21:42 2019 +0900

    Convert QUICUnknownFrame::store to to_io_buffer_block

commit 9cb75727328f8f02d9938a056ec5f5ac6091374c
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 1 12:15:30 2019 +0900

    Convert QUICRetireConnectionIdFrame::store to to_io_buffer_block

commit cc452b953d0cfb00be3abee374a99251d3139889
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 1 12:06:40 2019 +0900

    Convert QUICNewTokenFrame::store to to_io_buffer_block

commit 748d66cfad7e7181bd7b1aa50ebb9bed51f00b81
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Aug 1 11:50:25 2019 +0900

    Convert QUICCryptoFrame::store to to_io_buffer_block

commit 2b38e5f88289a4e7d590d767c2b7c9a1942a184a
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 17:27:51 2019 +0900

    Convert QUICPathResponseFrame::store to to_io_buffer_block

commit e0f2c609212a617ae59ce0346dc9327a83421cc6
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 17:18:23 2019 +0900

    Convert QUICPathChallengeFrame::store to to_io_buffer_block

commit edd2963e2e0b12f6e14364bd5cdd4473e1804600
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 17:10:00 2019 +0900

    Convert QUICNewConnectionIdFrame::store to to_io_buffer_block

commit 93b79fb2e6386ce840130b08f46c8e58e56ffd2d
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 16:52:38 2019 +0900

    Convert QUICStreamIdBlockedFrame::store to to_io_buffer_block

commit d3b5ea831572403b037bba8585fa592acb585d14
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 16:44:58 2019 +0900

    Convert QUICStreamDataBlockedFrame::store to to_io_buffer_block

commit a1390e86c95fffc8e62f7c4ea471e77bddd6554b
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 16:40:27 2019 +0900

    Convert QUICDataBlockediFrame::store to to_io_buffer_block

commit f419cd9752aa1312454fe819a08e0516f90a3ba2
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 16:32:35 2019 +0900

    Convert QUICPaddingFrame::store to to_io_buffer_block

commit 6f5da6078bcb76cd1f0aabfc7c38defe7886e5d2
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 16:23:10 2019 +0900

    Convert QUICMaxStreamsFrame::store to to_io_buffer_block

commit 08501a8886e35241ca08ed9cd558e6dce5a18735
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 16:18:21 2019 +0900

    Convert QUICMaxStreamDataFrame::store to to_io_buffer_block

commit ac4a732c6f3f574f0558895b708bd557b50b95ce
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 16:13:36 2019 +0900

    Convert QUICMaxDataFrame::store to to_io_buffer_block

commit d996d4bcab89786783b9b4065c3ccf5ebc1008f0
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 31 16:05:08 2019 +0900

    Convert QUICPingFrame::store to to_io_buffer_block

commit 578772f84d2fcf425ee06b661a5a7b2a655cf6a1
Merge: eb2a9d31c 78995bf4e
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Jul 23 15:03:38 2019 +0900

    Merge branch 'master' into quic-latest

    * master: (46 commits)
      Add dest addr information to UDPPacket class
      Update UDPNet for QUIC
      Add HKDF wrapper
      Use un-deprecated records for SSL server verification
      Removes proxy.config.http.cache.allow_empty_doc
      Deprecate the mysql_remap plugin. See #5395
      Removes the stale_while_revalidate plugin. See #5395
      Removes the memcached_remap plugin. See #5395
      Removes the hipes plugin. See #5395
      Removes the header_normalize plugin. See #5395
      Removes the buffer_upload plugin. See #5395
      Removes the balancer plugin. See #5395
      Fixes spelling in lib/records
      Fixes memory leak in traffic_crashlog
      Promotes certifier to stable, see #5394
      Promotes remap_purge to stable, see #5394
      Promotes prefetch to stable, see #5394
      Promotes multiplexer to stable, see #5394
      Promotes cache_range_requests to stable, see #5394
      fix If-Match and If-Unmodified-Since priority problem,about rfc https://tools.ietf.org/html/rfc7232#section-3.3
      ...

     Conflicts:
    	build/crypto.m4
    	configure.ac
    	include/tscore/HKDF.h
    	iocore/net/P_UDPNet.h
    	iocore/net/P_UnixNet.h
    	iocore/net/UnixUDPNet.cc
    	src/tscore/HKDF_boringssl.cc
    	src/tscore/HKDF_openssl.cc

commit eb2a9d31c6c5eca02596181085509aa155126e16
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Mon Jul 22 12:25:23 2019 +0900

    Fix frame parsers for CON_CLOSE, STOP_SENDING and RST_STREAM

    Error codes were read as 16 bit integers

commit 0dc9a3e542734909cd3466b555ecf56461fbd7e7
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Mon Jul 22 09:43:54 2019 +0900

    Fix CONNECTION_CLOSE frame parser

commit a62388d1b538e0d2617465928124a4b7573119ef
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Mon Jul 22 07:36:02 2019 +0900

    Set default value for initial_max_stream_data_uni to 4096

    http-22 says it should be 1024 or greater.

commit 0e46a6bccc582f02d65d4e11c228e423e35508b6
Author: Masaori Koshiba <masaori@apache.org>
Date:   Mon Jul 22 02:07:32 2019 +0900

    Fix storing QUICConnectionId::ZERO

commit 5db9a3b1cba535e6dac6664139c953b136e8adcb
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Jul 19 23:39:13 2019 +0900

    Update max cid length

commit 6e6351e721d784121f40f0f381124d624f7e5a39
Author: Masaori Koshiba <masaori@apache.org>
Date:   Fri Jul 19 15:00:10 2019 +0900

    Fix buffer length for VN packet

commit bcf842a12a0a9ec67ca1d7e5e95f5c9be6a806ab
Author: Masaori Koshiba <masaori@apache.org>
Date:   Fri Jul 19 14:45:59 2019 +0900

    Fix stateless retry on server side

    Prior this change, getting the token filed offset of INITIAL packet
    was wrong when stateless retry is enabled.

commit ab8508b28a48c0653bd9187ce4511cb96d76ec34
Author: Masaori Koshiba <masaori@apache.org>
Date:   Fri Jul 19 11:30:35 2019 +0900

    Fix QUICFrame & unit tests for NEW_CONNECTION_ID

commit 62f7174c6ec2428218f9b457f9b37a816a622e6a
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Jul 18 16:26:25 2019 +0900

    Add getter for retire_prior_to field

commit 3fff0dec8aa7abc8ef34a3a9da50ac3336de06ab
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Jul 18 16:14:27 2019 +0900

    Add Retire Prior To field to sending NCID frames

commit 2944fe85c21816ae5bcbeba8199f26c035049f8b
Author: Masaori Koshiba <masaori@apache.org>
Date:   Thu Jul 18 15:57:30 2019 +0900

    Add tests for static functions of QUICPacketLongHeader

commit 1ce476c91cd50e66c916daa1446f7d2480f19604
Author: Masaori Koshiba <masaori@apache.org>
Date:   Thu Jul 18 12:28:55 2019 +0900

    Fix getting packet length on dequeue from QUICPacketReceiveQueue

commit 142e11e2cd4b6bfc4fb91db9b8fbcbd72123950c
Author: Masaori Koshiba <masaori@apache.org>
Date:   Thu Jul 18 11:21:33 2019 +0900

    Update to support new RETRY packet format

commit 16d7129f14d259d290bbb2b06aa69ecb107ea906
Author: Masaori Koshiba <masaori@apache.org>
Date:   Thu Jul 18 11:00:27 2019 +0900

    Fix sampling offset for packet header protection & unit tests

commit 6f8682715cb604f838711b9ec6af5ed99db95f16
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Jul 18 08:56:53 2019 +0900

    Fix tests for QUICFrameDispatcher

commit c647ed4dac3ca538252857e8674aa3b7ec47dd05
Author: Masaori Koshiba <masaori@apache.org>
Date:   Wed Jul 17 16:20:48 2019 +0900

    Fix unit tests for QUICPacketFactory

commit f140407023a3377d9c4ce420d4e33f66da735a8e
Author: Masaori Koshiba <masaori@apache.org>
Date:   Wed Jul 17 16:17:47 2019 +0900

    Update storing long header packet & unit tests

commit 7cc4b20ad7c82f9eaa2bda787897a0a1bb4b0560
Author: Masaori Koshiba <masaori@apache.org>
Date:   Wed Jul 17 16:16:29 2019 +0900

    Fix loading long header packet

commit c47874c3653191fb90543fbed5d6b734d69fba86
Author: Masaori Koshiba <masaori@apache.org>
Date:   Wed Jul 17 14:54:38 2019 +0900

    Fix unit tests for QUICInvariants

commit 87afcb077642df9c4902c15a7fc42f58b9a5f060
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Jul 16 21:38:00 2019 +0900

    Update Long Header CID parser

commit 86a4317b4fd2ef19456cf5d231d78c50d99db09d
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Jul 9 17:10:20 2019 +0900

    Use variable-length integer for error code fields on QUIC frames

commit e105d33d7569739174abffddb89c491e3e729cb0
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Jul 5 17:10:55 2019 +0900

    Make ErrorCode 62 bit unsigned integer

commit 13d003757239833d8eff2e94aa387dc2dddb1dff
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Jul 5 16:40:39 2019 +0900

    Update initial_salt

commit f0602a6e187e456b85e34b97d4aff6d2be9789ed
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Fri Jul 5 16:16:42 2019 +0900

    Add active_connection_id_limit Transport Parameter

commit 923916d7f0bbea19367fdfc7b2ddf430c5a54233
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Jul 4 17:22:48 2019 +0900

    Update draft version numbers to 22

commit e95f03599f42743e8774908c9a8d0879f5c59890
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Thu Jul 11 12:40:22 2019 +0900

    Fix a heap-use-after-free in path validation

commit c444068c28fe1693e056596faf3039ad0adde8e3
Merge: eb4092333 8510a1c24
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Wed Jul 10 11:51:27 2019 +0900

    Merge branch 'master' into quic-latest

    * master:
      Log H2 errors with the codes
      Separate out common header compression logic to hdrs directory
      TSIOBufferReaderCopy: copy data from a reader to a fixed buffer.
      Remove unused header file ink_inout.h
      Remove unused LibBulkIO
      Reverse internal order of HPACK Dynamic Table Entries
      More Autest cleanup

     Conflicts:
    	proxy/hdrs/Makefile.am
    	proxy/http2/HPACK.cc

commit eb4092333da5734acd9cf6b933a97f6b160c0b14
Author: Masakazu Kitajo <maskit@apache.org>
Date:   Tue Jul 9 09:25:35 2019 +0900

    Fix QUICPath::operator==

commit 10805ba0dfe346dfbe93dad24656110e6d5fb250
Author: scw00 <scw00@apache.org>
Date:   Mon Jul 8 10:08:29 2019 +0800

    QUIC: remove useless params in padder

commit b0f248334200ec10be9d87d8593d7f46b4c88104
Author: scw00 <scw00@apache.org>
Date:   Mon Jul 8 09:25:28 2019 +0800

    QUIC: Add inline generators into QUICFrameGenerator

commit b76299f09e128e17d7103ee5ca5c72f3f4f67b22
Author: scw00 <scw00@apache.org>
Date:   Sun Jul 7 13:20:11 2019 +0800

    QUIC: Add QUICPinger test

commit fdff5b96f24e0d681884a1553ae1203161e9efaa
Author: scw00 <scw00@apache.org>
Date:   Sun Jul 7 12:21:08 2019 +0800

    QUIC: Fix test

commit 816305894503400861fc4e830f464c6a3a3b1b41
Author: scw00 <scw00@apache.org>
Date:   Sun Jul 7 12:07:34 2019 +0800

    QUIC: Using weight for QUICFrameGenerators

commit 1eeb804564afb7db5164c8db90e6b5bcedd86b3e
Author: scw00 <scw00@apache.org>
Date:   Thu Jul 4 08:58:15 2019 +0800

    QUIC: Split QUICFrameGenerator into two queue
