moving pcu transport code
[monitor.git] / pyssh / fssa.py
diff --git a/pyssh/fssa.py b/pyssh/fssa.py
deleted file mode 100644 (file)
index 6ca17be..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-# vi:et:ts=4:tw=0
-""" fssa.py
-
-    Search for an ssh-agent for the calling user and attach to it
-    if found.
-
-    Tested on poxix only
-"""
-# This is a Python port of Steve Allen's fsa.sh script found
-# at http://www.ucolick.org/~sla/ssh/sshcron.html
-# Ported by Mark W. Alexander <slash@dotnetslash.net>
-
-import os
-if os.name == 'posix':
-    import pwd, stat, sys
-    from commands import getoutput
-    def fssa(key=None):
-        """ fssa(key=None)
-
-        Searches /tmp/ssh-* owned by the calling user for ssh-agent
-        sockets. If key is provided, only sockets matching the key will be
-        considered. If key is not provided, the calling users username
-        will be used instead.
-        """
-        user, pw, uid, gid, gecos, home, shell = pwd.getpwuid(os.getuid())
-        if key is None:
-            key = user
-
-        # Find /tmp/ssh-* dirs owned by this user
-        candidate_dirs=[]
-        for filename in os.listdir('/tmp'):
-            file_stat = os.stat("/tmp/%s" % (filename))
-            if file_stat[stat.ST_UID] == os.getuid() \
-            and stat.S_ISDIR(file_stat[stat.ST_MODE]) \
-            and filename.find('ssh-') == 0:
-                candidate_dirs.append("/tmp/%s" % filename)
-
-        candidate_sockets=[]
-        for d in candidate_dirs:
-            for f in os.listdir(d):
-                file_stat = os.stat("%s/%s" % (d, f))
-                if file_stat[stat.ST_UID] == os.getuid() \
-                and stat.S_ISSOCK(file_stat[stat.ST_MODE]) \
-                and f.find('agent.') == 0:
-                    candidate_sockets.append("%s/%s" % (d, f))
-        alive = None
-        # order by pid, prefering sockets where the parent pid
-        # is gone. This gives preference to agents running in the
-        # background and reaped by init (maybe). Only works on
-        # systems with a /proc filesystem
-        if stat.S_ISDIR(os.stat("/proc")[stat.ST_MODE]):
-            reorder=[]
-            for s in candidate_sockets:
-                pid = s[s.find('.')+1:]
-                try:
-                    stat.S_ISDIR(os.stat("/proc/%s" % pid)[stat.ST_MODE])
-                    reorder.append(s)
-                except:
-                    reorder.insert(0,s)
-            candidate_sockets = reorder
-
-        for s in candidate_sockets:
-            os.environ['SSH_AUTH_SOCK'] = s
-            try:
-                pubkey = getoutput("ssh-add -l 2>/dev/null")
-            except:
-                continue
-            if pubkey.find(key):
-                alive = 1
-                break
-            os.environ.pop('SSH_AUTH_SOCK')
-        if alive:
-            return pubkey
-        else:
-            return None