Hello there everyone.

This is my first try at contributing to the OpenBSD ports tree.

wstunnel is useful in case you want to connect to your OpenBSD box, given that
you are behind some firewall that restricts traffic to certain ports - for
example, you can configure wstunnel to listen on :443 and connect to your box
via that port, to then route all your traffic to the wireguard interface of
your server. There are other usecases though, but this is my primary one.

Now, there are two patches included, even though wstunnel compiles on OpenBSD
amd64 just fine. I had to apply these because the original Cargo.toml
references a github repository as a crate: fastwebsockets. In this case, the
developer of wstunnel made changes to the original crate which they did not
(yet?) upstream, and their fork does not include any tags for the Cargo.toml
to reference. This is why I am patching Cargo.toml to reference the original
crate and then apply the changes of the wstunnel developer on top. I edited
crates.inc manually in this case to add fastwebsockets-0.8.0. Is there a better
way? `make modcargo-gen-crates` apparently only reads the unpatched, original
Cargo.toml.

Anyway, I'm glad to receive any feedback or comments. Thanks.

- Christoph


---
 infrastructure/db/user.list                   |   1 +
 net/wstunnel/Makefile                         |  29 +
 net/wstunnel/crates.inc                       | 348 +++++++++
 net/wstunnel/distinfo                         | 696 ++++++++++++++++++
 net/wstunnel/patches/patch-Cargo_toml         |  12 +
 ...rgo-crates_fastwebsockets-0_8_0_src_lib_rs |  46 ++
 net/wstunnel/pkg/DESCR                        |   1 +
 net/wstunnel/pkg/PLIST                        |   2 +
 net/wstunnel/pkg/wstunnel.rc                  |  11 +
 9 files changed, 1146 insertions(+)
 create mode 100644 net/wstunnel/Makefile
 create mode 100644 net/wstunnel/crates.inc
 create mode 100644 net/wstunnel/distinfo
 create mode 100644 net/wstunnel/patches/patch-Cargo_toml
 create mode 100644 
net/wstunnel/patches/patch-modcargo-crates_fastwebsockets-0_8_0_src_lib_rs
 create mode 100644 net/wstunnel/pkg/DESCR
 create mode 100644 net/wstunnel/pkg/PLIST
 create mode 100644 net/wstunnel/pkg/wstunnel.rc

diff --git a/infrastructure/db/user.list b/infrastructure/db/user.list
index 7509c635f57..8865080a044 100644
--- a/infrastructure/db/user.list
+++ b/infrastructure/db/user.list
@@ -409,3 +409,4 @@ id  user            group           port
 898 _icingadb          _icingadb       net/icinga/icingadb
 899 _openhab           _openhab        misc/openhab
 900 _z2m               _z2m            comms/zigbee2mqtt
+901 _wstunnel          _wstunnel       net/wstunnel
diff --git a/net/wstunnel/Makefile b/net/wstunnel/Makefile
new file mode 100644
index 00000000000..033ddb15444
--- /dev/null
+++ b/net/wstunnel/Makefile
@@ -0,0 +1,29 @@
+COMMENT =              tunnel all your traffic over Websocket or HTTP2
+
+GH_ACCOUNT =           erebe
+GH_PROJECT =           wstunnel
+GH_TAGNAME =           v10.1.7
+
+CATEGORIES =           net
+
+# 3BSD
+PERMIT_PACKAGE =       Yes
+
+WANTLIB +=             ${MODCARGO_WANTLIB}
+
+MODULES =              devel/cargo
+
+CONFIGURE_STYLE =      cargo
+
+SEPARATE_BUILD =       Yes
+
+MODCARGO_RUSTFLAGS =   -C debuginfo=0
+
+RELEASE_DIR =          ${MODCARGO_TARGET_DIR}/release
+
+do-install:
+       ${INSTALL_PROGRAM} ${RELEASE_DIR}/wstunnel ${PREFIX}/bin/
+
+.include "crates.inc"
+
+.include <bsd.port.mk>
diff --git a/net/wstunnel/crates.inc b/net/wstunnel/crates.inc
new file mode 100644
index 00000000000..8675e7a38b8
--- /dev/null
+++ b/net/wstunnel/crates.inc
@@ -0,0 +1,348 @@
+# run: make modcargo-gen-crates-licenses
+MODCARGO_CRATES +=     addr2line       0.24.2
+MODCARGO_CRATES +=     adler2  2.0.0
+MODCARGO_CRATES +=     ahash   0.8.11
+MODCARGO_CRATES +=     aho-corasick    1.1.3
+MODCARGO_CRATES +=     android-tzdata  0.1.1
+MODCARGO_CRATES +=     android_system_properties       0.1.5
+MODCARGO_CRATES +=     anstream        0.6.18
+MODCARGO_CRATES +=     anstyle 1.0.10
+MODCARGO_CRATES +=     anstyle-parse   0.2.6
+MODCARGO_CRATES +=     anstyle-query   1.1.2
+MODCARGO_CRATES +=     anstyle-wincon  3.0.6
+MODCARGO_CRATES +=     anyhow  1.0.94
+MODCARGO_CRATES +=     arc-swap        1.7.1
+MODCARGO_CRATES +=     asn1-rs 0.6.2
+MODCARGO_CRATES +=     asn1-rs-derive  0.5.1
+MODCARGO_CRATES +=     asn1-rs-impl    0.2.0
+MODCARGO_CRATES +=     async-channel   2.3.1
+MODCARGO_CRATES +=     async-trait     0.1.83
+MODCARGO_CRATES +=     atomic-waker    1.1.2
+MODCARGO_CRATES +=     autocfg 1.4.0
+MODCARGO_CRATES +=     aws-lc-rs       1.11.1
+MODCARGO_CRATES +=     aws-lc-sys      0.23.1
+MODCARGO_CRATES +=     backtrace       0.3.74
+MODCARGO_CRATES +=     base64  0.21.7
+MODCARGO_CRATES +=     base64  0.22.1
+MODCARGO_CRATES +=     bb8     0.9.0
+MODCARGO_CRATES +=     bindgen 0.69.5
+MODCARGO_CRATES +=     bitflags        1.3.2
+MODCARGO_CRATES +=     bitflags        2.6.0
+MODCARGO_CRATES +=     block-buffer    0.10.4
+MODCARGO_CRATES +=     bollard 0.17.1
+MODCARGO_CRATES +=     bollard-stubs   1.45.0-rc.26.0.1
+MODCARGO_CRATES +=     bumpalo 3.16.0
+MODCARGO_CRATES +=     byteorder       1.5.0
+MODCARGO_CRATES +=     bytes   1.9.0
+MODCARGO_CRATES +=     cc      1.2.3
+MODCARGO_CRATES +=     cexpr   0.6.0
+MODCARGO_CRATES +=     cfg-if  1.0.0
+MODCARGO_CRATES +=     cfg_aliases     0.2.1
+MODCARGO_CRATES +=     chrono  0.4.39
+MODCARGO_CRATES +=     clang-sys       1.8.1
+MODCARGO_CRATES +=     clap    4.5.23
+MODCARGO_CRATES +=     clap_builder    4.5.23
+MODCARGO_CRATES +=     clap_derive     4.5.18
+MODCARGO_CRATES +=     clap_lex        0.7.4
+MODCARGO_CRATES +=     cmake   0.1.52
+MODCARGO_CRATES +=     colorchoice     1.0.3
+MODCARGO_CRATES +=     concurrent-queue        2.5.0
+MODCARGO_CRATES +=     core-foundation 0.9.4
+MODCARGO_CRATES +=     core-foundation 0.10.0
+MODCARGO_CRATES +=     core-foundation-sys     0.8.7
+MODCARGO_CRATES +=     cpufeatures     0.2.16
+MODCARGO_CRATES +=     crossbeam-utils 0.8.20
+MODCARGO_CRATES +=     crossterm       0.28.1
+MODCARGO_CRATES +=     crossterm_winapi        0.9.1
+MODCARGO_CRATES +=     crypto-common   0.1.6
+MODCARGO_CRATES +=     darling 0.20.10
+MODCARGO_CRATES +=     darling_core    0.20.10
+MODCARGO_CRATES +=     darling_macro   0.20.10
+MODCARGO_CRATES +=     data-encoding   2.6.0
+MODCARGO_CRATES +=     der-parser      9.0.0
+MODCARGO_CRATES +=     deranged        0.3.11
+MODCARGO_CRATES +=     digest  0.10.7
+MODCARGO_CRATES +=     displaydoc      0.2.5
+MODCARGO_CRATES +=     docker_credential       1.3.1
+MODCARGO_CRATES +=     dunce   1.0.5
+MODCARGO_CRATES +=     either  1.13.0
+MODCARGO_CRATES +=     enum-as-inner   0.6.1
+MODCARGO_CRATES +=     equivalent      1.0.1
+MODCARGO_CRATES +=     errno   0.3.10
+MODCARGO_CRATES +=     etcetera        0.8.0
+MODCARGO_CRATES +=     event-listener  5.3.1
+MODCARGO_CRATES +=     event-listener-strategy 0.5.3
+MODCARGO_CRATES        +=      fastwebsockets  0.8.0
+MODCARGO_CRATES +=     fast-socks5     0.9.6
+MODCARGO_CRATES +=     fdlimit 0.3.0
+MODCARGO_CRATES +=     filetime        0.2.25
+MODCARGO_CRATES +=     fnv     1.0.7
+MODCARGO_CRATES +=     form_urlencoded 1.2.1
+MODCARGO_CRATES +=     fs_extra        1.3.0
+MODCARGO_CRATES +=     fsevent-sys     4.1.0
+MODCARGO_CRATES +=     futures 0.3.31
+MODCARGO_CRATES +=     futures-channel 0.3.31
+MODCARGO_CRATES +=     futures-core    0.3.31
+MODCARGO_CRATES +=     futures-executor        0.3.31
+MODCARGO_CRATES +=     futures-io      0.3.31
+MODCARGO_CRATES +=     futures-macro   0.3.31
+MODCARGO_CRATES +=     futures-sink    0.3.31
+MODCARGO_CRATES +=     futures-task    0.3.31
+MODCARGO_CRATES +=     futures-util    0.3.31
+MODCARGO_CRATES +=     generic-array   0.14.7
+MODCARGO_CRATES +=     getrandom       0.2.15
+MODCARGO_CRATES +=     gimli   0.31.1
+MODCARGO_CRATES +=     glob    0.3.1
+MODCARGO_CRATES +=     h2      0.3.26
+MODCARGO_CRATES +=     h2      0.4.7
+MODCARGO_CRATES +=     hashbrown       0.12.3
+MODCARGO_CRATES +=     hashbrown       0.15.2
+MODCARGO_CRATES +=     heck    0.5.0
+MODCARGO_CRATES +=     hex     0.4.3
+MODCARGO_CRATES +=     hickory-proto   0.24.2
+MODCARGO_CRATES +=     hickory-resolver        0.24.2
+MODCARGO_CRATES +=     home    0.5.9
+MODCARGO_CRATES +=     hostname        0.3.1
+MODCARGO_CRATES +=     http    0.2.12
+MODCARGO_CRATES +=     http    1.2.0
+MODCARGO_CRATES +=     http-body       1.0.1
+MODCARGO_CRATES +=     http-body-util  0.1.2
+MODCARGO_CRATES +=     httparse        1.9.5
+MODCARGO_CRATES +=     httpdate        1.0.3
+MODCARGO_CRATES +=     hyper   1.5.1
+MODCARGO_CRATES +=     hyper-named-pipe        0.1.0
+MODCARGO_CRATES +=     hyper-rustls    0.27.3
+MODCARGO_CRATES +=     hyper-util      0.1.10
+MODCARGO_CRATES +=     hyperlocal      0.9.1
+MODCARGO_CRATES +=     iana-time-zone  0.1.61
+MODCARGO_CRATES +=     iana-time-zone-haiku    0.1.2
+MODCARGO_CRATES +=     icu_collections 1.5.0
+MODCARGO_CRATES +=     icu_locid       1.5.0
+MODCARGO_CRATES +=     icu_locid_transform     1.5.0
+MODCARGO_CRATES +=     icu_locid_transform_data        1.5.0
+MODCARGO_CRATES +=     icu_normalizer  1.5.0
+MODCARGO_CRATES +=     icu_normalizer_data     1.5.0
+MODCARGO_CRATES +=     icu_properties  1.5.1
+MODCARGO_CRATES +=     icu_properties_data     1.5.0
+MODCARGO_CRATES +=     icu_provider    1.5.0
+MODCARGO_CRATES +=     icu_provider_macros     1.5.0
+MODCARGO_CRATES +=     ident_case      1.0.1
+MODCARGO_CRATES +=     idna    1.0.3
+MODCARGO_CRATES +=     idna_adapter    1.2.0
+MODCARGO_CRATES +=     indexmap        1.9.3
+MODCARGO_CRATES +=     indexmap        2.7.0
+MODCARGO_CRATES +=     inotify 0.10.2
+MODCARGO_CRATES +=     inotify-sys     0.1.5
+MODCARGO_CRATES +=     instant 0.1.13
+MODCARGO_CRATES +=     ipconfig        0.3.2
+MODCARGO_CRATES +=     ipnet   2.10.1
+MODCARGO_CRATES +=     is_terminal_polyfill    1.70.1
+MODCARGO_CRATES +=     itertools       0.12.1
+MODCARGO_CRATES +=     itoa    1.0.14
+MODCARGO_CRATES +=     jobserver       0.1.32
+MODCARGO_CRATES +=     js-sys  0.3.76
+MODCARGO_CRATES +=     jsonwebtoken    9.3.0
+MODCARGO_CRATES +=     kqueue  1.0.8
+MODCARGO_CRATES +=     kqueue-sys      1.0.4
+MODCARGO_CRATES +=     lazy_static     1.5.0
+MODCARGO_CRATES +=     lazycell        1.3.0
+MODCARGO_CRATES +=     libc    0.2.168
+MODCARGO_CRATES +=     libloading      0.8.6
+MODCARGO_CRATES +=     libredox        0.1.3
+MODCARGO_CRATES +=     linked-hash-map 0.5.6
+MODCARGO_CRATES +=     linux-raw-sys   0.4.14
+MODCARGO_CRATES +=     litemap 0.7.4
+MODCARGO_CRATES +=     lock_api        0.4.12
+MODCARGO_CRATES +=     log     0.4.22
+MODCARGO_CRATES +=     lru-cache       0.1.2
+MODCARGO_CRATES +=     match_cfg       0.1.0
+MODCARGO_CRATES +=     matchers        0.1.0
+MODCARGO_CRATES +=     memchr  2.7.4
+MODCARGO_CRATES +=     memoffset       0.9.1
+MODCARGO_CRATES +=     minimal-lexical 0.2.1
+MODCARGO_CRATES +=     miniz_oxide     0.8.0
+MODCARGO_CRATES +=     mio     1.0.3
+MODCARGO_CRATES +=     nix     0.29.0
+MODCARGO_CRATES +=     nom     7.1.3
+MODCARGO_CRATES +=     notify  7.0.0
+MODCARGO_CRATES +=     notify-types    1.0.0
+MODCARGO_CRATES +=     nu-ansi-term    0.46.0
+MODCARGO_CRATES +=     num-bigint      0.4.6
+MODCARGO_CRATES +=     num-conv        0.1.0
+MODCARGO_CRATES +=     num-integer     0.1.46
+MODCARGO_CRATES +=     num-traits      0.2.19
+MODCARGO_CRATES +=     num_threads     0.1.7
+MODCARGO_CRATES +=     object  0.36.5
+MODCARGO_CRATES +=     oid-registry    0.7.1
+MODCARGO_CRATES +=     once_cell       1.20.2
+MODCARGO_CRATES +=     openssl-probe   0.1.5
+MODCARGO_CRATES +=     overload        0.1.1
+MODCARGO_CRATES +=     parking 2.2.1
+MODCARGO_CRATES +=     parking_lot     0.12.3
+MODCARGO_CRATES +=     parking_lot_core        0.9.10
+MODCARGO_CRATES +=     parse-display   0.9.1
+MODCARGO_CRATES +=     parse-display-derive    0.9.1
+MODCARGO_CRATES +=     paste   1.0.15
+MODCARGO_CRATES +=     percent-encoding        2.3.1
+MODCARGO_CRATES +=     pin-project     1.1.7
+MODCARGO_CRATES +=     pin-project-internal    1.1.7
+MODCARGO_CRATES +=     pin-project-lite        0.2.15
+MODCARGO_CRATES +=     pin-utils       0.1.0
+MODCARGO_CRATES +=     powerfmt        0.2.0
+MODCARGO_CRATES +=     ppp     2.2.0
+MODCARGO_CRATES +=     ppv-lite86      0.2.20
+MODCARGO_CRATES +=     prettyplease    0.2.25
+MODCARGO_CRATES +=     proc-macro2     1.0.92
+MODCARGO_CRATES +=     quick-error     1.2.3
+MODCARGO_CRATES +=     quote   1.0.37
+MODCARGO_CRATES +=     rand    0.8.5
+MODCARGO_CRATES +=     rand_chacha     0.3.1
+MODCARGO_CRATES +=     rand_core       0.6.4
+MODCARGO_CRATES +=     rcgen   0.13.1
+MODCARGO_CRATES +=     redox_syscall   0.3.5
+MODCARGO_CRATES +=     redox_syscall   0.5.7
+MODCARGO_CRATES +=     regex   1.11.1
+MODCARGO_CRATES +=     regex-automata  0.1.10
+MODCARGO_CRATES +=     regex-automata  0.4.9
+MODCARGO_CRATES +=     regex-syntax    0.6.29
+MODCARGO_CRATES +=     regex-syntax    0.8.5
+MODCARGO_CRATES +=     resolv-conf     0.7.0
+MODCARGO_CRATES +=     ring    0.17.8
+MODCARGO_CRATES +=     rustc-demangle  0.1.24
+MODCARGO_CRATES +=     rustc-hash      1.1.0
+MODCARGO_CRATES +=     rusticata-macros        4.1.0
+MODCARGO_CRATES +=     rustix  0.38.42
+MODCARGO_CRATES +=     rustls  0.21.12
+MODCARGO_CRATES +=     rustls  0.23.19
+MODCARGO_CRATES +=     rustls-native-certs     0.6.3
+MODCARGO_CRATES +=     rustls-native-certs     0.7.3
+MODCARGO_CRATES +=     rustls-native-certs     0.8.1
+MODCARGO_CRATES +=     rustls-pemfile  1.0.4
+MODCARGO_CRATES +=     rustls-pemfile  2.2.0
+MODCARGO_CRATES +=     rustls-pki-types        1.10.0
+MODCARGO_CRATES +=     rustls-webpki   0.101.7
+MODCARGO_CRATES +=     rustls-webpki   0.102.8
+MODCARGO_CRATES +=     ryu     1.0.18
+MODCARGO_CRATES +=     same-file       1.0.6
+MODCARGO_CRATES +=     schannel        0.1.27
+MODCARGO_CRATES +=     scopeguard      1.2.0
+MODCARGO_CRATES +=     sct     0.7.1
+MODCARGO_CRATES +=     security-framework      2.11.1
+MODCARGO_CRATES +=     security-framework      3.0.1
+MODCARGO_CRATES +=     security-framework-sys  2.12.1
+MODCARGO_CRATES +=     serde   1.0.216
+MODCARGO_CRATES +=     serde_derive    1.0.216
+MODCARGO_CRATES +=     serde_json      1.0.133
+MODCARGO_CRATES +=     serde_regex     1.1.0
+MODCARGO_CRATES +=     serde_repr      0.1.19
+MODCARGO_CRATES +=     serde_urlencoded        0.7.1
+MODCARGO_CRATES +=     serde_with      3.11.0
+MODCARGO_CRATES +=     serde_with_macros       3.11.0
+MODCARGO_CRATES +=     serde_yaml      0.9.34+deprecated
+MODCARGO_CRATES +=     sha1    0.10.6
+MODCARGO_CRATES +=     sharded-slab    0.1.7
+MODCARGO_CRATES +=     shlex   1.3.0
+MODCARGO_CRATES +=     signal-hook     0.3.17
+MODCARGO_CRATES +=     signal-hook-mio 0.2.4
+MODCARGO_CRATES +=     signal-hook-registry    1.4.2
+MODCARGO_CRATES +=     simdutf8        0.1.5
+MODCARGO_CRATES +=     slab    0.4.9
+MODCARGO_CRATES +=     smallvec        1.13.2
+MODCARGO_CRATES +=     socket2 0.5.8
+MODCARGO_CRATES +=     spin    0.9.8
+MODCARGO_CRATES +=     stable_deref_trait      1.2.0
+MODCARGO_CRATES +=     strsim  0.11.1
+MODCARGO_CRATES +=     structmeta      0.3.0
+MODCARGO_CRATES +=     structmeta-derive       0.3.0
+MODCARGO_CRATES +=     subtle  2.6.1
+MODCARGO_CRATES +=     syn     2.0.90
+MODCARGO_CRATES +=     synstructure    0.13.1
+MODCARGO_CRATES +=     testcontainers  0.23.1
+MODCARGO_CRATES +=     thiserror       1.0.69
+MODCARGO_CRATES +=     thiserror-impl  1.0.69
+MODCARGO_CRATES +=     thread_local    1.1.8
+MODCARGO_CRATES +=     time    0.3.37
+MODCARGO_CRATES +=     time-core       0.1.2
+MODCARGO_CRATES +=     time-macros     0.2.19
+MODCARGO_CRATES +=     tinystr 0.7.6
+MODCARGO_CRATES +=     tinyvec 1.8.0
+MODCARGO_CRATES +=     tinyvec_macros  0.1.1
+MODCARGO_CRATES +=     tokio   1.42.0
+MODCARGO_CRATES +=     tokio-fd        0.3.0
+MODCARGO_CRATES +=     tokio-macros    2.4.0
+MODCARGO_CRATES +=     tokio-rustls    0.24.1
+MODCARGO_CRATES +=     tokio-rustls    0.26.1
+MODCARGO_CRATES +=     tokio-stream    0.1.17
+MODCARGO_CRATES +=     tokio-tar       0.3.1
+MODCARGO_CRATES +=     tokio-util      0.7.13
+MODCARGO_CRATES +=     tower-service   0.3.3
+MODCARGO_CRATES +=     tracing 0.1.41
+MODCARGO_CRATES +=     tracing-attributes      0.1.28
+MODCARGO_CRATES +=     tracing-core    0.1.33
+MODCARGO_CRATES +=     tracing-log     0.2.0
+MODCARGO_CRATES +=     tracing-subscriber      0.3.19
+MODCARGO_CRATES +=     try-lock        0.2.5
+MODCARGO_CRATES +=     typenum 1.17.0
+MODCARGO_CRATES +=     unicode-ident   1.0.14
+MODCARGO_CRATES +=     unsafe-libyaml  0.2.11
+MODCARGO_CRATES +=     untrusted       0.7.1
+MODCARGO_CRATES +=     untrusted       0.9.0
+MODCARGO_CRATES +=     url     2.5.4
+MODCARGO_CRATES +=     urlencoding     2.1.3
+MODCARGO_CRATES +=     utf-8   0.7.6
+MODCARGO_CRATES +=     utf16_iter      1.0.5
+MODCARGO_CRATES +=     utf8_iter       1.0.4
+MODCARGO_CRATES +=     utf8parse       0.2.2
+MODCARGO_CRATES +=     uuid    1.11.0
+MODCARGO_CRATES +=     valuable        0.1.0
+MODCARGO_CRATES +=     version_check   0.9.5
+MODCARGO_CRATES +=     walkdir 2.5.0
+MODCARGO_CRATES +=     want    0.3.1
+MODCARGO_CRATES +=     wasi    0.11.0+wasi-snapshot-preview1
+MODCARGO_CRATES +=     wasm-bindgen    0.2.99
+MODCARGO_CRATES +=     wasm-bindgen-backend    0.2.99
+MODCARGO_CRATES +=     wasm-bindgen-macro      0.2.99
+MODCARGO_CRATES +=     wasm-bindgen-macro-support      0.2.99
+MODCARGO_CRATES +=     wasm-bindgen-shared     0.2.99
+MODCARGO_CRATES +=     which   4.4.2
+MODCARGO_CRATES +=     widestring      1.1.0
+MODCARGO_CRATES +=     winapi  0.3.9
+MODCARGO_CRATES +=     winapi-i686-pc-windows-gnu      0.4.0
+MODCARGO_CRATES +=     winapi-util     0.1.9
+MODCARGO_CRATES +=     winapi-x86_64-pc-windows-gnu    0.4.0
+MODCARGO_CRATES +=     windows-core    0.52.0
+MODCARGO_CRATES +=     windows-sys     0.48.0
+MODCARGO_CRATES +=     windows-sys     0.52.0
+MODCARGO_CRATES +=     windows-sys     0.59.0
+MODCARGO_CRATES +=     windows-targets 0.48.5
+MODCARGO_CRATES +=     windows-targets 0.52.6
+MODCARGO_CRATES +=     windows_aarch64_gnullvm 0.48.5
+MODCARGO_CRATES +=     windows_aarch64_gnullvm 0.52.6
+MODCARGO_CRATES +=     windows_aarch64_msvc    0.48.5
+MODCARGO_CRATES +=     windows_aarch64_msvc    0.52.6
+MODCARGO_CRATES +=     windows_i686_gnu        0.48.5
+MODCARGO_CRATES +=     windows_i686_gnu        0.52.6
+MODCARGO_CRATES +=     windows_i686_gnullvm    0.52.6
+MODCARGO_CRATES +=     windows_i686_msvc       0.48.5
+MODCARGO_CRATES +=     windows_i686_msvc       0.52.6
+MODCARGO_CRATES +=     windows_x86_64_gnu      0.48.5
+MODCARGO_CRATES +=     windows_x86_64_gnu      0.52.6
+MODCARGO_CRATES +=     windows_x86_64_gnullvm  0.48.5
+MODCARGO_CRATES +=     windows_x86_64_gnullvm  0.52.6
+MODCARGO_CRATES +=     windows_x86_64_msvc     0.48.5
+MODCARGO_CRATES +=     windows_x86_64_msvc     0.52.6
+MODCARGO_CRATES +=     winreg  0.50.0
+MODCARGO_CRATES +=     write16 1.0.0
+MODCARGO_CRATES +=     writeable       0.5.5
+MODCARGO_CRATES +=     x509-parser     0.16.0
+MODCARGO_CRATES +=     xattr   1.3.1
+MODCARGO_CRATES +=     yasna   0.5.2
+MODCARGO_CRATES +=     yoke    0.7.5
+MODCARGO_CRATES +=     yoke-derive     0.7.5
+MODCARGO_CRATES +=     zerocopy        0.7.35
+MODCARGO_CRATES +=     zerocopy-derive 0.7.35
+MODCARGO_CRATES +=     zerofrom        0.1.5
+MODCARGO_CRATES +=     zerofrom-derive 0.1.5
+MODCARGO_CRATES +=     zeroize 1.8.1
+MODCARGO_CRATES +=     zerovec 0.10.4
+MODCARGO_CRATES +=     zerovec-derive  0.10.3
diff --git a/net/wstunnel/distinfo b/net/wstunnel/distinfo
new file mode 100644
index 00000000000..b5c876a5c90
--- /dev/null
+++ b/net/wstunnel/distinfo
@@ -0,0 +1,696 @@
+SHA256 (cargo/addr2line-0.24.2.tar.gz) = 
374nflajdgAIdwkNqDdmC0QnqtUw4wKNROC//k+JocE=
+SHA256 (cargo/adler2-2.0.0.tar.gz) = 
USdh4LsleN1zgMa6qg9M4D6E+V6WAjHR3si/TX1uJic=
+SHA256 (cargo/ahash-0.8.11.tar.gz) = 
6J2oQagEGKmzkeuuoX9cES/6qpb2IdLChbUXTadrkBE=
+SHA256 (cargo/aho-corasick-1.1.3.tar.gz) = 
jmDTQw06aUeK0Jk/GSONLfl8UHAJpSs8EK3c1/a8uRY=
+SHA256 (cargo/android-tzdata-0.1.1.tar.gz) = 
6ZmUGyNPMTGwC8E8ItBujF/3JtG2MYrH6ydpl7u0/vA=
+SHA256 (cargo/android_system_properties-0.1.5.tar.gz) = 
gZ5yGdvUEEOsJ5sZgw8u/IlxVkkNf9bqkWcgEX7mYxE=
+SHA256 (cargo/anstream-0.6.18.tar.gz) = 
isxTaZgRlgBiKOKICfdhh1wDJyEKiR6UH0xoOzqZUps=
+SHA256 (cargo/anstyle-1.0.10.tar.gz) = 
Vcw7afFnoe8uFhQ5qpiu2U5gKOX5pZvppv+0eu8WUfk=
+SHA256 (cargo/anstyle-parse-0.2.6.tar.gz) = 
Oy0WUHZigXpqIKnqkt9mUu5PlPkUWJN31p87IbxXmKk=
+SHA256 (cargo/anstyle-query-1.1.2.tar.gz) = 
eZR6839Bd8/q0REAE9Z4kFw3UBkU+6Dv6oNMP+mo1gw=
+SHA256 (cargo/anstyle-wincon-3.0.6.tar.gz) = 
IQnbzg5yvj7AC+0m5qdHnKOErSJu/dZtuPouOjjIMSU=
+SHA256 (cargo/anyhow-1.0.94.tar.gz) = 
wf0DoCjvOLoidtzn4z/NY2nBWKG8oXlGxLG3AYkcH/c=
+SHA256 (cargo/arc-swap-1.7.1.tar.gz) = 
aff4w5BrYrdUzVMmBHiUMWAh3P5aGUyOpSvdlJNKNFc=
+SHA256 (cargo/asn1-rs-0.6.2.tar.gz) = 
VJPDvtus9/1zgsY0a71maH0Su6rTqJotLDA+5s8gsEg=
+SHA256 (cargo/asn1-rs-derive-0.5.1.tar.gz) = 
llwtM+U8trJn4UikywdgvAH0kEwc1LtAAqCFuwFtFJA=
+SHA256 (cargo/asn1-rs-impl-0.2.0.tar.gz) = 
exgFDCzW/obDp2WE714LryhtA4zaID62Ij3yzEE1Zfc=
+SHA256 (cargo/async-channel-2.3.1.tar.gz) = 
ibR4ALC+d1ktoK/UJcwDRoBShEr/M7hOM8xpb2Tne2o=
+SHA256 (cargo/async-trait-0.1.83.tar.gz) = 
chyufeXDT7sqzSfiHm0s97iG3ODCc4jUbE5sR+pDGN0=
+SHA256 (cargo/atomic-waker-1.1.2.tar.gz) = 
FQW9XT0RaHLnJxptThbYHQyFcIdsjeaAk6CawmnYqsA=
+SHA256 (cargo/autocfg-1.4.0.tar.gz) = 
rOULrejmI0qhQNmi9VK77h2001P2m4IXvFA0kPwanyY=
+SHA256 (cargo/aws-lc-rs-1.11.1.tar.gz) = 
9Hu4zBa2adJn7sz1ha6gd9CIL0d3scH3QCF4hdbm5aM=
+SHA256 (cargo/aws-lc-sys-0.23.1.tar.gz) = 
ohAd84EyJ7uqqgsEzWHFNMeVSyK9aNOZtEC+k33GP/c=
+SHA256 (cargo/backtrace-0.3.74.tar.gz) = 
jYLLMyzfrtF64jWmOEOKxNSDmRPMKvWFw8Z0bo+L7ho=
+SHA256 (cargo/base64-0.21.7.tar.gz) = 
nSl96xkluJ8szBPXY1+gcU8SyHrc4cdTVrOcqbcXhWc=
+SHA256 (cargo/base64-0.22.1.tar.gz) = 
crMlTxYlGoOBqhLkDjxNLwGZ+MZQj77LnZH1deD7uMY=
+SHA256 (cargo/bb8-0.9.0.tar.gz) = IS2LjhoidD2SQVdca6giz5yP7zR3HIarfkd6T7/SVOU=
+SHA256 (cargo/bindgen-0.69.5.tar.gz) = 
JxODxnzKv/tzgXI96gZypnPykjBPy0XAHMZIx6jVgIg=
+SHA256 (cargo/bitflags-1.3.2.tar.gz) = 
vvONRRY8Lx3eCUp9/TPM9ZXJKQXI+PT9wY0G+xA3cYo=
+SHA256 (cargo/bitflags-2.6.0.tar.gz) = 
sEj7Y/2LWSP8WqezQNjhVq7H7ALwx4+opt3CYT9vcd4=
+SHA256 (cargo/block-buffer-0.10.4.tar.gz) = 
MHjHYpti0/BDlRf6OUmWrKzFy8kcWiDYxljner1QOnE=
+SHA256 (cargo/bollard-0.17.1.tar.gz) = 
1BcRrUb9pHzXAfaQjlnRvWuaK3RkwNCuq5XG03CW/4o=
+SHA256 (cargo/bollard-stubs-1.45.0-rc.26.0.1.tar.gz) = 
bXxUFeOmvG0+me/2Jo5Ij9TuJeeyjBDwj6Z2C9neFuQ=
+SHA256 (cargo/bumpalo-3.16.0.tar.gz) = 
eSlnFhcYgJQ7hHC1+NA6pV6y5kWkh0vbsorbSRYuASw=
+SHA256 (cargo/byteorder-1.5.0.tar.gz) = 
H9DyWEFG9vLvSAhQUIhqzzU77/cwXr0a5pUA4nxn9ks=
+SHA256 (cargo/bytes-1.9.0.tar.gz) = 
MlkY1v4y8jsZh4/ks0eUrkH8Gd2+U7EFcaSHTUT/05s=
+SHA256 (cargo/cc-1.2.3.tar.gz) = J/ZXZHvP9TlL9WxzF2Zbv3kKE3pQ6qpca/u54npRjy0=
+SHA256 (cargo/cexpr-0.6.0.tar.gz) = 
b6w4epi7fDcpIFfP/FbWLstimQACZAJjOukWDfk6h2Y=
+SHA256 (cargo/cfg-if-1.0.0.tar.gz) = 
uvHeQzl2FYi8Bhnjy8ASDuWC67dLU7Tvv3kRe9LaQP0=
+SHA256 (cargo/cfg_aliases-0.2.1.tar.gz) = 
YTr+R/zV+sfM8duTurywgsWZTZlvILixWfKtFljrVyQ=
+SHA256 (cargo/chrono-0.4.39.tar.gz) = 
fjbMnUFogdLiT5qWO+X7HNkJZkGayEQnQWHRBIiz6CU=
+SHA256 (cargo/clang-sys-1.8.1.tar.gz) = 
CwI5R4EXWMl8Wb+dHBiP1hmtRxjcqnZ5R98crbFPOfQ=
+SHA256 (cargo/clap-4.5.23.tar.gz) = 
MTXn7C73sQxu2JUPD3ku2W7gk/oIhgjxx25WlyJwDIQ=
+SHA256 (cargo/clap_builder-4.5.23.tar.gz) = 
MFgvxjIzDfK9Jod73gwfRHDVfFgrvAcDdq/NBNjLSDg=
+SHA256 (cargo/clap_derive-4.5.18.tar.gz) = 
Ssagx7Gp6aUYY2H2ffobiCE1cvQn+5qwOO+yvYxYLas=
+SHA256 (cargo/clap_lex-0.7.4.tar.gz) = 
9GrRRHmiUQPyg8DxAAWWHPCG2NxCIFu0TEasVjR13KY=
+SHA256 (cargo/cmake-0.1.52.tar.gz) = 
xoLCI2d+Dltrf2OmS5NRhEw/GxZ4pot+5hfjD7CCYg4=
+SHA256 (cargo/colorchoice-1.0.3.tar.gz) = 
W2PKqaqTl+LZSAqbE2c4VseNisEjKIUmw314OfKoaZA=
+SHA256 (cargo/concurrent-queue-2.5.0.tar.gz) = 
TKAZeu4m0a43RF7lMv785DJR0kzHwWZ5n01GgX8dOXM=
+SHA256 (cargo/core-foundation-0.10.0.tar.gz) = 
tVJx5cjEeK0/OK0k7zSSMJHgVISSombRmzwLTYJXTGM=
+SHA256 (cargo/core-foundation-0.9.4.tar.gz) = 
keGV4JGpPEb3EC7HgYoqo5Th4XccOrSCWWP6A+Ra+48=
+SHA256 (cargo/core-foundation-sys-0.8.7.tar.gz) = 
dzZIuU0OXWIPZPKAd3RFdA5h/nAQJQh+yLV/RceRiIs=
+SHA256 (cargo/cpufeatures-0.2.16.tar.gz) = 
FrgCJQl/Llrk5xed0iZoJGSPPi9J2RNNWEt2OJ0xxMM=
+SHA256 (cargo/crossbeam-utils-0.8.20.tar.gz) = 
IuyZVFuw7Q6nu5uOHpEi6jhv+KSMCSLkPzbUWrCeDoA=
+SHA256 (cargo/crossterm-0.28.1.tar.gz) = 
gp2VWguzgO8XimQLkXeeOYfaOMmuoTOyBhTP7YzeqcY=
+SHA256 (cargo/crossterm_winapi-0.9.1.tar.gz) = 
rN18YqNmXH9oMKUWNdmsmyPtOFeX9wqDu4uv6cVyqys=
+SHA256 (cargo/crypto-common-0.1.6.tar.gz) = 
G/sSUC8/xGzKG7Uawo351hjYE83D0vJbn+d1o0rya7M=
+SHA256 (cargo/darling-0.20.10.tar.gz) = 
b2O4bIqIJqSbjCHwii0HM47sjZAFQPhjDcdihL6AKYk=
+SHA256 (cargo/darling_core-0.20.10.tar.gz) = 
lRM4YagDKq6ggocQMvWBXrnpjO8D+pFqtFAFE5lN+eU=
+SHA256 (cargo/darling_macro-0.20.10.tar.gz) = 
0zaipRT2zMyqPgmwLUHTUzDAfd8DpiFl/OwQu1YceAY=
+SHA256 (cargo/data-encoding-2.6.0.tar.gz) = 
6FZpeUKc9ptJpcdAxgeREI6GRA6L4Um76k/lTSwy1uI=
+SHA256 (cargo/der-parser-9.0.0.tar.gz) = 
XNClxkNolia+whPE2L1NlqzI/9tK1LtrwWq/J9X0tVM=
+SHA256 (cargo/deranged-0.3.11.tar.gz) = 
tCtvoEpEC0lciwTQ5xtwfFhfg8ucsoz4zQ2XbDFeMbQ=
+SHA256 (cargo/digest-0.10.7.tar.gz) = 
ntmigfe8m3V25hRoumFaZqXIz9/0JCCnCqgnAaOx4pI=
+SHA256 (cargo/displaydoc-0.2.5.tar.gz) = 
lzacu8BBvDZpSbx000ZY1s2lYhA5cxxjEFIYkqOiCuA=
+SHA256 (cargo/docker_credential-1.3.1.tar.gz) = 
MZUfSVVuNNkO0oNC4d9+HLeiKcTKsK7MYntdke3UHQc=
+SHA256 (cargo/dunce-1.0.5.tar.gz) = 
knc1BNWMCT9t4kWa9K8z+qUYwTRR648rVpjtPTbnyBM=
+SHA256 (cargo/either-1.13.0.tar.gz) = 
YLGvHCIIVbbOrAJdP27N0rfEiUv+nNm9pPu0vHwNTPA=
+SHA256 (cargo/enum-as-inner-0.6.1.tar.gz) = 
oeaiZcZJ8/WXm2AdJvHQWtoRZDTId0HJSTy1Yhj3bLw=
+SHA256 (cargo/equivalent-1.0.1.tar.gz) = 
VEOAfW3/aTc9Qzq571N4rY31DKYpjK8V3m5S4kqvVNU=
+SHA256 (cargo/errno-0.3.10.tar.gz) = 
M9hSy5uGnCqbPfL3GjB0gX8B4YRPg5oUT1/O8Fmk610=
+SHA256 (cargo/etcetera-0.8.0.tar.gz) = 
E20bUoOhq3e9kldCf/0J2GZ87QVwtvk4lCvHVo7VuUM=
+SHA256 (cargo/event-listener-5.3.1.tar.gz) = 
YDK+m9JwI6dxcBzEn58FPHUQVfce+y4K5cFYCQk2dbo=
+SHA256 (cargo/event-listener-strategy-0.5.3.tar.gz) = 
PD5ODdNnPBE5vwQfMAiBbZzylGu/rClFwJ5SO417BbI=
+SHA256 (cargo/fast-socks5-0.9.6.tar.gz) = 
+J821O4SNw0w1XsWx+GQlQoakW59u7X9WkEvXvkT/oQ=
+SHA256 (cargo/fastwebsockets-0.8.0.tar.gz) = 
JtoMe1zvRcUhpvnN//3+tsn1gE+6wzLeta4lRjTHpr4=
+SHA256 (cargo/fdlimit-0.3.0.tar.gz) = 
4YL328Lvc9nvZzUcX7vqCEcpxINi086d1Ewo4y4nf+U=
+SHA256 (cargo/filetime-0.2.25.tar.gz) = 
NcBSLpgeaMv6jD+XhEGl80swuW4UazPNM1kXa1D+hYY=
+SHA256 (cargo/fnv-1.0.7.tar.gz) = P57skY0/JAad7LmvFVTK18iA4tokqa/YisoABTGrgsE=
+SHA256 (cargo/form_urlencoded-1.2.1.tar.gz) = 
4TYkwmJ1ZO/M9JNChL3ZjLqhTnmwtaFBIY5QezqCNFY=
+SHA256 (cargo/fs_extra-1.3.0.tar.gz) = 
QnA3BrcWw3+Wp3rqgwOSrSMfRMnppnhy+lVIcH4RsRw=
+SHA256 (cargo/fsevent-sys-4.1.0.tar.gz) = 
du56AtpNIxZQx86jE0m4ib4vRd2z7zAy0uyBhfYxP9I=
+SHA256 (cargo/futures-0.3.31.tar.gz) = 
ZbwHsai8fIXF8uEQxHbHOJtFVLpyr1fYRF6mOldrCHY=
+SHA256 (cargo/futures-channel-0.3.31.tar.gz) = 
Lf8Vv3iMZxwZNONm0H4wwYFKjvUU4a9ySmAuii++GxA=
+SHA256 (cargo/futures-core-0.3.31.tar.gz) = 
BfKQWcDCCQYS6NdCF4sFgNLclAyDeFGtcjCW+Hr2Zj4=
+SHA256 (cargo/futures-executor-0.3.31.tar.gz) = 
HijR2Zf1heVK68P5fTnnIziRISOmczDXI/27Vk1kbJ8=
+SHA256 (cargo/futures-io-0.3.31.tar.gz) = 
nlwbeMpKrhrAbEilJqZVdgaFFJ8NRl0h83q/5XzgdcY=
+SHA256 (cargo/futures-macro-0.3.31.tar.gz) = 
Fi7jTry3xkqKvrwFnOD+4nwiYmGNe2Dtj69y/vE8NlA=
+SHA256 (cargo/futures-sink-0.3.31.tar.gz) = 
5XX6t9Hg3LjQx7z5pj7iE4FqtRkC5tJEqVgZrKzx1Pc=
+SHA256 (cargo/futures-task-0.3.31.tar.gz) = 
+Q99zgci6VEE/LCVWFkQwJdyUvKG41S14704kCzZmYg=
+SHA256 (cargo/futures-util-0.3.31.tar.gz) = 
n6CDFbthIIjMORJJ79w7x3U28WyR9s9JXm++hbIKSoE=
+SHA256 (cargo/generic-array-0.14.7.tar.gz) = 
hWScpR/XInLXghra8nStkcKIJ3cT2cGIINhJmn/2npo=
+SHA256 (cargo/getrandom-0.2.15.tar.gz) = 
xFZ8jbEK6RCJyZr4TGjDjaPsLwh8P4KWC82/Nla29Nc=
+SHA256 (cargo/gimli-0.31.1.tar.gz) = 
B+KO24CQDBnCjxBy8uiuyn+gayPNQWnO/hr1qjJgeD8=
+SHA256 (cargo/glob-0.3.1.tar.gz) = 0vq8+9yH9HWDN8pTX7QabXAbZWk844KH2FbRZ0VR7Js=
+SHA256 (cargo/h2-0.3.26.tar.gz) = gf5SeoieFTLaXFJWhtltTC50zdNFut+N/vn2s53V9eg=
+SHA256 (cargo/h2-0.4.7.tar.gz) = zK4nlyjWNNCDwA9gmctY8BzJnBRbhLi+L2x0YY15ki4=
+SHA256 (cargo/hashbrown-0.12.3.tar.gz) = 
ip7nDEOq9BfJFDlmRaD6hSYkgBsk67eueP6CcoiayIg=
+SHA256 (cargo/hashbrown-0.15.2.tar.gz) = 
vxUUAP8Lr/VGUAfdLz5xfz/lAgdMpWMGnOOmYp0Hsok=
+SHA256 (cargo/heck-0.5.0.tar.gz) = IwTgCYP4f/s4tVtES147YKiEtdMMD8p9gv4zRJu+Veo=
+SHA256 (cargo/hex-0.4.3.tar.gz) = fyQlSqmlS1yFjq7i9bzNtGqvDkhqWV7V/Y+GulUjKnA=
+SHA256 (cargo/hickory-proto-0.24.2.tar.gz) = 
RHr9zbivudCoUq9txl2bKFznIO16WeQqi/LpMcZ7wbU=
+SHA256 (cargo/hickory-resolver-0.24.2.tar.gz) = 
Ci4qupw4nOUmfTHPHk2s6COQridrCzZOpVYwsfobRLQ=
+SHA256 (cargo/home-0.5.9.tar.gz) = 49E1S/a3I1y0oFdsJhn9TtGBg/aJsSsAag7nMp7v+aU=
+SHA256 (cargo/hostname-0.3.1.tar.gz) = 
PHMcPhBQTMjtNc/i8dtMknTD01+khuOzHfRvBo7z6Gc=
+SHA256 (cargo/http-0.2.12.tar.gz) = 
YBy7V+V34vXvW+jnuD8PY5lPJaqU1nPlSpLVxRbRAfE=
+SHA256 (cargo/http-1.2.0.tar.gz) = 8Wyir1YmHJn7qLrEChAlHOgYggWkxEj7t0Wi5Nqnb+o=
+SHA256 (cargo/http-body-1.0.1.tar.gz) = 
Hv7c4fuOaRPyPgyS3o5izVt3Kmfns5Rt+TCmJWbJMYQ=
+SHA256 (cargo/http-body-util-0.1.2.tar.gz) = 
eTQp12YWola8tiwqLsK+14HIMH55fiWYxQAQ8r7iVE8=
+SHA256 (cargo/httparse-1.9.5.tar.gz) = 
fXHTV07dJ3FTi5AeZUkRO0AG7OZhUPtpwPttmira6UY=
+SHA256 (cargo/httpdate-1.0.3.tar.gz) = 
3ztGQCqdWttMhqDPRj9C4ZmU4+6JEQGxhB8wpUXLSak=
+SHA256 (cargo/hyper-1.5.1.tar.gz) = 
l4GIJ+9PNkIw4WcF1HBuKJffK7YGF9bKFdWYAlo8SB8=
+SHA256 (cargo/hyper-named-pipe-0.1.0.tar.gz) = 
c7fYq/NWl7gagl44b8FR4NUD6Mtfy5PMhmnDdt/W8ng=
+SHA256 (cargo/hyper-rustls-0.27.3.tar.gz) = 
CK/btcMRMOMDSvVmQhBTqwN4fGQCRqRGMn9VDRG8szM=
+SHA256 (cargo/hyper-util-0.1.10.tar.gz) = 
3y3PvgZ3c0qy8/+n+nv9Rwa/3B7zk/LuMBhK7WfmMbQ=
+SHA256 (cargo/hyperlocal-0.9.1.tar.gz) = 
mGxc47mUUms811V45iVUq9CfCJnWIG3kiz6WqzTMyMc=
+SHA256 (cargo/iana-time-zone-0.1.61.tar.gz) = 
I14IHzkloGcDwtARfqi5HwQnVv1uem5dkB6MoamWsiA=
+SHA256 (cargo/iana-time-zone-haiku-0.1.2.tar.gz) = 
8xgnogb1avMuWQulbV0tCF9VhQgZJZN0PxayMGSVJp8=
+SHA256 (cargo/icu_collections-1.5.0.tar.gz) = 
2y+kUiBuvuGMS1widNvx3hcAjodLTcTwrqnQHKeeRSY=
+SHA256 (cargo/icu_locid-1.5.0.tar.gz) = 
E6y7g3GRf8lxvob8gFfEGmS1IcGEgIppjAKswkLb9jc=
+SHA256 (cargo/icu_locid_transform-1.5.0.tar.gz) = 
AdEaw13o5A/e2gDZ4enZJSXz+diHzdeqgdcnWWeItU4=
+SHA256 (cargo/icu_locid_transform_data-1.5.0.tar.gz) = 
/cj/M4j4Ur7ea1ea1Ol4qwBPE5KE17KHFfdzUHuUb24=
+SHA256 (cargo/icu_normalizer-1.5.0.tar.gz) = 
Gc4+DaLsaFmdGTyT0IgULv1/nF1vybgDd0hVdH3GqE8=
+SHA256 (cargo/icu_normalizer_data-1.5.0.tar.gz) = 
+Mr796p5HpsivsVaFnkG+eEhX9R1zSKt/PZg4D6YlRY=
+SHA256 (cargo/icu_properties-1.5.1.tar.gz) = 
k9YCB2bPxjAsFdu8nId4w35iwUQny39uYB2Engkq7vU=
+SHA256 (cargo/icu_properties_data-1.5.0.tar.gz) = 
Z6jv+8PdPkuhr6itkY1WhLiGizsmUAdT7/6o0u7RlWk=
+SHA256 (cargo/icu_provider-1.5.0.tar.gz) = 
btQhyKjveNPi28mKlzvi83cMtCtgbjqxjWI3xN/eaNk=
+SHA256 (cargo/icu_provider_macros-1.5.0.tar.gz) = 
Hsiekzdjjs3Ah0TfSQsiGnOZv40WTrUqZlRU5g4HWtY=
+SHA256 (cargo/ident_case-1.0.1.tar.gz) = 
ueA4S2GVhWbpJtxQZgMh0SFZAl52fBjgQ9rya3AQTDk=
+SHA256 (cargo/idna-1.0.3.tar.gz) = aG+CUmTWMHUKVEY5N3uuc3YoBD8g04u8Ap6PKeqWin4=
+SHA256 (cargo/idna_adapter-1.2.0.tar.gz) = 
2sod8clXMgss8TmsYee9ZP7TBMUEDfAAp0WqHeO073E=
+SHA256 (cargo/indexmap-1.9.3.tar.gz) = 
vQcOOTNTeW6AHSCa0znolZbrTI1DDRjt5qHM7Y+vvZk=
+SHA256 (cargo/indexmap-2.7.0.tar.gz) = 
YvgiNzpP6E1LsUm/VOWEp/Sr7JDgcu1JzaDt6luVRx8=
+SHA256 (cargo/inotify-0.10.2.tar.gz) = 
/dFo2XaQ0LjEEta2wQNgJ39NfuSVxdDV1f4IVJIyVcw=
+SHA256 (cargo/inotify-sys-0.1.5.tar.gz) = 
4FwCteib/zuUbO3sonirxij+gR5gTwJ8RaiqPPeT0Os=
+SHA256 (cargo/instant-0.1.13.tar.gz) = 
4CQoGdFTy6S0sFpajyp+m7+XtgVbKgArOVyWtf88AiI=
+SHA256 (cargo/ipconfig-0.3.2.tar.gz) = 
tY25L5a3IN6YGBu75jyDHocAWrRgwb8wbrJiK0cHmX8=
+SHA256 (cargo/ipnet-2.10.1.tar.gz) = 
3cJBCYZSUBSMLg89JdTw9HlXFyN5LTgCFTxgkipPtwg=
+SHA256 (cargo/is_terminal_polyfill-1.70.1.tar.gz) = 
eUPIZsxc1ky8JbLgFiHQf6jrKhojFg7oHOOHBOl7js8=
+SHA256 (cargo/itertools-0.12.1.tar.gz) = 
uikQItu9OYpFWs8SbB40GVQHmFW8YN/dpkE2O9aSJWk=
+SHA256 (cargo/itoa-1.0.14.tar.gz) = 
11oqSxsZCvtvVCXxD2qPlZ0uoLnCsdeVU1UYUFOeRnQ=
+SHA256 (cargo/jobserver-0.1.32.tar.gz) = 
SNHby762p/7H4FmECqU4vWKqzPlyxzRsTZ0gWTEoU9A=
+SHA256 (cargo/js-sys-0.3.76.tar.gz) = 
Zxe2tbB3dk+1lmI3Jpyzxk7d3eSxTOQmR0MKeM7Z57c=
+SHA256 (cargo/jsonwebtoken-9.3.0.tar.gz) = 
ua4QGT0lBR50lF8eotC0LgPMO4kPfkzF+qRJl9gIGT8=
+SHA256 (cargo/kqueue-1.0.8.tar.gz) = 
dEfxyht7VjWIogX+k96o32D9mBQjp2i8HA3tNe0UfQw=
+SHA256 (cargo/kqueue-sys-1.0.4.tar.gz) = 
7ZYl/9qHKbheRc8ECQA1rDaJJ7jOvDSJjnwSD1Lkg4s=
+SHA256 (cargo/lazy_static-1.5.0.tar.gz) = 
u9K8tMlj8t2uBqLvx+nzWRMSRzxQxmheHymAaDFuZv4=
+SHA256 (cargo/lazycell-1.3.0.tar.gz) = 
gw0Izh0dlB5rMGRfGg61ZDAT2DXON3ml/CCCYdvhD1U=
+SHA256 (cargo/libc-0.2.168.tar.gz) = 
Wq6ymB4GBsoR15cY+LsBFk8dbtdQgBgtOr8Bfm0kS20=
+SHA256 (cargo/libloading-0.8.6.tar.gz) = 
/C9OtLxzVUfP7XwKSSLL0EpGVZeMCbVPH3sih1BmTDQ=
+SHA256 (cargo/libredox-0.1.3.tar.gz) = 
wP83vVkMolBj41r3RcNDy3oCcZBvt7N+SBPo958AJo0=
+SHA256 (cargo/linked-hash-map-0.5.6.tar.gz) = 
BxfO8byLY2xuHBu978CeYyLaipMhlm6JKO+A0g9/dw8=
+SHA256 (cargo/linux-raw-sys-0.4.14.tar.gz) = 
eLOuJbx8jDjOwVjR8nV+556bN0D7x8zw5Z5LCNeT+ok=
+SHA256 (cargo/litemap-0.7.4.tar.gz) = 
TukzQ5AasXvZgSlfLPACbUrQGMfDG6hFSaTdu0ekUQQ=
+SHA256 (cargo/lock_api-0.4.12.tar.gz) = 
B6+LnN0oG3kV9BP6c/KevV1V0NPwFVWE2t4f8YzqGxc=
+SHA256 (cargo/log-0.4.22.tar.gz) = p6cLoCS53ATCfqLwwFSP60dOxcVLujOn9y+HOjnQeyQ=
+SHA256 (cargo/lru-cache-0.1.2.tar.gz) = 
MeJPGtgyHKDooeCsE/I8tmjm9UZsLFcxn2pc8cyOOxw=
+SHA256 (cargo/match_cfg-0.1.0.tar.gz) = 
/77oY04NRdJYrLRI5+qrP856CkZzldTZ8ijjwfAfsuQ=
+SHA256 (cargo/matchers-0.1.0.tar.gz) = 
gmMHW7hsWhsUJ7Wuhi6IiWVvEm6fd8SESW6LR89cVVg=
+SHA256 (cargo/memchr-2.7.4.tar.gz) = 
eMqasaC6ux59VpXjUwiGKJwYzy+H7BmldaCr3OES46M=
+SHA256 (cargo/memoffset-0.9.1.tar.gz) = 
SIAWv65FewNtmWCS9stEhndhHOREnpcM6vQmlSA/IYo=
+SHA256 (cargo/minimal-lexical-0.2.1.tar.gz) = 
aDVMXGvTbXP/P+zrBe+lm2rLdiZhf0livjIqgl5h95o=
+SHA256 (cargo/miniz_oxide-0.8.0.tar.gz) = 
4tgCme8S/2mxaoS7GC47nfaLWpFXTT1PpuQbZd7sTfE=
+SHA256 (cargo/mio-1.0.3.tar.gz) = KIaEO/gA+6LjN3z/JKv2N5tMTVxmger56lsNFQkEUL0=
+SHA256 (cargo/nix-0.29.0.tar.gz) = ceJ0bcOiTdeLPPy3vpM2jG3plj0w9Dpqc5mKnPSxe0Y=
+SHA256 (cargo/nom-7.1.3.tar.gz) = 0nOYPFplenCj6PKgEymCLzuMgXK3OCZBGlV1HkBKCko=
+SHA256 (cargo/notify-7.0.0.tar.gz) = 
xTO0w5cJ+bpQBdgAIEgmZZPBz688Xwc51birDGxQQAk=
+SHA256 (cargo/notify-types-1.0.0.tar.gz) = 
c5PCJmIfgXlk/7PcVwT5UJ4QeosCS0icwsGyFzeHhd8=
+SHA256 (cargo/nu-ansi-term-0.46.0.tar.gz) = 
d6gWVyboI2Bk27RUWSQmADBLQqXqJO4pSOGOAjv3uoQ=
+SHA256 (cargo/num-bigint-0.4.6.tar.gz) = 
peRPcj8RM8nerGRnY1ef2zrHReQY8qevnNDEMdofILk=
+SHA256 (cargo/num-conv-0.1.0.tar.gz) = 
UdUV0y+xgu43zaLM3LkpUNajwok6ooDlQGccLNDzsdk=
+SHA256 (cargo/num-integer-0.1.46.tar.gz) = 
eWlmH9KVilywluVsjhrQRErCu80AYb0oZgSFpEh5hY8=
+SHA256 (cargo/num-traits-0.2.19.tar.gz) = 
Bx38BiaQ6QtzTAsic85yrQ/6lfDHRZa8JQ3P2WAmKEE=
+SHA256 (cargo/num_threads-0.1.7.tar.gz) = 
XHOYuci3CQj2Nx9H7TZzeQfIfFKvNMJo/tC/DOuS6tk=
+SHA256 (cargo/object-0.36.5.tar.gz) = 
rt8KLQnFc+0djYWzDBGRU5JqKzbc4KsoMiwJoRekaD4=
+SHA256 (cargo/oid-registry-0.7.1.tar.gz) = 
qNgDTZSJza95Io659qO417syugDWZF69SO70B3zrW9k=
+SHA256 (cargo/once_cell-1.20.2.tar.gz) = 
EmH+fjPHOzVOq0OxJzpXyPln0DkegDU+UfdkrALPZ3U=
+SHA256 (cargo/openssl-probe-0.1.5.tar.gz) = 
/wEaMCw5alGXaSQx/BlIAZFUr8F4uvfY43NnRCpGAc8=
+SHA256 (cargo/overload-0.1.1.tar.gz) = 
sVgTFjwdgxv0oTw2EMBcDQOzn+sH9+CfojTaybFarzk=
+SHA256 (cargo/parking-2.2.1.tar.gz) = 
841WUsFv3lFbsezvRQqw9qIZ1hmnJ0l2Mk1eN399zro=
+SHA256 (cargo/parking_lot-0.12.3.tar.gz) = 
8b8YGDz1To1gWWR/wwY2RqGAHPMIlpM+wjEWIsxLmic=
+SHA256 (cargo/parking_lot_core-0.9.10.tar.gz) = 
HkAfl3qzhcnk46swYn1vJtAOLHPu8xdJPE7G1GhybPg=
+SHA256 (cargo/parse-display-0.9.1.tar.gz) = 
kUocImXJjiRGkRKCxqyG2FJPSVeSw4xb2IT4BJnHU4o=
+SHA256 (cargo/parse-display-derive-0.9.1.tar.gz) = 
KueACkyXTv0S35FyZjOOeaenRBUXPK9+cKoKBwc0UoE=
+SHA256 (cargo/paste-1.0.15.tar.gz) = 
V8DXt0tWO0nTja4AoMN9TW3ptDI4KyiS8FdN3K5z/Qo=
+SHA256 (cargo/percent-encoding-2.3.1.tar.gz) = 
4xSPUEYgil1WvPwDBT48pjNOUdqN+xm2zcizBvrjKD4=
+SHA256 (cargo/pin-project-1.1.7.tar.gz) = 
vlf2TpRuUAyO4272MxhF1AqTBVVn7Ffo+uE+/TN1m5U=
+SHA256 (cargo/pin-project-internal-1.1.7.tar.gz) = 
PA9frQh0/Hq81NdQ52kX6uu+yqLCC94i4dvuuovrdYw=
+SHA256 (cargo/pin-project-lite-0.2.15.tar.gz) = 
kVoeFGU13pFj85h7iUTtjPSaGLsAVrzrzc7OOFzs5P8=
+SHA256 (cargo/pin-utils-0.1.0.tar.gz) = 
i4cNjBUbby+5PoShMUYTjwXQLtEcfnxU+IJqqvfJ8YQ=
+SHA256 (cargo/powerfmt-0.2.0.tar.gz) = 
Q57jBd7xFboFk4226xZE/5QWXFq16UINHBvO27qQk5E=
+SHA256 (cargo/ppp-2.2.0.tar.gz) = gtkB1910PEeOFK+VGL28M+U+UL5WQpIz+BJTfynb8NE=
+SHA256 (cargo/ppv-lite86-0.2.20.tar.gz) = 
d5V7KVZWdpu4rStqawnYl9lPBcQbBprt4fzapnXq6gQ=
+SHA256 (cargo/prettyplease-0.2.25.tar.gz) = 
ZNHsiFxk0EV9Vk207CmbLa4/nAKAi4rZw6CJxZGxgDM=
+SHA256 (cargo/proc-macro2-1.0.92.tar.gz) = 
N9NUSz8nSMVOFHZV7bUCV1LiMDFFta77PD6ix4uXO7A=
+SHA256 (cargo/quick-error-1.2.3.tar.gz) = 
odAZQdgvoqtQvh555nFCid183njrpMB0vFpDdPZQ3+A=
+SHA256 (cargo/quote-1.0.37.tar.gz) = 
tbnTS4mR0Z2YCBtG6s3Y61jG8rIBE598X2Q8wVWmM68=
+SHA256 (cargo/rand-0.8.5.tar.gz) = NK+NGg4lkkvFt8Q8B5yUIznY8Ki1fDkEm+9YG0YydAQ=
+SHA256 (cargo/rand_chacha-0.3.1.tar.gz) = 
5sEKY6D6MiUr5J0h53CdTUuvjSMcLbzh6qgUG5sSfYg=
+SHA256 (cargo/rand_core-0.6.4.tar.gz) = 
7AvkeV4vaigGm+wLX/PirJuvyZ5qmn3DVHmWxcgWkiw=
+SHA256 (cargo/rcgen-0.13.1.tar.gz) = 
VAd+GHLEZ4hUDeHqPX9MyxmD0S+aqQmyNEaGdsGjZ3k=
+SHA256 (cargo/redox_syscall-0.3.5.tar.gz) = 
VnZk8mJwlHOTCkv55Rvy6/M0jy50jMxQ3qIGRoWPjyk=
+SHA256 (cargo/redox_syscall-0.5.7.tar.gz) = 
m23+zyx0vOJGbKv5P2Zk1pmKaesh459CB5MAZbJ7dx8=
+SHA256 (cargo/regex-1.11.1.tar.gz) = 
tUTvG06sXcLbM+pjYGrp/8+sJsFBaigGrgv19WsgEZE=
+SHA256 (cargo/regex-automata-0.1.10.tar.gz) = 
bCMNc/uNjBucCzE1xRQqis7joFWPuNtc8ctl+NeGITI=
+SHA256 (cargo/regex-automata-0.4.9.tar.gz) = 
gJ6Nxh9t5ztGyF9MlkhjEP4wTENM+kNmnXtA9xEVCQg=
+SHA256 (cargo/regex-syntax-0.6.29.tar.gz) = 
8WLG3XsAiYHk1AIQrKILS9D5tgypJxBhsH94U3ci8uE=
+SHA256 (cargo/regex-syntax-0.8.5.tar.gz) = 
KxXEMYa+Z6T9Y77lDQMDr//O84FJLr4sXYfzJOG4gVw=
+SHA256 (cargo/resolv-conf-0.7.0.tar.gz) = 
UuRDlNIIbQEFUbFLU7HyTjFkdXDNHesDeeLCGzKaugA=
+SHA256 (cargo/ring-0.17.8.tar.gz) = 
wX+ky2WONYNCPpFbnzrMAczq7hhg4z1Z665mrcOi3A0=
+SHA256 (cargo/rustc-demangle-0.1.24.tar.gz) = 
cZuVPiCVgp7mfbc4s7+p+jaMlJAN8yez8H/m55TS/h8=
+SHA256 (cargo/rustc-hash-1.1.0.tar.gz) = 
CNQ/eqawjUnzgs3mp5ggR8NCbblJsUJLxLfsmuEsbOI=
+SHA256 (cargo/rusticata-macros-4.1.0.tar.gz) = 
+vDEpuzplQuavbYrHPzypos7Z6ELpEWzu4W+Kik9BjI=
+SHA256 (cargo/rustix-0.38.42.tar.gz) = 
+T3DjsurLreQ/5ZLt3+pT68lb9PnMoX9e6CQO3a+24U=
+SHA256 (cargo/rustls-0.21.12.tar.gz) = 
P1ahTR9Is5E1myL3Mf1L1+Q8l/PFDu4nbzqgnJR4TT4=
+SHA256 (cargo/rustls-0.23.19.tar.gz) = 
k0tARDC7BrP64suoCetFoasa7NZEkSE9fDMBuIOT+NE=
+SHA256 (cargo/rustls-native-certs-0.6.3.tar.gz) = 
qarOdMtmZjXJGOnBK8DTSCZgN6qOtZm1y6VlcJqN/wA=
+SHA256 (cargo/rustls-native-certs-0.7.3.tar.gz) = 
5b+zlO7tJC6Qlgn1YInuz+X9oiUELosXF5G5yV9ZMeU=
+SHA256 (cargo/rustls-native-certs-0.8.1.tar.gz) = 
f8/y3VK1io2YpwJDZjoNI0xOK3kjVjeEnRWRM5SiR9M=
+SHA256 (cargo/rustls-pemfile-1.0.4.tar.gz) = 
HHTK4KTPbMu/XzWfCO/fjufh3FMlc78Ntxloy1axRIw=
+SHA256 (cargo/rustls-pemfile-2.2.0.tar.gz) = 
3OMU5f7j85lT1Gu2O7ikbUDC+Pt8xaO2yrK96XIdblA=
+SHA256 (cargo/rustls-pki-types-1.10.0.tar.gz) = 
FvEgGzyafugDm8rcF7fmBeKUWyfu52MXiMG9KwZDZ0s=
+SHA256 (cargo/rustls-webpki-0.101.7.tar.gz) = 
i2J10e56HNeAtkrKdyZZmh28iTseZBRFKeVcPC90V2U=
+SHA256 (cargo/rustls-webpki-0.102.8.tar.gz) = 
ZMobyHSb1M83tc44bMFGWAd3tOhXLHuXuvIsg/REvuk=
+SHA256 (cargo/ryu-1.0.18.tar.gz) = 88tboNxDJCzhfemcGA6W25CyNbip/clUPJbSIJEWvZ8=
+SHA256 (cargo/same-file-1.0.6.tar.gz) = 
k/wdw6qpv+2V4C5urau0uvfjB4sL0bTXtrC2g3iQBQI=
+SHA256 (cargo/schannel-0.1.27.tar.gz) = 
HynrqjRflFzsn7vFMuswfw/a2BYfKBtjaVOcjYSHaz0=
+SHA256 (cargo/scopeguard-1.2.0.tar.gz) = 
lBQ/N3JRCfksJi7Sz15ZvOdJjAG8wVAte5r+Q5pOn0k=
+SHA256 (cargo/sct-0.7.1.tar.gz) = 2gRhU6ojUkk9bLfaS25cDAV9ih0KmqhWC6/92UWs1BQ=
+SHA256 (cargo/security-framework-2.11.1.tar.gz) = 
iXsiRfC1Ech4k685sDPlypzOaIJMTX52MLWh0zlljQI=
+SHA256 (cargo/security-framework-3.0.1.tar.gz) = 
4UFaYH6SvsNk6iz5JkZG3M4PkebWUoG9bygZzKO/Ocg=
+SHA256 (cargo/security-framework-sys-2.12.1.tar.gz) = 
+jnHMD3Fi1VDyU0iwXZrDTHy7lgwY2PqYisQu8B16qI=
+SHA256 (cargo/serde-1.0.216.tar.gz) = 
C5eBAW6TWpfovuzwyTN1jJelUg0ykw5GAUK0zYDGM44=
+SHA256 (cargo/serde_derive-1.0.216.tar.gz) = 
RvhZ279zhlxmJ+1XDniWHNOskkB6LRFyBMSSMkhdpV4=
+SHA256 (cargo/serde_json-1.0.133.tar.gz) = 
x/zrJHO5FmsilO8F78tlo9uAgD8LA++GpfyIorhe43c=
+SHA256 (cargo/serde_regex-1.1.0.tar.gz) = 
qBNvGk6oFdfqxBAc/QsW3Ay14f4bhgnf1ygFhla3ut8=
+SHA256 (cargo/serde_repr-0.1.19.tar.gz) = 
bGRFG6JPx6ai1g/HXdnIPJCQOxkCjU7/NeiPwehlZOk=
+SHA256 (cargo/serde_urlencoded-0.7.1.tar.gz) = 
00kcFHFcoilMTWqI8V6Ec5eIwdAw7tjBEENqr9qi8/0=
+SHA256 (cargo/serde_with-3.11.0.tar.gz) = 
jii9rW2yuDQORJ9xCPAgs7CS6Fg6nj+4JxPh1Ocf6Bc=
+SHA256 (cargo/serde_with_macros-3.11.0.tar.gz) = 
nYRiFKmFTvck89oWG0JiQtjefB/H3i+Jux78sVTcp50=
+SHA256 (cargo/serde_yaml-0.9.34+deprecated.tar.gz) = 
aosaGi6/Z0AVzALtzM51KH8aATDTlDB7NnQ8L11QS0c=
+SHA256 (cargo/sha1-0.10.6.tar.gz) = 
47+Cmi1Rq0pd3xNS2EcMFAytyDAbKuF4nbAj8Bzt1ro=
+SHA256 (cargo/sharded-slab-0.1.7.tar.gz) = 
9AyjxGgjcT4NQglZLo1ugmqlfpKPCXUmGfxpbEmWN/Y=
+SHA256 (cargo/shlex-1.3.0.tar.gz) = 
D9ov8NCEAZuk18bzccldj9dc41JMPLj7ZTowI/YyPmQ=
+SHA256 (cargo/signal-hook-0.3.17.tar.gz) = 
hiFYfUeYyvjrRIedQuVrmpPqXc0xWmSHw1cTAJW2KAE=
+SHA256 (cargo/signal-hook-mio-0.2.4.tar.gz) = 
NNsaBtSFyRQiSLegVPA0s0myElUfPf0ZyU1Fp1SiF80=
+SHA256 (cargo/signal-hook-registry-1.4.2.tar.gz) = 
qengtCEbcue4tuhcgH02whK9sz6oWH91aVYqhN9UZbE=
+SHA256 (cargo/simdutf8-0.1.5.tar.gz) = 
46n+NOPnpQMWBgNR83GHo/VGvOlUlhVnVLYBpfpxt24=
+SHA256 (cargo/slab-0.4.9.tar.gz) = j5Kklvt2a0F8mWucXlfa8vetOwvr4cz8pIVjkOPTu2c=
+SHA256 (cargo/smallvec-1.13.2.tar.gz) = 
PF4ammRtNsNZnNFzpBKC2vR8RFg602e45oNyVZUuXGc=
+SHA256 (cargo/socket2-0.5.8.tar.gz) = 
yXAmnZm2TmDsO9atJycAkqU5TE4wkxSxiuP+V1aV++g=
+SHA256 (cargo/spin-0.9.8.tar.gz) = aYDo11ESQfis9K6927H/k4317r6YaRQYxEaNC3Kpamc=
+SHA256 (cargo/stable_deref_trait-1.2.0.tar.gz) = 
qPEScpUS+ORC2B+VqKfd8rfGuKGm9QmpWGQUKzDKstM=
+SHA256 (cargo/strsim-0.11.1.tar.gz) = 
fai1c2hF2fL8uDfqXZ4mKFZLOwQ6cJSKPwt3iDjF+08=
+SHA256 (cargo/structmeta-0.3.0.tar.gz) = 
LhV12NQJCNcPb9BVNyZrkK5xsV2756i33/ordZMG0yk=
+SHA256 (cargo/structmeta-derive-0.3.0.tar.gz) = 
FSoLZaWQ/2w9qVyr4jU+4E5hZ8iWso47FEeMJjbJIvw=
+SHA256 (cargo/subtle-2.6.1.tar.gz) = 
E8K93sxXs4Te4YZSNY+yMXL6y4osUczBDXTBV73qMpI=
+SHA256 (cargo/syn-2.0.90.tar.gz) = kZ07dKXdDM0Vrrj5PnAGvZ4UwpUIfJiWoRD0kHUrzzE=
+SHA256 (cargo/synstructure-0.13.1.tar.gz) = 
yK92Zqt7Y5CreBMftbD84R1remlRYCAXw1+oKABwiXE=
+SHA256 (cargo/testcontainers-0.23.1.tar.gz) = 
X0DMK9cuF/Mo+vjKdof+M35hvM2Kz5Z0+njdN5KwReE=
+SHA256 (cargo/thiserror-1.0.69.tar.gz) = 
tqr1M5tXjqhbUOCA/rJQo+iujPzf+aRhyewpBLySP1I=
+SHA256 (cargo/thiserror-impl-1.0.69.tar.gz) = 
T+5sTvyQBZ4Q+B5tQsYKGPdliMPXTLg6CyQqK2x1BME=
+SHA256 (cargo/thread_local-1.1.8.tar.gz) = 
i575utATraOAiFTOrHtGgSpkZbo2iFmjfiEAKD0tcZw=
+SHA256 (cargo/time-0.3.37.tar.gz) = 
NeeGiIOGG9DlbZrG78qsoNbV2Coqfsggn/SSwHzzeyE=
+SHA256 (cargo/time-core-0.1.2.tar.gz) = 
75J8p1r7gIpNZN03TwCirfjQ/P+OexhK+IbDyH7Eo/M=
+SHA256 (cargo/time-macros-0.2.19.tar.gz) = 
KDTmAX4+XkuYNJOXk7KCvAOzejM2JF+oIONeIz4qhd4=
+SHA256 (cargo/tinystr-0.7.6.tar.gz) = 
kRf11Ns5HBz2kn576j23S5ocGt2Pftqf/VNk9A9XuC8=
+SHA256 (cargo/tinyvec-1.8.0.tar.gz) = 
RF6IH09tOC1fJ8A04l65Lt18eEzquSoJN9t/LpRxuTg=
+SHA256 (cargo/tinyvec_macros-0.1.1.tar.gz) = 
HzzLrDEf6gX4b2GQS0YrVfs9+IN6Nm38YBoBYdBTLyA=
+SHA256 (cargo/tokio-1.42.0.tar.gz) = 
XOybIbBFAnM3f8l71MM6is/8jJlsmHp8WzGaAINwdVE=
+SHA256 (cargo/tokio-fd-0.3.0.tar.gz) = 
XO3wuJdhCkuv+Yv2EWwGDFz+dXTUM5xQ6dI/4JN3ZB0=
+SHA256 (cargo/tokio-macros-2.4.0.tar.gz) = 
aT1ZYxLoiWG8Z9fx+Xr4pwIn2fkMMbulgG7sAEl411I=
+SHA256 (cargo/tokio-rustls-0.24.1.tar.gz) = 
woMnzzgKwUgUEIf7+53p171OhKtdLCj7yRHXU96KcIE=
+SHA256 (cargo/tokio-rustls-0.26.1.tar.gz) = 
X20Jdeqs4M8Pyt7k5Kql2hW1wHkUbyz/tnwRO+Eivzc=
+SHA256 (cargo/tokio-stream-0.1.17.tar.gz) = 
7KWNe7pKdXB4F6LEQXQlP5I2stX70FVgLp1cB8E5oEc=
+SHA256 (cargo/tokio-tar-0.3.1.tar.gz) = 
nVcUwBDKPlwnEUwc3rnRRkGs5Jh0qlYm1xSeR67aznU=
+SHA256 (cargo/tokio-util-0.7.13.tar.gz) = 
1/yqjVWivda4Os4mKwFuyg157gKBjFwbzfAwURQIEHg=
+SHA256 (cargo/tower-service-0.3.3.tar.gz) = 
jfm24T8tMskbm9cZwA0ZWIN7x97EdNlJUnmMyOae7sM=
+SHA256 (cargo/tracing-0.1.41.tar.gz) = 
eE4KxTXetFBFXL+iim8N8UXqG7euUbghz155J/3PvdA=
+SHA256 (cargo/tracing-attributes-0.1.28.tar.gz) = 
OVrhJMCfnmkYojEK9gOPugdLz0dKw1JJbVkQ3VmiIm0=
+SHA256 (cargo/tracing-core-0.1.33.tar.gz) = 
5nLJV3nPlHxTEfg3h69PqP/9Evsn5JkyEahL39lhD5w=
+SHA256 (cargo/tracing-log-0.2.0.tar.gz) = 
7oVfH0AL0OXALRUK5d44QAOaP1SwJRVkBONMI8A/R8M=
+SHA256 (cargo/tracing-subscriber-0.3.19.tar.gz) = 
6Bid7LWsD6e8i5a3y5snAdYNSIBayoSiOABNZl/MQAg=
+SHA256 (cargo/try-lock-0.2.5.tar.gz) = 
5CGrrdQaQiUnVQTqTWVmkjQYt/BVBvvJwP6GunOWEUs=
+SHA256 (cargo/typenum-1.17.0.tar.gz) = 
Qv8L8MZrgjjG87V43zfQt4SOVd+Fd7P3T5KmmszuuCU=
+SHA256 (cargo/unicode-ident-1.0.14.tar.gz) = 
rbnmyk+GnhGAcot5UONZIqf8Y5f3tkFJno8+8G5Q3IM=
+SHA256 (cargo/unsafe-libyaml-0.2.11.tar.gz) = 
ZzqsWfrLq4qQB8f2EI0R9jtgP3yr/5n6v2UP6lwyuGE=
+SHA256 (cargo/untrusted-0.7.1.tar.gz) = 
oVbGhMkep9YmJlCbzjy04dntXE2Xj3tDUmWPlqTCa0o=
+SHA256 (cargo/untrusted-0.9.0.tar.gz) = 
jsttoouKNR13O2jVglrDkBfmgHUPmA86GoXNjdKKR8E=
+SHA256 (cargo/url-2.5.4.tar.gz) = Mvi2hsrdFHP0vQEXpdKNNrGt44Tqm1BpocQK7+1/2mA=
+SHA256 (cargo/urlencoding-2.1.3.tar.gz) = 
2vjbo7frhwyvHd7te8nSoEnzz9+ufLUhsIfMM65MSdo=
+SHA256 (cargo/utf-8-0.7.6.tar.gz) = 
CcyO5y0qm+zy8v6+AgW77Y/GYVt8tCmtBi3Ht93QNqk=
+SHA256 (cargo/utf16_iter-1.0.5.tar.gz) = 
yCMt082u1TVuD3FtKF5LQLkyrENBAP6bfg6Ok1ueYkY=
+SHA256 (cargo/utf8_iter-1.0.4.tar.gz) = 
tsFAYg5/+7IsLe5Zyv5ghKWbX/wnqIWaXw1JS11Str4=
+SHA256 (cargo/utf8parse-0.2.2.tar.gz) = 
BqveNhFlet9m04PwCwk9f67Mf6VwccziV4ZgyfEBCCE=
+SHA256 (cargo/uuid-1.11.0.tar.gz) = 
+MXwoK9plEhUitGi+/kg+0vuJX6uOZU7qVy4SJGgRGo=
+SHA256 (cargo/valuable-0.1.0.tar.gz) = 
gwt+XU2QA0AylA5Kzg2amgV+ekXNlObAB4MuOe24L20=
+SHA256 (cargo/version_check-0.9.5.tar.gz) = 
C5KPM9l1/GrZ+GyPKDhTrSa91bELfxVCqi+hXiKJEFo=
+SHA256 (cargo/walkdir-2.5.0.tar.gz) = 
KXkJRkBPkdnF0G+YdO/d6h3AbF7+lFQafWhjEI46Xks=
+SHA256 (cargo/want-0.3.1.tar.gz) = v6d2Cu0Z4QbeLHwLWBtQny8l09rK9zfLgqxhvG12Cw4=
+SHA256 (cargo/wasi-0.11.0+wasi-snapshot-preview1.tar.gz) = 
nI2H5ytko7TbKNEc4pI3wkYYj09RBX1lp+q2O3mH5CM=
+SHA256 (cargo/wasm-bindgen-0.2.99.tar.gz) = 
pHT2KB0dcMF656pqYTyH/OaaEn4mJAAt9j3LOdbPY5Y=
+SHA256 (cargo/wasm-bindgen-backend-0.2.99.tar.gz) = 
X4m7OGRrT4FnTo9cP7gbVivh/ZNthDIPMmRIZBhRnHk=
+SHA256 (cargo/wasm-bindgen-macro-0.2.99.tar.gz) = 
LMYYH9mnSS7vb+8fM5YeNpXkV5uYcqb3yDruVWZm1P4=
+SHA256 (cargo/wasm-bindgen-macro-support-0.2.99.tar.gz) = 
MNepW3Y9PEWQPtbIHxVoAYOeXulouwflNMRN8PzTMMI=
+SHA256 (cargo/wasm-bindgen-shared-0.2.99.tar.gz) = 
lDqrP9qqAppuAnGzXqELcrlDE1r+m//KgjhAmK0OBqY=
+SHA256 (cargo/which-4.4.2.tar.gz) = 
h7okQZogeM0rDy7eJpG2xm2OR4Nto7bbgmXrrUevv8c=
+SHA256 (cargo/widestring-1.1.0.tar.gz) = 
chnTa26siT+oHoTr4GSF59y7YWF3RpsULfFPH03rExE=
+SHA256 (cargo/winapi-0.3.9.tar.gz) = 
XIOaZ0/NepiVLlkyQupACr6TmSdGdh44ZBQF0osA9Bk=
+SHA256 (cargo/winapi-i686-pc-windows-gnu-0.4.0.tar.gz) = 
rDuHxjYgQm3ZuZHlzgMp7/VFvMu7NPO+Cf9vtqtRt7Y=
+SHA256 (cargo/winapi-util-0.1.9.tar.gz) = 
zyIck+E6MNeT92RaDndixV0WnbsKSWcZGKIxnSibELs=
+SHA256 (cargo/winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz) = 
cS4ieEHQV8HuHNL7Ivp+WlRhro5I+iynnsQs/BkxGD8=
+SHA256 (cargo/windows-core-0.52.0.tar.gz) = 
M6tkDI1+Nb+LoZuIS6g4zrT7qTpOjGWpBZ0Ir8/Gg9k=
+SHA256 (cargo/windows-sys-0.48.0.tar.gz) = 
Z30kGL7GXjM47bB26Aa8HsFWk8XQEEaD8u/oV/YQVqk=
+SHA256 (cargo/windows-sys-0.52.0.tar.gz) = 
KCvl82qM54H62MiuGPo/m+/1fsG1LLPeB4kgFCXZoz0=
+SHA256 (cargo/windows-sys-0.59.0.tar.gz) = 
Hji8TXntZ/0HW8wlGhw5syoXdrvpLlvvHwvx+MUxhTs=
+SHA256 (cargo/windows-targets-0.48.5.tar.gz) = 
mi+m4hVdcke+aMCWRWCDFFwYPLu8J2QVDdpFqHGXlAw=
+SHA256 (cargo/windows-targets-0.52.6.tar.gz) = 
m3JPcnluA2q5DBAh1HgNTT1kispZ5JHmuY5yW4TpmXM=
+SHA256 (cargo/windows_aarch64_gnullvm-0.48.5.tar.gz) = 
KzjjLwq8z5mHpOMHnftn3NeZ+2E2HlPiiCw8uvDZBdg=
+SHA256 (cargo/windows_aarch64_gnullvm-0.52.6.tar.gz) = 
MqRiIYDnoOwES7VVQEyAC8n9nsJi7BR+3VmJzNDALNM=
+SHA256 (cargo/windows_aarch64_msvc-0.48.5.tar.gz) = 
3DUxCXHzstu/PwaQohn0Di2a/PZPmrfMG+cik3wmtLw=
+SHA256 (cargo/windows_aarch64_msvc-0.52.6.tar.gz) = 
Cewqe7FS4iUrU/p4AxUAB4eVSLxwnAOd92J8q70F1Gk=
+SHA256 (cargo/windows_i686_gnu-0.48.5.tar.gz) = 
p1kV5972DJTc73IgC5qOWOUJF0SWDaZOxzSmxumzdD4=
+SHA256 (cargo/windows_i686_gnu-0.52.6.tar.gz) = 
jpta1auALpfrjilaxnIOUJ7kwkP2nXgTlAFOv+i7+gs=
+SHA256 (cargo/windows_i686_gnullvm-0.52.6.tar.gz) = 
Du5S04wJCzyqdsVjuGw6S9ce8agZKHwZ1YbXM0ro7WY=
+SHA256 (cargo/windows_i686_msvc-0.48.5.tar.gz) = 
j1XCM/cMSyf2bFI1gPePEATotai2WeBaTrSdQWbMpAY=
+SHA256 (cargo/windows_i686_msvc-0.52.6.tar.gz) = 
JAlIvAXF58bau6KL+J2J/84+MDAigJ5z3q7+T27FbGY=
+SHA256 (cargo/windows_x86_64_gnu-0.48.5.tar.gz) = 
U9QKvSWD0j5HGP3fHr7ITb/4OBwHyuZ/93aLvxnGcY4=
+SHA256 (cargo/windows_x86_64_gnu-0.52.6.tar.gz) = 
FHpcgKq/vwx9kBy1iV0d4w7ykH6yH7urKcqUxbCLGng=
+SHA256 (cargo/windows_x86_64_gnullvm-0.48.5.tar.gz) = 
C3tSdnhooj1bq3aOOQ3F9cVYJbbTC4bIRP8tx0FARMw=
+SHA256 (cargo/windows_x86_64_gnullvm-0.52.6.tar.gz) = 
JNWyPcQXQSZ5aBOW8rSfPejBRz3rUWvTRBCHLv9R7Q0=
+SHA256 (cargo/windows_x86_64_msvc-0.48.5.tar.gz) = 
7ZT85hVxpABoUrc4mgY6uYPALrG7N7R/gnLOktBtlTg=
+SHA256 (cargo/windows_x86_64_msvc-0.52.6.tar.gz) = 
WJ9tqExkYgR0fRJwoqVmHqZu0cztJjHVRv37FVlZ+ew=
+SHA256 (cargo/winreg-0.50.0.tar.gz) = 
Uk5XssU3wPmx5p8ZZTEewSGCtBIuRQNbFQjNJNKtrbE=
+SHA256 (cargo/write16-1.0.0.tar.gz) = 
0YkPQCJ1narijtT+YoWbEjbK6/xh7eL2PtTmlfP22TY=
+SHA256 (cargo/writeable-0.5.5.tar.gz) = 
Hp3zjuLSw8WUjqRoqEBv8NsLKa4f/eG88g7zBbzJXFE=
+SHA256 (cargo/x509-parser-0.16.0.tar.gz) = 
/LwWLzBwDW8/gqJL98xi/+fK6kLAssuov3865Qz1H2k=
+SHA256 (cargo/xattr-1.3.1.tar.gz) = 
jahPGiWTmyf2gg2SrtEI+D/5IP3xGnsZNmwnxM2oHU8=
+SHA256 (cargo/yasna-0.5.2.tar.gz) = 
4XuzVJzBMhrhKWuc3CaY4rbLGZKt+hmoxy5benOPRM0=
+SHA256 (cargo/yoke-0.7.5.tar.gz) = Eg5q75qmKePU9S3IzEOgFcdyQZTJffr0UYDS2vK3f0A=
+SHA256 (cargo/yoke-derive-0.7.5.tar.gz) = 
I4CHjK1KyarB4kNfPrQCDoN0tfE8KWy3W0Yg/44ikVQ=
+SHA256 (cargo/zerocopy-0.7.35.tar.gz) = 
G5tP0Yq8grgTaDjaXVC6573qU3xXTY3Bo07QmNbBZvA=
+SHA256 (cargo/zerocopy-derive-0.7.35.tar.gz) = 
+k+AgDRNRnH7ToMaE60eaAknSDh9/E9V41YkL64Szj4=
+SHA256 (cargo/zerofrom-0.1.5.tar.gz) = 
z/PuCMmV3uGFnZmN6oL3N08oJgkd2c1H3vlTyuRGzS4=
+SHA256 (cargo/zerofrom-derive-0.1.5.tar.gz) = 
WV7tmC99NVvrhYN/ZR+iLpCzwESELcfywoQsCG8pWAg=
+SHA256 (cargo/zeroize-1.8.1.tar.gz) = 
ztNniih5swMG0yP0VCYmaXpGSpfAoHya6/frymXNTd4=
+SHA256 (cargo/zerovec-0.10.4.tar.gz) = 
qiuJPXnfI7+xLVRhAY1AjqGd+v52wsfvbU66YU+P8Hk=
+SHA256 (cargo/zerovec-derive-0.10.3.tar.gz) = 
bq+m37F1hOo+K9bnbgzBWtevErCavdHKVZYb7ZsQY8Y=
+SHA256 (wstunnel-10.1.7.tar.gz) = fMEWgfd+tQMxEzKZF0FQ7ekp7azzgbsGq3YgU3cLoDs=
+SIZE (cargo/addr2line-0.24.2.tar.gz) = 39015
+SIZE (cargo/adler2-2.0.0.tar.gz) = 13529
+SIZE (cargo/ahash-0.8.11.tar.gz) = 43607
+SIZE (cargo/aho-corasick-1.1.3.tar.gz) = 183311
+SIZE (cargo/android-tzdata-0.1.1.tar.gz) = 7674
+SIZE (cargo/android_system_properties-0.1.5.tar.gz) = 5243
+SIZE (cargo/anstream-0.6.18.tar.gz) = 29681
+SIZE (cargo/anstyle-1.0.10.tar.gz) = 15725
+SIZE (cargo/anstyle-parse-0.2.6.tar.gz) = 22343
+SIZE (cargo/anstyle-query-1.1.2.tar.gz) = 9969
+SIZE (cargo/anstyle-wincon-3.0.6.tar.gz) = 12271
+SIZE (cargo/anyhow-1.0.94.tar.gz) = 51731
+SIZE (cargo/arc-swap-1.7.1.tar.gz) = 68512
+SIZE (cargo/asn1-rs-0.6.2.tar.gz) = 90647
+SIZE (cargo/asn1-rs-derive-0.5.1.tar.gz) = 9692
+SIZE (cargo/asn1-rs-impl-0.2.0.tar.gz) = 2261
+SIZE (cargo/async-channel-2.3.1.tar.gz) = 14576
+SIZE (cargo/async-trait-0.1.83.tar.gz) = 29054
+SIZE (cargo/atomic-waker-1.1.2.tar.gz) = 12422
+SIZE (cargo/autocfg-1.4.0.tar.gz) = 17712
+SIZE (cargo/aws-lc-rs-1.11.1.tar.gz) = 198572
+SIZE (cargo/aws-lc-sys-0.23.1.tar.gz) = 8026946
+SIZE (cargo/backtrace-0.3.74.tar.gz) = 88516
+SIZE (cargo/base64-0.21.7.tar.gz) = 82576
+SIZE (cargo/base64-0.22.1.tar.gz) = 81597
+SIZE (cargo/bb8-0.9.0.tar.gz) = 16020
+SIZE (cargo/bindgen-0.69.5.tar.gz) = 221128
+SIZE (cargo/bitflags-1.3.2.tar.gz) = 23021
+SIZE (cargo/bitflags-2.6.0.tar.gz) = 45357
+SIZE (cargo/block-buffer-0.10.4.tar.gz) = 10538
+SIZE (cargo/bollard-0.17.1.tar.gz) = 122496
+SIZE (cargo/bollard-stubs-1.45.0-rc.26.0.1.tar.gz) = 57048
+SIZE (cargo/bumpalo-3.16.0.tar.gz) = 85677
+SIZE (cargo/byteorder-1.5.0.tar.gz) = 23288
+SIZE (cargo/bytes-1.9.0.tar.gz) = 67320
+SIZE (cargo/cc-1.2.3.tar.gz) = 99421
+SIZE (cargo/cexpr-0.6.0.tar.gz) = 17966
+SIZE (cargo/cfg-if-1.0.0.tar.gz) = 7934
+SIZE (cargo/cfg_aliases-0.2.1.tar.gz) = 6355
+SIZE (cargo/chrono-0.4.39.tar.gz) = 222248
+SIZE (cargo/clang-sys-1.8.1.tar.gz) = 44009
+SIZE (cargo/clap-4.5.23.tar.gz) = 56460
+SIZE (cargo/clap_builder-4.5.23.tar.gz) = 164180
+SIZE (cargo/clap_derive-4.5.18.tar.gz) = 30131
+SIZE (cargo/clap_lex-0.7.4.tar.gz) = 12858
+SIZE (cargo/cmake-0.1.52.tar.gz) = 18119
+SIZE (cargo/colorchoice-1.0.3.tar.gz) = 7923
+SIZE (cargo/concurrent-queue-2.5.0.tar.gz) = 22654
+SIZE (cargo/core-foundation-0.10.0.tar.gz) = 27023
+SIZE (cargo/core-foundation-0.9.4.tar.gz) = 27743
+SIZE (cargo/core-foundation-sys-0.8.7.tar.gz) = 37712
+SIZE (cargo/cpufeatures-0.2.16.tar.gz) = 13405
+SIZE (cargo/crossbeam-utils-0.8.20.tar.gz) = 42487
+SIZE (cargo/crossterm-0.28.1.tar.gz) = 132275
+SIZE (cargo/crossterm_winapi-0.9.1.tar.gz) = 16027
+SIZE (cargo/crypto-common-0.1.6.tar.gz) = 8760
+SIZE (cargo/darling-0.20.10.tar.gz) = 32031
+SIZE (cargo/darling_core-0.20.10.tar.gz) = 65015
+SIZE (cargo/darling_macro-0.20.10.tar.gz) = 1874
+SIZE (cargo/data-encoding-2.6.0.tar.gz) = 20769
+SIZE (cargo/der-parser-9.0.0.tar.gz) = 63191
+SIZE (cargo/deranged-0.3.11.tar.gz) = 18043
+SIZE (cargo/digest-0.10.7.tar.gz) = 19557
+SIZE (cargo/displaydoc-0.2.5.tar.gz) = 24219
+SIZE (cargo/docker_credential-1.3.1.tar.gz) = 9247
+SIZE (cargo/dunce-1.0.5.tar.gz) = 8244
+SIZE (cargo/either-1.13.0.tar.gz) = 19169
+SIZE (cargo/enum-as-inner-0.6.1.tar.gz) = 12190
+SIZE (cargo/equivalent-1.0.1.tar.gz) = 6615
+SIZE (cargo/errno-0.3.10.tar.gz) = 11824
+SIZE (cargo/etcetera-0.8.0.tar.gz) = 13295
+SIZE (cargo/event-listener-5.3.1.tar.gz) = 42576
+SIZE (cargo/event-listener-strategy-0.5.3.tar.gz) = 10920
+SIZE (cargo/fast-socks5-0.9.6.tar.gz) = 33144
+SIZE (cargo/fastwebsockets-0.8.0.tar.gz) = 52533
+SIZE (cargo/fdlimit-0.3.0.tar.gz) = 6415
+SIZE (cargo/filetime-0.2.25.tar.gz) = 14940
+SIZE (cargo/fnv-1.0.7.tar.gz) = 11266
+SIZE (cargo/form_urlencoded-1.2.1.tar.gz) = 8969
+SIZE (cargo/fs_extra-1.3.0.tar.gz) = 31298
+SIZE (cargo/fsevent-sys-4.1.0.tar.gz) = 4620
+SIZE (cargo/futures-0.3.31.tar.gz) = 54953
+SIZE (cargo/futures-channel-0.3.31.tar.gz) = 31971
+SIZE (cargo/futures-core-0.3.31.tar.gz) = 14318
+SIZE (cargo/futures-executor-0.3.31.tar.gz) = 17965
+SIZE (cargo/futures-io-0.3.31.tar.gz) = 9047
+SIZE (cargo/futures-macro-0.3.31.tar.gz) = 11341
+SIZE (cargo/futures-sink-0.3.31.tar.gz) = 7958
+SIZE (cargo/futures-task-0.3.31.tar.gz) = 11217
+SIZE (cargo/futures-util-0.3.31.tar.gz) = 162124
+SIZE (cargo/generic-array-0.14.7.tar.gz) = 15950
+SIZE (cargo/getrandom-0.2.15.tar.gz) = 37163
+SIZE (cargo/gimli-0.31.1.tar.gz) = 279515
+SIZE (cargo/glob-0.3.1.tar.gz) = 18880
+SIZE (cargo/h2-0.3.26.tar.gz) = 168315
+SIZE (cargo/h2-0.4.7.tar.gz) = 174114
+SIZE (cargo/hashbrown-0.12.3.tar.gz) = 102968
+SIZE (cargo/hashbrown-0.15.2.tar.gz) = 138478
+SIZE (cargo/heck-0.5.0.tar.gz) = 11517
+SIZE (cargo/hex-0.4.3.tar.gz) = 13299
+SIZE (cargo/hickory-proto-0.24.2.tar.gz) = 372860
+SIZE (cargo/hickory-resolver-0.24.2.tar.gz) = 90292
+SIZE (cargo/home-0.5.9.tar.gz) = 8760
+SIZE (cargo/hostname-0.3.1.tar.gz) = 9272
+SIZE (cargo/http-0.2.12.tar.gz) = 101964
+SIZE (cargo/http-1.2.0.tar.gz) = 105932
+SIZE (cargo/http-body-1.0.1.tar.gz) = 6125
+SIZE (cargo/http-body-util-0.1.2.tar.gz) = 12821
+SIZE (cargo/httparse-1.9.5.tar.gz) = 39029
+SIZE (cargo/httpdate-1.0.3.tar.gz) = 10639
+SIZE (cargo/hyper-1.5.1.tar.gz) = 152653
+SIZE (cargo/hyper-named-pipe-0.1.0.tar.gz) = 8522
+SIZE (cargo/hyper-rustls-0.27.3.tar.gz) = 34834
+SIZE (cargo/hyper-util-0.1.10.tar.gz) = 72887
+SIZE (cargo/hyperlocal-0.9.1.tar.gz) = 13733
+SIZE (cargo/iana-time-zone-0.1.61.tar.gz) = 27685
+SIZE (cargo/iana-time-zone-haiku-0.1.2.tar.gz) = 7185
+SIZE (cargo/icu_collections-1.5.0.tar.gz) = 82762
+SIZE (cargo/icu_locid-1.5.0.tar.gz) = 55131
+SIZE (cargo/icu_locid_transform-1.5.0.tar.gz) = 29094
+SIZE (cargo/icu_locid_transform_data-1.5.0.tar.gz) = 44727
+SIZE (cargo/icu_normalizer-1.5.0.tar.gz) = 53113
+SIZE (cargo/icu_normalizer_data-1.5.0.tar.gz) = 50561
+SIZE (cargo/icu_properties-1.5.1.tar.gz) = 64479
+SIZE (cargo/icu_properties_data-1.5.0.tar.gz) = 227993
+SIZE (cargo/icu_provider-1.5.0.tar.gz) = 52722
+SIZE (cargo/icu_provider_macros-1.5.0.tar.gz) = 6436
+SIZE (cargo/ident_case-1.0.1.tar.gz) = 3492
+SIZE (cargo/idna-1.0.3.tar.gz) = 142515
+SIZE (cargo/idna_adapter-1.2.0.tar.gz) = 8206
+SIZE (cargo/indexmap-1.9.3.tar.gz) = 54653
+SIZE (cargo/indexmap-2.7.0.tar.gz) = 85335
+SIZE (cargo/inotify-0.10.2.tar.gz) = 26200
+SIZE (cargo/inotify-sys-0.1.5.tar.gz) = 6965
+SIZE (cargo/instant-0.1.13.tar.gz) = 6305
+SIZE (cargo/ipconfig-0.3.2.tar.gz) = 24468
+SIZE (cargo/ipnet-2.10.1.tar.gz) = 28407
+SIZE (cargo/is_terminal_polyfill-1.70.1.tar.gz) = 7492
+SIZE (cargo/itertools-0.12.1.tar.gz) = 137761
+SIZE (cargo/itoa-1.0.14.tar.gz) = 11210
+SIZE (cargo/jobserver-0.1.32.tar.gz) = 27549
+SIZE (cargo/js-sys-0.3.76.tar.gz) = 54420
+SIZE (cargo/jsonwebtoken-9.3.0.tar.gz) = 48987
+SIZE (cargo/kqueue-1.0.8.tar.gz) = 12642
+SIZE (cargo/kqueue-sys-1.0.4.tar.gz) = 7160
+SIZE (cargo/lazy_static-1.5.0.tar.gz) = 14025
+SIZE (cargo/lazycell-1.3.0.tar.gz) = 12502
+SIZE (cargo/libc-0.2.168.tar.gz) = 757025
+SIZE (cargo/libloading-0.8.6.tar.gz) = 28922
+SIZE (cargo/libredox-0.1.3.tar.gz) = 6068
+SIZE (cargo/linked-hash-map-0.5.6.tar.gz) = 15049
+SIZE (cargo/linux-raw-sys-0.4.14.tar.gz) = 1826665
+SIZE (cargo/litemap-0.7.4.tar.gz) = 28257
+SIZE (cargo/lock_api-0.4.12.tar.gz) = 27591
+SIZE (cargo/log-0.4.22.tar.gz) = 44027
+SIZE (cargo/lru-cache-0.1.2.tar.gz) = 9307
+SIZE (cargo/match_cfg-0.1.0.tar.gz) = 7153
+SIZE (cargo/matchers-0.1.0.tar.gz) = 6948
+SIZE (cargo/memchr-2.7.4.tar.gz) = 96670
+SIZE (cargo/memoffset-0.9.1.tar.gz) = 9032
+SIZE (cargo/minimal-lexical-0.2.1.tar.gz) = 94841
+SIZE (cargo/miniz_oxide-0.8.0.tar.gz) = 56343
+SIZE (cargo/mio-1.0.3.tar.gz) = 103703
+SIZE (cargo/nix-0.29.0.tar.gz) = 318248
+SIZE (cargo/nom-7.1.3.tar.gz) = 117570
+SIZE (cargo/notify-7.0.0.tar.gz) = 35141
+SIZE (cargo/notify-types-1.0.0.tar.gz) = 14472
+SIZE (cargo/nu-ansi-term-0.46.0.tar.gz) = 24311
+SIZE (cargo/num-bigint-0.4.6.tar.gz) = 102801
+SIZE (cargo/num-conv-0.1.0.tar.gz) = 7444
+SIZE (cargo/num-integer-0.1.46.tar.gz) = 22331
+SIZE (cargo/num-traits-0.2.19.tar.gz) = 51631
+SIZE (cargo/num_threads-0.1.7.tar.gz) = 7455
+SIZE (cargo/object-0.36.5.tar.gz) = 327435
+SIZE (cargo/oid-registry-0.7.1.tar.gz) = 15220
+SIZE (cargo/once_cell-1.20.2.tar.gz) = 33394
+SIZE (cargo/openssl-probe-0.1.5.tar.gz) = 7227
+SIZE (cargo/overload-0.1.1.tar.gz) = 24439
+SIZE (cargo/parking-2.2.1.tar.gz) = 10685
+SIZE (cargo/parking_lot-0.12.3.tar.gz) = 41860
+SIZE (cargo/parking_lot_core-0.9.10.tar.gz) = 32406
+SIZE (cargo/parse-display-0.9.1.tar.gz) = 9456
+SIZE (cargo/parse-display-derive-0.9.1.tar.gz) = 17258
+SIZE (cargo/paste-1.0.15.tar.gz) = 18374
+SIZE (cargo/percent-encoding-2.3.1.tar.gz) = 10235
+SIZE (cargo/pin-project-1.1.7.tar.gz) = 55438
+SIZE (cargo/pin-project-internal-1.1.7.tar.gz) = 28549
+SIZE (cargo/pin-project-lite-0.2.15.tar.gz) = 29683
+SIZE (cargo/pin-utils-0.1.0.tar.gz) = 7580
+SIZE (cargo/powerfmt-0.2.0.tar.gz) = 15165
+SIZE (cargo/ppp-2.2.0.tar.gz) = 35555
+SIZE (cargo/ppv-lite86-0.2.20.tar.gz) = 22478
+SIZE (cargo/prettyplease-0.2.25.tar.gz) = 58681
+SIZE (cargo/proc-macro2-1.0.92.tar.gz) = 52353
+SIZE (cargo/quick-error-1.2.3.tar.gz) = 15066
+SIZE (cargo/quote-1.0.37.tar.gz) = 28558
+SIZE (cargo/rand-0.8.5.tar.gz) = 87113
+SIZE (cargo/rand_chacha-0.3.1.tar.gz) = 15251
+SIZE (cargo/rand_core-0.6.4.tar.gz) = 22666
+SIZE (cargo/rcgen-0.13.1.tar.gz) = 74432
+SIZE (cargo/redox_syscall-0.3.5.tar.gz) = 23404
+SIZE (cargo/redox_syscall-0.5.7.tar.gz) = 26249
+SIZE (cargo/regex-1.11.1.tar.gz) = 254170
+SIZE (cargo/regex-automata-0.1.10.tar.gz) = 114533
+SIZE (cargo/regex-automata-0.4.9.tar.gz) = 618525
+SIZE (cargo/regex-syntax-0.6.29.tar.gz) = 299752
+SIZE (cargo/regex-syntax-0.8.5.tar.gz) = 357541
+SIZE (cargo/resolv-conf-0.7.0.tar.gz) = 17352
+SIZE (cargo/ring-0.17.8.tar.gz) = 4188554
+SIZE (cargo/rustc-demangle-0.1.24.tar.gz) = 29047
+SIZE (cargo/rustc-hash-1.1.0.tar.gz) = 9331
+SIZE (cargo/rusticata-macros-4.1.0.tar.gz) = 11746
+SIZE (cargo/rustix-0.38.42.tar.gz) = 378683
+SIZE (cargo/rustls-0.21.12.tar.gz) = 285674
+SIZE (cargo/rustls-0.23.19.tar.gz) = 333921
+SIZE (cargo/rustls-native-certs-0.6.3.tar.gz) = 24438
+SIZE (cargo/rustls-native-certs-0.7.3.tar.gz) = 31564
+SIZE (cargo/rustls-native-certs-0.8.1.tar.gz) = 31129
+SIZE (cargo/rustls-pemfile-1.0.4.tar.gz) = 22092
+SIZE (cargo/rustls-pemfile-2.2.0.tar.gz) = 25849
+SIZE (cargo/rustls-pki-types-1.10.0.tar.gz) = 55134
+SIZE (cargo/rustls-webpki-0.101.7.tar.gz) = 168808
+SIZE (cargo/rustls-webpki-0.102.8.tar.gz) = 204327
+SIZE (cargo/ryu-1.0.18.tar.gz) = 47713
+SIZE (cargo/same-file-1.0.6.tar.gz) = 10183
+SIZE (cargo/schannel-0.1.27.tar.gz) = 42772
+SIZE (cargo/scopeguard-1.2.0.tar.gz) = 11619
+SIZE (cargo/sct-0.7.1.tar.gz) = 27501
+SIZE (cargo/security-framework-2.11.1.tar.gz) = 80188
+SIZE (cargo/security-framework-3.0.1.tar.gz) = 84749
+SIZE (cargo/security-framework-sys-2.12.1.tar.gz) = 20112
+SIZE (cargo/serde-1.0.216.tar.gz) = 79000
+SIZE (cargo/serde_derive-1.0.216.tar.gz) = 57674
+SIZE (cargo/serde_json-1.0.133.tar.gz) = 150739
+SIZE (cargo/serde_regex-1.1.0.tar.gz) = 9710
+SIZE (cargo/serde_repr-0.1.19.tar.gz) = 9997
+SIZE (cargo/serde_urlencoded-0.7.1.tar.gz) = 12822
+SIZE (cargo/serde_with-3.11.0.tar.gz) = 145979
+SIZE (cargo/serde_with_macros-3.11.0.tar.gz) = 32054
+SIZE (cargo/serde_yaml-0.9.34+deprecated.tar.gz) = 65290
+SIZE (cargo/sha1-0.10.6.tar.gz) = 13517
+SIZE (cargo/sharded-slab-0.1.7.tar.gz) = 58227
+SIZE (cargo/shlex-1.3.0.tar.gz) = 18713
+SIZE (cargo/signal-hook-0.3.17.tar.gz) = 50296
+SIZE (cargo/signal-hook-mio-0.2.4.tar.gz) = 9314
+SIZE (cargo/signal-hook-registry-1.4.2.tar.gz) = 18064
+SIZE (cargo/simdutf8-0.1.5.tar.gz) = 28488
+SIZE (cargo/slab-0.4.9.tar.gz) = 17108
+SIZE (cargo/smallvec-1.13.2.tar.gz) = 35216
+SIZE (cargo/socket2-0.5.8.tar.gz) = 56309
+SIZE (cargo/spin-0.9.8.tar.gz) = 38958
+SIZE (cargo/stable_deref_trait-1.2.0.tar.gz) = 8054
+SIZE (cargo/strsim-0.11.1.tar.gz) = 14266
+SIZE (cargo/structmeta-0.3.0.tar.gz) = 10323
+SIZE (cargo/structmeta-derive-0.3.0.tar.gz) = 12500
+SIZE (cargo/subtle-2.6.1.tar.gz) = 14562
+SIZE (cargo/syn-2.0.90.tar.gz) = 290584
+SIZE (cargo/synstructure-0.13.1.tar.gz) = 18327
+SIZE (cargo/testcontainers-0.23.1.tar.gz) = 48203
+SIZE (cargo/thiserror-1.0.69.tar.gz) = 22198
+SIZE (cargo/thiserror-impl-1.0.69.tar.gz) = 18365
+SIZE (cargo/thread_local-1.1.8.tar.gz) = 13962
+SIZE (cargo/time-0.3.37.tar.gz) = 123257
+SIZE (cargo/time-core-0.1.2.tar.gz) = 7191
+SIZE (cargo/time-macros-0.2.19.tar.gz) = 24268
+SIZE (cargo/tinystr-0.7.6.tar.gz) = 16971
+SIZE (cargo/tinyvec-1.8.0.tar.gz) = 46796
+SIZE (cargo/tinyvec_macros-0.1.1.tar.gz) = 5865
+SIZE (cargo/tokio-1.42.0.tar.gz) = 806998
+SIZE (cargo/tokio-fd-0.3.0.tar.gz) = 6152
+SIZE (cargo/tokio-macros-2.4.0.tar.gz) = 12501
+SIZE (cargo/tokio-rustls-0.24.1.tar.gz) = 33049
+SIZE (cargo/tokio-rustls-0.26.1.tar.gz) = 31214
+SIZE (cargo/tokio-stream-0.1.17.tar.gz) = 38477
+SIZE (cargo/tokio-tar-0.3.1.tar.gz) = 49485
+SIZE (cargo/tokio-util-0.7.13.tar.gz) = 115191
+SIZE (cargo/tower-service-0.3.3.tar.gz) = 6950
+SIZE (cargo/tracing-0.1.41.tar.gz) = 82448
+SIZE (cargo/tracing-attributes-0.1.28.tar.gz) = 33280
+SIZE (cargo/tracing-core-0.1.33.tar.gz) = 63434
+SIZE (cargo/tracing-log-0.2.0.tar.gz) = 17561
+SIZE (cargo/tracing-subscriber-0.3.19.tar.gz) = 198345
+SIZE (cargo/try-lock-0.2.5.tar.gz) = 4314
+SIZE (cargo/typenum-1.17.0.tar.gz) = 42849
+SIZE (cargo/unicode-ident-1.0.14.tar.gz) = 47547
+SIZE (cargo/unsafe-libyaml-0.2.11.tar.gz) = 62101
+SIZE (cargo/untrusted-0.7.1.tar.gz) = 7924
+SIZE (cargo/untrusted-0.9.0.tar.gz) = 14447
+SIZE (cargo/url-2.5.4.tar.gz) = 81097
+SIZE (cargo/urlencoding-2.1.3.tar.gz) = 6538
+SIZE (cargo/utf-8-0.7.6.tar.gz) = 10422
+SIZE (cargo/utf16_iter-1.0.5.tar.gz) = 9736
+SIZE (cargo/utf8_iter-1.0.4.tar.gz) = 10437
+SIZE (cargo/utf8parse-0.2.2.tar.gz) = 13499
+SIZE (cargo/uuid-1.11.0.tar.gz) = 47683
+SIZE (cargo/valuable-0.1.0.tar.gz) = 27718
+SIZE (cargo/version_check-0.9.5.tar.gz) = 15554
+SIZE (cargo/walkdir-2.5.0.tar.gz) = 23951
+SIZE (cargo/want-0.3.1.tar.gz) = 6398
+SIZE (cargo/wasi-0.11.0+wasi-snapshot-preview1.tar.gz) = 28131
+SIZE (cargo/wasm-bindgen-0.2.99.tar.gz) = 46136
+SIZE (cargo/wasm-bindgen-backend-0.2.99.tar.gz) = 30928
+SIZE (cargo/wasm-bindgen-macro-0.2.99.tar.gz) = 7011
+SIZE (cargo/wasm-bindgen-macro-support-0.2.99.tar.gz) = 22800
+SIZE (cargo/wasm-bindgen-shared-0.2.99.tar.gz) = 7773
+SIZE (cargo/which-4.4.2.tar.gz) = 15953
+SIZE (cargo/widestring-1.1.0.tar.gz) = 85046
+SIZE (cargo/winapi-0.3.9.tar.gz) = 1200382
+SIZE (cargo/winapi-i686-pc-windows-gnu-0.4.0.tar.gz) = 2918815
+SIZE (cargo/winapi-util-0.1.9.tar.gz) = 12464
+SIZE (cargo/winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz) = 2947998
+SIZE (cargo/windows-core-0.52.0.tar.gz) = 42154
+SIZE (cargo/windows-sys-0.48.0.tar.gz) = 2628884
+SIZE (cargo/windows-sys-0.52.0.tar.gz) = 2576877
+SIZE (cargo/windows-sys-0.59.0.tar.gz) = 2387323
+SIZE (cargo/windows-targets-0.48.5.tar.gz) = 6904
+SIZE (cargo/windows-targets-0.52.6.tar.gz) = 6403
+SIZE (cargo/windows_aarch64_gnullvm-0.48.5.tar.gz) = 418492
+SIZE (cargo/windows_aarch64_gnullvm-0.52.6.tar.gz) = 435718
+SIZE (cargo/windows_aarch64_msvc-0.48.5.tar.gz) = 798483
+SIZE (cargo/windows_aarch64_msvc-0.52.6.tar.gz) = 832615
+SIZE (cargo/windows_i686_gnu-0.48.5.tar.gz) = 844891
+SIZE (cargo/windows_i686_gnu-0.52.6.tar.gz) = 880402
+SIZE (cargo/windows_i686_gnullvm-0.52.6.tar.gz) = 475940
+SIZE (cargo/windows_i686_msvc-0.48.5.tar.gz) = 864300
+SIZE (cargo/windows_i686_msvc-0.52.6.tar.gz) = 901163
+SIZE (cargo/windows_x86_64_gnu-0.48.5.tar.gz) = 801619
+SIZE (cargo/windows_x86_64_gnu-0.52.6.tar.gz) = 836363
+SIZE (cargo/windows_x86_64_gnullvm-0.48.5.tar.gz) = 418486
+SIZE (cargo/windows_x86_64_gnullvm-0.52.6.tar.gz) = 435707
+SIZE (cargo/windows_x86_64_msvc-0.48.5.tar.gz) = 798412
+SIZE (cargo/windows_x86_64_msvc-0.52.6.tar.gz) = 832564
+SIZE (cargo/winreg-0.50.0.tar.gz) = 29703
+SIZE (cargo/write16-1.0.0.tar.gz) = 7218
+SIZE (cargo/writeable-0.5.5.tar.gz) = 22354
+SIZE (cargo/x509-parser-0.16.0.tar.gz) = 92925
+SIZE (cargo/xattr-1.3.1.tar.gz) = 12580
+SIZE (cargo/yasna-0.5.2.tar.gz) = 34859
+SIZE (cargo/yoke-0.7.5.tar.gz) = 29673
+SIZE (cargo/yoke-derive-0.7.5.tar.gz) = 7525
+SIZE (cargo/zerocopy-0.7.35.tar.gz) = 152645
+SIZE (cargo/zerocopy-derive-0.7.35.tar.gz) = 37829
+SIZE (cargo/zerofrom-0.1.5.tar.gz) = 5091
+SIZE (cargo/zerofrom-derive-0.1.5.tar.gz) = 8285
+SIZE (cargo/zeroize-1.8.1.tar.gz) = 20029
+SIZE (cargo/zerovec-0.10.4.tar.gz) = 126398
+SIZE (cargo/zerovec-derive-0.10.3.tar.gz) = 19438
+SIZE (wstunnel-10.1.7.tar.gz) = 281043
diff --git a/net/wstunnel/patches/patch-Cargo_toml 
b/net/wstunnel/patches/patch-Cargo_toml
new file mode 100644
index 00000000000..6a20f83b282
--- /dev/null
+++ b/net/wstunnel/patches/patch-Cargo_toml
@@ -0,0 +1,12 @@
+Index: Cargo.toml
+--- Cargo.toml.orig
++++ Cargo.toml
+@@ -15,7 +15,7 @@ bb8 = { version = "0.9.0", features = [] }
+ bytes = { version = "1.9.0", features = [] }
+ clap = { version = "4.5.23", features = ["derive", "env"] }
+ fast-socks5 = { version = "0.9.6", features = [] }
+-fastwebsockets = { git = "https://github.com/erebe/fastwebsockets.git";, 
features = ["upgrade", "simd", "unstable-split"] }
++fastwebsockets = { version = "0.8.0", features = ["upgrade", "simd", 
"unstable-split"] }
+ futures-util = { version = "0.3.31" }
+ hickory-resolver = { version = "0.24.2", features = ["tokio", 
"dns-over-https-rustls", "dns-over-rustls", "native-certs"] }
+ ppp = { version = "2.2.0", features = [] }
diff --git 
a/net/wstunnel/patches/patch-modcargo-crates_fastwebsockets-0_8_0_src_lib_rs 
b/net/wstunnel/patches/patch-modcargo-crates_fastwebsockets-0_8_0_src_lib_rs
new file mode 100644
index 00000000000..eed9b00ef2a
--- /dev/null
+++ b/net/wstunnel/patches/patch-modcargo-crates_fastwebsockets-0_8_0_src_lib_rs
@@ -0,0 +1,46 @@
+Index: modcargo-crates/fastwebsockets-0.8.0/src/lib.rs
+--- modcargo-crates/fastwebsockets-0.8.0/src/lib.rs.orig
++++ modcargo-crates/fastwebsockets-0.8.0/src/lib.rs
+@@ -342,8 +342,23 @@ impl<'f, S> WebSocketWrite<S> {
+   {
+     self.write_half.write_frame(&mut self.stream, frame).await
+   }
++
++  pub async fn flush(&mut self) -> Result<(), WebSocketError>
++  where
++    S: AsyncWrite + Unpin,
++  {
++    flush(&mut self.stream).await
++  }
+ }
+ 
++#[inline]
++async fn flush<S>(stream: &mut S) -> Result<(), WebSocketError>
++where
++  S: AsyncWrite + Unpin,
++{
++  stream.flush().await.map_err(|e| WebSocketError::IoError(e))
++}
++
+ /// WebSocket protocol implementation over an async stream.
+ pub struct WebSocket<S> {
+   stream: S,
+@@ -493,6 +508,18 @@ impl<'f, S> WebSocket<S> {
+   {
+     self.write_half.write_frame(&mut self.stream, frame).await?;
+     Ok(())
++  }
++
++  /// Flushes the data from the underlying stream.
++  ///
++  /// if the underlying stream is buffered (i.e: TlsStream<TcpStream>), it is 
needed to call flush
++  /// to be sure that the written frame are correctly pushed down to the 
bottom stream/channel.
++  ///
++  pub async fn flush(&mut self) -> Result<(), WebSocketError>
++  where
++    S: AsyncWrite + Unpin,
++  {
++    flush(&mut self.stream).await
+   }
+ 
+   /// Reads a frame from the stream.
diff --git a/net/wstunnel/pkg/DESCR b/net/wstunnel/pkg/DESCR
new file mode 100644
index 00000000000..c96f5e89674
--- /dev/null
+++ b/net/wstunnel/pkg/DESCR
@@ -0,0 +1 @@
+Tunnel all your traffic over Websocket or HTTP2 - Bypass firewalls/DPI
diff --git a/net/wstunnel/pkg/PLIST b/net/wstunnel/pkg/PLIST
new file mode 100644
index 00000000000..7f046a29ad2
--- /dev/null
+++ b/net/wstunnel/pkg/PLIST
@@ -0,0 +1,2 @@
+@rcscript ${RCDIR}/wstunnel
+@bin bin/wstunnel
diff --git a/net/wstunnel/pkg/wstunnel.rc b/net/wstunnel/pkg/wstunnel.rc
new file mode 100644
index 00000000000..c3da13e4361
--- /dev/null
+++ b/net/wstunnel/pkg/wstunnel.rc
@@ -0,0 +1,11 @@
+#!/bin/ksh
+
+daemon="${TRUEPREFIX}/bin/wstunnel"
+daemon_user="_wstunnel"
+daemon_logger="daemon.info"
+
+rc_reload="NO"
+
+. /etc/rc.d/rc.subr
+
+rc_cmd $1
-- 
2.47.1

Reply via email to