/
usr
/
lib
/
python3
/
dist-packages
/
twisted
/
conch
/
test
/
/usr/lib/python3/dist-packages/twisted/conch/test
mkdir
upload
Name
Size
Mode
Actions
__pycache__/
-
0755
rm
keydata.py
27110
0644
edit
dl
rm
loopback.py
757
0644
edit
dl
rm
test_address.py
1629
0644
edit
dl
rm
test_agent.py
13086
0644
edit
dl
rm
test_cftp.py
50896
0644
edit
dl
rm
test_channel.py
12099
0644
edit
dl
rm
test_checkers.py
31498
0644
edit
dl
rm
test_ckeygen.py
20281
0644
edit
dl
rm
test_conch.py
25140
0644
edit
dl
rm
test_connection.py
28149
0644
edit
dl
rm
test_default.py
11584
0644
edit
dl
rm
test_endpoints.py
54561
0644
edit
dl
rm
test_filetransfer.py
29239
0644
edit
dl
rm
test_forwarding.py
2216
0644
edit
dl
rm
test_helper.py
20492
0644
edit
dl
rm
test_insults.py
33581
0644
edit
dl
rm
test_keys.py
48574
0644
edit
dl
rm
test_knownhosts.py
49398
0644
edit
dl
rm
test_manhole.py
13462
0644
edit
dl
rm
test_manhole_tap.py
4235
0644
edit
dl
rm
test_mixin.py
1055
0644
edit
dl
rm
test_openssh_compat.py
4630
0644
edit
dl
rm
test_recvline.py
25406
0644
edit
dl
rm
test_scripts.py
1887
0644
edit
dl
rm
test_session.py
39464
0644
edit
dl
rm
test_ssh.py
32377
0644
edit
dl
rm
test_tap.py
4951
0644
edit
dl
rm
test_telnet.py
26524
0644
edit
dl
rm
test_text.py
3943
0644
edit
dl
rm
test_transport.py
93988
0644
edit
dl
rm
test_unix.py
2533
0644
edit
dl
rm
test_userauth.py
32604
0644
edit
dl
rm
test_window.py
2115
0644
edit
dl
rm
__init__.py
14
0644
edit
dl
rm
Edit:
/usr/lib/python3/dist-packages/twisted/conch/test/test_manhole_tap.py
(4235B)
# Copyright (c) Twisted Matrix Laboratories. # See LICENSE for details. """ Tests for L{twisted.conch.manhole_tap}. """ try: import cryptography except ImportError: cryptography = None try: import pyasn1 except ImportError: pyasn1 = None if cryptography and pyasn1: from twisted.conch import manhole_tap, manhole_ssh from twisted.application.internet import StreamServerEndpointService from twisted.application.service import MultiService from twisted.cred import error from twisted.cred.credentials import UsernamePassword from twisted.conch import telnet from twisted.python import usage from twisted.trial.unittest import TestCase class MakeServiceTests(TestCase): """ Tests for L{manhole_tap.makeService}. """ if not cryptography: skip = "can't run without cryptography" if not pyasn1: skip = "Cannot run without PyASN1" usernamePassword = (b'iamuser', b'thisispassword') def setUp(self): """ Create a passwd-like file with a user. """ self.filename = self.mktemp() with open(self.filename, 'wb') as f: f.write(b':'.join(self.usernamePassword)) self.options = manhole_tap.Options() def test_requiresPort(self): """ L{manhole_tap.makeService} requires either 'telnetPort' or 'sshPort' to be given. """ with self.assertRaises(usage.UsageError) as e: manhole_tap.Options().parseOptions([]) self.assertEqual(e.exception.args[0], ("At least one of --telnetPort " "and --sshPort must be specified")) def test_telnetPort(self): """ L{manhole_tap.makeService} will make a telnet service on the port defined by C{--telnetPort}. It will not make a SSH service. """ self.options.parseOptions(["--telnetPort", "tcp:222"]) service = manhole_tap.makeService(self.options) self.assertIsInstance(service, MultiService) self.assertEqual(len(service.services), 1) self.assertIsInstance(service.services[0], StreamServerEndpointService) self.assertIsInstance(service.services[0].factory.protocol, manhole_tap.makeTelnetProtocol) self.assertEqual(service.services[0].endpoint._port, 222) def test_sshPort(self): """ L{manhole_tap.makeService} will make a SSH service on the port defined by C{--sshPort}. It will not make a telnet service. """ # Why the sshKeyDir and sshKeySize params? To prevent it stomping over # (or using!) the user's private key, we just make a super small one # which will never be used in a temp directory. self.options.parseOptions(["--sshKeyDir", self.mktemp(), "--sshKeySize", "512", "--sshPort", "tcp:223"]) service = manhole_tap.makeService(self.options) self.assertIsInstance(service, MultiService) self.assertEqual(len(service.services), 1) self.assertIsInstance(service.services[0], StreamServerEndpointService) self.assertIsInstance(service.services[0].factory, manhole_ssh.ConchFactory) self.assertEqual(service.services[0].endpoint._port, 223) def test_passwd(self): """ The C{--passwd} command-line option will load a passwd-like file. """ self.options.parseOptions(['--telnetPort', 'tcp:22', '--passwd', self.filename]) service = manhole_tap.makeService(self.options) portal = service.services[0].factory.protocol.portal self.assertEqual(len(portal.checkers.keys()), 2) # Ensure it's the passwd file we wanted by trying to authenticate self.assertTrue(self.successResultOf( portal.login(UsernamePassword(*self.usernamePassword), None, telnet.ITelnetProtocol))) self.assertIsInstance(self.failureResultOf( portal.login(UsernamePassword(b"wrong", b"user"), None, telnet.ITelnetProtocol)).value, error.UnauthorizedLogin)
Save
cmd:
run