Skip to content
Snippets Groups Projects
Commit 7b458aec authored by Pierre Lorinquer's avatar Pierre Lorinquer
Browse files

EAP_MD5 class added.

parent 0d401eb0
No related branches found
No related tags found
No related merge requests found
...@@ -496,6 +496,20 @@ class EAP(Packet): ...@@ -496,6 +496,20 @@ class EAP(Packet):
return p + pay return p + pay
class EAP_MD5(Packet):
"""
RFC 3748 - "Extensible Authentication Protocol (EAP)"
"""
name = "EAP-MD5"
fields_desc = [
ByteField("value_size", 0),
StrFixedLenField("value", 0, length=16), # MD5 hash length
StrLenField("optional_name", "", length_from=lambda p: p.value_size - 16)
]
class EAP_TLS(Packet): class EAP_TLS(Packet):
""" """
...@@ -660,6 +674,7 @@ bind_layers( GRE, GRErouting, { "routing_present" : 1 } ) ...@@ -660,6 +674,7 @@ bind_layers( GRE, GRErouting, { "routing_present" : 1 } )
bind_layers( GRErouting, conf.raw_layer,{ "address_family" : 0, "SRE_len" : 0 }) bind_layers( GRErouting, conf.raw_layer,{ "address_family" : 0, "SRE_len" : 0 })
bind_layers( GRErouting, GRErouting, { } ) bind_layers( GRErouting, GRErouting, { } )
bind_layers( EAPOL, EAP, type=0) bind_layers( EAPOL, EAP, type=0)
bind_layers( EAP, EAP_MD5, type=4)
bind_layers(EAP, EAP_TLS, type=13) bind_layers(EAP, EAP_TLS, type=13)
bind_layers(EAP, EAP_FAST, type=43) bind_layers(EAP, EAP_FAST, type=43)
bind_layers( LLC, STP, dsap=66, ssap=66, ctrl=3) bind_layers( LLC, STP, dsap=66, ssap=66, ctrl=3)
......
...@@ -5464,6 +5464,29 @@ assert(eap.type == 3) ...@@ -5464,6 +5464,29 @@ assert(eap.type == 3)
assert(hasattr(eap, 'desired_auth_type')) assert(hasattr(eap, 'desired_auth_type'))
assert(eap.desired_auth_type == 43) assert(eap.desired_auth_type == 43)
= EAP - EAP_MD5 - Request - Dissection (8)
s = '\x01\x02\x00\x16\x04\x10\x86\xf9\x89\x94\x81\x01\xb3 nHh\x1b\x8d\xe7^\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
eap = EAP(s)
assert(eap.code == 1)
assert(eap.id == 2)
assert(eap.len == 22)
assert(eap.type == 4)
assert(eap.haslayer(EAP_MD5))
assert(eap[EAP_MD5].value_size == 16)
assert(eap[EAP_MD5].value == '\x86\xf9\x89\x94\x81\x01\xb3 nHh\x1b\x8d\xe7^\xdb')
assert(eap[EAP_MD5].optional_name == '')
= EAP - EAP_MD5 - Response - Dissection (9)
s = '\x02\x02\x00\x16\x04\x10\xfd\x1e\xffe\xf5\x80y\xa8\xe3\xc8\xf1\xbd\xc2\x85\xae\xcf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
eap = EAP(s)
assert(eap.code == 2)
assert(eap.id == 2)
assert(eap.len == 22)
assert(eap.type == 4)
assert(eap.haslayer(EAP_MD5))
assert(eap[EAP_MD5].value_size == 16)
assert(eap[EAP_MD5].value == '\xfd\x1e\xffe\xf5\x80y\xa8\xe3\xc8\xf1\xbd\xc2\x85\xae\xcf')
assert(eap[EAP_MD5].optional_name == '')
############ ############
############ ############
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment