diff --git a/Cargo.lock b/Cargo.lock index 7d4e26a..02a0fed 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -130,18 +130,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "0.6.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5" -dependencies = [ - "memchr", -] - -[[package]] -name = "aho-corasick" -version = "1.0.5" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c378d78423fdad8089616f827526ee33c19f2fddbd5de1629152c9593ba4783" +checksum = "0f2135563fb5c609d2b2b87c1e8ce7bc41b0b45430fa9661f457981503dd5bf0" dependencies = [ "memchr", ] @@ -374,7 +365,7 @@ dependencies = [ "cfg-if 1.0.0", "concurrent-queue", "futures-lite", - "log 0.4.20", + "log", "parking", "polling", "rustix 0.37.23", @@ -429,7 +420,7 @@ dependencies = [ "futures-lite", "gloo-timers", "kv-log-macro", - "log 0.4.20", + "log", "memchr", "once_cell", "pin-project-lite", @@ -478,7 +469,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -495,7 +486,7 @@ checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -672,14 +663,14 @@ dependencies = [ "atomic-waker", "fastrand 1.9.0", "futures-lite", - "log 0.4.20", + "log", ] [[package]] name = "bumpalo" -version = "3.13.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" [[package]] name = "bytemuck" @@ -733,9 +724,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.30" +version = "0.4.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defd4e7873dbddba6c7c91e199c7fcb946abc4a6a4ac3195400bcfb01b5de877" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" dependencies = [ "android-tzdata", "iana-time-zone", @@ -775,9 +766,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.4.2" +version = "4.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a13b88d2c62ff462f88e4a121f17a82c1af05693a2f192b5c38d14de73c19f6" +checksum = "b1d7b8d5ec32af0fadc644bf1fd509a688c2103b185644bb1e29d164e0703136" dependencies = [ "clap_builder", "clap_derive", @@ -785,9 +776,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.4.2" +version = "4.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bb9faaa7c2ef94b2743a21f5a29e6f0010dff4caa69ac8e9d6cf8b6fa74da08" +checksum = "5179bb514e4d7c2051749d8fcefa2ed6d06a9f4e6d69faf3805f5d80b8cf8d56" dependencies = [ "anstream", "anstyle", @@ -804,7 +795,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -980,7 +971,7 @@ checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -1158,7 +1149,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -1219,8 +1210,8 @@ checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7" dependencies = [ "atty", "humantime", - "log 0.4.20", - "regex 1.9.5", + "log", + "regex", "termcolor", ] @@ -1424,7 +1415,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -1557,21 +1548,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "handlebars" -version = "0.29.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb04af2006ea09d985fef82b81e0eb25337e51b691c76403332378a53d521edc" -dependencies = [ - "lazy_static 0.2.11", - "log 0.3.9", - "pest", - "quick-error", - "regex 0.2.11", - "serde", - "serde_json", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -1601,9 +1577,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" [[package]] name = "hex" @@ -1815,7 +1791,7 @@ checksum = "1e8a11ae2da61704edada656798b61c94b35ecac2c58eb955156987d5e6be90b" dependencies = [ "async-trait", "bytes", - "log 0.4.20", + "log", "rand", "rtcp", "rtp 0.6.8", @@ -1826,29 +1802,13 @@ dependencies = [ "webrtc-util", ] -[[package]] -name = "interfaces" -version = "0.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec8f50a973916cac3da5057c986db05cd3346f38c78e9bc24f64cc9f6a3978f" -dependencies = [ - "bitflags 1.3.2", - "cc", - "handlebars", - "lazy_static 1.4.0", - "libc", - "nix 0.23.2", - "serde", - "serde_derive", -] - [[package]] name = "io-lifetimes" version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" dependencies = [ - "hermit-abi 0.3.2", + "hermit-abi 0.3.3", "libc", "windows-sys", ] @@ -1889,15 +1849,9 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f" dependencies = [ - "log 0.4.20", + "log", ] -[[package]] -name = "lazy_static" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" - [[package]] name = "lazy_static" version = "1.4.0" @@ -1906,9 +1860,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.147" +version = "0.2.148" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" +checksum = "9cdc71e17332e86d2e1d38c1f99edcb6288ee11b815fb1a4b049eaa2114d369b" [[package]] name = "linked-hash-map" @@ -1929,22 +1883,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a9bad9f94746442c783ca431b22403b519cd7fbeed0533fdd6328b2f2212128" [[package]] -name = "lock_api" -version = "0.4.10" +name = "local-ip-address" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" +checksum = "3fefe707432eb6bd4704b3dacfc87aab269d56667ad05dcd6869534e8890e767" dependencies = [ - "autocfg", - "scopeguard", + "libc", + "neli", + "thiserror", + "windows-sys", ] [[package]] -name = "log" -version = "0.3.9" +name = "lock_api" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" +checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" dependencies = [ - "log 0.4.20", + "autocfg", + "scopeguard", ] [[package]] @@ -1976,7 +1933,7 @@ dependencies = [ "fnv", "humantime", "libc", - "log 0.4.20", + "log", "log-mdc", "parking_lot", "serde", @@ -2104,27 +2061,39 @@ dependencies = [ ] [[package]] -name = "net2" -version = "0.2.39" +name = "neli" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b13b648036a2339d06de780866fbdfda0dde886de7b3af2ddeba8b14f4ee34ac" +checksum = "1100229e06604150b3becd61a4965d5c70f3be1759544ea7274166f4be41ef43" dependencies = [ - "cfg-if 0.1.10", + "byteorder", "libc", - "winapi", + "log", + "neli-proc-macros", ] [[package]] -name = "nix" -version = "0.23.2" +name = "neli-proc-macros" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c" +checksum = "c168194d373b1e134786274020dae7fc5513d565ea2ebb9bc9ff17ffb69106d4" dependencies = [ - "bitflags 1.3.2", - "cc", - "cfg-if 1.0.0", + "either", + "proc-macro2", + "quote", + "serde", + "syn 1.0.109", +] + +[[package]] +name = "net2" +version = "0.2.39" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b13b648036a2339d06de780866fbdfda0dde886de7b3af2ddeba8b14f4ee34ac" +dependencies = [ + "cfg-if 0.1.10", "libc", - "memoffset", + "winapi", ] [[package]] @@ -2215,7 +2184,7 @@ version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.3.2", + "hermit-abi 0.3.3", "libc", ] @@ -2360,12 +2329,6 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" -[[package]] -name = "pest" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6dda33d67c26f0aac90d324ab2eb7239c819fc7b2552fe9faa4fe88441edc8" - [[package]] name = "petgraph" version = "0.6.4" @@ -2393,7 +2356,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -2435,7 +2398,7 @@ dependencies = [ "cfg-if 1.0.0", "concurrent-queue", "libc", - "log 0.4.20", + "log", "pin-project-lite", "windows-sys", ] @@ -2506,9 +2469,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.66" +version = "1.0.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" +checksum = "3d433d9f1a3e8c1263d9456598b16fec66f4acc9a74dacffd35c7bb09b3a1328" dependencies = [ "unicode-ident", ] @@ -2532,14 +2495,14 @@ dependencies = [ "bytes", "heck", "itertools", - "lazy_static 1.4.0", - "log 0.4.20", + "lazy_static", + "log", "multimap", "petgraph", "prettyplease", "prost", "prost-types", - "regex 1.9.5", + "regex", "syn 1.0.109", "tempfile", "which", @@ -2658,26 +2621,13 @@ dependencies = [ "bitflags 1.3.2", ] -[[package]] -name = "regex" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384" -dependencies = [ - "aho-corasick 0.6.10", - "memchr", - "regex-syntax 0.5.6", - "thread_local 0.3.6", - "utf8-ranges", -] - [[package]] name = "regex" version = "1.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "697061221ea1b4a94a624f67d0ae2bfe4e22b8a17b6a192afb11046542cc8c47" dependencies = [ - "aho-corasick 1.0.5", + "aho-corasick", "memchr", "regex-automata 0.3.8", "regex-syntax 0.7.5", @@ -2698,20 +2648,11 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2f401f4955220693b56f8ec66ee9c78abffd8d1c4f23dc41a23839eb88f0795" dependencies = [ - "aho-corasick 1.0.5", + "aho-corasick", "memchr", "regex-syntax 0.7.5", ] -[[package]] -name = "regex-syntax" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7" -dependencies = [ - "ucd-util", -] - [[package]] name = "regex-syntax" version = "0.6.29" @@ -2846,7 +2787,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" dependencies = [ "base64 0.13.1", - "log 0.4.20", + "log", "ring", "sct 0.6.1", "webpki 0.21.4", @@ -2858,7 +2799,7 @@ version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b80e3dec595989ea8510028f30c408a4630db12c9cbb8de34203b89d6577e99" dependencies = [ - "log 0.4.20", + "log", "ring", "sct 0.7.0", "webpki 0.22.1", @@ -2870,9 +2811,9 @@ version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" dependencies = [ - "log 0.4.20", + "log", "ring", - "rustls-webpki", + "rustls-webpki 0.101.5", "sct 0.7.0", ] @@ -2899,9 +2840,19 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.101.4" +version = "0.100.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d93931baf2d282fff8d3a532bbfd7653f734643161b87e3e01e59a04439bf0d" +checksum = "5f6a5fc258f1c1276dfe3016516945546e2d5383911efc0fc4f1cdc5df3a4ae3" +dependencies = [ + "ring", + "untrusted", +] + +[[package]] +name = "rustls-webpki" +version = "0.101.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45a27e3b59326c16e23d30aeb7a36a24cc0d29e71d68ff611cdfb4a01d013bed" dependencies = [ "ring", "untrusted", @@ -3045,14 +2996,14 @@ checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] name = "serde_json" -version = "1.0.106" +version = "1.0.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cc66a619ed80bf7a0f6b17dd063a84b88f6dea1813737cf469aef1d081142c2" +checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" dependencies = [ "itoa", "ryu", @@ -3112,7 +3063,7 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" dependencies = [ - "lazy_static 1.4.0", + "lazy_static", ] [[package]] @@ -3184,9 +3135,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.3" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877" +checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" dependencies = [ "libc", "windows-sys", @@ -3222,7 +3173,7 @@ checksum = "a7e94b1ec00bad60e6410e058b52f1c66de3dc5fe4d62d09b3e52bb7d3b73e25" dependencies = [ "base64 0.13.1", "crc", - "lazy_static 1.4.0", + "lazy_static", "md-5", "rand", "ring", @@ -3261,9 +3212,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.32" +version = "2.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2" +checksum = "7303ef2c05cd654186cb250d29049a24840ca25d2747c25c0381c8d9e2f582e8" dependencies = [ "proc-macro2", "quote", @@ -3303,9 +3254,9 @@ dependencies = [ [[package]] name = "termcolor" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" +checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64" dependencies = [ "winapi-util", ] @@ -3327,7 +3278,7 @@ checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -3341,15 +3292,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "thread_local" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" -dependencies = [ - "lazy_static 1.4.0", -] - [[package]] name = "thread_local" version = "1.1.7" @@ -3417,7 +3359,7 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.5.3", + "socket2 0.5.4", "tokio-macros", "windows-sys", ] @@ -3440,7 +3382,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -3520,6 +3462,7 @@ dependencies = [ "tower-layer", "tower-service", "tracing", + "webpki-roots 0.23.1", ] [[package]] @@ -3597,7 +3540,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" dependencies = [ "cfg-if 1.0.0", - "log 0.4.20", + "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -3611,7 +3554,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] [[package]] @@ -3630,8 +3573,8 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" dependencies = [ - "lazy_static 1.4.0", - "log 0.4.20", + "lazy_static", + "log", "tracing-core", ] @@ -3644,10 +3587,10 @@ dependencies = [ "matchers", "nu-ansi-term", "once_cell", - "regex 1.9.5", + "regex", "sharded-slab", "smallvec", - "thread_local 1.1.7", + "thread_local", "tracing", "tracing-core", "tracing-log", @@ -3668,7 +3611,7 @@ dependencies = [ "async-trait", "base64 0.13.1", "futures", - "log 0.4.20", + "log", "md-5", "rand", "ring", @@ -3689,15 +3632,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" - -[[package]] -name = "ucd-util" -version = "0.1.10" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abd2fc5d32b590614af8b0a20d837f32eca055edd0bbead59a9cfe80858be003" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "unicode-bidi" @@ -3707,9 +3644,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.11" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" @@ -3772,12 +3709,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "utf8-ranges" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcfc827f90e53a02eaef5e535ee14266c1d569214c6aa70133a624d8a3164ba" - [[package]] name = "utf8parse" version = "0.2.1" @@ -3823,7 +3754,7 @@ dependencies = [ "err-derive", "futures-core", "futures-util", - "log 0.4.20", + "log", "net2", ] @@ -3850,9 +3781,9 @@ dependencies = [ "http-body", "hyper", "interceptor", - "interfaces", "libc", - "log 0.4.20", + "local-ip-address", + "log", "log4rs", "nalgebra", "prost", @@ -3870,7 +3801,7 @@ dependencies = [ "tracing", "tracing-subscriber", "viam-mdns", - "webpki-roots", + "webpki-roots 0.21.1", "webrtc", ] @@ -3927,11 +3858,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", - "log 0.4.20", + "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", "wasm-bindgen-shared", ] @@ -3965,7 +3896,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4015,6 +3946,15 @@ dependencies = [ "webpki 0.21.4", ] +[[package]] +name = "webpki-roots" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338" +dependencies = [ + "rustls-webpki 0.100.3", +] + [[package]] name = "webrtc" version = "0.7.3" @@ -4026,11 +3966,11 @@ dependencies = [ "bytes", "hex", "interceptor", - "lazy_static 1.4.0", - "log 0.4.20", + "lazy_static", + "log", "rand", "rcgen", - "regex 1.9.5", + "regex", "ring", "rtcp", "rtp 0.6.8", @@ -4064,7 +4004,7 @@ checksum = "5c3c7ba7d11733e448d8d2d054814e97c558f52293f0e0a2eb05840f28b3be12" dependencies = [ "bytes", "derive_builder", - "log 0.4.20", + "log", "thiserror", "tokio", "webrtc-sctp", @@ -4089,7 +4029,7 @@ dependencies = [ "elliptic-curve", "hkdf", "hmac 0.12.1", - "log 0.4.20", + "log", "p256", "p384", "rand", @@ -4120,7 +4060,7 @@ dependencies = [ "arc-swap", "async-trait", "crc", - "log 0.4.20", + "log", "rand", "serde", "serde_json", @@ -4141,7 +4081,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f08dfd7a6e3987e255c4dbe710dde5d94d0f0574f8a21afa95d171376c143106" dependencies = [ - "log 0.4.20", + "log", "socket2 0.4.9", "thiserror", "tokio", @@ -4171,7 +4111,7 @@ dependencies = [ "async-trait", "bytes", "crc", - "log 0.4.20", + "log", "rand", "thiserror", "tokio", @@ -4192,7 +4132,7 @@ dependencies = [ "bytes", "ctr 0.8.0", "hmac 0.11.0", - "log 0.4.20", + "log", "rtcp", "rtp 0.6.8", "sha-1", @@ -4213,10 +4153,10 @@ dependencies = [ "bytes", "cc", "ipnet", - "lazy_static 1.4.0", + "lazy_static", "libc", - "log 0.4.20", - "nix 0.24.3", + "log", + "nix", "rand", "thiserror", "tokio", @@ -4373,7 +4313,7 @@ dependencies = [ "base64 0.13.1", "data-encoding", "der-parser 7.0.0", - "lazy_static 1.4.0", + "lazy_static", "nom", "oid-registry 0.4.0", "rusticata-macros", @@ -4391,7 +4331,7 @@ dependencies = [ "base64 0.13.1", "data-encoding", "der-parser 8.2.0", - "lazy_static 1.4.0", + "lazy_static", "nom", "oid-registry 0.6.1", "ring", @@ -4435,5 +4375,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.37", ] diff --git a/Cargo.toml b/Cargo.toml index cb24f7a..c7023e3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -39,7 +39,6 @@ http = "0.2.7" http-body = {version = "0.4.4"} hyper = { version = "0.14.20", features = ["full"] } interceptor = "0.8.0" -interfaces = "0.0.8" libc = {version = "0.2"} log = "0.4.17" log4rs = "1.2.0" @@ -52,7 +51,7 @@ serde_json = "1.0" tokio = {version = "1.19", features = ["rt-multi-thread", "time", "fs", "macros", "net"]} tokio-stream = {version = "0.1", features = ["net"]} tokio-rustls = { version = "0.23.4"} -tonic = {version = "0.9.2",features = [ "tls", "gzip", "tls-roots",]} +tonic = {version = "0.9.2",features = [ "tls", "gzip", "tls-roots","tls-webpki-roots"]} tower = { version = "0.4" } tower-http = { version = "0.3.3", features = ["add-extension","auth","propagate-header","set-header","sensitive-headers","trace","compression-gzip"]} tracing = {version = "0.1.34"} @@ -60,6 +59,7 @@ tracing-subscriber = {version = "0.3.11", features = ["env-filter"]} viam-mdns = "3.0.1" webpki-roots = "0.21.1" webrtc = "0.7.3" +local-ip-address = "0.5.5" [dev-dependencies] async-stream = "0.3.3" diff --git a/src/lib.rs b/src/lib.rs index 40b9602..2bb8f9f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,5 +1,7 @@ +#[cfg(not(target_os = "windows"))] pub mod ffi; pub mod gen; +#[cfg(not(target_os = "windows"))] pub mod proxy; pub mod rpc; pub mod spatialmath; diff --git a/src/rpc/dial.rs b/src/rpc/dial.rs index 0e049e9..b88826b 100644 --- a/src/rpc/dial.rs +++ b/src/rpc/dial.rs @@ -31,7 +31,7 @@ use anyhow::{Context, Result}; use core::fmt; use futures::stream::FuturesUnordered; use futures_util::{pin_mut, stream::StreamExt}; -use interfaces::Interface; +use local_ip_address::list_afinet_netifas; use std::{ collections::HashMap, net::{IpAddr, Ipv4Addr}, @@ -312,18 +312,16 @@ impl DialBuilder { self } - async fn get_addr_from_interface(iface: Interface, candidates: &Vec) -> Option { + async fn get_addr_from_interface( + iface: (&str, Vec<&IpAddr>), + candidates: &Vec, + ) -> Option { let addresses: Vec = iface - .addresses - .clone() + .1 .iter() - .filter_map(|addr| { - addr.addr - .map(|ip| match ip.ip() { - IpAddr::V4(v4) => Some(v4.clone()), - IpAddr::V6(_) => None, - }) - .flatten() + .filter_map(|ip| match ip { + IpAddr::V4(v4) => Some(*v4), + IpAddr::V6(_) => None, }) .collect(); @@ -401,9 +399,15 @@ impl DialBuilder { let mut uri = self.duplicate_uri()?; let candidate = uri.authority.clone()?.to_string(); - let candidates: Vec = vec![candidate.replace(".", "-"), candidate]; + let candidates: Vec = vec![candidate.replace('.', "-"), candidate]; - let ifaces = Interface::get_all().ok()?; + let ifaces = list_afinet_netifas().ok()?; + + let ifaces: HashMap<&str, Vec<&IpAddr>> = + ifaces.iter().fold(HashMap::new(), |mut map, (k, v)| { + map.entry(k).or_insert(vec![]).push(v); + map + }); let mut iface_futures = FuturesUnordered::new(); for iface in ifaces {