From fefcc66737ce82d3d69fb06141a711fc0559efb5 Mon Sep 17 00:00:00 2001 From: Chip Senkbeil Date: Sat, 16 Oct 2021 14:48:48 -0500 Subject: [PATCH] Bump to v0.15.0-alpha.22 and update distant/ssh handlers to inject exit code 0 when successful --- Cargo.lock | 8 ++++---- Cargo.toml | 6 +++--- distant-core/Cargo.toml | 2 +- distant-core/src/server/distant/handler.rs | 9 ++++++++- distant-lua/Cargo.toml | 6 +++--- distant-ssh2/Cargo.toml | 4 ++-- distant-ssh2/src/handler.rs | 2 +- 7 files changed, 22 insertions(+), 15 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1cc4b53..b44225a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -427,7 +427,7 @@ dependencies = [ [[package]] name = "distant" -version = "0.15.0-alpha.20" +version = "0.15.0-alpha.22" dependencies = [ "assert_cmd", "assert_fs", @@ -451,7 +451,7 @@ dependencies = [ [[package]] name = "distant-core" -version = "0.15.0-alpha.20" +version = "0.15.0-alpha.22" dependencies = [ "assert_fs", "bytes", @@ -476,7 +476,7 @@ dependencies = [ [[package]] name = "distant-lua" -version = "0.15.0-alpha.20" +version = "0.15.0-alpha.22" dependencies = [ "distant-core", "distant-ssh2", @@ -510,7 +510,7 @@ dependencies = [ [[package]] name = "distant-ssh2" -version = "0.15.0-alpha.20" +version = "0.15.0-alpha.22" dependencies = [ "assert_cmd", "assert_fs", diff --git a/Cargo.toml b/Cargo.toml index cf145c8..306e803 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,7 @@ name = "distant" description = "Operate on a remote computer through file and process manipulation" categories = ["command-line-utilities"] keywords = ["cli"] -version = "0.15.0-alpha.21" +version = "0.15.0-alpha.22" authors = ["Chip Senkbeil "] edition = "2018" homepage = "https://github.com/chipsenkbeil/distant" @@ -25,7 +25,7 @@ ssh2 = ["distant-ssh2"] [dependencies] derive_more = { version = "0.99.16", default-features = false, features = ["display", "from", "error", "is_variant"] } -distant-core = { version = "=0.15.0-alpha.21", path = "distant-core", features = ["structopt"] } +distant-core = { version = "=0.15.0-alpha.22", path = "distant-core", features = ["structopt"] } flexi_logger = "0.18.0" log = "0.4.14" once_cell = "1.8.0" @@ -37,7 +37,7 @@ strum = { version = "0.21.0", features = ["derive"] } whoami = "1.1.2" # Optional native SSH functionality -distant-ssh2 = { version = "=0.15.0-alpha.21", path = "distant-ssh2", optional = true } +distant-ssh2 = { version = "=0.15.0-alpha.22", path = "distant-ssh2", optional = true } [target.'cfg(unix)'.dependencies] fork = "0.1.18" diff --git a/distant-core/Cargo.toml b/distant-core/Cargo.toml index 4b02538..f1afc70 100644 --- a/distant-core/Cargo.toml +++ b/distant-core/Cargo.toml @@ -3,7 +3,7 @@ name = "distant-core" description = "Core library for distant, enabling operation on a remote computer through file and process manipulation" categories = ["network-programming"] keywords = ["api", "async"] -version = "0.15.0-alpha.21" +version = "0.15.0-alpha.22" authors = ["Chip Senkbeil "] edition = "2018" homepage = "https://github.com/chipsenkbeil/distant" diff --git a/distant-core/src/server/distant/handler.rs b/distant-core/src/server/distant/handler.rs index ae9cda1..803ab3f 100644 --- a/distant-core/src/server/distant/handler.rs +++ b/distant-core/src/server/distant/handler.rs @@ -578,7 +578,14 @@ where match status { Ok(status) => { let success = status.success(); - let code = status.code(); + let mut code = status.code(); + + // If we succeeded and have no exit code, automatically populate + // with success exit code + if success && code.is_none() { + code = Some(0); + } + let payload = vec![ResponseData::ProcDone { id, success, code }]; if !reply_2(payload).await { error!( diff --git a/distant-lua/Cargo.toml b/distant-lua/Cargo.toml index 5cf25a5..f43ab3a 100644 --- a/distant-lua/Cargo.toml +++ b/distant-lua/Cargo.toml @@ -3,7 +3,7 @@ name = "distant-lua" description = "Lua bindings to the distant Rust crates" categories = ["api-bindings", "network-programming"] keywords = ["api", "async"] -version = "0.15.0-alpha.21" +version = "0.15.0-alpha.22" authors = ["Chip Senkbeil "] edition = "2018" homepage = "https://github.com/chipsenkbeil/distant" @@ -24,8 +24,8 @@ luajit = ["mlua/luajit"] vendored = ["mlua/vendored"] [dependencies] -distant-core = { version = "=0.15.0-alpha.21", path = "../distant-core" } -distant-ssh2 = { version = "=0.15.0-alpha.21", features = ["serde"], path = "../distant-ssh2" } +distant-core = { version = "=0.15.0-alpha.22", path = "../distant-core" } +distant-ssh2 = { version = "=0.15.0-alpha.22", features = ["serde"], path = "../distant-ssh2" } futures = "0.3.17" log = "0.4.14" mlua = { version = "0.6.6", features = ["async", "macros", "module", "serialize"] } diff --git a/distant-ssh2/Cargo.toml b/distant-ssh2/Cargo.toml index 0a602fd..9ae61c3 100644 --- a/distant-ssh2/Cargo.toml +++ b/distant-ssh2/Cargo.toml @@ -2,7 +2,7 @@ name = "distant-ssh2" description = "Library to enable native ssh-2 protocol for use with distant sessions" categories = ["network-programming"] -version = "0.15.0-alpha.21" +version = "0.15.0-alpha.22" authors = ["Chip Senkbeil "] edition = "2018" homepage = "https://github.com/chipsenkbeil/distant" @@ -12,7 +12,7 @@ license = "MIT OR Apache-2.0" [dependencies] async-compat = "0.2.1" -distant-core = { version = "=0.15.0-alpha.21", path = "../distant-core" } +distant-core = { version = "=0.15.0-alpha.22", path = "../distant-core" } futures = "0.3.16" log = "0.4.14" rand = { version = "0.8.4", features = ["getrandom"] } diff --git a/distant-ssh2/src/handler.rs b/distant-ssh2/src/handler.rs index b42a9cb..c5ae6a5 100644 --- a/distant-ssh2/src/handler.rs +++ b/distant-ssh2/src/handler.rs @@ -826,7 +826,7 @@ where let payload = vec![ResponseData::ProcDone { id, success: !should_kill && success, - code: None, + code: if success { Some(0) } else { None }, }]; if !reply_2(payload).await {