gitextract_c16ycxax/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ ├── feature_request.md │ │ └── r2cn.md │ ├── dependabot.yml │ └── workflows/ │ ├── benchmark.yml │ ├── codecov.yml │ ├── commitlint.yml │ ├── feishu-bot.yml │ ├── rust.yml │ └── traversal.yml ├── .gitignore ├── .pre-commit-config.yaml ├── .rustfmt.toml ├── .rusty-hook.toml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Cargo.toml ├── LICENSE ├── README.md ├── README_CN.md ├── SECURITY.md ├── benchmark/ │ └── launch.py ├── codecov.yml ├── commitlint.config.js ├── dquic/ │ ├── Cargo.toml │ ├── examples/ │ │ ├── echo-client.rs │ │ ├── echo-server.rs │ │ ├── http-client.rs │ │ ├── http-server.rs │ │ ├── traversal-client.rs │ │ └── traversal-server.rs │ ├── src/ │ │ ├── cert.rs │ │ ├── client.rs │ │ ├── common.rs │ │ ├── lib.rs │ │ └── server.rs │ └── tests/ │ ├── auth.rs │ ├── common/ │ │ └── mod.rs │ ├── echo.rs │ ├── echo_common/ │ │ └── mod.rs │ └── traversal.rs ├── h3-shim/ │ ├── Cargo.toml │ ├── examples/ │ │ ├── README.md │ │ ├── h3-client.rs │ │ └── h3-server.rs │ └── src/ │ ├── conn.rs │ ├── error.rs │ ├── ext.rs │ ├── lib.rs │ ├── pool.rs │ └── streams.rs ├── interop/ │ ├── Dockerfile │ └── run_endpoint.sh ├── qbase/ │ ├── Cargo.toml │ └── src/ │ ├── cid/ │ │ ├── connection_id.rs │ │ ├── local_cid.rs │ │ └── remote_cid.rs │ ├── cid.rs │ ├── error.rs │ ├── flow.rs │ ├── frame/ │ │ ├── ack.rs │ │ ├── add_address.rs │ │ ├── connection_close.rs │ │ ├── crypto.rs │ │ ├── data_blocked.rs │ │ ├── datagram.rs │ │ ├── error.rs │ │ ├── handshake_done.rs │ │ ├── io.rs │ │ ├── max_data.rs │ │ ├── max_stream_data.rs │ │ ├── max_streams.rs │ │ ├── new_connection_id.rs │ │ ├── new_token.rs │ │ ├── padding.rs │ │ ├── path_challenge.rs │ │ ├── path_response.rs │ │ ├── ping.rs │ │ ├── punch_done.rs │ │ ├── punch_hello.rs │ │ ├── punch_me_now.rs │ │ ├── remove_address.rs │ │ ├── reset_stream.rs │ │ ├── retire_connection_id.rs │ │ ├── stop_sending.rs │ │ ├── stream.rs │ │ ├── stream_data_blocked.rs │ │ └── streams_blocked.rs │ ├── frame.rs │ ├── handshake.rs │ ├── lib.rs │ ├── metric.rs │ ├── net/ │ │ ├── addr.rs │ │ ├── nat.rs │ │ ├── route.rs │ │ └── tx.rs │ ├── net.rs │ ├── packet/ │ │ ├── decrypt.rs │ │ ├── encrypt.rs │ │ ├── error.rs │ │ ├── header/ │ │ │ ├── long.rs │ │ │ └── short.rs │ │ ├── header.rs │ │ ├── io.rs │ │ ├── keys.rs │ │ ├── number.rs │ │ ├── signal.rs │ │ ├── type/ │ │ │ ├── long/ │ │ │ │ └── v1.rs │ │ │ ├── long.rs │ │ │ └── short.rs │ │ └── type.rs │ ├── packet.rs │ ├── param/ │ │ ├── core.rs │ │ ├── error.rs │ │ ├── handy.rs │ │ ├── io.rs │ │ └── preferred_address.rs │ ├── param.rs │ ├── role.rs │ ├── sid/ │ │ ├── handy.rs │ │ ├── local_sid.rs │ │ └── remote_sid.rs │ ├── sid.rs │ ├── time.rs │ ├── token.rs │ ├── util/ │ │ ├── async_deque.rs │ │ ├── bound_queue.rs │ │ ├── data.rs │ │ ├── index_deque.rs │ │ ├── unique_id.rs │ │ └── wakers.rs │ ├── util.rs │ └── varint.rs ├── qcongestion/ │ ├── Cargo.toml │ └── src/ │ ├── algorithm/ │ │ ├── bbr/ │ │ │ ├── delivery_rate.rs │ │ │ ├── min_max.rs │ │ │ ├── model.rs │ │ │ ├── parameters.rs │ │ │ └── state.rs │ │ ├── bbr.rs │ │ └── new_reno.rs │ ├── algorithm.rs │ ├── congestion.rs │ ├── lib.rs │ ├── pacing.rs │ ├── packets.rs │ ├── rtt.rs │ └── status.rs ├── qconnection/ │ ├── Cargo.toml │ └── src/ │ ├── builder.rs │ ├── events.rs │ ├── handshake.rs │ ├── lib.rs │ ├── path/ │ │ ├── aa.rs │ │ ├── burst.rs │ │ ├── drive.rs │ │ ├── error.rs │ │ ├── paths.rs │ │ ├── util.rs │ │ └── validate.rs │ ├── path.rs │ ├── space/ │ │ ├── data.rs │ │ ├── handshake.rs │ │ └── initial.rs │ ├── space.rs │ ├── state.rs │ ├── termination.rs │ ├── tls/ │ │ ├── agent.rs │ │ └── client_auth.rs │ ├── tls.rs │ ├── traversal.rs │ └── tx.rs ├── qdatagram/ │ ├── Cargo.toml │ └── src/ │ ├── lib.rs │ ├── reader.rs │ └── writer.rs ├── qevent/ │ ├── Cargo.toml │ └── src/ │ ├── legacy/ │ │ ├── exporter.rs │ │ └── quic.rs │ ├── legacy.rs │ ├── lib.rs │ ├── loglevel.rs │ ├── macro_support.rs │ ├── macros.rs │ ├── packet.rs │ ├── quic/ │ │ ├── connectivity.rs │ │ ├── recovery.rs │ │ ├── security.rs │ │ └── transport.rs │ ├── quic.rs │ ├── telemetry/ │ │ ├── filter.rs │ │ ├── handy.rs │ │ ├── macro_support.rs │ │ └── macros.rs │ └── telemetry.rs ├── qinterface/ │ ├── Cargo.toml │ ├── examples/ │ │ └── interface-monitor.rs │ ├── src/ │ │ ├── bind_uri.rs │ │ ├── component/ │ │ │ ├── alive.rs │ │ │ ├── location.rs │ │ │ ├── route/ │ │ │ │ ├── handler.rs │ │ │ │ ├── packet.rs │ │ │ │ └── queue.rs │ │ │ └── route.rs │ │ ├── component.rs │ │ ├── device.rs │ │ ├── iface.rs │ │ ├── io/ │ │ │ ├── factory.rs │ │ │ └── handy.rs │ │ ├── io.rs │ │ ├── lib.rs │ │ └── manager.rs │ └── tests/ │ ├── auto_rebind.rs │ ├── common/ │ │ └── mod.rs │ ├── components.rs │ ├── lifecycle.rs │ ├── locations.rs │ └── rebind.rs ├── qmacro/ │ ├── Cargo.toml │ └── src/ │ ├── derive.rs │ └── lib.rs ├── qprotocol/ │ ├── Cargo.toml │ └── src/ │ ├── dns.rs │ ├── forward.rs │ ├── io.rs │ ├── lib.rs │ ├── quic.rs │ ├── stun/ │ │ └── msg.rs │ └── stun.rs ├── qrecovery/ │ ├── Cargo.toml │ └── src/ │ ├── crypto.rs │ ├── journal/ │ │ ├── rcvd.rs │ │ └── sent.rs │ ├── journal.rs │ ├── lib.rs │ ├── recv/ │ │ ├── incoming.rs │ │ ├── rcvbuf.rs │ │ ├── reader.rs │ │ └── recver.rs │ ├── recv.rs │ ├── reliable.rs │ ├── send/ │ │ ├── outgoing.rs │ │ ├── sender.rs │ │ ├── sndbuf.rs │ │ └── writer.rs │ ├── send.rs │ ├── streams/ │ │ ├── error.rs │ │ ├── io.rs │ │ ├── listener.rs │ │ └── raw.rs │ └── streams.rs ├── qresolve/ │ ├── Cargo.toml │ └── src/ │ └── lib.rs ├── qtraversal/ │ ├── Cargo.toml │ ├── README.md │ ├── examples/ │ │ ├── stun_client.rs │ │ └── stun_server.rs │ ├── src/ │ │ ├── addr.rs │ │ ├── future.rs │ │ ├── lib.rs │ │ ├── nat/ │ │ │ ├── client.rs │ │ │ ├── iface.rs │ │ │ ├── msg.rs │ │ │ ├── router.rs │ │ │ ├── server.rs │ │ │ └── tx.rs │ │ ├── nat.rs │ │ ├── packet.rs │ │ ├── punch/ │ │ │ ├── predictor.rs │ │ │ ├── puncher.rs │ │ │ ├── scheduler.rs │ │ │ └── tx.rs │ │ ├── punch.rs │ │ └── route.rs │ ├── tests/ │ │ └── detect.rs │ └── tools/ │ ├── build_nat.sh │ ├── clear_nat.sh │ ├── dockerfile │ └── run_stun.sh ├── qudp/ │ ├── Cargo.toml │ ├── examples/ │ │ ├── receive.rs │ │ └── send.rs │ └── src/ │ ├── lib.rs │ ├── unix.rs │ └── windows.rs └── tests/ └── keychain/ ├── gen_key.sh ├── localhost/ │ ├── ca.cert │ ├── ca.key │ ├── ca.srl │ ├── client.cert │ ├── client.key │ ├── server.cert │ └── server.key ├── quic.test.net/ │ ├── quic-test-net-ECC.crt │ ├── quic-test-net-ECC.key │ └── quic-test-net.csr ├── root/ │ ├── rootCA-ECC.crt │ ├── rootCA-ECC.key │ └── rootCA-ECC.srl └── start-quic-server.sh