From: Evgeny Vereshchagin Date: Thu, 31 Aug 2017 08:38:30 +0000 (+0300) Subject: sd-bus: use -- when passing arguments to ssh (#6706) X-Git-Tag: v235~197 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=58c6e4a2c00c47d0941cb978ec025b13e1798bf3;p=thirdparty%2Fsystemd.git sd-bus: use -- when passing arguments to ssh (#6706) This prevents `systemctl` from runnning /bin/touch when the following command is used: ``` systemctl -H '-oProxyCommand=/bin/touch i-shouldnt-be-here' show-environment ``` --- diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c index 261152b9bf9..aea050e2b95 100644 --- a/src/libsystemd/sd-bus/sd-bus.c +++ b/src/libsystemd/sd-bus/sd-bus.c @@ -1186,7 +1186,7 @@ int bus_set_address_system_remote(sd_bus *b, const char *host) { if (!e) return -ENOMEM; - c = strjoina(",argv4=--machine=", m); + c = strjoina(",argv5=--machine=", m); } } @@ -1196,7 +1196,7 @@ int bus_set_address_system_remote(sd_bus *b, const char *host) { return -ENOMEM; } - b->address = strjoin("unixexec:path=ssh,argv1=-xT,argv2=", e, ",argv3=systemd-stdio-bridge", c); + b->address = strjoin("unixexec:path=ssh,argv1=-xT,argv2=--,argv3=", e, ",argv4=systemd-stdio-bridge", c); if (!b->address) return -ENOMEM;