Skip to content

Commit e3d584e

Browse files
authored
Key exchange types, set integer option values
Added key exchange types Added function for setting integer option types Added CI compressed session test (#101)
1 parent 946042c commit e3d584e

File tree

4 files changed

+2592
-1960
lines changed

4 files changed

+2592
-1960
lines changed

Changelog.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ Changes
1010
* Added private key file formats to `ssh.key` and `ssh.key.Key.export_privkey_file_format` for exporting private key
1111
file with specified format - #96
1212
* Added `ssh.channel.Channel.get_exit_status` implementation and tests.
13+
* Added key exchange types under `ssh.session`.
14+
* Added `ssh.session.Session.options_set_int_val` for setting an integer value `libssh` option - for example
15+
compression level.
1316

1417

1518
Packaging

ci/integration_tests/test_session.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,3 +205,18 @@ def test_set_timeout(self):
205205
def test_get_server_publickey(self):
206206
self.session.connect()
207207
self.assertIsInstance(self.session.get_server_publickey(), SSHKey)
208+
209+
def test_compression_connect(self):
210+
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
211+
sock.connect((self.host, self.port))
212+
session = Session()
213+
session.options_set(options.USER, self.user)
214+
session.options_set(options.HOST, self.host)
215+
session.options_set_port(self.port)
216+
# Great API, "yes" "no" as booleans
217+
self.assertEqual(session.options_set(options.COMPRESSION, "yes"), 0)
218+
self.assertEqual(session.options_set_int_val(options.COMPRESSION_LEVEL, 2), 0)
219+
self.assertEqual(session.set_socket(sock), 0)
220+
self.assertEqual(session.connect(), 0)
221+
self.assertEqual(
222+
session.userauth_publickey(self.pkey), 0)

0 commit comments

Comments
 (0)