| Index: third_party/twisted_8_1/twisted/conch/ssh/common.py | 
| diff --git a/third_party/twisted_8_1/twisted/conch/ssh/common.py b/third_party/twisted_8_1/twisted/conch/ssh/common.py | 
| deleted file mode 100644 | 
| index 8392dc2946d1b601d46ce120ca9acaef5ff24a1d..0000000000000000000000000000000000000000 | 
| --- a/third_party/twisted_8_1/twisted/conch/ssh/common.py | 
| +++ /dev/null | 
| @@ -1,130 +0,0 @@ | 
| -# -*- test-case-name: twisted.conch.test.test_ssh -*- | 
| -# Copyright (c) 2001-2007 Twisted Matrix Laboratories. | 
| -# See LICENSE for details. | 
| - | 
| - | 
| -""" | 
| -Common functions for the SSH classes. | 
| - | 
| -Maintainer: U{Paul Swartz<mailto:z3p@twistedmatrix.com>} | 
| -""" | 
| - | 
| -import struct, warnings | 
| - | 
| -try: | 
| -    from Crypto import Util | 
| -except ImportError: | 
| -    warnings.warn("PyCrypto not installed, but continuing anyways!", | 
| -            RuntimeWarning) | 
| - | 
| -from twisted.python import randbytes | 
| - | 
| -class Entropy(object): | 
| -    """ | 
| -    A Crypto.Util.randpool.RandomPool mock for compatibility. | 
| -    """ | 
| -    def get_bytes(self, numBytes): | 
| -        """ | 
| -        Get a number of random bytes. | 
| -        """ | 
| -        warnings.warn("entropy.get_bytes is deprecated, please use " | 
| -                      "twisted.python.randbytes.secureRandom instead.", | 
| -            category=DeprecationWarning, stacklevel=2) | 
| -        return randbytes.secureRandom(numBytes) | 
| - | 
| -entropy = Entropy() | 
| - | 
| - | 
| -def NS(t): | 
| -    """ | 
| -    net string | 
| -    """ | 
| -    return struct.pack('!L',len(t)) + t | 
| - | 
| -def getNS(s, count=1): | 
| -    """ | 
| -    get net string | 
| -    """ | 
| -    ns = [] | 
| -    c = 0 | 
| -    for i in range(count): | 
| -        l, = struct.unpack('!L',s[c:c+4]) | 
| -        ns.append(s[c+4:4+l+c]) | 
| -        c += 4 + l | 
| -    return tuple(ns) + (s[c:],) | 
| - | 
| -def MP(number): | 
| -    if number==0: return '\000'*4 | 
| -    assert number>0 | 
| -    bn = Util.number.long_to_bytes(number) | 
| -    if ord(bn[0])&128: | 
| -        bn = '\000' + bn | 
| -    return struct.pack('>L',len(bn)) + bn | 
| - | 
| -def getMP(data, count=1): | 
| -    """ | 
| -    Get multiple precision integer out of the string.  A multiple precision | 
| -    integer is stored as a 4-byte length followed by length bytes of the | 
| -    integer.  If count is specified, get count integers out of the string. | 
| -    The return value is a tuple of count integers followed by the rest of | 
| -    the data. | 
| -    """ | 
| -    mp = [] | 
| -    c = 0 | 
| -    for i in range(count): | 
| -        length, = struct.unpack('>L',data[c:c+4]) | 
| -        mp.append(Util.number.bytes_to_long(data[c+4:c+4+length])) | 
| -        c += 4 + length | 
| -    return tuple(mp) + (data[c:],) | 
| - | 
| -def _MPpow(x, y, z): | 
| -    """return the MP version of (x**y)%z | 
| -    """ | 
| -    return MP(pow(x,y,z)) | 
| - | 
| -def ffs(c, s): | 
| -    """ | 
| -    first from second | 
| -    goes through the first list, looking for items in the second, returns the first one | 
| -    """ | 
| -    for i in c: | 
| -        if i in s: return i | 
| - | 
| -getMP_py = getMP | 
| -MP_py = MP | 
| -_MPpow_py = _MPpow | 
| -pyPow = pow | 
| - | 
| -def _fastgetMP(data, count=1): | 
| -    mp = [] | 
| -    c = 0 | 
| -    for i in range(count): | 
| -        length = struct.unpack('!L', data[c:c+4])[0] | 
| -        mp.append(long(gmpy.mpz(data[c + 4:c + 4 + length][::-1] + '\x00', 256))) | 
| -        c += length + 4 | 
| -    return tuple(mp) + (data[c:],) | 
| - | 
| -def _fastMP(i): | 
| -    i2 = gmpy.mpz(i).binary()[::-1] | 
| -    return struct.pack('!L', len(i2)) + i2 | 
| - | 
| -def _fastMPpow(x, y, z=None): | 
| -    r = pyPow(gmpy.mpz(x),y,z).binary()[::-1] | 
| -    return struct.pack('!L', len(r)) + r | 
| - | 
| -def _fastpow(x, y, z=None): | 
| -    return pyPow(gmpy.mpz(x), y, z) | 
| - | 
| -def install(): | 
| -    global getMP, MP, _MPpow | 
| -    getMP = _fastgetMP | 
| -    MP = _fastMP | 
| -    _MPpow = _fastMPpow | 
| -    __builtins__['pow'] = _fastpow # evil evil | 
| - | 
| -try: | 
| -    import gmpy | 
| -    install() | 
| -except ImportError: | 
| -    pass | 
| - | 
|  |