From 029d62fac1b7cc4922ff0d27ca1cb6479a588ea2 Mon Sep 17 00:00:00 2001 From: madelinehebert <160977018+madelinehebert@users.noreply.github.com> Date: Thu, 10 Jul 2025 22:42:02 -0400 Subject: [PATCH 1/2] Update zfslib.py Added port and user options to the __init__ function call, allowing custom ports/users to be used --- src/zfslib/zfslib.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/zfslib/zfslib.py b/src/zfslib/zfslib.py index 8d1edc4..2fb0589 100644 --- a/src/zfslib/zfslib.py +++ b/src/zfslib/zfslib.py @@ -28,16 +28,21 @@ class Connection: _trust = False _props_last = None - def __init__(self, host="localhost", trust=False, sshcipher=None, identityfile=None, knownhostsfile=None, verbose=False): + def __init__(self, host="localhost", user=None, port=22, trust=False, sshcipher=None, identityfile=None, knownhostsfile=None, verbose=False): self.host = host + self.user = user + self.port = str(port) self._trust = trust self._poolset = PoolSet(self) self.verbose = verbose self._pools_loaded = False if host in ['localhost','127.0.0.1']: self.command = [] + self.command.extend(["-p", self.port]) + else: self.command = ["ssh","-o","BatchMode=yes","-a","-x"] + self.command.extend(["-p", self.port]) if self._trust: self.command.extend(["-o","CheckHostIP=no"]) self.command.extend(["-o","StrictHostKeyChecking=no"]) @@ -47,7 +52,10 @@ def __init__(self, host="localhost", trust=False, sshcipher=None, identityfile=N self.command.extend(["-i",identityfile]) if knownhostsfile != None: self.command.extend(["-o","UserKnownHostsFile=%s" % knownhostsfile]) - self.command.extend([self.host]) + if self.user == None: + self.command.extend([self.host]) + else: + self.command.extend([self.user + "@" + self.host]) From 3a567073d32293d951c0bfa28ace0f5cfccfc2cb Mon Sep 17 00:00:00 2001 From: madelinehebert <160977018+madelinehebert@users.noreply.github.com> Date: Fri, 11 Jul 2025 15:17:54 -0400 Subject: [PATCH 2/2] Update zfslib.py fixed a bug where an otherwise empty ssh command had a port flag --- src/zfslib/zfslib.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/zfslib/zfslib.py b/src/zfslib/zfslib.py index 2fb0589..d710cdf 100644 --- a/src/zfslib/zfslib.py +++ b/src/zfslib/zfslib.py @@ -38,7 +38,6 @@ def __init__(self, host="localhost", user=None, port=22, trust=False, sshcipher= self._pools_loaded = False if host in ['localhost','127.0.0.1']: self.command = [] - self.command.extend(["-p", self.port]) else: self.command = ["ssh","-o","BatchMode=yes","-a","-x"]