OXIESEC PANEL
- Current Dir:
/
/
opt
/
alt
/
python37
/
lib
/
python3.7
/
site-packages
/
exabgp
/
bgp
/
message
/
open
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
03/16/2023 12:55:54 PM
rwxr-xr-x
📄
__init__.py
3.36 KB
03/13/2021 04:30:48 PM
rw-r--r--
📁
__pycache__
-
03/16/2023 12:55:54 PM
rwxr-xr-x
📄
asn.py
1.27 KB
03/13/2021 04:30:48 PM
rw-r--r--
📁
capability
-
03/16/2023 12:55:54 PM
rwxr-xr-x
📄
holdtime.py
480 bytes
03/13/2021 04:30:48 PM
rw-r--r--
📄
routerid.py
712 bytes
03/13/2021 04:30:48 PM
rw-r--r--
📄
version.py
374 bytes
03/13/2021 04:30:48 PM
rw-r--r--
Editing: asn.py
Close
# encoding: utf-8 """ asn.py Created by Thomas Mangin on 2010-01-15. Copyright (c) 2009-2017 Exa Networks. All rights reserved. License: 3-clause BSD. (See the COPYRIGHT file) """ from struct import pack from struct import unpack import sys from exabgp.protocol.resource import Resource if sys.version_info > (3,): long = int # =================================================================== ASN class ASN(Resource): MAX = pow(2, 16) - 1 def asn4(self): return self > self.MAX def pack(self, negotiated=None): asn4 = negotiated if negotiated is not None else self.asn4() return pack('!L' if asn4 else '!H', self) @classmethod def unpack(cls, data, klass=None): kls = cls if klass is None else klass value = unpack('!L' if len(data) == 4 else '!H', data)[0] return kls(value) def __len__(self): return 4 if self.asn4() else 2 def extract(self): return [pack('!L', self)] def trans(self): if self.asn4(): return AS_TRANS return self def __repr__(self): return '%ld' % long(self) def __str__(self): return '%ld' % long(self) @classmethod def from_string(cls, value): return cls(long(value)) AS_TRANS = ASN(23456)