Skip to content

Commit 88909bc

Browse files
committed
Add QUIC draft-20 support
Squashed commit of the following: commit 4b8151ad413419ad94b6a7c1327eb7b95ee4d13c Merge: 5944d5593 78995bf4e Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Jul 23 15:16:59 2019 +0900 Merge branch 'master' into quic-20 * 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 5944d559380fb1cb17e4fbe99d06570a8b7ce4f0 Merge: 5f39e7f27 8510a1c24 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Jul 10 11:48:26 2019 +0900 Merge branch 'master' into quic-20 * 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 commit 5f39e7f270ce211e274391357ced328560500ad4 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Jul 4 14:08:35 2019 +0900 Fix build issues on macOS (cherry picked from commit ec333e7e62ce61d87774b3801dc37cba6fff0354) commit 319a46fabc1b0dae3651548b11d3ebd752acce3a Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Jul 4 12:52:45 2019 +0900 Fix a build issue on CentOS (cherry picked from commit 96293892f9306948c45f4adbd6e99e47d72cc5e3) commit f428cc465941ba242d1d01e146e7196fb83cb5e5 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Jul 4 12:48:28 2019 +0900 Remove dependency for libinknet and etc (cherry picked from commit 91f1726b39403890158cdf1a308ef190e0f7b5c8) commit b4f20d9d7ba21024b99aebf23567a1889e1ed0ff Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Jul 4 11:39:01 2019 +0900 Fix a build issue on CentOS (cherry picked from commit d88d887d8d33656f044e0076b56c4678a62c85b0) commit cf7b61e8d320e8fee909c4dec35359495d525172 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Jul 3 18:00:22 2019 +0900 Add dependency for libUglyLogStubs.a for now to pass the CI job (cherry picked from commit 065983974c9e8fd0d71240f7e3b420860a7f8d13) commit 08b898b5945149ee26f37ebec7c1b85e6c43ec22 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Jul 3 17:28:29 2019 +0900 Remove many dependency for libinknet from QUIC module (cherry picked from commit 39c2c16d908887b079e5ad8dcad19a96ca5439c6) commit e5d74233a5486448ac7d15bd8178d46eb7997c9f Merge: 749f9090c a4d913a35 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Jul 3 11:01:11 2019 +0900 Merge branch 'master' into quic-20 * master: Combohandler: Set response as private if one of the origin responses is private Added end pointer to ink_atoi64 and used when parsing cache size Add ats_unique_buf Convert HdrHeap regression test into unit test using Catch This fixes issue #5642. When the number of connections to a parent proxy exceeds proxy.config.http.per_server.connection.max a state machine loop will occur when using parent selection to select a parent for redundancy and/or load balancing. Fix options processing for ja3_fingerprint plugin Conflicts: proxy/hdrs/Makefile.am commit 749f9090c8ffae7d5a20ec0c4551c83e348faf30 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Jun 27 11:31:57 2019 +0900 Remove libtsconfig from Makefiles (cherry picked from commit d034bd6bfd6613adb9dddd86affa9c71ebee5689) commit e6a546700dd9317efd49744723e82e43f668b6e6 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Jun 25 16:37:40 2019 +0900 Reduce trivial diff from master commit 05bd80b8fecf29cee8a2086e653d397f3740362a Merge: 867b0f627 9d859ea47 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Jun 25 16:25:10 2019 +0900 Merge branch 'master' into quic-20 * master: Update MT_Hashtable interface to use smart pointer Allows for resizing librecords via command line option Program to test if multiple URLs can be cached and generates a report on the cache headers. Doc: Improve TSHttpTxnUrlEffectiveStringGet docs, cleanup other doc build errors. emergency shutdown update example directory structure and add examples for lua plugin Fix build error for pre openssl-1.1.1 Use SSL_version() directly instead of SSL_get_version() which returns a string (Thanks @maskit for the pointer). Add metrics to track SSLv3 and TLS versions Auto port selection for more autests commit 867b0f627bc555c0208e1208380945650d328d95 Merge: 9d561a5a3 75e7fc340 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Jun 21 10:51:50 2019 +0900 Merge branch 'master' into quic-20 * master: Reenable redirect_actions Au test as it is working now. Fix the number of net_connections_currently_open_stat error increase Fix and reenable url_sig Au test. TS autest extension now auto selects both ssl and nonssl port cookie_remap plugin Au test case changes for compatability with PR 4964. Replaces Emergency() with Error() when parsing these records.config values use type info to assign an affinity thread HTTP/2: ignore unknown settings HTTP/2: cancel reading buffer when ATS received GOAWAY HTTP/2: increment write_vio.ndone by consumed size Cleanup debug log in mime_hdr_describe Fix default logging.yaml with new format. Update lua.en.rst commit 9d561a5a3945354e55be6edac6eeecca416b1842 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Jun 17 15:40:16 2019 +0900 Catch up changes on master commit 030cadb7a34b9f988478eefa261c2a49cdff1f8a Merge: 2805b749e 9d90a5114 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Jun 17 10:49:09 2019 +0900 Merge branch 'master' into quic-20 * master: (54 commits) TextView: Fix bug in rtrim_if when entire view is cleared. Step 23: Renames Rollback object -> FileManager consistently Step 22: Renames Rollback.cc/.h -> ConfigManager.cc/.h Step 21: Removes the UNVERSIONED option flag completely Step 20: Removes incVersion/inc_version from Filemanager etc. Step 19: Removes the now unused Rollback member variables Step 18: Removes setLastModifiedTime, and simplifies code Step 17: Removes versionInfo, as well as currentVersion and highestSeen Step 16: Removes createPathStr() and cleans up statFile() Step 15: Removes getBaseName() and various unused members Step 14: Removes numberOfVersions() and getCurrentVersion() Step 13: Removes openFile() and closeFile() Step 12: Removes extractVersionInfo() Step 11: Removes statVersion() Step 10: Removes versionTimeStamp() and versionTimeStamp_ml() Step 9: Removes getVersion() and getVersion_ml() Step 8: Removes internalUpdate(), functionality was moved in 6 Step 7: Removes updateVersion() and updateVersion_ml() Step 6: Simplifies checkForUserUpdate(), moving critical code here Step 5: Remove removeVersion() and removeVersion_ml() ... Conflicts: iocore/net/UnixNet.cc iocore/net/UnixUDPNet.cc iocore/net/libinknet_stub.cc commit 2805b749e1444e54373491584b2955a47e6cca29 Author: Masaori Koshiba <masaori@apache.org> Date: Fri May 31 15:44:53 2019 +0900 Skip running test_QPACK when qif dir is not found commit fe277104391e7d64938e50b2c5fac6a81cbbe13c Author: Masaori Koshiba <masaori@apache.org> Date: Fri May 31 15:17:40 2019 +0900 Rename Http3ClientSession to Http3Session commit 7d8d7df3b286ea3dcbfec86d0d6baa83729dd00c Author: Masaori Koshiba <masaori@apache.org> Date: Fri May 31 15:03:23 2019 +0900 Rename Http3ClientTransaction to Http3Transaction commit d23fe12e3d327f1761f065bf97e643f4e39cb9c8 Author: Masaori Koshiba <masaori@apache.org> Date: Fri May 31 09:25:07 2019 +0900 Follow proxy ssn/txn cleanups on master commit eabfc106b129d0de8979363930e7ef62f11a39d4 Merge: 5b0e099a0 3b865f63d Author: Masaori Koshiba <masaori@apache.org> Date: Fri May 31 08:48:21 2019 +0900 Merge branch 'asf/master' into quic-latest * asf/master: Ignore Pipfile.lock file Rename class: ProxyTransaction Rename class: ProxySession Rename class: Http1ServerSession Renamed class: Http1Transaction renamed ProxyTransaction::parent to proxy_ssn removed ProxyTransaction::get_transaction_count() ProxySession Cleanup Rename files: ProxyTransaction & ProxySession Rename files: Http1Transaction & Http1ServerSession Added new API TSSslClientContextsNamesGet and TSSslClientContextFindByName. Added an example plugin that records all loaded context information into a log file. Added an autest for the example plugin. Added documentation for the APIs. Fix ja3 hooks for openssl 1.0.1 Fix order a little bit, based on F30 availability commit 5b0e099a0922728fefcad9ee339d32c40e71b427 Merge: 0afaec693 58e7e8675 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed May 29 08:14:51 2019 +0900 Merge branch 'master' into quic-latest * master: (31 commits) Ran clang-tidy with google-readability-casting Removes the abort() from header_rewrite, and try to deal with errors Set HTTP version on server side header conversion Fix ParentSelection regression/unit tests. Add an ignore_self_detect flag to parent.config so that the local cache host may be a member of a peering cache group. Clean up: Remove redundant proxy.config.http.parent_proxy_routing_enable variable Removes empty config load warning for YAML-based configuration files Doc: Fix typo in TSMimeHdrFieldCreate Minor wording changes in ssl_server_name.yaml docs Added loop detection via code and squid logging code Doc: Add documentation for a few C API functions, clean up doc build errors. Add cstdio in TextBuffer for vsnprintf Added pipenv config script for Autest. Doc: Remove origin KA note from removed setting Check DH_get_2048_256() error More fixes and cleanup of CI scripts Updates Dockerfile, and adds a comment to autest bootstrap Removed headers that don't exist in the dir to fix clang-tidy Add options to sort to reduce os differences in all_headers test Fix test to not break on custom layouts ... Conflicts: doc/admin-guide/files/records.config.en.rst iocore/net/UnixNet.cc iocore/net/UnixUDPNet.cc commit 0afaec6934c4b2039a32b2817acded4bc1a4875d Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 21 17:55:05 2019 +0100 Allow number of settings per H3 session to be configurable commit 4dda42c62d1ab1390a4138f96e9713a84602fa2b Author: Masaori Koshiba <masaori@apache.org> Date: Tue May 21 16:29:32 2019 +0100 Fix test_quic command --q-decoded-dir option commit b3701a4691524eb3e5a43f7bf57d837f789ae786 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 21 15:13:42 2019 +0100 Print source port number commit 1e8a3a65dfaf1cc0ca15b6bfb3203e1478ed0cdb Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 21 15:01:39 2019 +0100 Use preferred address once a client initiated a migration to the address commit 396a0fced5bcb1c6d97951c91805f596032143df Author: Masaori Koshiba <masaori@apache.org> Date: Tue May 21 14:35:02 2019 +0100 More fix calculation of end of buf Same issue to d99371e341b797d7166aa7e392847802d9e48c59. commit 2eb96736f939e4538464ebfb1eae36627993cc45 Author: Masaori Koshiba <masaori@apache.org> Date: Mon May 20 14:25:03 2019 +0100 Fix local/remote TP for checking stream id commit 8aac785b6aaa08d9dbaa6dad0210761bf5bba52e Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 21 12:43:21 2019 +0100 Fix a nullptr dereference commit d99371e341b797d7166aa7e392847802d9e48c59 Author: Masaori Koshiba <masaori@apache.org> Date: Tue May 21 12:30:08 2019 +0100 Fix calculation of end of buf in QPACK::_decode_literal_header_field_without_name_ref() commit 14a4f67d838f421e88f0d7be79b26795573aceb8 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 21 10:30:44 2019 +0100 Share a QUIC connection table among QUIC ports commit 4a7bc099c4f0ca75d68bfa68112f2a3651ec5f34 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 21 09:35:51 2019 +0100 Fix a test for Http3Frame commit 142dd26851659214316d50bb76b29879affe609e Author: Masaori Koshiba <masaori@apache.org> Date: Mon May 20 16:36:14 2019 +0100 Fix handling 0 length HTTP/3 frame commit a8c14edbc062409079f41cacb4887a8af812b31a Author: Masakazu Kitajo <maskit@apache.org> Date: Mon May 20 15:53:53 2019 +0100 idle_timeout TP is milisecond since -19 commit 955d380371c3b9fa6aeb7cac10331d2b84ef19e1 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon May 20 14:21:38 2019 +0100 Fix a bug in ConnectionId::_hashcode It should use the upper 64 bits but it wasn't because of signed and unsigned commit 39ddacee594fb8f2b19d5e63369e916bb00a69a8 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon May 20 10:46:49 2019 +0100 Fix asan issues commit df42ccf6906b0c3d893f7a932d04a2d96a3cd7a8 Author: Masakazu Kitajo <maskit@apache.org> Date: Sun May 19 11:06:42 2019 +0900 Remove an unnecessary header include commit d0a0dc0247929eda6df9de7b2d751ccb9f1ca651 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu May 16 22:33:42 2019 +0900 Make QUIC code compilable with BoringSSL commit f43cb6a04cf2757e5dee75dfec45f3c82c1bf452 Merge: 37f963fa3 6c51b258f Author: Masakazu Kitajo <maskit@apache.org> Date: Fri May 17 10:35:15 2019 +0900 Merge branch 'master' into quic-latest * master: Check for OpenSSSL v1.1.1, for now, for this test Cleanup of autest prog checks, and indentation Adds a missing dependency, bump autest version Doc: Clean up JA3 plugin docs. TextView: clean up on strcasecmp, strcmp, and memcmp. Make code compilable with BoringSSL Renumbers all the alarm codes / defines Removes the email feature of the Alarms subsystem Removes alarms that no longer are supported commit 37f963fa3b98e9cf4003bdc4f2f831c1e9e7c1cf Author: Masakazu Kitajo <maskit@apache.org> Date: Thu May 16 15:51:06 2019 +0900 cppcheck: fix peformance issues commit f2f49b3333844a3218454e7b461930b11181e63b Author: Masakazu Kitajo <maskit@apache.org> Date: Thu May 16 09:37:50 2019 +0900 Use QUICStreamFrame::to_io_buffer_block to avoid memcpy commit c517e0e42969ccadaa9b59ff0f8bc7441d0df760 Author: scw00 <scw00@apache.org> Date: Thu May 16 10:18:51 2019 +0800 Http3: close connection when buffer release commit 4cf8850ecd8eb4883f14bd170f34c921763ebb31 Merge: 0c80e6b11 554c828ae Author: Masakazu Kitajo <maskit@apache.org> Date: Thu May 16 09:26:29 2019 +0900 Merge branch 'master' into quic-latest * master: clang analzyer - fix false positive in Vol::handle_recover_from_data. AcidPtr: Tweaks tests to be a bit more robust. This is already documented in the proper traffic_ctl page grab lock before invoke Updates the Docker image with latest dependencies Fixed clang-analyzer issue with calling schedule_imm with the continuation possibly being a nullptr Fixes some cache-tests build issues Corret the clear range when cache restart Added Docker support for Fedora 29 and Fedora 30 gcc9: sprintf and strncat fixes in plugins clang-analyzer: Fix uninitialized variable in make_to_lower_case. clang-analyzer: fix bogus use after free with Ptr in LogFieldInt constructor. Document proxy.config.ssl.server.honor_cipher_order commit 0c80e6b11414152636d2253d0ab2474e7a4750b1 Author: Masaori Koshiba <masaori@apache.org> Date: Wed May 15 14:58:01 2019 +0900 Performance: Optimize QUICFrameGenerator::_is_level_matched() Prior this change, std::vector was copied everytime. QUICAckFrameManager and QUICHandshake don't need this check, because these should work with all encryptio level. commit 4aa5ba259e5d70fa0d1e420513435df5bbc83039 Author: Masaori Koshiba <masaori@apache.org> Date: Wed May 15 09:52:54 2019 +0900 Performance: Initialize QUICConnectionId with ZERO to avoid calling randomize() commit 0cb563424ae49d9e11c3087d900a386d55387418 Merge: 85fbeccff 5f246c33d Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 14 17:38:31 2019 +0900 Merge branch 'master' into quic-latest * master: gcc9: set default value for printing debug message Fix FREELIST macros for AArch64 commit 85fbeccff0c1ae7c6ab6a002fb24012e549c435e Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 14 17:37:50 2019 +0900 clang-tidy commit 8e4517ecb7538a20df1a779d6f276bc6f42c6531 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 14 17:19:07 2019 +0900 Prevent event-processing-after-free on a test commit d39392d077162983c0b4aa6b23e306cc6deb6aea Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 14 14:51:34 2019 +0900 Satisfy gcc9 commit 9fc03ee395ebe56b8b2c2d555ef52f693b8e3f86 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 14 14:09:07 2019 +0900 Fix tests for QUICStreamManager add_total_offset_sent was used in the tests but it only checks the function increment offset, and doesn't check check Stream Manager's expected behavior. commit 08042e622c34c3d2658ace4f16a540a6465c3d08 Author: Masaori Koshiba <masaori@apache.org> Date: Tue May 14 11:58:11 2019 +0900 Avoid read_avail() calls for performance commit 35cacaa26046bfb8e0e6fa0492762b43e15af645 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue May 14 11:54:58 2019 +0900 Fix tests for h3 commit 919183e6f235e0904a30d9828dbb889053683bae Author: scw00 <scw00@apache.org> Date: Tue May 14 02:17:58 2019 +0000 QUIC: Fix test for pervious changes commit 9e593ff209c324917ed9c2bb0f33d5df9b44ed36 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed May 1 17:19:45 2019 +0900 Update code for NUM_PLACEHOLDERS commit 2d883e02b3a0e402581070030b739b468977a36c Author: Masakazu Kitajo <maskit@apache.org> Date: Wed May 1 17:09:49 2019 +0900 Update QUIC draft nubmers to 20 commit ee689f178522a488741a772c3729fced905c916a Author: Masaori Koshiba <masaori@apache.org> Date: Mon May 13 15:19:18 2019 +0900 Fix autological-pointer-compare warning > comparison of array 'this->_loss_time' equal to a null pointer is always false [-Werror,-Wtautological-pointer-compare] commit b7bf6582cb0cdb502b0b256228619e2d4435dcc2 Author: scw00 <scw00@apache.org> Date: Fri May 10 07:43:11 2019 +0000 QUIC: Make congestion period in QUICRTTProvider commit 6562700146c8736b67fe5e20b490f1d08f1653a5 Author: scw00 <scw00@apache.org> Date: Fri May 10 05:44:54 2019 +0000 QUIC: Fix test due to pre commits commit 41ae20a5d00551385a81c294346ac80a1604ca0e Author: scw00 <scw00@apache.org> Date: Thu May 9 06:10:56 2019 +0000 QUIC: remove pn_space and remove the dependency with ld commit f51845b7eb1448cb8077771fadc026cbe1092e4c Author: scw00 <scw00@apache.org> Date: Mon Apr 29 01:33:19 2019 +0000 QUIC: Fixed test changed by loss_detector commit 97c9898c90cb1153fe015fc04cfc574f4c9b6281 Author: scw00 <scw00@apache.org> Date: Mon Apr 29 01:04:44 2019 +0000 QUIC: Update CC to draft 19 commit 2432f39f1535c420b05bc4f91152dc090733104b Author: scw00 <scw00@apache.org> Date: Sun Apr 28 02:42:48 2019 +0000 Fixed coredump in Loss Detector commit 509eef06bcd204b62cd35ab43cd4b767ea483b3e Author: scw00 <scw00@apache.org> Date: Thu Apr 25 09:27:24 2019 +0000 QUIC: recovery-19 combine loss detector into one commit a9e0b8bc18263f56fa41dd0e1a0fea7ef4b83e32 Author: Masaori Koshiba <masaori@apache.org> Date: Mon May 13 12:31:35 2019 +0900 Fix checking progress of write vio commit e59350c04de87623faf67082dbddd219796ab687 Merge: 56484a481 88b5a13ec Author: Masakazu Kitajo <maskit@apache.org> Date: Mon May 13 12:07:14 2019 +0900 Merge branch 'master' into quic-latest * master: Removes proxy.config.http.server_tcp_init_cwnd gcc9: Added default assignment operator clang-analyzer: Fixed err value being uninitialized Convert ssl_preaccept plugin to use command-line arguments Add be32toh and htobe32 for macOS clang-analyzer: Fix API test logic and fixed clang-analyzer issue calling strncmp with null argument commit 56484a48117fff092ceed19522aa21e4cd3f1d19 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri May 10 17:25:14 2019 +0900 Remove an unused variable commit 5963187459f99879914dfa05077cb57fd9eab1d5 Merge: 478b7f8c8 fa10c20b8 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri May 10 15:31:13 2019 +0900 Merge branch 'master' into quic-latest * master: (27 commits) Fixes spelling in doc Fixes typos in various documentation files gcc9: fixed issue with always printing a null char* Clang Analyzer: Fix IpMap.cc false positives. #2 Doc: Clean up some errors and formatting in traffic_ctl documentation. MemSpan: Update to templated style, fix gcc9 compile error. Rewrite SocksProxy based on states Fixes use-after-free in PVCTestDriver::start_tests Fixed syntax issue with clang Add API and fix logic for TS_SSL_VERIFY_*_HOOK. Improve test resilience by waiting for TS ports to be ready. Change HostStatus to use only one stat per host. The host stat is now a string value containing all time and reason data so that it may be restored from persistent store when ATS is restarted. Fixed nullptr check in cookie remap Address intermittent failures of all_headers Au test (see Issue # 5437). Removes unused TSConfig usage in verify_cert example Additional places to propagate the per-client-ip debug tags. Removes unused TSConfig usage in ssl_sni example Removes unused TSConfig usage in ssl_sni_whitelist example Add wait_for_cache to make all_headers test more resilient gcc9 - Fix I_Store.h ... commit 478b7f8c8005756150db26afa73299476ff3ed5a Author: Masakazu Kitajo <maskit@apache.org> Date: Fri May 10 15:20:13 2019 +0900 Fix some of compile warnings commit 8251867b18de6a0c472f4b25e5f999e7d3edd95f Author: Masakazu Kitajo <maskit@apache.org> Date: Wed May 1 22:56:04 2019 +0900 Add docs for QUIC configuration commit 709a9973f4f6e601ff7a2e25b9cd4c206c92a710 Author: Masaori Koshiba <masaori@apache.org> Date: Thu May 9 10:35:53 2019 +0900 Revert wrong conflicts fix in HPACK.cc and HTTP2.cc Merging master branch (8deca1c320f89f4a9109e9f87d3d99b5e7e17157) had some conflicts and they were fixed wrongly. - HTTP2.cc status_len and status were moved to narrow down their scope. - HPACK.cc encode_integer() and encode_string() were moved to XPACK.cc. commit f879f87155af0a2f1f81568cfe80f4757787252a Author: Masaori Koshiba <masaori@apache.org> Date: Tue May 7 14:05:36 2019 +0900 Follow changes of master branch Signatures changes of ssl_stapling_init_cert() Delete copy constructor of IpAllow::ACL commit 8deca1c320f89f4a9109e9f87d3d99b5e7e17157 Merge: 3cf90685a f32fc32c8 Author: Masaori Koshiba <masaori@apache.org> Date: Tue May 7 12:28:20 2019 +0900 Merge branch 'asf/master' into quic-latest * asf/master: First pass of documentation for URL rewrite. gcc9 - fix CryptoHash.h gcc9 - fix class Connection. Fix ContFlags for gcc 9. Doc: Update TSConfig... functions. Load the Socks configuration after the host state persistence data is loaded. Rewrite the assert statement to avoid Socks Proxy triggering the assertions. Move setsockopt from UnixNetProcessor to Server::setup_fd_for_listen Implement prefetched OCSP stapling responses Fixed clang-analyzer issues in cookie_remap TS C++ API: add member function TSSslConnection InterceptPlugin::getSslConnection() Update README.md Removes code related to removed configuration ssl_session_resuse: operator for redis endpoint compare functor must be const for STL compatability. Tries to make builds on older clang happy Update jtest.cc Added user defined conversion operator in ConstBuffer for string_view. Clang Analyzer: Fix IpMap.cc false positives. MIMEScanner: only clear m_line buffer if at MIME_PARSE_BEFORE state Off by 1 error in memcpy of redirect url correctly handle return value 0 from recv() cppcheck: Fix various issues found in iocore/eventsystem Fixes spelling in mgmt Fixes spelling in code in plugins Fixes spelling in plugins Fixes spelling in miscellaneous files Remove commented out includes cppcheck: Fix issues found in I_IOBuffer.h Fixes spelling in iocore fixes spelling in include Fixes spelling in src Fixes logging after collation removal De-tabifies REVIEWERS Doc: add prefetch to plugin index page Doc: Add links to Slicer plugin Cache:ttl-in-cache should always override never-cache cppcheck: Fix various issues in proxy/http2/ Purges log collation feature Add slice plugin config options to either pace or disable block stitch error logs. cppcheck: fix comparison issues found in plugins cppcheck: Changed from C casting to C++ casting Move the delete to please clang-analyzer Don't read frames after sending GOAWAY with an error code Adds assert, albeit not needed, makes CA happy cppcheck: Removed problematic move operators for FixedBufferWriter. cppcheck: Minimize a variable scope [iocore/net/P_UDPPacket.h:192]: (style) The scope of the variable 'body' can be reduced. cppcheck: Declare a member variable with an initial value Password can not be nullptr here, so don't check cppcheck: fixes issues found for plugins/authproxy cppcheck: fixes issues in cppcheck Revert RS-374 to avoid deadlocks Don't assign if this and other are the same object cppcheck: Fixes various issues under proxy/http/remap cppcheck: Fixes issue found in DiagsConfig.cc cppcheck: Reduce the scope of the variable 'out_buf' cppcheck: change to C++ style pointer casting cppcheck: Fix various issues of Http2DependencyTree cppcheck: Fix various issues of Http2ConnectionState cppcheck: fixes issues found in example/protocol cppcheck: fixes issues fround in example/remap cppcheck: fixes issue found in proxy/IPAllow.cc cppcheck: Remove an unused private function cppcheck: minimize variable scopes Fixes clang-analyzer error dereferencing nullptr in parent correct config name for proxy.config.dns.connection_mode Removes priorities for AIOs, thanks oknet cppcheck fix for iocore/dns cppcheck: fixes issues found in example/thread_pool cppcheck: fixes issues found for plugins/background_fetch cppcheck: fixes issues found for tests in proxy/http Removes non-existent include dir reference cppcheck: Reduce the scope of the variable 'netvc' cppcheck: Reduces variable scope for files in mgmt/... cppcheck: Minimize variable scopes and use different names to not shadow others cppcheck: Fixes issues found in async_http_fetch_streaming cppcheck: (portability) %zd in format string (no. 2) requires 'ssize_t' but the argument type is 'size_t {aka unsigned long}' cppcheck: (style) The scope of the variable can be reduced. cppcheck: syntax error and memory leak fix cppcheck: Function parameters should be passed by reference cppcheck C-style pointer casting cppcheck: fixes issues found in proxy/logging cppcheck: Change to C++ style pointer casting in Thread.cc cppcheck: fixes issues found for plugins/compress fix http2.max_header_list_size default fix ssl.server.ticket_key.filename default cppcheck: fixes issues in ink_uuid.h (BROKEN) Change to C++ style pointer casting cppcheck: Fixed various issues with SSL files cppcheck: Use initialization list instead of assigning in constructor body cppcheck: fix issue found in BufferWriterFormat.cc Throttling results in tight loop if there are no new connections Fix a build error in xdebug on macos fix proxy.config.cache.ram_cache.algorithm desc Add more information to diags.log error message for block stitching errors. traffic_via.pl: Fixed bugs, added tests, and make the output match more like traffic_via. Update README.md -H "xdebug: probe" injects trace of headers into response body A recipient MUST ignore If-Modified-Since if the request contains an If-None-Match header field, about rfc https://tools.ietf.org/html/rfc7232#section-3.3 Fixes the Brotli build issues fix proxy.config.hostdb.timeout default Ran CPP check on a few files while prodding around Adds basic version feature for traffic_layout info Cleanup: Use internal linkage for functions which are only needed in SSLUtils.cc Fix false collapsing of reverse DNS requests. Fix HostDBReverseTest unitilization sa_family, remove LRAND48 and SRAND48 for C++11 random. docs for schedule api Strip token from upstream if conifigured and dynamically allocate string buffers Ignore unsupported HTTP/2 settings parameters Update plugin API type conversions to support enums automatically. Fix IntrusiveHashMap active bucket list corruption issue during expansion. Corrected usage of OpenSSL API for ec and ecpf list retrieval. Now the signature is valid without additional length bytes accounted for signature. Fix reason tag of traffic_ctl host Conflicts: proxy/http2/HPACK.cc proxy/http2/HTTP2.cc commit 3cf90685a87494b47a6d4d56383f8735e27f6129 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed May 1 18:37:47 2019 +0900 Remove unused defines commit c9e367a5f3cef855f64f047d61447d04300fe13d Author: Masaori Koshiba <masaori335@gmail.com> Date: Wed May 1 16:53:56 2019 +0900 Add workaround fix for mixed response header and body commit fd33307a3b4d6bff9577641ae9b20fd8f4ef6b4a Author: Masaori Koshiba <masaori335@gmail.com> Date: Wed May 1 16:50:17 2019 +0900 Print size of HTTP/3 frame on debug log commit 42b5fdfe2fc786e4a14f13319f690b07523923bb Author: Masaori Koshiba <masaori335@gmail.com> Date: Wed May 1 16:49:21 2019 +0900 Fix BAD_ACCESS in Http3FrameFactory::create_data_frame() commit d4d3fc02ef5a95f16ecefd2d4107db8cacdb43bb Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Apr 25 11:55:38 2019 +0800 Check QUIC availability with SSL_MODE_QUIC_HACK commit 5a77a807942e8ef5eb4f0b844bcc881e0367375d Author: Masaori Koshiba <masaori335@gmail.com> Date: Wed May 1 14:31:44 2019 +0900 Fix stack-buffer-overflow on storing data frame commit d067d3eb321fb0660384a7e9435539583a25c673 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Apr 30 22:43:08 2019 +0900 Add missing files for BoringSSL commit 2a2107c11af28726bc568512c185b26b2b782ef6 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Apr 30 21:59:52 2019 +0900 Update clang-tidy target commit 897f6922c304e15c9eea31d7b52c0b986b0f5fd7 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Apr 17 16:03:24 2019 +0900 Print destination addresses and ports of received packets commit a41605abef9b88cdd06aded881921434bd258c80 Author: Masaori Koshiba <masaori335@gmail.com> Date: Tue Apr 16 12:44:32 2019 +0900 Add stateless reset reasons on debug log commit 22b77e9f04d2f6033661eb98a6739ca249ba45c4 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Apr 15 16:25:39 2019 +0900 Fix a wrong path for libhttp2.a commit c0d60aa4b387410152e15f07b37453c49c96270d Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Apr 15 16:16:25 2019 +0900 Add stubs for http3 unit tests commit 4738bef618c38015b25ac1f74a805fb6f989ed52 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Apr 15 11:49:04 2019 +0900 Fix a strange link issue in unit tests on release build commit 4180a956490350c9fb4ab2a9f07224b989cc1a59 Author: scw00 <scw00@apache.org> Date: Wed Apr 10 06:50:29 2019 +0000 QUIC: Uses unidirectional stream to send HTTP3 SETTINGS frames commit 033ec0e42cb1ba5cef670c0f2ebe384efa3180c3 Author: Masaori Koshiba <masaori335@gmail.com> Date: Mon Apr 15 09:29:17 2019 +0900 Add @HWLOC_LIBS@ to LDADD for HTTP/3 check programs commit d57c17c83cb5e1de59d61d73221c6a223cae385b Author: Masaori Koshiba <masaori@apache.org> Date: Thu Feb 14 16:18:09 2019 +0900 Add keylog support on QUIC client commit 2380776b74fc118487340c1cb5fdb69520cc78cf Merge: 31f60ade6 076e1f3d8 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Apr 12 16:27:52 2019 +0900 Merge branch 'master' into quic-latest * master: (64 commits) Fixed cache RWW test crash Adds cache alterante update tests Fixed pthread mutex init issue with cache test Remove unused variable in cache test Adds a HostStatus::loadStats() function used to load persisted HostStatus stats after a restart of trafficserver. DRAFT: This PR fixes #5248 - parent host status is not persistent accross restarts. Changed how current age is determined to age out documents. Guaranteed freshness was being used innapropriately when the docs age was already beyond that value Adds a missing header field for the tcpinfo log Fixed cache test, using updated shutdown url_sig: fixed unit-test for remapped url. Setting the correct directory for test_Cache Some tidying up of the global namespace. Fix mysql-remap compilation error url_sig debug fix for when url is missing the signature query string Adds Cache test suits Doc: Add IPv6 CIDR Mask example Normalize on negative value for milsetone metrics Fix compilation error in wccp Add nullptr check on ConfigProcessor::release() Fix the hiredis autoconf for the default case ... Conflicts: .gitignore iocore/net/P_UDPNet.h iocore/net/P_UnixNetVConnection.h commit 31f60ade6cb8293e1b943b0b4afdddc7422890fb Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Apr 12 16:05:04 2019 +0900 Update tests for H3 commit 6395120efa06258b8009d319a66f18d307e007ce Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Apr 12 15:33:39 2019 +0900 Update H3 SETTINGS frame format to draft-19 commit 3459e0822a67fdeabda76aacfc289fa8bde0e4ed Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Apr 12 15:07:41 2019 +0900 Update H3 Frame header format to draft-19 commit c3fcccb6bfb016f06aaddd731734d9e37f2437ea Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Apr 9 17:35:03 2019 +0900 Remove version related fields from TP and version validation logic commit 7af17709e049f782f102633495f2b2255c9f7257 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Apr 9 14:30:04 2019 +0900 Update TransportParameter format to draft-19 commit f607cac2ac67bff68af9d7babfdf9b965ffe2119 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Apr 8 16:55:31 2019 +0900 Update QUIC draft numbers to 19 commit 3c27f603b86a1d8ddf851a767b5b30762b86ec12 Author: Masaori Koshiba <masaori335@gmail.com> Date: Wed Apr 10 13:59:18 2019 +0900 Ran clang-format commit 2fe722da117beb99a1f22e918a3ef1c3060f1450 Author: Masaori Koshiba <masaori335@gmail.com> Date: Wed Apr 10 13:52:24 2019 +0900 Fix unit tests using QUICTLS commit 039e4a0e850f0bbcf17a98505455486cf10c4810 Author: scw00 <scw00@apache.org> Date: Tue Apr 9 09:11:43 2019 +0000 Fixed compilation with ubuntu 18.04 commit 41c06df698844c80d2dd146b8ce5fb7cc5853c91 Author: Masaori Koshiba <masaori335@gmail.com> Date: Fri Apr 5 10:12:57 2019 +0900 Add HTTP/3 support to traffic_quic cmd commit 2d2b4a32cbbc53c209cb29b105bd6dd02bf6feb8 Author: Masaori Koshiba <masaori335@gmail.com> Date: Mon Apr 8 14:58:47 2019 +0900 Fix test_QUICPacketFactory & test_QUICVersionNegotiator commit 83bc8289e3de15bc3bb036d2a103ddc21b4f7d6a Author: Masaori Koshiba <masaori335@gmail.com> Date: Mon Apr 8 14:36:22 2019 +0900 Fix test_QUICLossDetector commit 70397c521d33ffcaa52b70f11ee56907d74b22d2 Author: Masaori Koshiba <masaori335@gmail.com> Date: Mon Apr 8 11:58:17 2019 +0900 Cleanup frame debug msg commit 22ef4573bfca24cf17459e5364d901b1cc91ed51 Author: Masaori Koshiba <masaori335@gmail.com> Date: Thu Apr 4 14:04:08 2019 +0900 Fix QUICDebugNames::key_phase() commit 42349cfd459dc57b236180c153abb2351c0e1a59 Author: Masaori Koshiba <masaori335@gmail.com> Date: Thu Apr 4 10:53:30 2019 +0900 Send NEW_TOKEN frame from server side only commit 51c65a85cc290db14e79034be0b83b26c7ea0407 Author: Masaori Koshiba <masaori335@gmail.com> Date: Wed Apr 3 15:35:52 2019 +0900 Fix setting NUM_PLACEHOLDERS commit 788e27e4389261bca6a2deb4af4ac1f15aedfff9 Author: Masaori Koshiba <masaori@apache.org> Date: Mon Apr 1 15:35:45 2019 +0900 Add debug_msg on QUICRstStreamFrame commit 2df6d5c7dca88649ab3c999b138e145441f0c457 Author: Masaori Koshiba <masaori@apache.org> Date: Tue Mar 26 11:15:45 2019 +0900 Fix QPACK::_encode_prefix() Prior this change, the allocated IOBufferData for Header Block Prefix was not initialized. This made random value in S and Delta Base (7+) fields in Header Block Prefix. commit f53f6e52f99f0032dfc972b74d3b5c530f66e3d5 Author: Masaori Koshiba <masaori@apache.org> Date: Mon Mar 25 10:50:19 2019 +0900 Fix adding Padding Frame commit c9b1db22c01da93d258b38b434246d9c40dc7fb3 Author: Masaori Koshiba <masaori@apache.org> Date: Mon Mar 25 10:49:47 2019 +0900 Check fist byte to make sure key is derived commit 150adcce36456a3f0f8feaf8708fdb55e839f0b9 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Mar 18 11:00:43 2019 +0900 Don't create packets on encryption levels already done commit 6f409c2ef37ae8cec5b3049387c12da610b8b7ac Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Mar 15 13:52:41 2019 +0900 Use const references instead of moving QUICPacketUPtr commit d64938e0c6ca46757aeb3e8ff2e67cb8c09cae6f Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Mar 15 12:11:06 2019 +0900 Add const qualifiers commit 98e1ec33f4dcbc70553e1536296b82dd63f4be3b Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Mar 14 12:31:29 2019 +0900 Update tests to catch up interface changes commit 3059b853f424ff813834c700f3a5d328fc68dd9a Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Mar 14 10:16:15 2019 +0900 Add QUICFrame::to_io_buffer_block() and use it instead of store() commit f04325d63d067b9d3fbdf43f5b3d58ce939abee3 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Mar 13 14:31:38 2019 +0900 Change interface of QUICPacketPayloadProtector to IOBufferBlock from uint8_t array commit 3effcc011fa0ab7c4f3fbb17b0822009226fb905 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Mar 14 12:29:53 2019 +0900 Fix test_QUICStream commit eb2a9ff588f948d97da06dc2f9f59e198454d5e2 Author: scw00 <scw00@apache.org> Date: Wed Mar 13 10:03:48 2019 +0800 QUIC: Fixed building and test_QUICStream commit fd6b9c91c4ccc769acb313ab02d2da26c3443407 Author: scw00 <scw00@apache.org> Date: Wed Mar 13 09:52:54 2019 +0800 QUIC Rename unbidirectional to unidirectional and fixed test commit 4aaae87ca6b86e88ba48191c1bbe45cbadd0c8bd Author: scw00 <scw00@apache.org> Date: Wed Mar 13 09:21:13 2019 +0800 QUIC: Move max_crypto_frame into QUICCryptoStream.cc commit 2bf10ce6deb2b66dfb995b1f57ced985ffb21684 Author: scw00 <scw00@apache.org> Date: Tue Mar 12 13:54:54 2019 +0800 QUIC: Adds unbidirectional stream test commit 2db36132a039e69418fbefb440fb6a0e0c6a013d Author: scw00 <scw00@apache.org> Date: Tue Mar 12 10:32:37 2019 +0800 QUIC: Add receive only stream commit 4adefcc846268814e375e219cadbb3bac3aa4c6d Author: scw00 <scw00@apache.org> Date: Tue Mar 12 09:37:37 2019 +0800 QUIC: Add Send only stream commit cb279cfc646763f92e66070ae088cac9669a0074 Author: scw00 <scw00@apache.org> Date: Tue Mar 12 08:44:33 2019 +0800 QUIC: Moves some functions to base QUICStream structure commit dc9485e2d9e11e4b422ebe206b26ee464545d91a Author: scw00 <scw00@apache.org> Date: Tue Mar 12 08:41:22 2019 +0800 QUIC: Sink records_xxx_frame function to QUICStream commit f93d4920c4cb851237d5abdd491517dbc5b7c9ee Author: scw00 <scw00@apache.org> Date: Mon Mar 11 15:49:43 2019 +0800 QUIC: Split out QUICCryptoStream commit 0f10526fa786bf11c24c585e44d399c504ea669d Author: scw00 <scw00@apache.org> Date: Mon Mar 11 15:38:23 2019 +0800 QUIC: split out QUICBidiredirectionalStream commit 08bcbdc5f8656df6d36119f13ed862c8444b07c9 Author: Masaori Koshiba <masaori@apache.org> Date: Mon Mar 11 16:11:34 2019 +0900 Add virtual destructor to HQClientSession / HQClientTransaction commit c18dcdb412a3f6e1efdcb4efc6fd0c1769a92099 Merge: 96f0032ed cb2382dbc Author: Masaori Koshiba <masaori@apache.org> Date: Mon Mar 11 15:39:13 2019 +0900 Merge branch 'asf/master' into quic-latest * asf/master: Fixed the compatibility with previous cache verison cdniuc is not a manditory claim Run clang-format against the same files on both make clang-foramt and git pre-hook UrlRewrite: separate constructor and configuration loading for testability. Fix #5108: Remove OS dependency in test_BufferWriterFormat.cc. Add Perltidy configuration and build target pop messages Fix a self detection issue where parents are not marked down when proxy.config.http.parent_proxy.self_detect is set to 2 because of multiple calls to creatHostStat() which was marking parents back up. Also added a new HostStatus Reason Code SELF_DETECT used when self detection marks a parent down. Add virtual destructor to SSLMultiCertConfigLoader. Doc: open_read_retry_time is overridable Fixes some places where refactoring was not complete Do not run clang-format for @default_stack_size@ Change url_mapping::toUrl to url_mapping::toURL for consistency with url_mapping::fromURL. Fix for() loop, correctly calculate the value of seg_in_use within Vol::dir_check() commit 96f0032edfd255033a448b9aa7175bf234a6a8ab Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Mar 11 14:16:36 2019 +0900 Remove redundant QUICConfig::scoped_config commit a311a79516e41a70a72d5bcb757b5ac9f46a5edb Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Mar 11 14:10:35 2019 +0900 Get session filename from QUICTLS commit f69fb7e42bc8815aff032b5018c84133b8c29fef Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Mar 11 13:56:28 2019 +0900 Have a QUICConfigParams as a member of QNetVC commit 11e1159a3470615e5db4077315a30ca4727f48fb Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Mar 7 16:31:00 2019 +0900 Reduce use of QUICConfig::scoped_config commit 24df75e9748f73a4cb8858f6c552909e0406da01 Author: Masaori Koshiba <masaori@apache.org> Date: Mon Mar 11 11:20:14 2019 +0900 Decouple HTTP/0.9 and HTTP/3 Add Http09ClientSession and Http09ClientTransaction to clarify HTTP/0.9 and HTTP/3 code. HTTP/0.9 and HTTP/3 is completely switched by ALPN (hq-* vs h3-*). commit 2f0858e06d40d8315daad4b556eb5727295060fa Author: Masaori Koshiba <masaori@apache.org> Date: Mon Mar 11 13:27:57 2019 +0900 Fix unit tests for HTTP/3 commit d0c9aed68f83519b8b9c9a385f031089bdbf8eed Author: scw00 <scw00@apache.org> Date: Mon Mar 11 11:16:15 2019 +0800 QUIC: Bring back retransmittion test case commit 9533aede1b808ba16d3b31d4af78a0cf465adff2 Author: scw00 <scw00@apache.org> Date: Mon Mar 11 10:43:36 2019 +0800 QUIC: Fixed test_QUICLossDetector crash commit e8eb00b0ce9987f4538542edfad111240853400d Author: scw00 <scw00@apache.org> Date: Mon Mar 11 10:23:04 2019 +0800 QUIC: Fixed compiler error in test_QUICStream commit c5c1378ce20cd7b092dcd51ba31509e086445bb5 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Mar 8 11:28:20 2019 +0900 Fix a nullptr dereference commit 49251b9f4a40326af4974348b929c310c957a992 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Mar 8 10:45:06 2019 +0900 Pass QUICPacketInfoUPtr to on_packet_sent instead of QUICPacketUPtr commit 0b492facbb9dcc9b14ee3cae63d741ab5628e45f Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Mar 6 17:30:31 2019 +0900 Don't keep packets sent commit f9b26d2f52aae1aa50ecac68826733afc8f4ecae Author: scw00 <scw00@apache.org> Date: Fri Mar 8 08:16:49 2019 +0800 QUIC: Moving log in appropriate position commit 7532912c61b038cb45c8feddf6a5b6cb118ee196 Author: scw00 <scw00@apache.org> Date: Thu Mar 7 16:09:24 2019 +0800 QUIC: recovery draft-18 commit 2c538479077a23a1e5c2d2cd54fee02e76c2ea16 Author: Masaori Koshiba <masaori@apache.org> Date: Thu Mar 7 15:22:30 2019 +0900 Rename QUICSimpleApp to Http09App commit 0843eba371c019f74da7baea034bb2181ceeb052 Merge: ecc8f02e3 d91ca9ee4 Author: Masaori Koshiba <masaori@apache.org> Date: Thu Mar 7 12:38:26 2019 +0900 Merge branch 'asf/master' into quic-latest * asf/master: fix crash in CacheVC::openReadFromWriter commit ecc8f02e3ad988de7051c73d19a70892d55c81a1 Author: Masaori Koshiba <masaori@apache.org> Date: Thu Mar 7 12:26:14 2019 +0900 Fix QUICStreamManager to use QUICStreamVConnection commit e5a65d77da2d2f3b50ca5be7930488352ae896bb Author: Masaori Koshiba <masaori@apache.org> Date: Thu Mar 7 11:16:54 2019 +0900 Fix building unit tests for QUIC Prior this change, there're many undefined symbols comes from SSLMultiCertConfigLoader. As workaround fix, link unit tests to libinknet.a. commit 13e12de1a4e9ad1df22557e9e1bf187cd275a688 Author: Masaori Koshiba <masaori@apache.org> Date: Thu Mar 7 10:46:31 2019 +0900 Fix unit tests using QUICBidirectionalStream commit 8c157d759b5db530d15a342e7b234c33e961d5fb Author: Masaori Koshiba <masaori@apache.org> Date: Thu Mar 7 10:38:28 2019 +0900 Remove test_QUICHandshake commit 40882451978c2074837440135366637a6cb1fccc Author: scw00 <scw00@apache.org> Date: Mon Mar 4 15:01:10 2019 +0800 QUIC: Rename quicStreamAllocator to quicBidiStreamAllocator commit f6972d47db80a7e1a4b71f8b449abca43709d4b9 Author: scw00 <scw00@apache.org> Date: Mon Mar 4 14:49:45 2019 +0800 QUIC: Introduce QUICStreamVConnection to process VIO commit b0cd800ef0ac1a67c464b6ac88fcb8cc5718daf5 Author: scw00 <scw00@apache.org> Date: Mon Mar 4 09:54:18 2019 +0800 QUIC: Use QUICStream as base class commit aa107296e9f49d9c12b87845364df637e3f2f79f Author: scw00 <scw00@apache.org> Date: Fri Mar 1 17:27:25 2019 +0800 QUIC: Introduce base stream class commit 5e3ca198bc73f493c1df3b97aae6ecb058adf06f Author: Masaori Koshiba <masaori@apache.org> Date: Wed Feb 20 12:16:14 2019 +0900 QUIC: Load multiple certs commit c7e43ea08366c78887f3a01cc5d6a70d9db1099e Merge: e0cc477c9 814ccc5ea Author: Masaori Koshiba <masaori@apache.org> Date: Thu Mar 7 08:58:29 2019 +0900 Merge branch 'asf/master' into quic-latest * asf/master: Move minimum OpenSSL version to 1.0.2 Fix SessionProtocolNameRegistry lookup Implement aud claim in Uri Signing Plugin Fix #5093: new/delete mismatch in test_IntrusivePtr.cc. Fix #5094: Fix use after free in test_IntrusiveHashMap.cc Override delete in Extendible Fixing a previous fix to fully allocate strings when heap mismatch detected. Remove duplicate calls to TSHttpTxnReenable in xdebug traffic_layout/engine: add missing stat import tscore/ink_hrtime: add missing cstdint import tscore/eventnotify: change fcntl include path Add support for the old lua formatted ease of use conventions and the numeric log rolling values set thread affinity to current thread if the current thread type is the same as the target thread MIME: Fix line_is_real false positive. Merge url_scheme_get into only calling class method Remove extra vars to bwprint in SSLConfigParams::getCTX Conflicts: build/crypto.m4 include/tscore/ink_config.h.in src/traffic_layout/info.cc commit e0cc477c91851cfc095ebf84f2ee8aff62f7693f Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Mar 6 15:55:08 2019 +0900 Fix tests commit b9928bf5f6d8a7551917c2c70482dc0d861dd318 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Mar 6 15:47:32 2019 +0900 Remove an unneccessary function commit ac81d910e6d6aaf2bf00db81de44abf0c6a15d43 Author: Masaori Koshiba <masaori@apache.org> Date: Tue Mar 5 16:07:42 2019 +0900 Walk through loss detectors to get correct RTO commit 991a990549153ea4c62c38ee46ab26f33a000c49 Author: Masaori Koshiba <masaori@apache.org> Date: Tue Mar 5 13:59:23 2019 +0900 Drop Initial packets with short DICL commit e9ad3d9c69020dde5e5e26d6cf9e451c7aeda101 Author: Masaori Koshiba <masaori@apache.org> Date: Tue Mar 5 11:12:37 2019 +0900 Include a reserved version to Version Negotiation packet commit 73454c9be6bd9735ef787ab7227c3cdb590ad122 Author: Masaori Koshiba <masaori@apache.org> Date: Mon Mar 4 11:08:17 2019 +0900 Print stream id of MAX_STREAM_DATA and STREAM_DATA_BLOCKED on debug log commit 620c1fd73f0d4079c345da2555c2d90a2a66800c Author: Masaori Koshiba <masaori@apache.org> Date: Mon Mar 4 10:55:45 2019 +0900 Check local flow controller to send MAX_STREAM_DATA frame commit 7a20a2117dc73aaf2804d7180e3784b97278fa56 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Mar 4 10:27:35 2019 +0900 Reduce dup code commit 01ed38c1ac7cfaba5acc38b6066b534d6a80e38b Author: scw00 <scw00@apache.org> Date: Fri Mar 1 15:26:20 2019 +0800 QUIC: Fixed build error under ubuntu 16.04 commit a52ad8d59321536c380641039676fe97f0317108 Author: scw00 <scw00@apache.org> Date: Fri Mar 1 11:35:35 2019 +0800 QUIC: Fixed warning in Mock.h commit 5da8f67a9b11b859b537daed30e9eed624dec054 Merge: 61f1631d4 69dd33dd7 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 28 14:56:12 2019 +0900 Merge branch 'master' into quic-latest commit 61f1631d42ccdf748f404b55d8c68a518b11dcef Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 27 16:24:08 2019 +0900 Removed unused code commit 7a3af4e1c3251dbd5467810b0d22ba75808e4024 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 27 16:05:54 2019 +0900 Remove QUICPacketTransmitter It's not used now. We might need it later but a fresh design would be better. commit fc88686b10f94b33a4cdc5976f81b417889d2020 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 27 15:21:47 2019 +0900 Reduce duplicate code commit 0636a4a6ffb51729354ea329a882b86eb4bd10e7 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 27 14:13:28 2019 +0900 Drop keys for INITIAL on client side after sending the first HANDSHAKE packet commit 22364902841f999e933c2439baa3491e24f507dd Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 27 14:02:29 2019 +0900 Drop keys for INITIAL on server side after processing the first HANDSHAKE packet commit 503320547c873db3bc79c8b00eb9028379a91b24 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 27 13:47:20 2019 +0900 Removed a unused variable commit ba137ce1355a88e332db6e89b37d545fd861a708 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 27 11:42:55 2019 +0900 Fix a use of wrong key_len commit 10ebad1bab212ed4ecff77074c45030ad0d6e43d Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 27 10:44:58 2019 +0900 Small cleanups commit 28617fe794ade3d0e3272cb22d228ba47898f1b1 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Feb 25 11:07:20 2019 +0900 Revert unnecessary changes commit 2c6156c42220c1ceed347f719ecb87fa0034d42c Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Feb 25 10:54:54 2019 +0900 Update tests commit dac64b3b59707d983d5fd5982d27b51f70d570e0 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Feb 22 15:43:45 2019 +0900 Make tests buildable commit d741a0dcc291bc34e5e73dd194799b8a2cf0f7d4 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 21 17:02:25 2019 +0900 Remove unused code commit 5b5a16fdfb38096933239a0a4c66d80323524397 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 21 15:54:51 2019 +0900 Remove KeyingMaterial commit 3968cf7b588449ef6cc1bf16ca3042c27067203a Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 21 12:34:47 2019 +0900 Remove QUICPacketProtection commit 14871688b56d9a9043d79db5bfd617b8310173b5 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 21 12:21:30 2019 +0900 Remove set_hs_protocol from QUICPacketFactory commit d030ade1e6c0868414e8dacbe82c02205a9a225a Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 20 12:04:50 2019 +0900 Remove set_hs_protocol from QUICPacketHeaderProtector commit fba23d972c9f551960de0e61ca1512c22fd9522c Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 14 18:15:29 2019 +0900 Introduce QUICPacketProtectionKeyInfo commit e6a9def4e848f9314029b7ab3ee917a42daf2d92 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Feb 26 15:07:03 2019 +0900 Don't send multiple PATH_CHALLENGE on the same packet This closes #5064 commit 4462afc9ff7cf62006db56d0093a4bc8b5c9eeae Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Feb 25 14:54:31 2019 +0900 Fix memory leaks in QUICIncomingFrameBuffer commit f574354d0035d0094e3939a942a5e08c8bbc5d97 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Feb 25 11:11:14 2019 +0900 Fix compile warning on Fedora29 commit 6b10433908147e337f36ba2cc2cea95c9da18c55 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 21 17:22:28 2019 +0900 Update for draft-18 commit f4b4625d4cc0c3b281de2bb85d00fad0dd65b402 Author: scw00 <scw00@apache.org> Date: Tue Feb 19 11:52:06 2019 +0800 QUIC: Fixed QUICIncomingFrameBuffer test commit 914ffb3618c7c13eae4341952351777342bdb347 Author: scw00 <scw00@apache.org> Date: Tue Feb 19 11:46:59 2019 +0800 QUIC: Fixed test cases commit c9552adbb67db43e2996042ed3728093e7e266e2 Author: scw00 <scw00@apache.org> Date: Tue Feb 19 11:08:42 2019 +0800 QUIC: Bring back QUICTransferProgressProvider commit 8535ce79ad887b806d519439b56b0e9cc7d17672 Author: scw00 <scw00@apache.org> Date: Tue Feb 19 08:31:09 2019 +0800 Clang-Format and signal user event only on consuming all data commit 1ccd18dcb8c087224b4f14e634e779a161f1bdfe Author: scw00 <scw00@apache.org> Date: Sun Feb 17 15:19:30 2019 +0800 QUIC: Do not discard frame in StreamState commit 38600d49cebfe1eb53ef69561d57737b7bd9fc48 Author: scw00 <scw00@apache.org> Date: Sun Feb 17 11:34:53 2019 +0800 QUIC: Refactor QUICStream State commit 6b2773c82f4ab05b4bd2983fe9ca52321c3bb798 Author: scw00 <scw00@apache.org> Date: Fri Feb 15 13:48:07 2019 +0800 QUIC: Fixed crash when records connection id frame commit d06806f97669e402d53cb7c42299956fbfcd9cf8 Author: Masaori Koshiba <masaori@apache.org> Date: Fri Feb 15 14:26:02 2019 +0900 Fix compiler warnings - unused parameter commit 0b84cf33d14accb558fa9e9b695d13a0f394868a Author: scw00 <scw00@apache.org> Date: Fri Feb 15 11:29:28 2019 +0800 QUIC: AckCreator only response to non-ack-only packet commit da5385f76a6f1de6e2ecab8792889f33757cbf5b Author: Masaori Koshiba <masaori@apache.org> Date: Fri Feb 15 11:00:53 2019 +0900 Make _has_new_data flag true only if received packet is not ack only commit 32aaa2520fda1b44dd6b4ec9ce1d59ef4983fa27 Author: Masaori Koshiba <masaori@apache.org> Date: Fri Feb 15 09:56:32 2019 +0900 Cleanup: remove unused counter QUICNetVConnection::_handshake_packets_sent is deprecated in favor of 2bebf6c7338e28c6ef0f8c1cdb3fb6c4e57fcc26. commit 3e6f177a1bd8f6fd58f71664d4bee18639f4bd63 Author: Masaori Koshiba <masaori@apache.org> Date: Fri Feb 15 09:36:57 2019 +0900 Fix compiler warnings - wrong format for ink_hrtime commit a2b365707c5b3350129e8eb96002bfeb04df85b5 Author: Masaori Koshiba <masaori@apache.org> Date: Fri Feb 15 09:35:42 2019 +0900 Fix compiler warnings - missing override keyword commit 3eac14ffd020cd40917e84506269a5f33e70d946 Author: scw00 <scw00@apache.org> Date: Thu Feb 14 16:05:09 2019 +0800 QUIC: Adds log for lost packet and add comment to the changes with spec commit 8fb23d69452471d2cc08ec8d50d5ddc292a4b9f4 Author: scw00 <scw00@apache.org> Date: Thu Feb 14 15:51:50 2019 +0800 QUIC: Fixed test cases commit 3d3cde2d96fc68ae9f15d72f93e95b4e52ea4852 Author: scw00 <scw00@apache.org> Date: Thu Feb 14 13:34:53 2019 +0800 QUIC: uncomment the congestion controller config commit 732c2b4d93d066426b892fda1c724934666f01fc Author: scw00 <scw00@apache.org> Date: Thu Feb 14 13:30:43 2019 +0800 QUIC: Fixed Initial const vars commit 93b24bbf2c67f07bd7089fd28ecfb65dc4135655 Author: scw00 <scw00@apache.org> Date: Thu Feb 14 12:58:02 2019 +0800 QUIC: process ecn section commit fe61dc5e73bbf8a55b4c0e41b090a5a806657ace Author: scw00 <scw00@apache.org> Date: Thu Feb 14 12:38:07 2019 +0800 QUIC: Adds draft-17 congestion controller commit cdf771bd0c9d526322fe35ce1c7a8b88c512bc39 Author: scw00 <scw00@apache.org> Date: Wed Feb 13 15:27:29 2019 +0800 QUIC: Remove unneccessary log with unvverified path commit 9979ff48bf86207c908ccdefa8b8bb0ca2c302c3 Author: scw00 <scw00@apache.org> Date: Wed Feb 13 12:36:36 2019 +0800 QUIC: Send Ping frame correctly commit 9352e40ca6ddcaac44a6d084398600ddff0ce180 Author: scw00 <scw00@apache.org> Date: Wed Feb 13 11:16:30 2019 +0800 QUIC: LossDetector draft-17 commit 48a89c4712b0e9adb808744ba67bdd88ab3305e3 Author: scw00 <scw00@apache.org> Date: Tue Feb 12 16:23:49 2019 +0800 QUIC: Adds crypto flags commit adcfe785b5d4f514870aaef04e7f0207921a189c Author: scw00 <scw00@apache.org> Date: Tue Feb 12 15:49:19 2019 +0800 QUIC: Rename QUICPacket::retransmittable to ack_eliciting commit 1a160b4c586b5d5c5f8c6444d9c789169ed11bb7 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 14 16:54:20 2019 +0900 Make QUICNetVC::largest_acked_packet_number() private commit 9184dbf153d7df8f992306358c7f21f67ee15743 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 14 16:31:19 2019 +0900 Make maximum/minimum_quic_packet_size private Since nobody use it. commit 682f1d8f7d80714d803c60618dc9147d08520c06 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 14 16:20:06 2019 +0900 Fix typo commit 8ff58c73ae440dc1505eef52fc36ef490edb9cb5 Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 14 12:09:54 2019 +0900 Remove unused aliases commit 37082d54ccc9ccf9bf2026612eac2ec731068117 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 13 15:31:26 2019 +0900 Create and delete QUICStreamFrame on QUICStream side commit b4507fb3451ec11596835547ac126ebe171dcc33 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 13 11:33:28 2019 +0900 Update tests that create QUICFrame instances commit 9afd8c997cb88c0390685c41c17cfd7d7081c7dc Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Feb 8 16:15:18 2019 +0900 Use QUICFrame::MAX_INSTANCE_FRAME commit 6e164ab1600542cd8d0b1d7890fa2543f29bf011 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Feb 8 16:10:37 2019 +0900 Use pre-allocated buffer for QUICFrameFactory::fast_create commit 9a34336e4bcf77a096049b1e8db3da1110ce6cd5 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Feb 8 11:45:36 2019 +0900 Remove QUICFrame allocators commit e319305aa7bbfeded37fe5ad7cf244505c266e83 Author: Masakazu Kitajo <maskit@apache.org> Date: Fri Feb 8 11:43:03 2019 +0900 Fix eternal PING bug commit 57ce5d89416e07174516f4775053ff8cad01114a Author: Masakazu Kitajo <maskit@apache.org> Date: Thu Feb 7 12:09:55 2019 +0900 Remove a mutex for frame transmitter We had frame transmitter but it was removed at some point. commit 6a057e7d813ce0d2e17dc40abf5d3395f9faa7e7 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 6 16:38:51 2019 +0900 Use QUICFrameGenerators interface instead of using individual classes commit 10e1056e29710562edb0f8d25b9350ceefff6766 Author: scw00 <scw00@apache.org> Date: Fri Feb 1 10:26:33 2019 +0800 QUIC: Remove useless QUICConfig and rename resfresh_frame commit 96f46c5ac6a039089ee1f62da3f7e536a11e9291 Author: scw00 <scw00@apache.org> Date: Wed Jan 30 16:15:22 2019 +0800 QUIC: Only generate ack frame in QUICFrameGenerator::generate_frame commit 59eab471bd3cf75248d88a7064074e294ec8e2f6 Author: scw00 <scw00@apache.org> Date: Mon Jan 28 17:50:36 2019 +0800 QUIC: Refresh ack frame when previous ack_frame lost commit 08843763757513761262500030a44f5fc1c3caf1 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 6 17:36:36 2019 +0900 Remove unused code commit dbbd4683d6c425946a0bbfa2b52312755fc3b297 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 6 17:22:31 2019 +0900 Update .gitignore commit 8decc8350d2a1ee01a628e38a40e5f13ddefcd06 Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 6 17:20:36 2019 +0900 Separate out QUICPacketFactory commit b6e9a7bdc6b6ecb3237222582d24ae200d7a228f Author: Masakazu Kitajo <maskit@apache.org> Date: Wed Feb 6 16:37:33 2019 +0900 Remove tests for features removed commit a62ea1c0e065815585ba2be5380eaa0c26abfcd0 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Feb 5 16:06:15 2019 +0900 Remove QUICFrame::split which was used from RetransmisionFrame commit 8c4f40f845d659f7f757754fef9e2cd4d0604818 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Feb 5 15:43:51 2019 +0900 Remove QUICRetransmissionFrame commit 666ee793da1c177bc5d4ee785422896888fb51fc Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Feb 5 14:49:30 2019 +0900 Remove QUICPacketRetransmitter commit 9bbdb911853d9fdfa824338a91dcdbeece1ee843 Author: Masaori Koshiba <masaori@apache.org> Date: Tue Feb 5 14:39:17 2019 +0900 Fix unit test of QPACK commit 982c9baf4b7c9ca86735fc0b28581039bc3f154b Author: Masaori Koshiba <masaori@apache.org> Date: Tue Feb 5 14:37:35 2019 +0900 Remove references to HTTP/3 from QPACK commit 90e1bca570574ef1d2179b8669e5fe90ce29a777 Author: Masaori Koshiba <masaori@apache.org> Date: Tue Feb 5 14:13:47 2019 +0900 Check decoded header list size on QPACK commit e0f07c411965567ee476d7fbe792c98e2d6cc128 Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Feb 5 14:13:11 2019 +0900 Fix tests for QUICPacketHeaderProtector commit 2bebf6c7338e28c6ef0f8c1cdb3fb6c4e57fcc26 Author: scw00 <scw00@apache.org> Date: Sat Feb 2 09:59:30 2019 +0800 QUIC: Limit the sending after 3 packets with unavlidated path commit bdf4de605bfad412ea0301132d5632bb447d3c9f Author: Masakazu Kitajo <maskit@apache.org> Date: Tue Feb 5 12:15:42 2019 +0900 Fix tests for QUICPacket commit 59014a46f0f07c0d60a16fa8bb1144e40c61f882 Author: Masaori Koshiba <masaori@apache.org> Date: Tue Feb 5 10:30:07 2019 +0900 HTTP/3: load settings from records.config Below configs are added - proxy.config.http3.header_table_size - proxy.config.http3.max_header_list_size - proxy.config.http3.qpack_blocked_streams - proxy.config.http3.num_placeholders commit 1f17391f3364e0df1e3054ddd03c09cfec02459b Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Feb 4 16:43:04 2019 +0900 Fix tests for QUICStreamManager commit f6810b0abcca5e42c321187b4b736e517ce8f07f Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Feb 4 16:05:42 2019 +0900 Fix tests for QUICFrame This removes tests for RetransmissionFrame commit c1501512cb80969b8a3e466e7b86b7e0d647b5a6 Author: Masakazu Kitajo <maskit@apache.org> Date: Mon Feb 4 14:06:50 2019 +0900 Fix tests for QU…
1 parent 75283bc commit 88909bc

File tree

215 files changed

+43606
-47
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

215 files changed

+43606
-47
lines changed

.gitignore

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ src/traffic_layout/traffic_layout
6262
src/traffic_logcat/traffic_logcat
6363
src/traffic_logstats/traffic_logstats
6464
src/traffic_manager/traffic_manager
65+
src/traffic_quic/traffic_quic
6566
src/traffic_server/traffic_server
6667
src/traffic_top/traffic_top
6768
src/traffic_via/traffic_via
@@ -92,13 +93,37 @@ lib/perl/lib/Apache/TS.pm
9293

9394
iocore/net/test_certlookup
9495
iocore/net/test_UDPNet
96+
iocore/net/quic/test_QUICAckFrameCreator
97+
iocore/net/quic/test_QUICAddrVerifyState
98+
iocore/net/quic/test_QUICAltConnectionManager
99+
iocore/net/quic/test_QUICFlowController
100+
iocore/net/quic/test_QUICFrame
101+
iocore/net/quic/test_QUICFrameDispatcher
102+
iocore/net/quic/test_QUICFrameRetransmitter
103+
iocore/net/quic/test_QUICHandshake
104+
iocore/net/quic/test_QUICHandshakeProtocol
105+
iocore/net/quic/test_QUICIncomingFrameBuffer
106+
iocore/net/quic/test_QUICInvariants
107+
iocore/net/quic/test_QUICKeyGenerator
108+
iocore/net/quic/test_QUICLossDetector
109+
iocore/net/quic/test_QUICPacket
110+
iocore/net/quic/test_QUICPacketHeaderProtector
111+
iocore/net/quic/test_QUICPacketFactory
112+
iocore/net/quic/test_QUICStream
113+
iocore/net/quic/test_QUICStreamManager
114+
iocore/net/quic/test_QUICStreamState
115+
iocore/net/quic/test_QUICTransportParameters
116+
iocore/net/quic/test_QUICType
117+
iocore/net/quic/test_QUICTypeUtil
118+
iocore/net/quic/test_QUICVersionNegotiator
95119
iocore/aio/test_AIO
96120
iocore/eventsystem/test_Buffer
97121
iocore/eventsystem/test_Event
98122
iocore/eventsystem/test_MIOBufferWriter
99123
iocore/hostdb/test_RefCountCache
100124

101125
proxy/hdrs/test_mime
126+
proxy/hdrs/test_Huffmancode
102127
proxy/hdrs/test_proxy_hdrs
103128
proxy/hdrs/test_hdr_heap
104129
proxy/hdrs/test_Huffmancode
@@ -107,6 +132,8 @@ proxy/http/test_proxy_http
107132
proxy/http2/test_Http2DependencyTree
108133
proxy/http2/test_HPACK
109134
proxy/http2/hpack-tests/results
135+
proxy/http3/test_libhttp3
136+
proxy/http3/test_qpack
110137
proxy/logging/test_LogUtils
111138
proxy/logging/test_LogUtils2
112139

README

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ plugins to build large scale web applications.
2626
|-- eventsystem/ ...... Event Driven Engine
2727
|-- hostdb/ ........... Internal DNS cache
2828
|-- net/ .............. Network
29+
|-- quic/ ......... QUIC implementation
2930
|-- utils/ ............ Utilities
3031
|-- lib/ ..................
3132
|-- perl/ ............. Perl libraries for e.g. mgmt access and configurations
@@ -38,6 +39,7 @@ plugins to build large scale web applications.
3839
|-- hdrs/ ............. Headers parsing and management
3940
|-- http/ ............. The actual HTTP protocol implementation
4041
|---http2/ ............ HTTP/2 implementation
42+
|---http3/ ............ HTTP/3 implementation
4143
|-- logging/ .......... Flexible logging
4244
|-- shared/ ........... Shared files
4345
|-- rc/ ................... Installation programs and scripts

build/crypto.m4

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,37 @@ AC_DEFUN([TS_CHECK_CRYPTO_HKDF], [
221221
AC_SUBST(use_hkdf)
222222
])
223223

224+
AC_DEFUN([TS_CHECK_CRYPTO_TLS13], [
225+
enable_tls13=yes
226+
_tls13_saved_LIBS=$LIBS
227+
TS_ADDTO(LIBS, [$OPENSSL_LIBS])
228+
AC_MSG_CHECKING([whether TLS 1.3 is supported])
229+
AC_LINK_IFELSE(
230+
[
231+
AC_LANG_PROGRAM([[
232+
#include <openssl/ssl.h>
233+
]],
234+
[[
235+
#ifndef TLS1_3_VERSION
236+
# error no TLS1_3 support
237+
#endif
238+
#ifdef OPENSSL_NO_TLS1_3
239+
# error no TLS1_3 support
240+
#endif
241+
]])
242+
],
243+
[
244+
AC_MSG_RESULT([yes])
245+
],
246+
[
247+
AC_MSG_RESULT([no])
248+
enable_tls13=no
249+
])
250+
LIBS=$_tls13_saved_LIBS
251+
TS_ARG_ENABLE_VAR([use], [tls13])
252+
AC_SUBST(use_tls13)
253+
])
254+
224255
dnl
225256
dnl Since OpenSSL 1.1.0
226257
dnl

configure.ac

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1177,6 +1177,29 @@ TS_CHECK_CRYPTO_DH_GET_2048_256
11771177
TS_CHECK_CRYPTO_HKDF
11781178
AM_CONDITIONAL([HAS_HKDF], [test "x$enable_hkdf" = "xyes"])
11791179

1180+
# Check for TLS 1.3 support
1181+
TS_CHECK_CRYPTO_TLS13
1182+
1183+
# Check for QUIC support
1184+
enable_quic=no
1185+
AC_MSG_CHECKING([whether APIs for QUIC are available])
1186+
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <openssl/ssl.h>]],
1187+
[[
1188+
#ifdef OPENSSL_IS_BORINGSSL
1189+
SSL_QUIC_METHOD var;
1190+
#else
1191+
#ifndef SSL_MODE_QUIC_HACK
1192+
# error no hack for quic
1193+
#endif
1194+
#endif
1195+
]])
1196+
],
1197+
[AC_MSG_RESULT([yes]); enable_quic=yes],
1198+
[AC_MSG_RESULT([no])])
1199+
AM_CONDITIONAL([ENABLE_QUIC], [test "x$enable_quic" = "xyes"])
1200+
TS_ARG_ENABLE_VAR([use], [quic])
1201+
AC_SUBST(use_quic)
1202+
11801203
# Check for OCSP
11811204
TS_CHECK_CRYPTO_OCSP
11821205

@@ -2006,6 +2029,7 @@ AC_SUBST([default_stack_size], [$with_default_stack_size])
20062029
iocore_include_dirs="\
20072030
-I\$(abs_top_srcdir)/iocore/eventsystem \
20082031
-I\$(abs_top_srcdir)/iocore/net \
2032+
-I\$(abs_top_srcdir)/iocore/net/quic \
20092033
-I\$(abs_top_srcdir)/iocore/aio \
20102034
-I\$(abs_top_srcdir)/iocore/hostdb \
20112035
-I\$(abs_top_srcdir)/iocore/cache \
@@ -2058,6 +2082,7 @@ AC_CONFIG_FILES([
20582082
iocore/eventsystem/Makefile
20592083
iocore/hostdb/Makefile
20602084
iocore/net/Makefile
2085+
iocore/net/quic/Makefile
20612086
iocore/utils/Makefile
20622087
lib/Makefile
20632088
src/tscpp/api/Makefile
@@ -2078,6 +2103,7 @@ AC_CONFIG_FILES([
20782103
proxy/http/Makefile
20792104
proxy/http/remap/Makefile
20802105
proxy/http2/Makefile
2106+
proxy/http3/Makefile
20812107
proxy/logging/Makefile
20822108
proxy/shared/Makefile
20832109
rc/Makefile

0 commit comments

Comments
 (0)