- Notifications
You must be signed in to change notification settings - Fork0
License
Apache-2.0, MIT licenses found
Licenses found
sshyran/neqo
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
To run test HTTP/3 programs (neqo-client and neqo-server):
cargo build
./target/debug/neqo-server [::]:12345 --db ./test-fixture/db
./target/debug/neqo-client http://127.0.0.1:12345/
You can clone NSS (https://hg.mozilla.org/projects/nss) and NSPR(https://hg.mozilla.org/projects/nspr) into the same directory and export anenvironment variable calledNSS_DIR
pointing to NSS. This causes the build touse the existing NSS checkout. However, in order to run anything that dependson NSS, you need to set$\[DY]LD\_LIBRARY\_PATH
to point to$NSS_DIR/../dist/Debug/lib
.
Note: If you did not compile NSS separately, you need to have mercurial (hg), installed.NSS builds require gyp, and ninja (or ninja-build) to be present also.
TODO: What is the minimum Wireshark version needed?TODO: Above link may be incorrect, protocol now called TLS instead of SSL?
As documented in theenv_logger documentation,theRUST_LOG
environment variable can be used to selectively enable log messagesfrom Rust code. This works for Neqo's cmdline tools, as well as for when Neqo isincorporated into Gecko, althoughGecko needs to be built in debug mode.
Some examples:
RUST_LOG=neqo_transport::dump ./mach run
lists sent and received QUICpackets and their frames' contents only.RUST_LOG=neqo_transport=debug,neqo_http3=trace,info ./mach run
sets a'debug' log level for transport, 'trace' level for http3, and 'info' loglevel for all other Rust crates, both Neqo and others used by Gecko.RUST_LOG=neqo=trace,error ./mach run
setstrace
level for all modulesstarting with "neqo", and setserror
as minimum log level for otherunrelated Rust log messages.
In a checked-out copy of Gecko source, set paths for the four Neqo crates tolocal versions innetwerk/socket/neqo_glue/Cargo.toml
. For example, if Neqowas checked out to /home/alice/git/neqo, change:
neqo-http3 = { tag = "v0.1.7", git = "https://github.com/mozilla/neqo" }neqo-transport = { tag = "v0.1.7", git = "https://github.com/mozilla/neqo" }neqo-common = { tag = "v0.1.7", git = "https://github.com/mozilla/neqo" }
to
neqo-http3 = { path = "/home/alice/git/neqo/neqo-http3" }neqo-transport = { path = "/home/alice/git/neqo/neqo-transport" }neqo-common = { path = "/home/alice/git/neqo/neqo-common" }
and
[dependencies.neqo-crypto]tag = "v0.1.7"git = "https://github.com/mozilla/neqo"default-features = falsefeatures = ["gecko"]
to
[dependencies.neqo-crypto]path = "/home/alice/git/neqo/neqo-crypto"default-features = falsefeatures = ["gecko"]
Note: Using newer Neqo code with Gecko may also require changes (likely toneqo_glue
) ifsomething has changed.
Compile Gecko as usual with./mach build
.
About
Resources
License
Apache-2.0, MIT licenses found
Licenses found
Code of conduct
Stars
Watchers
Forks
Packages0
Languages
- Rust99.3%
- Other0.7%