[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@3.137.210.126: ~ $
# Copyright (C) 2004-2007, 2009-2011 Nominum, Inc.
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose with or without fee is hereby granted,
# provided that the above copyright notice and this permission notice
# appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

import base64
import cStringIO
import string
import struct

import dns.exception
import dns.rdata
import dns.rdatatype

b32_hex_to_normal = string.maketrans('0123456789ABCDEFGHIJKLMNOPQRSTUV',
                                     'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567')
b32_normal_to_hex = string.maketrans('ABCDEFGHIJKLMNOPQRSTUVWXYZ234567',
                                     '0123456789ABCDEFGHIJKLMNOPQRSTUV')

# hash algorithm constants
SHA1 = 1

# flag constants
OPTOUT = 1

class NSEC3(dns.rdata.Rdata):
    """NSEC3 record

    @ivar algorithm: the hash algorithm number
    @type algorithm: int
    @ivar flags: the flags
    @type flags: int
    @ivar iterations: the number of iterations
    @type iterations: int
    @ivar salt: the salt
    @type salt: string
    @ivar next: the next name hash
    @type next: string
    @ivar windows: the windowed bitmap list
    @type windows: list of (window number, string) tuples"""

    __slots__ = ['algorithm', 'flags', 'iterations', 'salt', 'next', 'windows']

    def __init__(self, rdclass, rdtype, algorithm, flags, iterations, salt,
                 next, windows):
        super(NSEC3, self).__init__(rdclass, rdtype)
        self.algorithm = algorithm
        self.flags = flags
        self.iterations = iterations
        self.salt = salt
        self.next = next
        self.windows = windows

    def to_text(self, origin=None, relativize=True, **kw):
        next = base64.b32encode(self.next).translate(b32_normal_to_hex).lower()
        if self.salt == '':
            salt = '-'
        else:
            salt = self.salt.encode('hex-codec')
        text = ''
        for (window, bitmap) in self.windows:
            bits = []
            for i in xrange(0, len(bitmap)):
                byte = ord(bitmap[i])
                for j in xrange(0, 8):
                    if byte & (0x80 >> j):
                        bits.append(dns.rdatatype.to_text(window * 256 + \
                                                          i * 8 + j))
            text += (' ' + ' '.join(bits))
        return '%u %u %u %s %s%s' % (self.algorithm, self.flags, self.iterations,
                                     salt, next, text)

    def from_text(cls, rdclass, rdtype, tok, origin = None, relativize = True):
        algorithm = tok.get_uint8()
        flags = tok.get_uint8()
        iterations = tok.get_uint16()
        salt = tok.get_string()
        if salt == '-':
            salt = ''
        else:
            salt = salt.decode('hex-codec')
        next = tok.get_string().upper().translate(b32_hex_to_normal)
        next = base64.b32decode(next)
        rdtypes = []
        while 1:
            token = tok.get().unescape()
            if token.is_eol_or_eof():
                break
            nrdtype = dns.rdatatype.from_text(token.value)
            if nrdtype == 0:
                raise dns.exception.SyntaxError("NSEC3 with bit 0")
            if nrdtype > 65535:
                raise dns.exception.SyntaxError("NSEC3 with bit > 65535")
            rdtypes.append(nrdtype)
        rdtypes.sort()
        window = 0
        octets = 0
        prior_rdtype = 0
        bitmap = ['\0'] * 32
        windows = []
        for nrdtype in rdtypes:
            if nrdtype == prior_rdtype:
                continue
            prior_rdtype = nrdtype
            new_window = nrdtype // 256
            if new_window != window:
                if octets != 0:
                    windows.append((window, ''.join(bitmap[0:octets])))
                bitmap = ['\0'] * 32
                window = new_window
            offset = nrdtype % 256
            byte = offset // 8
            bit = offset % 8
            octets = byte + 1
            bitmap[byte] = chr(ord(bitmap[byte]) | (0x80 >> bit))
        if octets != 0:
            windows.append((window, ''.join(bitmap[0:octets])))
        return cls(rdclass, rdtype, algorithm, flags, iterations, salt, next, windows)

    from_text = classmethod(from_text)

    def to_wire(self, file, compress = None, origin = None):
        l = len(self.salt)
        file.write(struct.pack("!BBHB", self.algorithm, self.flags,
                               self.iterations, l))
        file.write(self.salt)
        l = len(self.next)
        file.write(struct.pack("!B", l))
        file.write(self.next)
        for (window, bitmap) in self.windows:
            file.write(chr(window))
            file.write(chr(len(bitmap)))
            file.write(bitmap)

    def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin = None):
        (algorithm, flags, iterations, slen) = struct.unpack('!BBHB',
                                                             wire[current : current + 5])
        current += 5
        rdlen -= 5
        salt = wire[current : current + slen].unwrap()
        current += slen
        rdlen -= slen
        (nlen, ) = struct.unpack('!B', wire[current])
        current += 1
        rdlen -= 1
        next = wire[current : current + nlen].unwrap()
        current += nlen
        rdlen -= nlen
        windows = []
        while rdlen > 0:
            if rdlen < 3:
                raise dns.exception.FormError("NSEC3 too short")
            window = ord(wire[current])
            octets = ord(wire[current + 1])
            if octets == 0 or octets > 32:
                raise dns.exception.FormError("bad NSEC3 octets")
            current += 2
            rdlen -= 2
            if rdlen < octets:
                raise dns.exception.FormError("bad NSEC3 bitmap length")
            bitmap = wire[current : current + octets].unwrap()
            current += octets
            rdlen -= octets
            windows.append((window, bitmap))
        return cls(rdclass, rdtype, algorithm, flags, iterations, salt, next, windows)

    from_wire = classmethod(from_wire)

    def _cmp(self, other):
        b1 = cStringIO.StringIO()
        self.to_wire(b1)
        b2 = cStringIO.StringIO()
        other.to_wire(b2)
        return cmp(b1.getvalue(), b2.getvalue())

Filemanager

Name Type Size Permission Actions
.AFSDB.pyo.40009 File 1.4 KB 0644
.CERT.pyo.40009 File 4.25 KB 0644
.CNAME.pyo.40009 File 681 B 0644
.DLV.pyo.40009 File 468 B 0644
.DNAME.pyo.40009 File 704 B 0644
.DNSKEY.pyo.40009 File 4.67 KB 0644
.DS.pyo.40009 File 464 B 0644
.HIP.pyo.40009 File 4.6 KB 0644
.LOC.pyo.40009 File 10.59 KB 0644
.MX.pyo.40009 File 464 B 0644
.NS.pyo.40009 File 464 B 0644
.NSEC.pyo.40009 File 4.31 KB 0644
.NSEC3.pyo.40009 File 5.63 KB 0644
.NSEC3PARAM.pyo.40009 File 3.14 KB 0644
.PTR.pyo.40009 File 468 B 0644
.RP.pyo.40009 File 3.2 KB 0644
.RRSIG.pyo.40009 File 5.71 KB 0644
.RT.pyo.40009 File 482 B 0644
.SOA.pyo.40009 File 4.5 KB 0644
.SPF.pyo.40009 File 491 B 0644
.SSHFP.pyo.40009 File 3.02 KB 0644
.TLSA.pyo.40009 File 3.18 KB 0644
.TXT.pyo.40009 File 471 B 0644
.__init__.pyo.40009 File 604 B 0644
AFSDB.py File 1.8 KB 0644
AFSDB.pyc File 1.4 KB 0644
AFSDB.pyo File 1.4 KB 0644
CERT.py File 4.18 KB 0644
CERT.pyc File 4.25 KB 0644
CERT.pyo File 4.25 KB 0644
CNAME.py File 1.07 KB 0644
CNAME.pyc File 681 B 0644
CNAME.pyo File 681 B 0644
DLV.py File 871 B 0644
DLV.pyc File 468 B 0644
DLV.pyo File 468 B 0644
DNAME.py File 978 B 0644
DNAME.pyc File 704 B 0644
DNAME.pyo File 704 B 0644
DNSKEY.py File 4.46 KB 0644
DNSKEY.pyc File 4.67 KB 0644
DNSKEY.pyo File 4.67 KB 0644
DS.py File 880 B 0644
DS.pyc File 464 B 0644
DS.pyo File 464 B 0644
GPOS.py File 5.18 KB 0644
GPOS.pyc File 5.27 KB 0644
GPOS.pyo File 5.19 KB 0644
HINFO.py File 2.59 KB 0644
HINFO.pyc File 2.74 KB 0644
HINFO.pyo File 2.67 KB 0644
HIP.py File 4.84 KB 0644
HIP.pyc File 4.6 KB 0644
HIP.pyo File 4.6 KB 0644
ISDN.py File 3.17 KB 0644
ISDN.pyc File 3.01 KB 0644
ISDN.pyo File 2.95 KB 0644
LOC.py File 12.63 KB 0644
LOC.pyc File 10.59 KB 0644
LOC.pyo File 10.59 KB 0644
MX.py File 880 B 0644
MX.pyc File 464 B 0644
MX.pyo File 464 B 0644
NS.py File 880 B 0644
NS.pyc File 464 B 0644
NS.pyo File 464 B 0644
NSEC.py File 4.7 KB 0644
NSEC.pyc File 4.31 KB 0644
NSEC.pyo File 4.31 KB 0644
NSEC3.py File 6.65 KB 0644
NSEC3.pyc File 5.63 KB 0644
NSEC3.pyo File 5.63 KB 0644
NSEC3PARAM.py File 3.12 KB 0644
NSEC3PARAM.pyc File 3.14 KB 0644
NSEC3PARAM.pyo File 3.14 KB 0644
PTR.py File 882 B 0644
PTR.pyc File 468 B 0644
PTR.pyo File 468 B 0644
RP.py File 3.2 KB 0644
RP.pyc File 3.2 KB 0644
RP.pyo File 3.2 KB 0644
RRSIG.py File 5.64 KB 0644
RRSIG.pyc File 5.71 KB 0644
RRSIG.pyo File 5.71 KB 0644
RT.py File 898 B 0644
RT.pyc File 482 B 0644
RT.pyo File 482 B 0644
SOA.py File 5.04 KB 0644
SOA.pyc File 4.5 KB 0644
SOA.pyo File 4.5 KB 0644
SPF.py File 906 B 0644
SPF.pyc File 491 B 0644
SPF.pyo File 491 B 0644
SSHFP.py File 3.06 KB 0644
SSHFP.pyc File 3.02 KB 0644
SSHFP.pyo File 3.02 KB 0644
TLSA.py File 3.18 KB 0644
TLSA.pyc File 3.18 KB 0644
TLSA.pyo File 3.18 KB 0644
TXT.py File 885 B 0644
TXT.pyc File 471 B 0644
TXT.pyo File 471 B 0644
X25.py File 2.06 KB 0644
X25.pyc File 2.33 KB 0644
X25.pyo File 2.28 KB 0644
__init__.py File 1.14 KB 0644
__init__.pyc File 604 B 0644
__init__.pyo File 604 B 0644