[Python 3]: Fixes for StringIO and removed semi-colons.
This commit is contained in:
parent
b94fce4df9
commit
1022eec17a
|
@ -16,8 +16,8 @@
|
||||||
# along with Paramiko; if not, write to the Free Software Foundation, Inc.,
|
# along with Paramiko; if not, write to the Free Software Foundation, Inc.,
|
||||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
|
# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
|
||||||
|
|
||||||
|
from __future__ import absolute_import
|
||||||
import util
|
from paramiko import util
|
||||||
|
|
||||||
|
|
||||||
class BERException (Exception):
|
class BERException (Exception):
|
||||||
|
|
|
@ -20,7 +20,10 @@
|
||||||
BufferedFile.
|
BufferedFile.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
try:
|
||||||
from cStringIO import StringIO
|
from cStringIO import StringIO
|
||||||
|
except ImportError:
|
||||||
|
from io import StringIO
|
||||||
|
|
||||||
|
|
||||||
class BufferedFile (object):
|
class BufferedFile (object):
|
||||||
|
|
|
@ -21,7 +21,10 @@ Implementation of an SSH2 "message".
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import struct
|
import struct
|
||||||
import cStringIO
|
try:
|
||||||
|
from cStringIO import StringIO
|
||||||
|
except ImportError:
|
||||||
|
from io import StringIO
|
||||||
|
|
||||||
from paramiko import util
|
from paramiko import util
|
||||||
|
|
||||||
|
@ -46,9 +49,9 @@ class Message (object):
|
||||||
@type content: string
|
@type content: string
|
||||||
"""
|
"""
|
||||||
if content != None:
|
if content != None:
|
||||||
self.packet = cStringIO.StringIO(content)
|
self.packet = StringIO(content)
|
||||||
else:
|
else:
|
||||||
self.packet = cStringIO.StringIO()
|
self.packet = StringIO()
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -347,7 +347,7 @@ class Packetizer (object):
|
||||||
if self.__block_engine_in != None:
|
if self.__block_engine_in != None:
|
||||||
header = self.__block_engine_in.decrypt(header)
|
header = self.__block_engine_in.decrypt(header)
|
||||||
if self.__dump_packets:
|
if self.__dump_packets:
|
||||||
self._log(DEBUG, util.format_binary(header, 'IN: '));
|
self._log(DEBUG, util.format_binary(header, 'IN: '))
|
||||||
packet_size = struct.unpack('>I', header[:4])[0]
|
packet_size = struct.unpack('>I', header[:4])[0]
|
||||||
# leftover contains decrypted bytes from the first block (after the length field)
|
# leftover contains decrypted bytes from the first block (after the length field)
|
||||||
leftover = header[4:]
|
leftover = header[4:]
|
||||||
|
@ -359,7 +359,7 @@ class Packetizer (object):
|
||||||
if self.__block_engine_in != None:
|
if self.__block_engine_in != None:
|
||||||
packet = self.__block_engine_in.decrypt(packet)
|
packet = self.__block_engine_in.decrypt(packet)
|
||||||
if self.__dump_packets:
|
if self.__dump_packets:
|
||||||
self._log(DEBUG, util.format_binary(packet, 'IN: '));
|
self._log(DEBUG, util.format_binary(packet, 'IN: '))
|
||||||
packet = leftover + packet
|
packet = leftover + packet
|
||||||
|
|
||||||
if self.__mac_size_in > 0:
|
if self.__mac_size_in > 0:
|
||||||
|
|
|
@ -180,7 +180,7 @@ class BaseSFTP (object):
|
||||||
size = struct.unpack('>I', x)[0]
|
size = struct.unpack('>I', x)[0]
|
||||||
data = self._read_all(size)
|
data = self._read_all(size)
|
||||||
if self.ultra_debug:
|
if self.ultra_debug:
|
||||||
self._log(DEBUG, util.format_binary(data, 'IN: '));
|
self._log(DEBUG, util.format_binary(data, 'IN: '))
|
||||||
if size > 0:
|
if size > 0:
|
||||||
t = ord(data[0])
|
t = ord(data[0])
|
||||||
#self._log(DEBUG2, 'read: %s (len=%d)' % (CMD_NAMES.get(t), '0x%02x' % t, len(data)-1))
|
#self._log(DEBUG2, 'read: %s (len=%d)' % (CMD_NAMES.get(t), '0x%02x' % t, len(data)-1))
|
||||||
|
|
|
@ -762,7 +762,7 @@ class Transport (threading.Thread):
|
||||||
self.lock.release()
|
self.lock.release()
|
||||||
self._send_user_message(m)
|
self._send_user_message(m)
|
||||||
while True:
|
while True:
|
||||||
event.wait(0.1);
|
event.wait(0.1)
|
||||||
if not self.active:
|
if not self.active:
|
||||||
e = self.get_exception()
|
e = self.get_exception()
|
||||||
if e is None:
|
if e is None:
|
||||||
|
|
|
@ -21,7 +21,10 @@ Some unit tests for public/private key objects.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from binascii import hexlify, unhexlify
|
from binascii import hexlify, unhexlify
|
||||||
import StringIO
|
try:
|
||||||
|
from StringIO import StringIO
|
||||||
|
except ImportError:
|
||||||
|
from io import StringIO
|
||||||
import unittest
|
import unittest
|
||||||
from paramiko import RSAKey, DSSKey, Message, util
|
from paramiko import RSAKey, DSSKey, Message, util
|
||||||
from paramiko.common import rng
|
from paramiko.common import rng
|
||||||
|
@ -90,7 +93,7 @@ class KeyTest (unittest.TestCase):
|
||||||
self.assertEquals(PUB_RSA.split()[1], key.get_base64())
|
self.assertEquals(PUB_RSA.split()[1], key.get_base64())
|
||||||
self.assertEquals(1024, key.get_bits())
|
self.assertEquals(1024, key.get_bits())
|
||||||
|
|
||||||
s = StringIO.StringIO()
|
s = StringIO()
|
||||||
key.write_private_key(s)
|
key.write_private_key(s)
|
||||||
self.assertEquals(RSA_PRIVATE_OUT, s.getvalue())
|
self.assertEquals(RSA_PRIVATE_OUT, s.getvalue())
|
||||||
s.seek(0)
|
s.seek(0)
|
||||||
|
@ -115,7 +118,7 @@ class KeyTest (unittest.TestCase):
|
||||||
self.assertEquals(PUB_DSS.split()[1], key.get_base64())
|
self.assertEquals(PUB_DSS.split()[1], key.get_base64())
|
||||||
self.assertEquals(1024, key.get_bits())
|
self.assertEquals(1024, key.get_bits())
|
||||||
|
|
||||||
s = StringIO.StringIO()
|
s = StringIO()
|
||||||
key.write_private_key(s)
|
key.write_private_key(s)
|
||||||
self.assertEquals(DSS_PRIVATE_OUT, s.getvalue())
|
self.assertEquals(DSS_PRIVATE_OUT, s.getvalue())
|
||||||
s.seek(0)
|
s.seek(0)
|
||||||
|
|
|
@ -23,6 +23,7 @@ a real actual sftp server is contacted, and a new folder is created there to
|
||||||
do test file operations in (so no existing files will be harmed).
|
do test file operations in (so no existing files will be harmed).
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
from __future__ import absolute_import
|
||||||
from __future__ import with_statement
|
from __future__ import with_statement
|
||||||
|
|
||||||
from binascii import hexlify
|
from binascii import hexlify
|
||||||
|
@ -31,7 +32,10 @@ import warnings
|
||||||
import sys
|
import sys
|
||||||
import threading
|
import threading
|
||||||
import unittest
|
import unittest
|
||||||
import StringIO
|
try:
|
||||||
|
from StringIO import StringIO
|
||||||
|
except ImportError:
|
||||||
|
from io import StringIO
|
||||||
|
|
||||||
import paramiko
|
import paramiko
|
||||||
from stub_sftp import StubServer, StubSFTPServer
|
from stub_sftp import StubServer, StubSFTPServer
|
||||||
|
@ -731,7 +735,7 @@ class SFTPTest (unittest.TestCase):
|
||||||
Send an empty file and confirm it is sent.
|
Send an empty file and confirm it is sent.
|
||||||
"""
|
"""
|
||||||
target = FOLDER + '/empty file.txt'
|
target = FOLDER + '/empty file.txt'
|
||||||
stream = StringIO.StringIO()
|
stream = StringIO()
|
||||||
try:
|
try:
|
||||||
attrs = sftp.putfo(stream, target)
|
attrs = sftp.putfo(stream, target)
|
||||||
# the returned attributes should not be null
|
# the returned attributes should not be null
|
||||||
|
|
|
@ -21,7 +21,10 @@ Some unit tests for utility functions.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from binascii import hexlify
|
from binascii import hexlify
|
||||||
import cStringIO
|
try:
|
||||||
|
from cStringIO import StringIO
|
||||||
|
except ImportError:
|
||||||
|
from io import StringIO
|
||||||
import errno
|
import errno
|
||||||
import os
|
import os
|
||||||
import unittest
|
import unittest
|
||||||
|
@ -101,7 +104,7 @@ class UtilTest(ParamikoTest):
|
||||||
|
|
||||||
def test_2_parse_config(self):
|
def test_2_parse_config(self):
|
||||||
global test_config_file
|
global test_config_file
|
||||||
f = cStringIO.StringIO(test_config_file)
|
f = StringIO(test_config_file)
|
||||||
config = paramiko.util.parse_ssh_config(f)
|
config = paramiko.util.parse_ssh_config(f)
|
||||||
self.assertEquals(config._config,
|
self.assertEquals(config._config,
|
||||||
[{'host': ['*'], 'config': {}}, {'host': ['*'], 'config': {'identityfile': ['~/.ssh/id_rsa'], 'user': 'robey'}},
|
[{'host': ['*'], 'config': {}}, {'host': ['*'], 'config': {'identityfile': ['~/.ssh/id_rsa'], 'user': 'robey'}},
|
||||||
|
@ -111,7 +114,7 @@ class UtilTest(ParamikoTest):
|
||||||
|
|
||||||
def test_3_host_config(self):
|
def test_3_host_config(self):
|
||||||
global test_config_file
|
global test_config_file
|
||||||
f = cStringIO.StringIO(test_config_file)
|
f = StringIO(test_config_file)
|
||||||
config = paramiko.util.parse_ssh_config(f)
|
config = paramiko.util.parse_ssh_config(f)
|
||||||
|
|
||||||
for host, values in {
|
for host, values in {
|
||||||
|
@ -172,7 +175,7 @@ Host *.example.com
|
||||||
Host *
|
Host *
|
||||||
Port 3333
|
Port 3333
|
||||||
"""
|
"""
|
||||||
f = cStringIO.StringIO(test_config_file)
|
f = StringIO(test_config_file)
|
||||||
config = paramiko.util.parse_ssh_config(f)
|
config = paramiko.util.parse_ssh_config(f)
|
||||||
host = 'www13.example.com'
|
host = 'www13.example.com'
|
||||||
self.assertEquals(
|
self.assertEquals(
|
||||||
|
@ -216,7 +219,7 @@ Host space-delimited
|
||||||
Host equals-delimited
|
Host equals-delimited
|
||||||
ProxyCommand=foo bar=biz baz
|
ProxyCommand=foo bar=biz baz
|
||||||
"""
|
"""
|
||||||
f = cStringIO.StringIO(conf)
|
f = StringIO(conf)
|
||||||
config = paramiko.util.parse_ssh_config(f)
|
config = paramiko.util.parse_ssh_config(f)
|
||||||
for host in ('space-delimited', 'equals-delimited'):
|
for host in ('space-delimited', 'equals-delimited'):
|
||||||
self.assertEquals(
|
self.assertEquals(
|
||||||
|
@ -228,7 +231,7 @@ Host equals-delimited
|
||||||
"""
|
"""
|
||||||
ProxyCommand should perform interpolation on the value
|
ProxyCommand should perform interpolation on the value
|
||||||
"""
|
"""
|
||||||
config = paramiko.util.parse_ssh_config(cStringIO.StringIO("""
|
config = paramiko.util.parse_ssh_config(StringIO("""
|
||||||
Host specific
|
Host specific
|
||||||
Port 37
|
Port 37
|
||||||
ProxyCommand host %h port %p lol
|
ProxyCommand host %h port %p lol
|
||||||
|
@ -264,7 +267,7 @@ Host www13.*
|
||||||
Host *
|
Host *
|
||||||
Port 3333
|
Port 3333
|
||||||
"""
|
"""
|
||||||
f = cStringIO.StringIO(test_config_file)
|
f = StringIO(test_config_file)
|
||||||
config = paramiko.util.parse_ssh_config(f)
|
config = paramiko.util.parse_ssh_config(f)
|
||||||
host = 'www13.example.com'
|
host = 'www13.example.com'
|
||||||
self.assertEquals(
|
self.assertEquals(
|
||||||
|
@ -293,7 +296,7 @@ ProxyCommand foo=bar:%h-%p
|
||||||
'foo=bar:proxy-without-equal-divisor-22'}
|
'foo=bar:proxy-without-equal-divisor-22'}
|
||||||
}.items():
|
}.items():
|
||||||
|
|
||||||
f = cStringIO.StringIO(test_config_file)
|
f = StringIO(test_config_file)
|
||||||
config = paramiko.util.parse_ssh_config(f)
|
config = paramiko.util.parse_ssh_config(f)
|
||||||
self.assertEquals(
|
self.assertEquals(
|
||||||
paramiko.util.lookup_ssh_host_config(host, config),
|
paramiko.util.lookup_ssh_host_config(host, config),
|
||||||
|
@ -323,7 +326,7 @@ IdentityFile id_dsa22
|
||||||
'identityfile': ['id_dsa0', 'id_dsa1', 'id_dsa22']}
|
'identityfile': ['id_dsa0', 'id_dsa1', 'id_dsa22']}
|
||||||
}.items():
|
}.items():
|
||||||
|
|
||||||
f = cStringIO.StringIO(test_config_file)
|
f = StringIO(test_config_file)
|
||||||
config = paramiko.util.parse_ssh_config(f)
|
config = paramiko.util.parse_ssh_config(f)
|
||||||
self.assertEquals(
|
self.assertEquals(
|
||||||
paramiko.util.lookup_ssh_host_config(host, config),
|
paramiko.util.lookup_ssh_host_config(host, config),
|
||||||
|
|
Loading…
Reference in New Issue