MCPcopy Create free account
hub / github.com/secdev/scapy / _SSLv2MsgListField

Class _SSLv2MsgListField

scapy/layers/tls/record_sslv2.py:27–64  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

25###############################################################################
26
27class _SSLv2MsgListField(_TLSMsgListField):
28 def __init__(self, name, default, length_from=None):
29 if not length_from:
30 length_from = lambda pkt: ((pkt.len & 0x7fff) -
31 (pkt.padlen or 0) -
32 len(pkt.mac))
33 super(_SSLv2MsgListField, self).__init__(name, default,
34 length_from=length_from)
35
36 def m2i(self, pkt, m):
37 cls = Raw
38 if len(m) >= 1:
39 msgtype = orb(m[0])
40 cls = _sslv2_handshake_cls.get(msgtype, Raw)
41
42 if cls is Raw:
43 return Raw(m)
44 else:
45 return cls(m, tls_session=pkt.tls_session)
46
47 def i2m(self, pkt, p):
48 cur = b""
49 if isinstance(p, _GenericTLSSessionInheritance):
50 p.tls_session = pkt.tls_session
51 if not pkt.tls_session.frozen:
52 cur = p.raw_stateful()
53 p.post_build_tls_session_update(cur)
54 else:
55 cur = raw(p)
56 else:
57 cur = raw(p)
58 return cur
59
60 def addfield(self, pkt, s, val):
61 res = b""
62 for p in val:
63 res += self.i2m(pkt, p)
64 return s + res
65
66
67class SSLv2(TLS):

Callers 1

SSLv2Class · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…