aboutsummaryrefslogtreecommitdiffstats
path: root/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/conch/openssh_compat/factory.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/conch/openssh_compat/factory.py')
-rwxr-xr-xlib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/conch/openssh_compat/factory.py73
1 files changed, 0 insertions, 73 deletions
diff --git a/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/conch/openssh_compat/factory.py b/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/conch/openssh_compat/factory.py
deleted file mode 100755
index f0ad8f79..00000000
--- a/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/conch/openssh_compat/factory.py
+++ /dev/null
@@ -1,73 +0,0 @@
-# -*- test-case-name: twisted.conch.test.test_openssh_compat -*-
-# Copyright (c) Twisted Matrix Laboratories.
-# See LICENSE for details.
-
-"""
-Factory for reading openssh configuration files: public keys, private keys, and
-moduli file.
-"""
-
-import os, errno
-
-from twisted.python import log
-from twisted.python.util import runAsEffectiveUser
-
-from twisted.conch.ssh import keys, factory, common
-from twisted.conch.openssh_compat import primes
-
-
-
-class OpenSSHFactory(factory.SSHFactory):
- dataRoot = '/usr/local/etc'
- moduliRoot = '/usr/local/etc' # for openbsd which puts moduli in a different
- # directory from keys
-
-
- def getPublicKeys(self):
- """
- Return the server public keys.
- """
- ks = {}
- for filename in os.listdir(self.dataRoot):
- if filename[:9] == 'ssh_host_' and filename[-8:]=='_key.pub':
- try:
- k = keys.Key.fromFile(
- os.path.join(self.dataRoot, filename))
- t = common.getNS(k.blob())[0]
- ks[t] = k
- except Exception, e:
- log.msg('bad public key file %s: %s' % (filename, e))
- return ks
-
-
- def getPrivateKeys(self):
- """
- Return the server private keys.
- """
- privateKeys = {}
- for filename in os.listdir(self.dataRoot):
- if filename[:9] == 'ssh_host_' and filename[-4:]=='_key':
- fullPath = os.path.join(self.dataRoot, filename)
- try:
- key = keys.Key.fromFile(fullPath)
- except IOError, e:
- if e.errno == errno.EACCES:
- # Not allowed, let's switch to root
- key = runAsEffectiveUser(0, 0, keys.Key.fromFile, fullPath)
- keyType = keys.objectType(key.keyObject)
- privateKeys[keyType] = key
- else:
- raise
- except Exception, e:
- log.msg('bad private key file %s: %s' % (filename, e))
- else:
- keyType = keys.objectType(key.keyObject)
- privateKeys[keyType] = key
- return privateKeys
-
-
- def getPrimes(self):
- try:
- return primes.parseModuliFile(self.moduliRoot+'/moduli')
- except IOError:
- return None