diff options
author | 2016-03-21 16:03:47 +0200 | |
---|---|---|
committer | 2016-03-21 16:03:47 +0200 | |
commit | b89efa188810bf95a9d245e69e2961b5721c3b0f (patch) | |
tree | 454273ac6c4ae972ebb8a2c86b893296970b4fa9 /scripts/external_libs/scapy-python3-0.18/scapy/contrib/rsvp.py | |
parent | f72c6df9d2e9998ae1f3529d729ab7930b35785a (diff) |
scapy python 2/3
Diffstat (limited to 'scripts/external_libs/scapy-python3-0.18/scapy/contrib/rsvp.py')
-rw-r--r-- | scripts/external_libs/scapy-python3-0.18/scapy/contrib/rsvp.py | 188 |
1 files changed, 0 insertions, 188 deletions
diff --git a/scripts/external_libs/scapy-python3-0.18/scapy/contrib/rsvp.py b/scripts/external_libs/scapy-python3-0.18/scapy/contrib/rsvp.py deleted file mode 100644 index c9d4ebee..00000000 --- a/scripts/external_libs/scapy-python3-0.18/scapy/contrib/rsvp.py +++ /dev/null @@ -1,188 +0,0 @@ -## RSVP layer - -# http://trac.secdev.org/scapy/ticket/197 - -# scapy.contrib.description = RSVP -# scapy.contrib.status = loads - -from scapy.packet import * -from scapy.fields import * -from scapy.layers.inet import IP - -rsvpmsgtypes = { 0x01 : "Path", - 0x02 : "Reservation request", - 0x03 : "Path error", - 0x04 : "Reservation request error", - 0x05 : "Path teardown", - 0x06 : "Reservation teardown", - 0x07 : "Reservation request acknowledgment" -} - -class RSVP(Packet): - name = "RSVP" - fields_desc = [ BitField("Version",1,4), - BitField("Flags",1,4), - ByteEnumField("Class",0x01, rsvpmsgtypes), - XShortField("chksum", None), - ByteField("TTL",1), - XByteField("dataofs", 0), - ShortField("Length",None)] - def post_build(self, p, pay): - p += pay - if self.Length is None: - l = len(p) - p = p[:6]+chr((l>>8)&0xff)+chr(l&0xff)+p[8:] - if self.chksum is None: - ck = checksum(p) - p = p[:2]+chr(ck>>8)+chr(ck&0xff)+p[4:] - return p - -rsvptypes = { 0x01 : "Session", - 0x03 : "HOP", - 0x04 : "INTEGRITY", - 0x05 : "TIME_VALUES", - 0x06 : "ERROR_SPEC", - 0x07 : "SCOPE", - 0x08 : "STYLE", - 0x09 : "FLOWSPEC", - 0x0A : "FILTER_SPEC", - 0x0B : "SENDER_TEMPLATE", - 0x0C : "SENDER_TSPEC", - 0x0D : "ADSPEC", - 0x0E : "POLICY_DATA", - 0x0F : "RESV_CONFIRM", - 0x10 : "RSVP_LABEL", - 0x11 : "HOP_COUNT", - 0x12 : "STRICT_SOURCE_ROUTE", - 0x13 : "LABEL_REQUEST", - 0x14 : "EXPLICIT_ROUTE", - 0x15 : "ROUTE_RECORD", - 0x16 : "HELLO", - 0x17 : "MESSAGE_ID", - 0x18 : "MESSAGE_ID_ACK", - 0x19 : "MESSAGE_ID_LIST", - 0x1E : "DIAGNOSTIC", - 0x1F : "ROUTE", - 0x20 : "DIAG_RESPONSE", - 0x21 : "DIAG_SELECT", - 0x22 : "RECOVERY_LABEL", - 0x23 : "UPSTREAM_LABEL", - 0x24 : "LABEL_SET", - 0x25 : "PROTECTION", - 0x26 : "PRIMARY PATH ROUTE", - 0x2A : "DSBM IP ADDRESS", - 0x2B : "SBM_PRIORITY", - 0x2C : "DSBM TIMER INTERVALS", - 0x2D : "SBM_INFO", - 0x32 : "S2L_SUB_LSP", - 0x3F : "DETOUR", - 0x40 : "CHALLENGE", - 0x41 : "DIFF-SERV", - 0x42 : "CLASSTYPE", - 0x43 : "LSP_REQUIRED_ATTRIBUTES", - 0x80 : "NODE_CHAR", - 0x81 : "SUGGESTED_LABEL", - 0x82 : "ACCEPTABLE_LABEL_SET", - 0x83 : "RESTART_CA", - 0x84 : "SESSION-OF-INTEREST", - 0x85 : "LINK_CAPABILITY", - 0x86 : "Capability Object", - 0xA1 : "RSVP_HOP_L2", - 0xA2 : "LAN_NHOP_L2", - 0xA3 : "LAN_NHOP_L3", - 0xA4 : "LAN_LOOPBACK", - 0xA5 : "TCLASS", - 0xC0 : "TUNNEL", - 0xC1 : "LSP_TUNNEL_INTERFACE_ID", - 0xC2 : "USER_ERROR_SPEC", - 0xC3 : "NOTIFY_REQUEST", - 0xC4 : "ADMIN-STATUS", - 0xC5 : "LSP_ATTRIBUTES", - 0xC6 : "ALARM_SPEC", - 0xC7 : "ASSOCIATION", - 0xC8 : "SECONDARY_EXPLICIT_ROUTE", - 0xC9 : "SECONDARY_RECORD_ROUTE", - 0xCD : "FAST_REROUTE", - 0xCF : "SESSION_ATTRIBUTE", - 0xE1 : "DCLASS", - 0xE2 : "PACKETCABLE EXTENSIONS", - 0xE3 : "ATM_SERVICECLASS", - 0xE4 : "CALL_OPS (ASON)", - 0xE5 : "GENERALIZED_UNI", - 0xE6 : "CALL_ID", - 0xE7 : "3GPP2_Object", - 0xE8 : "EXCLUDE_ROUTE" -} - -class RSVP_Object(Packet): - name = "RSVP_Object" - fields_desc = [ ShortField("Length",4), - ByteEnumField("Class",0x01, rsvptypes), - ByteField("C-Type",1)] - def guess_payload_class(self, payload): - if self.Class == 0x03: - return RSVP_HOP - elif self.Class == 0x05: - return RSVP_Time - elif self.Class == 0x0c: - return RSVP_SenderTSPEC - elif self.Class == 0x13: - return RSVP_LabelReq - elif self.Class == 0xCF: - return RSVP_SessionAttrb - else: - return RSVP_Data - - - -class RSVP_Data(Packet): - name = "Data" - fields_desc = [StrLenField("Data","",length_from= lambda pkt:pkt.underlayer.Length - 4)] - def default_payload_class(self, payload): - return RSVP_Object - -class RSVP_HOP(Packet): - name = "HOP" - fields_desc = [ IPField("neighbor","0.0.0.0"), - BitField("inface",1,32)] - def default_payload_class(self, payload): - return RSVP_Object - -class RSVP_Time(Packet): - name = "Time Val" - fields_desc = [ BitField("refresh",1,32)] - def default_payload_class(self, payload): - return RSVP_Object - -class RSVP_SenderTSPEC(Packet): - name = "Sender_TSPEC" - fields_desc = [ ByteField("Msg_Format",0), - ByteField("reserve",0), - ShortField("Data_Length",4), - ByteField("Srv_hdr",1), - ByteField("reserve2",0), - ShortField("Srv_Length",4), - StrLenField("Tokens","",length_from= lambda pkt:pkt.underlayer.Length - 12) ] - def default_payload_class(self, payload): - return RSVP_Object - -class RSVP_LabelReq(Packet): - name = "Lable Req" - fields_desc = [ ShortField("reserve",1), - ShortField("L3PID",1)] - def default_payload_class(self, payload): - return RSVP_Object - -class RSVP_SessionAttrb(Packet): - name = "Session_Attribute" - fields_desc = [ ByteField("Setup_priority",1), - ByteField("Hold_priority",1), - ByteField("flags",1), - ByteField("Name_length",1), - StrLenField("Name","",length_from= lambda pkt:pkt.underlayer.Length - 8), - ] - def default_payload_class(self, payload): - return RSVP_Object - -bind_layers( IP, RSVP, { "proto" : 46} ) -bind_layers( RSVP, RSVP_Object, {}) |