Linux cpanel.rrshost.in 5.15.0-25-generic #25-Ubuntu SMP Wed Mar 30 15:54:22 UTC 2022 x86_64
Apache
: 109.123.238.221 | : 172.69.214.198
128 Domain
8.2.28
aev999
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
lib /
python3 /
dist-packages /
dns /
rdtypes /
ANY /
[ HOME SHELL ]
Name
Size
Permission
Action
__pycache__
[ DIR ]
drwxr-xr-x
AFSDB.py
1.62
KB
-rw-r--r--
AMTRELAY.py
3.36
KB
-rw-r--r--
AVC.py
1
KB
-rw-r--r--
CAA.py
2.47
KB
-rw-r--r--
CDNSKEY.py
1.12
KB
-rw-r--r--
CDS.py
998
B
-rw-r--r--
CERT.py
3.33
KB
-rw-r--r--
CNAME.py
1.18
KB
-rw-r--r--
CSYNC.py
2.39
KB
-rw-r--r--
DLV.py
987
B
-rw-r--r--
DNAME.py
1.12
KB
-rw-r--r--
DNSKEY.py
1.12
KB
-rw-r--r--
DS.py
996
B
-rw-r--r--
EUI48.py
1.13
KB
-rw-r--r--
EUI64.py
1.13
KB
-rw-r--r--
GPOS.py
4.42
KB
-rw-r--r--
HINFO.py
2.21
KB
-rw-r--r--
HIP.py
3.16
KB
-rw-r--r--
ISDN.py
2.66
KB
-rw-r--r--
LOC.py
11.71
KB
-rw-r--r--
MX.py
996
B
-rw-r--r--
NINFO.py
1.02
KB
-rw-r--r--
NS.py
996
B
-rw-r--r--
NSEC.py
2.42
KB
-rw-r--r--
NSEC3.py
3.98
KB
-rw-r--r--
NSEC3PARAM.py
2.64
KB
-rw-r--r--
OPENPGPKEY.py
1.81
KB
-rw-r--r--
OPT.py
2.5
KB
-rw-r--r--
PTR.py
998
B
-rw-r--r--
RP.py
2.14
KB
-rw-r--r--
RRSIG.py
4.59
KB
-rw-r--r--
RT.py
1014
B
-rw-r--r--
SMIMEA.py
222
B
-rw-r--r--
SOA.py
3.03
KB
-rw-r--r--
SPF.py
1023
B
-rw-r--r--
SSHFP.py
2.59
KB
-rw-r--r--
TKEY.py
4.72
KB
-rw-r--r--
TLSA.py
219
B
-rw-r--r--
TSIG.py
4.36
KB
-rw-r--r--
TXT.py
1001
B
-rw-r--r--
URI.py
2.86
KB
-rw-r--r--
X25.py
1.9
KB
-rw-r--r--
__init__.py
1.38
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : TSIG.py
# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license # Copyright (C) 2001-2017 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 struct import dns.exception import dns.immutable import dns.rcode import dns.rdata @dns.immutable.immutable class TSIG(dns.rdata.Rdata): """TSIG record""" __slots__ = ['algorithm', 'time_signed', 'fudge', 'mac', 'original_id', 'error', 'other'] def __init__(self, rdclass, rdtype, algorithm, time_signed, fudge, mac, original_id, error, other): """Initialize a TSIG rdata. *rdclass*, an ``int`` is the rdataclass of the Rdata. *rdtype*, an ``int`` is the rdatatype of the Rdata. *algorithm*, a ``dns.name.Name``. *time_signed*, an ``int``. *fudge*, an ``int`. *mac*, a ``bytes`` *original_id*, an ``int`` *error*, an ``int`` *other*, a ``bytes`` """ super().__init__(rdclass, rdtype) self.algorithm = self._as_name(algorithm) self.time_signed = self._as_uint48(time_signed) self.fudge = self._as_uint16(fudge) self.mac = self._as_bytes(mac) self.original_id = self._as_uint16(original_id) self.error = dns.rcode.Rcode.make(error) self.other = self._as_bytes(other) def to_text(self, origin=None, relativize=True, **kw): algorithm = self.algorithm.choose_relativity(origin, relativize) error = dns.rcode.to_text(self.error, True) text = f"{algorithm} {self.time_signed} {self.fudge} " + \ f"{len(self.mac)} {dns.rdata._base64ify(self.mac, 0)} " + \ f"{self.original_id} {error} {len(self.other)}" if self.other: text += f" {dns.rdata._base64ify(self.other, 0)}" return text @classmethod def from_text(cls, rdclass, rdtype, tok, origin=None, relativize=True, relativize_to=None): algorithm = tok.get_name(relativize=False) time_signed = tok.get_uint48() fudge = tok.get_uint16() mac_len = tok.get_uint16() mac = base64.b64decode(tok.get_string()) if len(mac) != mac_len: raise SyntaxError('invalid MAC') original_id = tok.get_uint16() error = dns.rcode.from_text(tok.get_string()) other_len = tok.get_uint16() if other_len > 0: other = base64.b64decode(tok.get_string()) if len(other) != other_len: raise SyntaxError('invalid other data') else: other = b'' return cls(rdclass, rdtype, algorithm, time_signed, fudge, mac, original_id, error, other) def _to_wire(self, file, compress=None, origin=None, canonicalize=False): self.algorithm.to_wire(file, None, origin, False) file.write(struct.pack('!HIHH', (self.time_signed >> 32) & 0xffff, self.time_signed & 0xffffffff, self.fudge, len(self.mac))) file.write(self.mac) file.write(struct.pack('!HHH', self.original_id, self.error, len(self.other))) file.write(self.other) @classmethod def from_wire_parser(cls, rdclass, rdtype, parser, origin=None): algorithm = parser.get_name() time_signed = parser.get_uint48() fudge = parser.get_uint16() mac = parser.get_counted_bytes(2) (original_id, error) = parser.get_struct('!HH') other = parser.get_counted_bytes(2) return cls(rdclass, rdtype, algorithm, time_signed, fudge, mac, original_id, error, other)
Close