SSLv2 ClientHello.
| 100 | |
| 101 | |
| 102 | class SSLv2ClientHello(_SSLv2Handshake): |
| 103 | """ |
| 104 | SSLv2 ClientHello. |
| 105 | """ |
| 106 | name = "SSLv2 Handshake - Client Hello" |
| 107 | fields_desc = [ByteEnumField("msgtype", 1, _sslv2_handshake_type), |
| 108 | _TLSVersionField("version", 0x0002, _tls_version), |
| 109 | |
| 110 | FieldLenField("cipherslen", None, fmt="!H", |
| 111 | length_of="ciphers"), |
| 112 | FieldLenField("sidlen", None, fmt="!H", |
| 113 | length_of="sid"), |
| 114 | FieldLenField("challengelen", None, fmt="!H", |
| 115 | length_of="challenge"), |
| 116 | |
| 117 | XStrLenField("sid", b"", |
| 118 | length_from=lambda pkt:pkt.sidlen), |
| 119 | _SSLv2CipherSuitesField("ciphers", |
| 120 | [SSL_CK_DES_192_EDE3_CBC_WITH_MD5], |
| 121 | _tls_cipher_suites, |
| 122 | length_from=lambda pkt: pkt.cipherslen), # noqa: E501 |
| 123 | XStrLenField("challenge", b"", |
| 124 | length_from=lambda pkt:pkt.challengelen)] |
| 125 | |
| 126 | def tls_session_update(self, msg_str): |
| 127 | super(SSLv2ClientHello, self).tls_session_update(msg_str) |
| 128 | self.tls_session.advertised_tls_version = self.version |
| 129 | self.tls_session.sslv2_common_cs = self.ciphers |
| 130 | self.tls_session.sslv2_challenge = self.challenge |
| 131 | |
| 132 | |
| 133 | ############################################################################### |
no test coverage detected
searching dependent graphs…