diff --git a/Cargo.lock b/Cargo.lock index afbacc2..073d5b3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 3 [[package]] name = "addr2line" -version = "0.17.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ "gimli", ] @@ -42,13 +42,54 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "0.7.19" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4f55bd91a0978cbfd91c457a164bab8b4001c833b7f323132c0a4e1922dd44e" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" dependencies = [ "memchr", ] +[[package]] +name = "amplify" +version = "4.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8629db306c0bbeb0a402e2918bdcf0026b5ddb24c46460f3bf5410b350d98710" +dependencies = [ + "amplify_derive", + "amplify_num", + "ascii", + "wasm-bindgen", +] + +[[package]] +name = "amplify_derive" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759dcbfaf94d838367a86d493ec34ccc8aa6fe365cb7880d6bf89006de24d9c1" +dependencies = [ + "amplify_syn", + "proc-macro2", + "quote", + "syn 1.0.103", +] + +[[package]] +name = "amplify_num" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddce3bc63e807ea02065e8d8b702695f3d302ae4158baddff8b0ce5c73947251" + +[[package]] +name = "amplify_syn" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7736fb8d473c0d83098b5bac44df6a561e20470375cd8bcae30516dc889fd62a" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.103", +] + [[package]] name = "android-tzdata" version = "0.1.1" @@ -88,17 +129,11 @@ version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" -[[package]] -name = "arrayref" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544" - [[package]] name = "arti-client" -version = "0.8.3" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03e724eb75d44a875ab5f33fc17dbb06c20fc39e059e431e86dc9bcec5a9174b" +checksum = "a1d225f2644ef87330b1fc55471c0a66dfb919e92d4113c9835fa2bbe840c08b" dependencies = [ "cfg-if", "derive_builder_fork_arti", @@ -125,6 +160,8 @@ dependencies = [ "tor-dirmgr", "tor-error", "tor-guardmgr", + "tor-keymgr", + "tor-linkspec", "tor-llcrypto", "tor-netdir", "tor-netdoc", @@ -135,11 +172,17 @@ dependencies = [ "void", ] +[[package]] +name = "ascii" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16" + [[package]] name = "async-compression" -version = "0.3.15" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942c7cd7ae39e91bde4820d74132e9862e62c2f386c3aa90ccf55949f5bad63a" +checksum = "f658e2baef915ba0f26f1f7c42bfb8e12f532a01f449a090ded75ae7a07e9ba2" dependencies = [ "flate2", "futures-core", @@ -153,13 +196,12 @@ dependencies = [ [[package]] name = "async-rustls" -version = "0.3.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93b21a03b7c21702a0110f9f8d228763a533570deb376119042dabf33c37a01a" +checksum = "bd10f063fb367d26334e10c50c67ea31ac542b8c3402be2251db4cfc5d74ba66" dependencies = [ "futures-io", - "rustls", - "webpki", + "rustls 0.21.7", ] [[package]] @@ -175,9 +217,9 @@ dependencies = [ [[package]] name = "async_executors" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0b2463773401e1f684136f9cdb956cf611f22172472cf3f049e72123f59e359" +checksum = "a982d2f86de6137cc05c9db9a915a19886c97911f9790d04f174cede74be01a5" dependencies = [ "blanket", "futures-core", @@ -218,24 +260,30 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backtrace" -version = "0.3.66" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab84319d616cfb654d03394f38ab7e6f0919e181b1b57e1fd15e7fb4077d9a7" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ "addr2line", "cc", "cfg-if", "libc", - "miniz_oxide", + "miniz_oxide 0.7.1", "object", "rustc-demangle", ] +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + [[package]] name = "base64" -version = "0.13.1" +version = "0.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" [[package]] name = "base64ct" @@ -257,13 +305,13 @@ checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" [[package]] name = "blanket" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b04ce3d2372d05d1ef4ea3fdf427da6ae3c17ca06d688a107b5344836276bc3" +checksum = "e0b121a9fe0df916e362fb3271088d071159cdf11db0e4182d02152850756eff" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.38", ] [[package]] @@ -316,9 +364,9 @@ checksum = "ec8a7b6a70fde80372154c65702f00a0f56f3e1c36abbc6c440484be248856db" [[package]] name = "caret" -version = "0.3.2" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6901918bdec08a3442c1ee8cbaadc5b344138de35bbe3d4ddff248202f4f9e3d" +checksum = "7a472d18b7a8b73ecefb280476c3d2b832ac4920dfd0928f3fab94c46b659c4a" [[package]] name = "cc" @@ -388,6 +436,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "concurrent-queue" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400" +dependencies = [ + "crossbeam-utils", +] + [[package]] name = "config" version = "0.13.2" @@ -467,6 +524,18 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "crypto-bigint" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "740fe28e594155f10cfc383984cbefd529d7396050557148f79cb0f621204124" +dependencies = [ + "generic-array", + "rand_core 0.6.4", + "subtle", + "zeroize", +] + [[package]] name = "crypto-common" version = "0.1.6" @@ -569,17 +638,50 @@ dependencies = [ "syn 2.0.38", ] +[[package]] +name = "data-encoding" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" + [[package]] name = "der" -version = "0.6.1" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" +checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" dependencies = [ "const-oid", "pem-rfc7468", "zeroize", ] +[[package]] +name = "derive-adhoc" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5283ac2881753c76c0892406705553f0d9ab30649f81e18964d3408f4501edb8" +dependencies = [ + "derive-adhoc-macros", + "heck", +] + +[[package]] +name = "derive-adhoc-macros" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c21b673a9b8c78c34908e6fcb42b922e11c4df2de5237f1c3f58d3285904a84b" +dependencies = [ + "heck", + "itertools 0.10.5", + "proc-macro-crate", + "proc-macro2", + "quote", + "sha3", + "strum 0.24.1", + "syn 1.0.103", + "void", +] + [[package]] name = "derive_builder_core_fork_arti" version = "0.11.2" @@ -651,16 +753,7 @@ version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" dependencies = [ - "dirs-sys 0.4.1", -] - -[[package]] -name = "dirs" -version = "4.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" -dependencies = [ - "dirs-sys 0.3.7", + "dirs-sys", ] [[package]] @@ -669,18 +762,7 @@ version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" dependencies = [ - "dirs-sys 0.4.1", -] - -[[package]] -name = "dirs-sys" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" -dependencies = [ - "libc", - "redox_users", - "winapi", + "dirs-sys", ] [[package]] @@ -714,9 +796,23 @@ checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" [[package]] name = "dyn-clone" -version = "1.0.9" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f94fa09c2aeea5b8839e414b7b841bf429fd25b9c522116ac97ee87856d88b2" +checksum = "23d2f3407d9a573d666de4b5bdf10569d73ca9478087346697dcbae6244bfbcd" + +[[package]] +name = "ecdsa" +version = "0.16.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4b1e0c257a9e9f25f90ff76d7a68360ed497ee519c8e428d1825ef0000799d4" +dependencies = [ + "der", + "digest 0.10.7", + "elliptic-curve", + "rfc6979", + "signature 2.0.0", + "spki", +] [[package]] name = "ed25519" @@ -760,6 +856,25 @@ version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" +[[package]] +name = "elliptic-curve" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d97ca172ae9dc9f9b779a6e3a65d308f2af74e5b8c921299075bdb4a0370e914" +dependencies = [ + "base16ct", + "crypto-bigint", + "digest 0.10.7", + "ff", + "generic-array", + "group", + "pkcs8", + "rand_core 0.6.4", + "sec1", + "subtle", + "zeroize", +] + [[package]] name = "enum-ordinalize" version = "3.1.12" @@ -792,9 +907,14 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "event-listener" -version = "2.5.3" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" +checksum = "29e56284f00d94c1bc7fd3c77027b4623c88c1f53d8d2394c6199f2921dea325" +dependencies = [ + "concurrent-queue", + "parking", + "pin-project-lite", +] [[package]] name = "fallible-iterator" @@ -808,6 +928,16 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] + [[package]] name = "flate2" version = "1.0.24" @@ -815,7 +945,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6" dependencies = [ "crc32fast", - "miniz_oxide", + "miniz_oxide 0.5.4", ] [[package]] @@ -841,18 +971,18 @@ dependencies = [ [[package]] name = "fs-mistrust" -version = "0.6.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ecd220959db8a16a94faad75da2d478a7f7944577548be92a595289b5922049" +checksum = "1b7187f1f75fcf8a37b11780c25d47cdff63b4e6ccab952f9678d0fb14a3650d" dependencies = [ "derive_builder_fork_arti", - "dirs 5.0.1", + "dirs", "educe", "libc", "once_cell", + "pwd-grp", "serde", "thiserror", - "users", "walkdir", ] @@ -963,12 +1093,13 @@ dependencies = [ [[package]] name = "generic-array" -version = "0.14.6" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", + "zeroize", ] [[package]] @@ -997,9 +1128,20 @@ dependencies = [ [[package]] name = "gimli" -version = "0.26.2" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff", + "rand_core 0.6.4", + "subtle", +] [[package]] name = "hashbrown" @@ -1027,9 +1169,9 @@ dependencies = [ [[package]] name = "heck" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" @@ -1046,6 +1188,12 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + [[package]] name = "hkdf" version = "0.12.3" @@ -1167,6 +1315,7 @@ checksum = "8adf3ddd720272c6ea8bf59463c04e0f93d0bbf7c5439b691bca2987e0270897" dependencies = [ "equivalent", "hashbrown 0.14.1", + "serde", ] [[package]] @@ -1187,6 +1336,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.4" @@ -1286,6 +1444,7 @@ dependencies = [ "postage", "rand 0.8.5", "serde_json", + "signature 2.0.0", "tempdir", "tokio", "tokio-rustls", @@ -1334,6 +1493,15 @@ dependencies = [ "pkg-config", ] +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + [[package]] name = "memchr" version = "2.5.0" @@ -1342,9 +1510,9 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" [[package]] name = "memmap2" -version = "0.5.8" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b182332558b18d807c4ce1ca8ca983b34c3ee32765e47b3f0f69b90355cc1dc" +checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed" dependencies = [ "libc", ] @@ -1376,6 +1544,15 @@ dependencies = [ "adler", ] +[[package]] +name = "miniz_oxide" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" +dependencies = [ + "adler", +] + [[package]] name = "mio" version = "0.8.8" @@ -1478,30 +1655,30 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.5.11" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" +checksum = "70bf6736f74634d299d00086f02986875b3c2d924781a6a2cb6c201e73da0ceb" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.5.11" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" +checksum = "56ea360eafe1022f7cc56cd7b869ed57330fb2453d0c7831d99b74c65d2f5597" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.38", ] [[package]] name = "object" -version = "0.29.0" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21158b2c33aa6d4561f1c0a6ea283ca92bc54802a93b263e910746d679a7eb53" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "memchr", ] @@ -1524,12 +1701,51 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" +[[package]] +name = "ordered-float" +version = "2.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c" +dependencies = [ + "num-traits", +] + [[package]] name = "overload" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +[[package]] +name = "p256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2 0.10.8", +] + +[[package]] +name = "p384" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70786f51bcc69f6a4c0360e063a4cac5419ef7c5cd5b3c99ad70f3be5ba79209" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2 0.10.8", +] + +[[package]] +name = "parking" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" + [[package]] name = "parking_lot" version = "0.12.1" @@ -1567,9 +1783,9 @@ checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" [[package]] name = "pem-rfc7468" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d159833a9105500e0398934e205e0773f0b27529557134ecfc51c27646adac" +checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" dependencies = [ "base64ct", ] @@ -1644,9 +1860,9 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.2.9" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" [[package]] name = "pin-utils" @@ -1656,21 +1872,20 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkcs1" -version = "0.4.1" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eff33bdbdfc54cc98a2eca766ebdec3e1b8fb7387523d5c9c9a2891da856f719" +checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f" dependencies = [ "der", "pkcs8", "spki", - "zeroize", ] [[package]] name = "pkcs8" -version = "0.9.0" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" dependencies = [ "der", "spki", @@ -1703,6 +1918,15 @@ version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +[[package]] +name = "primeorder" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c2fcef82c0ec6eefcc179b978446c399b3cdf73c392c35604e399eee6df1ee3" +dependencies = [ + "elliptic-curve", +] + [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -1722,6 +1946,18 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "pwd-grp" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6955c41fd7e4283bdf6ff3e7218b7e3f8ef24c4236b31d22be050f4cfd5e2a2c" +dependencies = [ + "derive-adhoc", + "libc", + "paste", + "thiserror", +] + [[package]] name = "quote" version = "1.0.33" @@ -1861,13 +2097,34 @@ dependencies = [ [[package]] name = "regex" -version = "1.7.0" +version = "1.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e076559ef8e241f2ae3479e36f97bd5741c0330689e217ad51ce2c76808b868a" +checksum = "12de2eff854e5fa4b1295edd650e227e9d8fb0c9e90b12e7f36d6a6811791a29" dependencies = [ "aho-corasick", "memchr", - "regex-syntax", + "regex-automata 0.3.7", + "regex-syntax 0.7.5", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.28", +] + +[[package]] +name = "regex-automata" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.7.5", ] [[package]] @@ -1876,6 +2133,12 @@ version = "0.6.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" +[[package]] +name = "regex-syntax" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" + [[package]] name = "remove_dir_all" version = "0.5.3" @@ -1893,9 +2156,19 @@ checksum = "4389f1d5789befaf6029ebd9f7dac4af7f7e3d61b69d4f30e2ac02b57e7712b0" [[package]] name = "retry-error" -version = "0.3.1" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5e700775c6b1ef3b76bda447c1d88921334a6127600cc041140b29dc8582f19" + +[[package]] +name = "rfc6979" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92e241518176427272e543bd08236d46018e4cd7bbbb4b510c508e66e75d00a9" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac", + "subtle", +] [[package]] name = "ring" @@ -1914,11 +2187,12 @@ dependencies = [ [[package]] name = "rsa" -version = "0.8.2" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55a77d189da1fee555ad95b7e50e7457d91c0e089ec68ca69ad2989413bbdab4" +checksum = "6ab43bb47d23c1a631b4b680199a45255dce26fa9ab2fa902581f624ff13e6a8" dependencies = [ "byteorder", + "const-oid", "digest 0.10.7", "num-bigint-dig", "num-integer", @@ -1927,7 +2201,9 @@ dependencies = [ "pkcs1", "pkcs8", "rand_core 0.6.4", - "signature 2.1.0", + "sha2 0.10.8", + "signature 2.0.0", + "spki", "subtle", "zeroize", ] @@ -1974,6 +2250,28 @@ dependencies = [ "webpki", ] +[[package]] +name = "rustls" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" +dependencies = [ + "log", + "ring", + "rustls-webpki", + "sct", +] + +[[package]] +name = "rustls-webpki" +version = "0.101.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c7d5dece342910d9ba34d259310cae3e0154b873b35408b787b59bce53d34fe" +dependencies = [ + "ring", + "untrusted", +] + [[package]] name = "rustversion" version = "1.0.9" @@ -1988,9 +2286,9 @@ checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09" [[package]] name = "safelog" -version = "0.2.2" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a9e9f807e0ec5a1657bb2f23fa52c5c5a33e7c3d01ff97cf36e35ac6215bcc" +checksum = "cbde572e12860540299239347c110992c8082cafb526a024c4efe79b2891b6df" dependencies = [ "derive_more", "educe", @@ -2010,9 +2308,9 @@ dependencies = [ [[package]] name = "sanitize-filename" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08c502bdb638f1396509467cb0580ef3b29aa2a45c5d43e5d84928241280296c" +checksum = "2ed72fbaf78e6f2d41744923916966c4fbe3d7c74e3037a8ee482f1115572603" dependencies = [ "lazy_static", "regex", @@ -2034,6 +2332,20 @@ dependencies = [ "untrusted", ] +[[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct", + "der", + "generic-array", + "pkcs8", + "subtle", + "zeroize", +] + [[package]] name = "semver" version = "1.0.14" @@ -2049,6 +2361,16 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-value" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c" +dependencies = [ + "ordered-float", + "serde", +] + [[package]] name = "serde_derive" version = "1.0.189" @@ -2091,14 +2413,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "2.3.3" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07ff71d2c147a7b57362cead5e22f772cd52f6ab31cfcd9edcd7f6aeb2a0afbe" +checksum = "64cd236ccc1b7a29e7e2739f27c0b2dd199804abc4290e32f59f3b68d6405c23" dependencies = [ "base64", "chrono", "hex", "indexmap 1.9.3", + "indexmap 2.0.2", "serde", "serde_json", "serde_with_macros", @@ -2107,9 +2430,9 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "2.3.3" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "881b6f881b17d13214e5d494c939ebab463d01264ce1811e9d4ac3a882e7695f" +checksum = "93634eb5f75a2323b16de4748022ac4297f9e76b6dced2be287a099f41b5e788" dependencies = [ "darling 0.20.3", "proc-macro2", @@ -2143,9 +2466,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.6" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", @@ -2177,7 +2500,7 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da03fa3b94cc19e3ebfc88c4229c49d8f08cdbd1228870a45f0ffdf84988e14b" dependencies = [ - "dirs 4.0.0", + "dirs", ] [[package]] @@ -2197,9 +2520,9 @@ checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" [[package]] name = "signature" -version = "2.1.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" +checksum = "8fe458c98333f9c8152221191a77e2a44e8325d0193484af2e9421a53019e57d" dependencies = [ "digest 0.10.7", "rand_core 0.6.4", @@ -2232,6 +2555,15 @@ dependencies = [ "autocfg", ] +[[package]] +name = "slotmap" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342" +dependencies = [ + "version_check", +] + [[package]] name = "smallvec" version = "1.10.0" @@ -2256,14 +2588,54 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" [[package]] name = "spki" -version = "0.6.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" +checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a" dependencies = [ "base64ct", "der", ] +[[package]] +name = "ssh-cipher" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caac132742f0d33c3af65bfcde7f6aa8f62f0e991d80db99149eb9d44708784f" +dependencies = [ + "cipher", + "ssh-encoding", +] + +[[package]] +name = "ssh-encoding" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb9242b9ef4108a78e8cd1a2c98e193ef372437f8c22be363075233321dd4a15" +dependencies = [ + "base64ct", + "pem-rfc7468", + "sha2 0.10.8", +] + +[[package]] +name = "ssh-key" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2180b3bc4955efd5661a97658d3cf4c8107e0d132f619195afe9486c13cca313" +dependencies = [ + "p256", + "p384", + "rand_core 0.6.4", + "rsa", + "sec1", + "sha2 0.10.8", + "signature 2.0.0", + "ssh-cipher", + "ssh-encoding", + "subtle", + "zeroize", +] + [[package]] name = "static_assertions" version = "1.1.0" @@ -2282,7 +2654,16 @@ version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" dependencies = [ - "strum_macros", + "strum_macros 0.24.3", +] + +[[package]] +name = "strum" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" +dependencies = [ + "strum_macros 0.25.3", ] [[package]] @@ -2298,6 +2679,19 @@ dependencies = [ "syn 1.0.103", ] +[[package]] +name = "strum_macros" +version = "0.25.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.38", +] + [[package]] name = "subtle" version = "2.4.1" @@ -2465,7 +2859,7 @@ version = "0.23.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" dependencies = [ - "rustls", + "rustls 0.20.7", "tokio", "webpki", ] @@ -2529,9 +2923,9 @@ dependencies = [ [[package]] name = "tor-async-utils" -version = "0.0.1" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7468f5b0ee9ab7c59c6537e8f8e86d2c61160ccd75093ba1a5122c708150e0d" +checksum = "55ed39eb93f85717a0d1e0061b0e2cb3fbd8ac043fcbbdabca03552ac6696370" dependencies = [ "futures", "pin-project", @@ -2542,9 +2936,9 @@ dependencies = [ [[package]] name = "tor-basic-utils" -version = "0.6.0" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b30cba3fc3a2efb1711738fc5c686db6307945ac9577c349a077a06e24c52f7" +checksum = "0d5e615a4da5d6fa4cf9b1aa91ba03af7b74c771834329aa8c3a31a24cde3e19" dependencies = [ "hex", "libc", @@ -2557,15 +2951,13 @@ dependencies = [ [[package]] name = "tor-bytes" -version = "0.6.3" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7c01a0bd4fd0345757c2e237b68002eec6e38be90063dea65803f4f7c50969c" +checksum = "69e6acef7dad3e9b3f2d12050ecc63195bbc643cdb75fca17f83d6d1bcef0760" dependencies = [ - "arrayref", "bytes", "digest 0.10.7", "educe", - "generic-array", "getrandom 0.2.8", "signature 1.6.4", "thiserror", @@ -2576,11 +2968,10 @@ dependencies = [ [[package]] name = "tor-cell" -version = "0.9.1" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f6b5fe44bd9b8c9f041d2bf1554002054e1bd21a608edf964c7d5b5791f54ce" +checksum = "18f72aab10ca4107f4a026a67f49918c07cebd7252a4c5797bd724512d625399" dependencies = [ - "arrayref", "bitflags 2.4.1", "bytes", "caret", @@ -2600,9 +2991,9 @@ dependencies = [ [[package]] name = "tor-cert" -version = "0.6.3" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75492fa5ea402605d2c6f46c8c0c7c094a78160ee87487019a95ec86e87a5b3" +checksum = "4134727f76a043169542812a4f6b2deaf287a240acb579758ae5add43c4a3d51" dependencies = [ "caret", "digest 0.10.7", @@ -2615,9 +3006,9 @@ dependencies = [ [[package]] name = "tor-chanmgr" -version = "0.8.3" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae6b6159749a9a8aa41dc4b394b68b4cf9fc29a81bf220d8d82fb5ca488cfbdd" +checksum = "355478f262ccda34d3679c620097bc957dda36555346974e9df5c3e3af98f499" dependencies = [ "async-trait", "derive_builder_fork_arti", @@ -2646,9 +3037,9 @@ dependencies = [ [[package]] name = "tor-checkable" -version = "0.4.3" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891f9bb1011fee8c32cb4ef132c63af6f6f22c5d7c9930fc6be65ab87250e45b" +checksum = "43f6eb12732d7f2faec544c20ac362dc85c37d3979e37da43a61f403917a9d1d" dependencies = [ "humantime", "signature 1.6.4", @@ -2658,10 +3049,11 @@ dependencies = [ [[package]] name = "tor-circmgr" -version = "0.7.3" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4147c267458f563185e149038444b75889ff6a4a940e83e9e6137cdf7df12eb8" +checksum = "aa6606302270d8c27a09d20faef4b3d79ddf79f8af91af12a8d73f8ebc048b85" dependencies = [ + "amplify", "async-trait", "bounded-vec-deque", "derive_builder_fork_arti", @@ -2671,7 +3063,7 @@ dependencies = [ "educe", "futures", "humantime-serde", - "itertools", + "itertools 0.11.0", "once_cell", "pin-project", "rand 0.8.5", @@ -2692,41 +3084,45 @@ dependencies = [ "tor-proto", "tor-rtcompat", "tracing", + "void", "weak-table", ] [[package]] name = "tor-config" -version = "0.8.0" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3fd25c1dfb170d5e9e0c0473d901494df76620677f06ff575b1c5c7a94341a0" +checksum = "8d52456c75aafbe3f0aa33d0b25d36ca294aba4b29be6d89330974d27a235930" dependencies = [ "config", + "derive-adhoc", "derive_builder_fork_arti", "directories", "educe", "either", "fs-mistrust", - "itertools", + "itertools 0.11.0", "once_cell", "paste", "regex", "serde", + "serde-value", "serde_ignored", "shellexpand", - "strum", + "strum 0.25.0", "thiserror", "toml 0.7.8", "tor-basic-utils", "tor-error", "tracing", + "void", ] [[package]] name = "tor-consdiff" -version = "0.4.3" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc903a7f47dc71338f4e11ce38eb090253f19cf3a0c17b81d0375b767016596b" +checksum = "a5f89dc260039f956ee4512420bfcf0b241777b9de15c0053ca82400eeadb63e" dependencies = [ "digest 0.10.7", "hex", @@ -2736,9 +3132,9 @@ dependencies = [ [[package]] name = "tor-dirclient" -version = "0.6.3" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "974439c519ed5bcab3da96c8e97dcc5d326186d4a4aa21b349553486b603a8c5" +checksum = "a9b2150950a18426cacabbbfcb8da12418deccceba0eb3e7b32367843699b8ed" dependencies = [ "async-compression", "base64ct", @@ -2748,7 +3144,7 @@ dependencies = [ "http", "httparse", "httpdate", - "itertools", + "itertools 0.11.0", "memchr", "thiserror", "tor-circmgr", @@ -2763,9 +3159,9 @@ dependencies = [ [[package]] name = "tor-dirmgr" -version = "0.9.3" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d14e44ff456abe64e4db5f1deaf3f6c1b2d6ec3de89824dd8c396823a629454c" +checksum = "e84a50723e65fa2359a461cdd8d88e3962702ae977f8a3aba63bdd18bf7a2449" dependencies = [ "async-trait", "base64ct", @@ -2780,7 +3176,7 @@ dependencies = [ "hex", "humantime", "humantime-serde", - "itertools", + "itertools 0.11.0", "memmap2", "once_cell", "paste", @@ -2792,7 +3188,7 @@ dependencies = [ "scopeguard", "serde", "signature 1.6.4", - "strum", + "strum 0.25.0", "thiserror", "time", "tor-basic-utils", @@ -2813,23 +3209,27 @@ dependencies = [ [[package]] name = "tor-error" -version = "0.4.1" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e1836cffd0dad2e0070b370c47ad070ace754a4b9e52ed7adfabffd1ca33ed5" +checksum = "93fc81bab3bc74b2a1338f2f36d08e9b353d0692ac9917edc2130fa30749a889" dependencies = [ "backtrace", "derive_more", "futures", "once_cell", - "strum", + "paste", + "retry-error", + "static_assertions", + "strum 0.25.0", "thiserror", + "tracing", ] [[package]] name = "tor-guardmgr" -version = "0.8.3" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a98541ace42ade53655e8492736f33657da3a98bbec65ea2f772a432b1c226f5" +checksum = "645bd4e117a80a01c7ae25f8e2b89016977796a0bed5a53b1d7ccac46e9676af" dependencies = [ "base64ct", "derive_builder_fork_arti", @@ -2839,7 +3239,7 @@ dependencies = [ "futures", "humantime", "humantime-serde", - "itertools", + "itertools 0.11.0", "num_enum", "pin-project", "postage", @@ -2847,7 +3247,7 @@ dependencies = [ "retain_mut", "safelog", "serde", - "strum", + "strum 0.25.0", "thiserror", "tor-basic-utils", "tor-config", @@ -2863,23 +3263,73 @@ dependencies = [ "tracing", ] +[[package]] +name = "tor-hscrypto" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae1e8141d9f792d5f72164bb2eda61148d57995901e507ec76ca9fa0a6f63605" +dependencies = [ + "data-encoding", + "derive_more", + "digest 0.10.7", + "itertools 0.11.0", + "paste", + "rand 0.8.5", + "rand_core 0.6.4", + "safelog", + "serde", + "signature 1.6.4", + "subtle", + "thiserror", + "tor-basic-utils", + "tor-bytes", + "tor-error", + "tor-llcrypto", + "tor-units", +] + +[[package]] +name = "tor-keymgr" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf6bbfa64375ea1df9cc88cfa37837b9d679fd52aa6698b9b14bd022e2ae2501" +dependencies = [ + "derive_builder_fork_arti", + "derive_more", + "downcast-rs", + "dyn-clone", + "fs-mistrust", + "itertools 0.11.0", + "rand 0.8.5", + "serde", + "ssh-key", + "thiserror", + "tor-config", + "tor-error", + "tor-hscrypto", + "tor-llcrypto", + "zeroize", +] + [[package]] name = "tor-linkspec" -version = "0.6.3" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cf1b3f115cb8aded47b001f039466995b58f6236a27fed9b02677f983d2e213" +checksum = "4b513ae64334a8b857421d94f28a7257c056845e8c69193ceb3ee21e266981b4" dependencies = [ "base64ct", "by_address", + "caret", "cfg-if", "derive_builder_fork_arti", "derive_more", "educe", "hex", + "itertools 0.11.0", "safelog", "serde", "serde_with", - "strum", + "strum 0.25.0", "thiserror", "tor-basic-utils", "tor-bytes", @@ -2890,12 +3340,11 @@ dependencies = [ [[package]] name = "tor-llcrypto" -version = "0.4.4" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7787f0eb0962b514316c2527799ce019ac90acc8c6db63844cff3282eb3f5904" +checksum = "2bf18047ae09a690e44d30fcb3e977f47a26121bf09a7b5bc30abcff535e94e8" dependencies = [ "aes", - "arrayref", "base64ct", "ctr", "curve25519-dalek", @@ -2910,7 +3359,7 @@ dependencies = [ "safelog", "serde", "sha1", - "sha2 0.10.6", + "sha2 0.10.8", "sha3", "signature 1.6.4", "simple_asn1", @@ -2922,23 +3371,24 @@ dependencies = [ [[package]] name = "tor-netdir" -version = "0.8.1" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05df239e785544eb0374ebaa4ca97a1b3ef8c7aff3dcc54472b6415d53028662" +checksum = "3c11452c38bf6cc412606cc25e1d9896d61cb2c6e76fa30cc72a56e61be2c861" dependencies = [ "bitflags 2.4.1", "derive_builder_fork_arti", "derive_more", "futures", "humantime", - "itertools", + "itertools 0.11.0", "num_enum", "rand 0.8.5", "serde", "signature 1.6.4", "static_assertions", - "strum", + "strum 0.25.0", "thiserror", + "tor-basic-utils", "tor-checkable", "tor-config", "tor-error", @@ -2953,11 +3403,11 @@ dependencies = [ [[package]] name = "tor-netdoc" -version = "0.6.3" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6fd296187e3b93e6ce813a61ff8f8e2f33bab97a0394b6ada3ecf26d99f9926" +checksum = "16fe264705d000e0c86c43e2083c995bb074b89cf6efb7222b9d413c79fd2454" dependencies = [ - "arrayref", + "amplify", "base64ct", "bitflags 2.4.1", "cipher", @@ -2966,32 +3416,36 @@ dependencies = [ "digest 0.10.7", "educe", "hex", + "hex-literal", "humantime", - "itertools", + "itertools 0.11.0", "once_cell", "phf", "serde", "serde_with", "signature 1.6.4", "smallvec", + "subtle", "thiserror", "time", "tinystr", + "tor-basic-utils", "tor-bytes", "tor-cert", "tor-checkable", "tor-error", "tor-llcrypto", "tor-protover", + "visibility", "weak-table", "zeroize", ] [[package]] name = "tor-persist" -version = "0.6.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c4a9c2fe731d1d5ed0d5aa4da28ec30fb7e54d09f6e61a85d1777bde749639d" +checksum = "8acc41bbd75d29bd1552983221e6f88b710753e9bddeafb964e60cf59c75e8c4" dependencies = [ "derive_more", "fs-mistrust", @@ -3006,11 +3460,10 @@ dependencies = [ [[package]] name = "tor-proto" -version = "0.9.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d924605c8c5de4dc39a5a2fdc1f906fe4455ec4a7184a71f232319a89616e519" +checksum = "ef6ba8f478aa3bf0b7dd776f8938f0526399178f20dffe78596187204edaf9c5" dependencies = [ - "arrayref", "asynchronous-codec", "bytes", "cipher", @@ -3020,7 +3473,6 @@ dependencies = [ "digest 0.10.7", "educe", "futures", - "generic-array", "hkdf", "hmac", "pin-project", @@ -3047,14 +3499,15 @@ dependencies = [ "tor-units", "tracing", "typenum", + "void", "zeroize", ] [[package]] name = "tor-protover" -version = "0.4.2" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc0c56d852d1b14885b8a4839ebfde3496894db91a671f4623b9bcd2ec31996e" +checksum = "203fe1e2a4de305d285f8cf4edfe1d392e89c1e13cf69835dad43a0120a6ea83" dependencies = [ "caret", "thiserror", @@ -3062,9 +3515,9 @@ dependencies = [ [[package]] name = "tor-rtcompat" -version = "0.8.2" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f7806c9f301ad4ce37d24ff77a7f636c941e25ab790143d32b1e0fbca40962e" +checksum = "43f92845b434ecb5fbacb1097875a6863365ced6db46194113251483bc8b7605" dependencies = [ "async-rustls", "async-trait", @@ -3072,7 +3525,7 @@ dependencies = [ "educe", "futures", "pin-project", - "rustls", + "rustls 0.21.7", "thiserror", "tokio", "tokio-util", @@ -3081,24 +3534,34 @@ dependencies = [ [[package]] name = "tor-rtmock" -version = "0.7.2" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b14a891d8eafdb7e5c157d4fec2f723ea3d2b05ef9f6cc9379ad4c1dcca6a9f" +checksum = "1cec1e390fb3329d29f6f92fbc14676f6f3fc796df52ddce73a91d3f65371c94" dependencies = [ + "amplify", "async-trait", + "backtrace", + "derive-adhoc", + "educe", "futures", "humantime", + "itertools 0.11.0", "pin-project", + "slotmap", + "strum 0.25.0", "thiserror", + "tor-error", "tor-rtcompat", "tracing", + "tracing-test", + "void", ] [[package]] name = "tor-socksproto" -version = "0.6.3" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4652a9b506f3766c26860b5b54f096eb7f65f02b8707ae444fa4eee46cdbd34" +checksum = "20ec6a2cc5847511ef53ccb452208019a1a1e8effc16ce615c8f7ec9e3c96f4e" dependencies = [ "caret", "subtle", @@ -3109,9 +3572,9 @@ dependencies = [ [[package]] name = "tor-units" -version = "0.5.0" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29d431d1ade8ba738da80a6d4ed4aca9e1a3c08fed90495f00752ef9c0350a71" +checksum = "a924669b39fa305ccb42190abcc4ea623b596b48948429bc4d62f03c5ecf0dbe" dependencies = [ "derive_more", "thiserror", @@ -3168,14 +3631,41 @@ version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" dependencies = [ + "matchers", "nu-ansi-term", + "once_cell", + "regex", "sharded-slab", "smallvec", "thread_local", + "tracing", "tracing-core", "tracing-log", ] +[[package]] +name = "tracing-test" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a2c0ff408fe918a94c428a3f2ad04e4afd5c95bbc08fcf868eff750c15728a4" +dependencies = [ + "lazy_static", + "tracing-core", + "tracing-subscriber", + "tracing-test-macro", +] + +[[package]] +name = "tracing-test-macro" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "258bc1c4f8e2e73a977812ab339d503e6feeb92700f6d07a6de4d321522d5c08" +dependencies = [ + "lazy_static", + "quote", + "syn 1.0.103", +] + [[package]] name = "typed-index-collections" version = "3.1.0" @@ -3232,16 +3722,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "users" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24cc0f6d6f267b73e5a2cadf007ba8f9bc39c6a6f9666f8cf25ea809a153b032" -dependencies = [ - "libc", - "log", -] - [[package]] name = "valuable" version = "0.1.0" @@ -3260,6 +3740,17 @@ version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +[[package]] +name = "visibility" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3fd98999db9227cf28e59d83e1f120f42bc233d4b152e8fab9bc87d5bb1e0f8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.38", +] + [[package]] name = "void" version = "1.0.2" @@ -3603,29 +4094,28 @@ dependencies = [ [[package]] name = "zstd" -version = "0.11.2+zstd.1.5.2" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" +checksum = "bffb3309596d527cfcba7dfc6ed6052f1d39dfbd7c867aa2e865e4a449c10110" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "5.0.2+zstd.1.5.2" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" +checksum = "43747c7422e2924c11144d5229878b98180ef8b06cca4ab5af37afc8a8d8ea3e" dependencies = [ - "libc", "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.1+zstd.1.5.2" +version = "2.0.9+zstd.1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fd07cbbc53846d9145dbffdf6dd09a7a0aa52be46741825f5c97bdd4f73f12b" +checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" dependencies = [ "cc", - "libc", + "pkg-config", ] diff --git a/Cargo.toml b/Cargo.toml index 4443a44..aa7c3f7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,25 +25,25 @@ categories = [ crate-type = ["cdylib", "lib", "staticlib"] [dependencies] -arti-client = { version = "0.8", default-features = false, features = [ +arti-client = { version = "0.10.2", default-features = false, features = [ "error_detail", "experimental-api", "rustls", "tokio", ] } -tor-checkable = "0.4" -tor-circmgr = "0.7" -tor-config = "0.8" -tor-dirmgr = { version = "0.9.3", features = [ +tor-checkable = "0.5.5" +tor-circmgr = "0.11.0" +tor-config = "0.9.5" +tor-dirmgr = { version = "0.11.2", features = [ "experimental-api", "static", ] } -tor-llcrypto = "0.4" -tor-netdir = "0.8" -tor-netdoc = { version = "0.6", features = [ +tor-llcrypto = "0.5.5" +tor-netdir = "0.9.5" +tor-netdoc = { version = "0.9.0", features = [ "experimental-api", ] } -tor-rtcompat = { version = "0.8", features = [ +tor-rtcompat = { version = "0.9.5", features = [ "rustls", "tokio", ] } @@ -64,6 +64,7 @@ tokio-rustls = "0.23" tracing = "0.1" webpki-roots = "0.22" url = "2" +signature = ">= 2.0, < 2.1" # https://github.com/dalek-cryptography/curve25519-dalek/blob/e6675c67ceadecc3e22b561296490f4b7de9ff39/ed25519-dalek/Cargo.toml#L31 [dev-dependencies] tempdir = "0.3"