diff --git a/Cargo.lock b/Cargo.lock index 4a30d6c..50d87e7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -144,9 +144,9 @@ checksum = "b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3" [[package]] name = "cc" -version = "1.2.51" +version = "1.2.52" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a0aeaff4ff1a90589618835a598e545176939b97874f7abc7851caa0618f203" +checksum = "cd4932aefd12402b36c60956a4fe0035421f544799057659ff86f923657aada3" dependencies = [ "find-msvc-tools", "shlex", @@ -166,9 +166,9 @@ checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "chrono" -version = "0.4.42" +version = "0.4.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" +checksum = "fac4744fb15ae8337dc853fee7fb3f4e48c0fbaa23d0afe49c447b4fab126118" dependencies = [ "iana-time-zone", "js-sys", @@ -332,9 +332,9 @@ checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] name = "find-msvc-tools" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645cbb3a84e60b7531617d5ae4e57f7e27308f6445f5abf653209ea76dec8dff" +checksum = "f449e6c6c08c865631d4890cfacf252b3d396c9bcc83adb6623cdb02a8336c41" [[package]] name = "fluent" @@ -493,9 +493,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.12.1" +version = "2.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" +checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" dependencies = [ "equivalent", "hashbrown", @@ -591,9 +591,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.179" +version = "0.2.180" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5a2d376baa530d1238d133232d15e239abad80d05838b4b59354e5268af431f" +checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc" [[package]] name = "linux-raw-sys" @@ -647,6 +647,18 @@ name = "nix" version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" +dependencies = [ + "bitflags", + "cfg-if", + "cfg_aliases", + "libc", +] + +[[package]] +name = "nix" +version = "0.31.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225e7cfe711e0ba79a68baeddb2982723e4235247aefce1482f2f16c27865b66" dependencies = [ "bitflags", "cfg-if", @@ -783,18 +795,18 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "proc-macro2" -version = "1.0.104" +version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9695f8df41bb4f3d222c95a67532365f569318332d03d5f3f67f37b20e6ebdf0" +checksum = "535d180e0ecab6268a3e718bb9fd44db66bbbc256257165fc699dadf70d16fe7" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.42" +version = "1.0.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" +checksum = "dc74d9a594b72ae6656596548f56f667211f8a97b3d4c3d467150794690dc40a" dependencies = [ "proc-macro2", ] @@ -826,7 +838,7 @@ dependencies = [ "clap", "clap_complete", "futures-util", - "nix", + "nix 0.31.1", "sd-notify", "serde", "serde_json", @@ -916,9 +928,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.148" +version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3084b546a1dd6289475996f182a22aba973866ea8e8b02c51d9f46b1336a22da" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ "itoa", "memchr", @@ -997,9 +1009,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "syn" -version = "2.0.113" +version = "2.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "678faa00651c9eb72dd2020cbdf275d92eccb2400d568e419efdd64838145cb4" +checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a" dependencies = [ "proc-macro2", "quote", @@ -1144,9 +1156,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.9.10+spec-1.1.0" +version = "0.9.11+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0825052159284a1a8b4d6c0c86cbc801f2da5afd2b225fa548c72f2e74002f48" +checksum = "f3afc9a848309fe1aaffaed6e1546a7a14de1f935dc9d89d32afd9a44bab7c46" dependencies = [ "indexmap", "serde_core", @@ -1300,7 +1312,7 @@ dependencies = [ "fluent-syntax", "jiff", "libc", - "nix", + "nix 0.30.1", "os_display", "phf", "thiserror", @@ -1552,9 +1564,9 @@ dependencies = [ [[package]] name = "zlink" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04baab6c44f6c5f33dd26dffabe2c6473d9a93a080c3424865df068d4e76f58a" +checksum = "ab752257fcb51fc2d32c90752f02f31eaf6d393448a9d13f236b2c44f3d18b57" dependencies = [ "zlink-smol", "zlink-tokio", @@ -1562,9 +1574,9 @@ dependencies = [ [[package]] name = "zlink-core" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "487e09febc08bcbac32cee2c26e85779351f711146db0176a3f61a3fea1c955f" +checksum = "9a9ae6db49ada3eeeb87f664aeec2786fd1f7a69a3a7325f0999343d0c7216ac" dependencies = [ "futures-util", "itoa", @@ -1580,9 +1592,9 @@ dependencies = [ [[package]] name = "zlink-macros" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6a10a1ed09222634dde2db7055226eafae571389ce57dae3707bd2a76f6dc7b" +checksum = "7c3a659bdba80c9012aba36ad05b509b1d29fdb520eb851689f787a7a28fe21c" dependencies = [ "proc-macro2", "quote", @@ -1591,9 +1603,9 @@ dependencies = [ [[package]] name = "zlink-smol" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72ec157812fcde1a3f45fea27db5a6fa1868ecbf5e11644166ab4caf5e3546dd" +checksum = "2ee3e9df9f2a3725e78a8a080b3873dd523238ce63e4154ac9e4a98be0fc1952" dependencies = [ "async-broadcast", "async-channel", @@ -1606,9 +1618,9 @@ dependencies = [ [[package]] name = "zlink-tokio" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ab6f490a817bcbbc67d82b22427f1fafd9764da04a6b9499cf73e7ef68f4482" +checksum = "aeda977355d1cd582cb3fdce7cf70f3cc89ed9c3ce278a0cda46dc3c09128578" dependencies = [ "futures-util", "tokio", diff --git a/Cargo.toml b/Cargo.toml index c13b515..a475c17 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,20 +18,20 @@ autolib = false [dependencies] anyhow = "1.0.100" bytes = "1.11.0" -chrono = { version = "0.4.42", features = ["serde"] } -clap = { version = "4.5.53", features = ["derive"] } +chrono = { version = "0.4.43", features = ["serde"] } +clap = { version = "4.5.54", features = ["derive"] } futures-util = "0.3.31" -nix = { version = "0.30.1", features = ["hostname", "net"] } +nix = { version = "0.31.1", features = ["hostname", "net", "fs"] } serde = { version = "1.0.228", features = ["derive"] } tokio = { version = "1.49.0", features = ["macros", "net", "rt-multi-thread", "signal", "sync", "time"] } -toml = "0.9.10" +toml = "0.9.11" tracing = "0.1.44" tracing-subscriber = { version = "0.3.22", features = ["env-filter"] } # onc-rpc = "0.3.2" sd-notify = { version = "0.4.5", optional = true } -serde_json = "1.0.148" +serde_json = "1.0.149" uucore = { version = "0.5.0", features = ["utmpx"] } -zlink = { version = "0.2.0", features = ["introspection"] } +zlink = { version = "0.3.0", features = ["introspection"] } clap_complete = "4.5.65" [features] diff --git a/flake.lock b/flake.lock index 66d0896..a508c48 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "nixpkgs": { "locked": { - "lastModified": 1767116409, - "narHash": "sha256-5vKw92l1GyTnjoLzEagJy5V5mDFck72LiQWZSOnSicw=", + "lastModified": 1769170682, + "narHash": "sha256-oMmN1lVQU0F0W2k6OI3bgdzp2YOHWYUAw79qzDSjenU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "cad22e7d996aea55ecab064e84834289143e44a0", + "rev": "c5296fdd05cfa2c187990dd909864da9658df755", "type": "github" }, "original": { @@ -29,11 +29,11 @@ ] }, "locked": { - "lastModified": 1767322002, - "narHash": "sha256-yHKXXw2OWfIFsyTjduB4EyFwR0SYYF0hK8xI9z4NIn0=", + "lastModified": 1769309768, + "narHash": "sha256-AbOIlNO+JoqRJkK1VrnDXhxuX6CrdtIu2hSuy4pxi3g=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "03c6e38661c02a27ca006a284813afdc461e9f7e", + "rev": "140c9dc582cb73ada2d63a2180524fcaa744fad5", "type": "github" }, "original": { diff --git a/src/server/varlink_api.rs b/src/server/varlink_api.rs index f007536..cd99676 100644 --- a/src/server/varlink_api.rs +++ b/src/server/varlink_api.rs @@ -89,11 +89,12 @@ impl zlink::Service for Roowhoo2ClientServer { type ReplyStream = futures_util::stream::Empty>; type ReplyError<'se> = RwhodClientError; - async fn handle<'ser, 'de: 'ser, Sock: zlink::connection::Socket>( - &'ser mut self, - call: zlink::Call>, + async fn handle<'service, Sock: zlink::connection::Socket>( + &'service mut self, + call: &'service zlink::Call>, _conn: &mut zlink::Connection, - ) -> MethodReply, Self::ReplyStream, Self::ReplyError<'ser>> { + ) -> MethodReply, Self::ReplyStream, Self::ReplyError<'service>> + { match call.method() { RwhodClientRequest::Rwho { all } => MethodReply::Single(Some( RwhodClientResponse::Rwho(self.handle_rwho_request(*all).await),