diff options
author | gbrigandi <gbrigandi@users.noreply.github.com> | 2023-03-24 06:48:58 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-24 14:48:58 +0100 |
commit | c61c27abe602af45183b482ac2be0cff5d00dc80 (patch) | |
tree | 1e7d9d6cdb2d9cfd2515252c1b1db2018f97860b | |
parent | 48174d10f8a75d0b2b4d11efc74426166cfebecc (diff) |
fix: Fix crash and memory leak by updating interprocess dep
When a client connects to the zellij server, a Unix socket is created.
However, a bug in version 1.1.1 and earlier of the interprocess crate
used for interprocess communication (IPC) prevented the socket from
being properly disposed of after use, which generated a descriptor
leak.
The bug was fixed in version 1.2.0 of the interprocess crate.
-rw-r--r-- | Cargo.lock | 104 | ||||
-rw-r--r-- | zellij-utils/Cargo.toml | 2 |
2 files changed, 31 insertions, 75 deletions
diff --git a/Cargo.lock b/Cargo.lock index 7c83462df..fb040fad2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -997,28 +997,12 @@ dependencies = [ ] [[package]] -name = "futures" -version = "0.3.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e" -dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] name = "futures-channel" version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010" dependencies = [ "futures-core", - "futures-sink", ] [[package]] @@ -1028,17 +1012,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3" [[package]] -name = "futures-executor" -version = "0.3.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] name = "futures-io" version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1060,47 +1033,6 @@ dependencies = [ ] [[package]] -name = "futures-macro" -version = "0.3.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "futures-sink" -version = "0.3.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868" - -[[package]] -name = "futures-task" -version = "0.3.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a" - -[[package]] -name = "futures-util" -version = "0.3.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", -] - -[[package]] name = "generational-arena" version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1306,18 +1238,21 @@ dependencies = [ [[package]] name = "interprocess" -version = "1.1.1" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c58ec7fbda1df9a93f587b780659db3c99f61f4be27f9c82c9b37684ffd0366" +checksum = "81f2533f3be42fffe3b5e63b71aeca416c1c3bc33e4e27be018521e76b1f38fb" dependencies = [ "blocking", "cfg-if 1.0.0", - "futures", + "futures-core", + "futures-io", "intmap", "libc", "once_cell", + "rustc_version 0.4.0", "spinning", "thiserror", + "to_method", "winapi", ] @@ -1404,9 +1339,9 @@ checksum = "72d9d1bd215936bc8647ad92986bb56f3f216550b53c44ab785e3217ae33625e" [[package]] name = "libc" -version = "0.2.126" +version = "0.2.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836" +checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c" [[package]] name = "libloading" @@ -2421,6 +2356,15 @@ dependencies = [ ] [[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver 1.0.17", +] + +[[package]] name = "rustversion" version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2463,6 +2407,12 @@ dependencies = [ ] [[package]] +name = "semver" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" + +[[package]] name = "semver-parser" version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2726,7 +2676,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" dependencies = [ "discard", - "rustc_version", + "rustc_version 0.2.3", "stdweb-derive", "stdweb-internal-macros", "stdweb-internal-runtime", @@ -3100,6 +3050,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] +name = "to_method" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7c4ceeeca15c8384bbc3e011dbd8fccb7f068a440b752b7d9b32ceb0ca0e2e8" + +[[package]] name = "toml" version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" diff --git a/zellij-utils/Cargo.toml b/zellij-utils/Cargo.toml index c682393e3..b6f362798 100644 --- a/zellij-utils/Cargo.toml +++ b/zellij-utils/Cargo.toml @@ -44,7 +44,7 @@ kdl = { version = "4.5.0", features = ["span"] } termwiz = "0.20.0" log4rs = "1.2.0" signal-hook = "0.3" -interprocess = "1.1.1" +interprocess = "1.2.1" async-std = { version = "1.3.0", features = ["unstable"] } [dev-dependencies] |