1 /// This file is autogenerated. See https://github.com/ctz/tls-hacking/ 2 3 use crate::msgs::codec::{Reader, Codec}; 4 5 enum_builder! { 6 /// The `ProtocolVersion` TLS protocol enum. Values in this enum are taken 7 /// from the various RFCs covering TLS, and are listed by IANA. 8 /// The `Unknown` item is used when processing unrecognised ordinals. 9 @U16 10 EnumName: ProtocolVersion; 11 EnumVal{ 12 SSLv2 => 0x0200, 13 SSLv3 => 0x0300, 14 TLSv1_0 => 0x0301, 15 TLSv1_1 => 0x0302, 16 TLSv1_2 => 0x0303, 17 TLSv1_3 => 0x0304 18 } 19 } 20 21 enum_builder! { 22 /// The `HashAlgorithm` TLS protocol enum. Values in this enum are taken 23 /// from the various RFCs covering TLS, and are listed by IANA. 24 /// The `Unknown` item is used when processing unrecognised ordinals. 25 @U8 26 EnumName: HashAlgorithm; 27 EnumVal{ 28 NONE => 0x00, 29 MD5 => 0x01, 30 SHA1 => 0x02, 31 SHA224 => 0x03, 32 SHA256 => 0x04, 33 SHA384 => 0x05, 34 SHA512 => 0x06 35 } 36 } 37 38 enum_builder! { 39 /// The `SignatureAlgorithm` TLS protocol enum. Values in this enum are taken 40 /// from the various RFCs covering TLS, and are listed by IANA. 41 /// The `Unknown` item is used when processing unrecognised ordinals. 42 @U8 43 EnumName: SignatureAlgorithm; 44 EnumVal{ 45 Anonymous => 0x00, 46 RSA => 0x01, 47 DSA => 0x02, 48 ECDSA => 0x03, 49 ED25519 => 0x07, 50 ED448 => 0x08 51 } 52 } 53 54 enum_builder! { 55 /// The `ClientCertificateType` TLS protocol enum. Values in this enum are taken 56 /// from the various RFCs covering TLS, and are listed by IANA. 57 /// The `Unknown` item is used when processing unrecognised ordinals. 58 @U8 59 EnumName: ClientCertificateType; 60 EnumVal{ 61 RSASign => 0x01, 62 DSSSign => 0x02, 63 RSAFixedDH => 0x03, 64 DSSFixedDH => 0x04, 65 RSAEphemeralDH => 0x05, 66 DSSEphemeralDH => 0x06, 67 FortezzaDMS => 0x14, 68 ECDSASign => 0x40, 69 RSAFixedECDH => 0x41, 70 ECDSAFixedECDH => 0x42 71 } 72 } 73 74 enum_builder! { 75 /// The `Compression` TLS protocol enum. Values in this enum are taken 76 /// from the various RFCs covering TLS, and are listed by IANA. 77 /// The `Unknown` item is used when processing unrecognised ordinals. 78 @U8 79 EnumName: Compression; 80 EnumVal{ 81 Null => 0x00, 82 Deflate => 0x01, 83 LSZ => 0x40 84 } 85 } 86 87 enum_builder! { 88 /// The `ContentType` TLS protocol enum. Values in this enum are taken 89 /// from the various RFCs covering TLS, and are listed by IANA. 90 /// The `Unknown` item is used when processing unrecognised ordinals. 91 @U8 92 EnumName: ContentType; 93 EnumVal{ 94 ChangeCipherSpec => 0x14, 95 Alert => 0x15, 96 Handshake => 0x16, 97 ApplicationData => 0x17, 98 Heartbeat => 0x18 99 } 100 } 101 102 enum_builder! { 103 /// The `HandshakeType` TLS protocol enum. Values in this enum are taken 104 /// from the various RFCs covering TLS, and are listed by IANA. 105 /// The `Unknown` item is used when processing unrecognised ordinals. 106 @U8 107 EnumName: HandshakeType; 108 EnumVal{ 109 HelloRequest => 0x00, 110 ClientHello => 0x01, 111 ServerHello => 0x02, 112 NewSessionTicket => 0x04, 113 EndOfEarlyData => 0x05, 114 HelloRetryRequest => 0x06, 115 EncryptedExtensions => 0x08, 116 Certificate => 0x0b, 117 ServerKeyExchange => 0x0c, 118 CertificateRequest => 0x0d, 119 ServerHelloDone => 0x0e, 120 CertificateVerify => 0x0f, 121 ClientKeyExchange => 0x10, 122 Finished => 0x14, 123 CertificateURL => 0x15, 124 CertificateStatus => 0x16, 125 KeyUpdate => 0x18, 126 MessageHash => 0xfe 127 } 128 } 129 130 enum_builder! { 131 /// The `AlertLevel` TLS protocol enum. Values in this enum are taken 132 /// from the various RFCs covering TLS, and are listed by IANA. 133 /// The `Unknown` item is used when processing unrecognised ordinals. 134 @U8 135 EnumName: AlertLevel; 136 EnumVal{ 137 Warning => 0x01, 138 Fatal => 0x02 139 } 140 } 141 142 enum_builder! { 143 /// The `AlertDescription` TLS protocol enum. Values in this enum are taken 144 /// from the various RFCs covering TLS, and are listed by IANA. 145 /// The `Unknown` item is used when processing unrecognised ordinals. 146 @U8 147 EnumName: AlertDescription; 148 EnumVal{ 149 CloseNotify => 0x00, 150 UnexpectedMessage => 0x0a, 151 BadRecordMac => 0x14, 152 DecryptionFailed => 0x15, 153 RecordOverflow => 0x16, 154 DecompressionFailure => 0x1e, 155 HandshakeFailure => 0x28, 156 NoCertificate => 0x29, 157 BadCertificate => 0x2a, 158 UnsupportedCertificate => 0x2b, 159 CertificateRevoked => 0x2c, 160 CertificateExpired => 0x2d, 161 CertificateUnknown => 0x2e, 162 IllegalParameter => 0x2f, 163 UnknownCA => 0x30, 164 AccessDenied => 0x31, 165 DecodeError => 0x32, 166 DecryptError => 0x33, 167 ExportRestriction => 0x3c, 168 ProtocolVersion => 0x46, 169 InsufficientSecurity => 0x47, 170 InternalError => 0x50, 171 InappropriateFallback => 0x56, 172 UserCanceled => 0x5a, 173 NoRenegotiation => 0x64, 174 MissingExtension => 0x6d, 175 UnsupportedExtension => 0x6e, 176 CertificateUnobtainable => 0x6f, 177 UnrecognisedName => 0x70, 178 BadCertificateStatusResponse => 0x71, 179 BadCertificateHashValue => 0x72, 180 UnknownPSKIdentity => 0x73, 181 CertificateRequired => 0x74, 182 NoApplicationProtocol => 0x78 183 } 184 } 185 186 enum_builder! { 187 /// The `HeartbeatMessageType` TLS protocol enum. Values in this enum are taken 188 /// from the various RFCs covering TLS, and are listed by IANA. 189 /// The `Unknown` item is used when processing unrecognised ordinals. 190 @U8 191 EnumName: HeartbeatMessageType; 192 EnumVal{ 193 Request => 0x01, 194 Response => 0x02 195 } 196 } 197 198 enum_builder! { 199 /// The `ExtensionType` TLS protocol enum. Values in this enum are taken 200 /// from the various RFCs covering TLS, and are listed by IANA. 201 /// The `Unknown` item is used when processing unrecognised ordinals. 202 @U16 203 EnumName: ExtensionType; 204 EnumVal{ 205 ServerName => 0x0000, 206 MaxFragmentLength => 0x0001, 207 ClientCertificateUrl => 0x0002, 208 TrustedCAKeys => 0x0003, 209 TruncatedHMAC => 0x0004, 210 StatusRequest => 0x0005, 211 UserMapping => 0x0006, 212 ClientAuthz => 0x0007, 213 ServerAuthz => 0x0008, 214 CertificateType => 0x0009, 215 EllipticCurves => 0x000a, 216 ECPointFormats => 0x000b, 217 SRP => 0x000c, 218 SignatureAlgorithms => 0x000d, 219 UseSRTP => 0x000e, 220 Heartbeat => 0x000f, 221 ALProtocolNegotiation => 0x0010, 222 SCT => 0x0012, 223 Padding => 0x0015, 224 ExtendedMasterSecret => 0x0017, 225 SessionTicket => 0x0023, 226 PreSharedKey => 0x0029, 227 EarlyData => 0x002a, 228 SupportedVersions => 0x002b, 229 Cookie => 0x002c, 230 PSKKeyExchangeModes => 0x002d, 231 TicketEarlyDataInfo => 0x002e, 232 CertificateAuthorities => 0x002f, 233 OIDFilters => 0x0030, 234 PostHandshakeAuth => 0x0031, 235 SignatureAlgorithmsCert => 0x0032, 236 KeyShare => 0x0033, 237 NextProtocolNegotiation => 0x3374, 238 ChannelId => 0x754f, 239 RenegotiationInfo => 0xff01, 240 TransportParameters => 0xffa5 241 } 242 } 243 244 enum_builder! { 245 /// The `ServerNameType` TLS protocol enum. Values in this enum are taken 246 /// from the various RFCs covering TLS, and are listed by IANA. 247 /// The `Unknown` item is used when processing unrecognised ordinals. 248 @U8 249 EnumName: ServerNameType; 250 EnumVal{ 251 HostName => 0x00 252 } 253 } 254 255 enum_builder! { 256 /// The `NamedCurve` TLS protocol enum. Values in this enum are taken 257 /// from the various RFCs covering TLS, and are listed by IANA. 258 /// The `Unknown` item is used when processing unrecognised ordinals. 259 @U16 260 EnumName: NamedCurve; 261 EnumVal{ 262 sect163k1 => 0x0001, 263 sect163r1 => 0x0002, 264 sect163r2 => 0x0003, 265 sect193r1 => 0x0004, 266 sect193r2 => 0x0005, 267 sect233k1 => 0x0006, 268 sect233r1 => 0x0007, 269 sect239k1 => 0x0008, 270 sect283k1 => 0x0009, 271 sect283r1 => 0x000a, 272 sect409k1 => 0x000b, 273 sect409r1 => 0x000c, 274 sect571k1 => 0x000d, 275 sect571r1 => 0x000e, 276 secp160k1 => 0x000f, 277 secp160r1 => 0x0010, 278 secp160r2 => 0x0011, 279 secp192k1 => 0x0012, 280 secp192r1 => 0x0013, 281 secp224k1 => 0x0014, 282 secp224r1 => 0x0015, 283 secp256k1 => 0x0016, 284 secp256r1 => 0x0017, 285 secp384r1 => 0x0018, 286 secp521r1 => 0x0019, 287 brainpoolp256r1 => 0x001a, 288 brainpoolp384r1 => 0x001b, 289 brainpoolp512r1 => 0x001c, 290 X25519 => 0x001d, 291 X448 => 0x001e, 292 arbitrary_explicit_prime_curves => 0xff01, 293 arbitrary_explicit_char2_curves => 0xff02 294 } 295 } 296 297 enum_builder! { 298 /// The `NamedGroup` TLS protocol enum. Values in this enum are taken 299 /// from the various RFCs covering TLS, and are listed by IANA. 300 /// The `Unknown` item is used when processing unrecognised ordinals. 301 @U16 302 EnumName: NamedGroup; 303 EnumVal{ 304 secp256r1 => 0x0017, 305 secp384r1 => 0x0018, 306 secp521r1 => 0x0019, 307 X25519 => 0x001d, 308 X448 => 0x001e, 309 FFDHE2048 => 0x0100, 310 FFDHE3072 => 0x0101, 311 FFDHE4096 => 0x0102, 312 FFDHE6144 => 0x0103, 313 FFDHE8192 => 0x0104 314 } 315 } 316 317 enum_builder! { 318 /// The `CipherSuite` TLS protocol enum. Values in this enum are taken 319 /// from the various RFCs covering TLS, and are listed by IANA. 320 /// The `Unknown` item is used when processing unrecognised ordinals. 321 @U16 322 EnumName: CipherSuite; 323 EnumVal{ 324 TLS_NULL_WITH_NULL_NULL => 0x0000, 325 TLS_RSA_WITH_NULL_MD5 => 0x0001, 326 TLS_RSA_WITH_NULL_SHA => 0x0002, 327 TLS_RSA_EXPORT_WITH_RC4_40_MD5 => 0x0003, 328 TLS_RSA_WITH_RC4_128_MD5 => 0x0004, 329 TLS_RSA_WITH_RC4_128_SHA => 0x0005, 330 TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 => 0x0006, 331 TLS_RSA_WITH_IDEA_CBC_SHA => 0x0007, 332 TLS_RSA_EXPORT_WITH_DES40_CBC_SHA => 0x0008, 333 TLS_RSA_WITH_DES_CBC_SHA => 0x0009, 334 TLS_RSA_WITH_3DES_EDE_CBC_SHA => 0x000a, 335 TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA => 0x000b, 336 TLS_DH_DSS_WITH_DES_CBC_SHA => 0x000c, 337 TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA => 0x000d, 338 TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA => 0x000e, 339 TLS_DH_RSA_WITH_DES_CBC_SHA => 0x000f, 340 TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA => 0x0010, 341 TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA => 0x0011, 342 TLS_DHE_DSS_WITH_DES_CBC_SHA => 0x0012, 343 TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA => 0x0013, 344 TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA => 0x0014, 345 TLS_DHE_RSA_WITH_DES_CBC_SHA => 0x0015, 346 TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA => 0x0016, 347 TLS_DH_anon_EXPORT_WITH_RC4_40_MD5 => 0x0017, 348 TLS_DH_anon_WITH_RC4_128_MD5 => 0x0018, 349 TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA => 0x0019, 350 TLS_DH_anon_WITH_DES_CBC_SHA => 0x001a, 351 TLS_DH_anon_WITH_3DES_EDE_CBC_SHA => 0x001b, 352 SSL_FORTEZZA_KEA_WITH_NULL_SHA => 0x001c, 353 SSL_FORTEZZA_KEA_WITH_FORTEZZA_CBC_SHA => 0x001d, 354 TLS_KRB5_WITH_DES_CBC_SHA_or_SSL_FORTEZZA_KEA_WITH_RC4_128_SHA => 0x001e, 355 TLS_KRB5_WITH_3DES_EDE_CBC_SHA => 0x001f, 356 TLS_KRB5_WITH_RC4_128_SHA => 0x0020, 357 TLS_KRB5_WITH_IDEA_CBC_SHA => 0x0021, 358 TLS_KRB5_WITH_DES_CBC_MD5 => 0x0022, 359 TLS_KRB5_WITH_3DES_EDE_CBC_MD5 => 0x0023, 360 TLS_KRB5_WITH_RC4_128_MD5 => 0x0024, 361 TLS_KRB5_WITH_IDEA_CBC_MD5 => 0x0025, 362 TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA => 0x0026, 363 TLS_KRB5_EXPORT_WITH_RC2_CBC_40_SHA => 0x0027, 364 TLS_KRB5_EXPORT_WITH_RC4_40_SHA => 0x0028, 365 TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5 => 0x0029, 366 TLS_KRB5_EXPORT_WITH_RC2_CBC_40_MD5 => 0x002a, 367 TLS_KRB5_EXPORT_WITH_RC4_40_MD5 => 0x002b, 368 TLS_PSK_WITH_NULL_SHA => 0x002c, 369 TLS_DHE_PSK_WITH_NULL_SHA => 0x002d, 370 TLS_RSA_PSK_WITH_NULL_SHA => 0x002e, 371 TLS_RSA_WITH_AES_128_CBC_SHA => 0x002f, 372 TLS_DH_DSS_WITH_AES_128_CBC_SHA => 0x0030, 373 TLS_DH_RSA_WITH_AES_128_CBC_SHA => 0x0031, 374 TLS_DHE_DSS_WITH_AES_128_CBC_SHA => 0x0032, 375 TLS_DHE_RSA_WITH_AES_128_CBC_SHA => 0x0033, 376 TLS_DH_anon_WITH_AES_128_CBC_SHA => 0x0034, 377 TLS_RSA_WITH_AES_256_CBC_SHA => 0x0035, 378 TLS_DH_DSS_WITH_AES_256_CBC_SHA => 0x0036, 379 TLS_DH_RSA_WITH_AES_256_CBC_SHA => 0x0037, 380 TLS_DHE_DSS_WITH_AES_256_CBC_SHA => 0x0038, 381 TLS_DHE_RSA_WITH_AES_256_CBC_SHA => 0x0039, 382 TLS_DH_anon_WITH_AES_256_CBC_SHA => 0x003a, 383 TLS_RSA_WITH_NULL_SHA256 => 0x003b, 384 TLS_RSA_WITH_AES_128_CBC_SHA256 => 0x003c, 385 TLS_RSA_WITH_AES_256_CBC_SHA256 => 0x003d, 386 TLS_DH_DSS_WITH_AES_128_CBC_SHA256 => 0x003e, 387 TLS_DH_RSA_WITH_AES_128_CBC_SHA256 => 0x003f, 388 TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 => 0x0040, 389 TLS_RSA_WITH_CAMELLIA_128_CBC_SHA => 0x0041, 390 TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA => 0x0042, 391 TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA => 0x0043, 392 TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA => 0x0044, 393 TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA => 0x0045, 394 TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA => 0x0046, 395 TLS_ECDH_ECDSA_WITH_NULL_SHA_draft => 0x0047, 396 TLS_ECDH_ECDSA_WITH_RC4_128_SHA_draft => 0x0048, 397 TLS_ECDH_ECDSA_WITH_DES_CBC_SHA_draft => 0x0049, 398 TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA_draft => 0x004a, 399 TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA_draft => 0x004b, 400 TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA_draft => 0x004c, 401 TLS_ECDH_ECNRA_WITH_DES_CBC_SHA_draft => 0x004d, 402 TLS_ECDH_ECNRA_WITH_3DES_EDE_CBC_SHA_draft => 0x004e, 403 TLS_ECMQV_ECDSA_NULL_SHA_draft => 0x004f, 404 TLS_ECMQV_ECDSA_WITH_RC4_128_SHA_draft => 0x0050, 405 TLS_ECMQV_ECDSA_WITH_DES_CBC_SHA_draft => 0x0051, 406 TLS_ECMQV_ECDSA_WITH_3DES_EDE_CBC_SHA_draft => 0x0052, 407 TLS_ECMQV_ECNRA_NULL_SHA_draft => 0x0053, 408 TLS_ECMQV_ECNRA_WITH_RC4_128_SHA_draft => 0x0054, 409 TLS_ECMQV_ECNRA_WITH_DES_CBC_SHA_draft => 0x0055, 410 TLS_ECMQV_ECNRA_WITH_3DES_EDE_CBC_SHA_draft => 0x0056, 411 TLS_ECDH_anon_NULL_WITH_SHA_draft => 0x0057, 412 TLS_ECDH_anon_WITH_RC4_128_SHA_draft => 0x0058, 413 TLS_ECDH_anon_WITH_DES_CBC_SHA_draft => 0x0059, 414 TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA_draft => 0x005a, 415 TLS_ECDH_anon_EXPORT_WITH_DES40_CBC_SHA_draft => 0x005b, 416 TLS_ECDH_anon_EXPORT_WITH_RC4_40_SHA_draft => 0x005c, 417 TLS_RSA_EXPORT1024_WITH_RC4_56_MD5 => 0x0060, 418 TLS_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5 => 0x0061, 419 TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA => 0x0062, 420 TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA => 0x0063, 421 TLS_RSA_EXPORT1024_WITH_RC4_56_SHA => 0x0064, 422 TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA => 0x0065, 423 TLS_DHE_DSS_WITH_RC4_128_SHA => 0x0066, 424 TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 => 0x0067, 425 TLS_DH_DSS_WITH_AES_256_CBC_SHA256 => 0x0068, 426 TLS_DH_RSA_WITH_AES_256_CBC_SHA256 => 0x0069, 427 TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 => 0x006a, 428 TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 => 0x006b, 429 TLS_DH_anon_WITH_AES_128_CBC_SHA256 => 0x006c, 430 TLS_DH_anon_WITH_AES_256_CBC_SHA256 => 0x006d, 431 TLS_DHE_DSS_WITH_3DES_EDE_CBC_RMD => 0x0072, 432 TLS_DHE_DSS_WITH_AES_128_CBC_RMD => 0x0073, 433 TLS_DHE_DSS_WITH_AES_256_CBC_RMD => 0x0074, 434 TLS_DHE_RSA_WITH_3DES_EDE_CBC_RMD => 0x0077, 435 TLS_DHE_RSA_WITH_AES_128_CBC_RMD => 0x0078, 436 TLS_DHE_RSA_WITH_AES_256_CBC_RMD => 0x0079, 437 TLS_RSA_WITH_3DES_EDE_CBC_RMD => 0x007c, 438 TLS_RSA_WITH_AES_128_CBC_RMD => 0x007d, 439 TLS_RSA_WITH_AES_256_CBC_RMD => 0x007e, 440 TLS_GOSTR341094_WITH_28147_CNT_IMIT => 0x0080, 441 TLS_GOSTR341001_WITH_28147_CNT_IMIT => 0x0081, 442 TLS_GOSTR341094_WITH_NULL_GOSTR3411 => 0x0082, 443 TLS_GOSTR341001_WITH_NULL_GOSTR3411 => 0x0083, 444 TLS_RSA_WITH_CAMELLIA_256_CBC_SHA => 0x0084, 445 TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA => 0x0085, 446 TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA => 0x0086, 447 TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA => 0x0087, 448 TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA => 0x0088, 449 TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA => 0x0089, 450 TLS_PSK_WITH_RC4_128_SHA => 0x008a, 451 TLS_PSK_WITH_3DES_EDE_CBC_SHA => 0x008b, 452 TLS_PSK_WITH_AES_128_CBC_SHA => 0x008c, 453 TLS_PSK_WITH_AES_256_CBC_SHA => 0x008d, 454 TLS_DHE_PSK_WITH_RC4_128_SHA => 0x008e, 455 TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA => 0x008f, 456 TLS_DHE_PSK_WITH_AES_128_CBC_SHA => 0x0090, 457 TLS_DHE_PSK_WITH_AES_256_CBC_SHA => 0x0091, 458 TLS_RSA_PSK_WITH_RC4_128_SHA => 0x0092, 459 TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA => 0x0093, 460 TLS_RSA_PSK_WITH_AES_128_CBC_SHA => 0x0094, 461 TLS_RSA_PSK_WITH_AES_256_CBC_SHA => 0x0095, 462 TLS_RSA_WITH_SEED_CBC_SHA => 0x0096, 463 TLS_DH_DSS_WITH_SEED_CBC_SHA => 0x0097, 464 TLS_DH_RSA_WITH_SEED_CBC_SHA => 0x0098, 465 TLS_DHE_DSS_WITH_SEED_CBC_SHA => 0x0099, 466 TLS_DHE_RSA_WITH_SEED_CBC_SHA => 0x009a, 467 TLS_DH_anon_WITH_SEED_CBC_SHA => 0x009b, 468 TLS_RSA_WITH_AES_128_GCM_SHA256 => 0x009c, 469 TLS_RSA_WITH_AES_256_GCM_SHA384 => 0x009d, 470 TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 => 0x009e, 471 TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 => 0x009f, 472 TLS_DH_RSA_WITH_AES_128_GCM_SHA256 => 0x00a0, 473 TLS_DH_RSA_WITH_AES_256_GCM_SHA384 => 0x00a1, 474 TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 => 0x00a2, 475 TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 => 0x00a3, 476 TLS_DH_DSS_WITH_AES_128_GCM_SHA256 => 0x00a4, 477 TLS_DH_DSS_WITH_AES_256_GCM_SHA384 => 0x00a5, 478 TLS_DH_anon_WITH_AES_128_GCM_SHA256 => 0x00a6, 479 TLS_DH_anon_WITH_AES_256_GCM_SHA384 => 0x00a7, 480 TLS_PSK_WITH_AES_128_GCM_SHA256 => 0x00a8, 481 TLS_PSK_WITH_AES_256_GCM_SHA384 => 0x00a9, 482 TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 => 0x00aa, 483 TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 => 0x00ab, 484 TLS_RSA_PSK_WITH_AES_128_GCM_SHA256 => 0x00ac, 485 TLS_RSA_PSK_WITH_AES_256_GCM_SHA384 => 0x00ad, 486 TLS_PSK_WITH_AES_128_CBC_SHA256 => 0x00ae, 487 TLS_PSK_WITH_AES_256_CBC_SHA384 => 0x00af, 488 TLS_PSK_WITH_NULL_SHA256 => 0x00b0, 489 TLS_PSK_WITH_NULL_SHA384 => 0x00b1, 490 TLS_DHE_PSK_WITH_AES_128_CBC_SHA256 => 0x00b2, 491 TLS_DHE_PSK_WITH_AES_256_CBC_SHA384 => 0x00b3, 492 TLS_DHE_PSK_WITH_NULL_SHA256 => 0x00b4, 493 TLS_DHE_PSK_WITH_NULL_SHA384 => 0x00b5, 494 TLS_RSA_PSK_WITH_AES_128_CBC_SHA256 => 0x00b6, 495 TLS_RSA_PSK_WITH_AES_256_CBC_SHA384 => 0x00b7, 496 TLS_RSA_PSK_WITH_NULL_SHA256 => 0x00b8, 497 TLS_RSA_PSK_WITH_NULL_SHA384 => 0x00b9, 498 TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256 => 0x00ba, 499 TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA256 => 0x00bb, 500 TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA256 => 0x00bc, 501 TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256 => 0x00bd, 502 TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 => 0x00be, 503 TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256 => 0x00bf, 504 TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256 => 0x00c0, 505 TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA256 => 0x00c1, 506 TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA256 => 0x00c2, 507 TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256 => 0x00c3, 508 TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256 => 0x00c4, 509 TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256 => 0x00c5, 510 TLS_EMPTY_RENEGOTIATION_INFO_SCSV => 0x00ff, 511 TLS13_AES_128_GCM_SHA256 => 0x1301, 512 TLS13_AES_256_GCM_SHA384 => 0x1302, 513 TLS13_CHACHA20_POLY1305_SHA256 => 0x1303, 514 TLS13_AES_128_CCM_SHA256 => 0x1304, 515 TLS13_AES_128_CCM_8_SHA256 => 0x1305, 516 TLS_ECDH_ECDSA_WITH_NULL_SHA => 0xc001, 517 TLS_ECDH_ECDSA_WITH_RC4_128_SHA => 0xc002, 518 TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA => 0xc003, 519 TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA => 0xc004, 520 TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA => 0xc005, 521 TLS_ECDHE_ECDSA_WITH_NULL_SHA => 0xc006, 522 TLS_ECDHE_ECDSA_WITH_RC4_128_SHA => 0xc007, 523 TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA => 0xc008, 524 TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA => 0xc009, 525 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA => 0xc00a, 526 TLS_ECDH_RSA_WITH_NULL_SHA => 0xc00b, 527 TLS_ECDH_RSA_WITH_RC4_128_SHA => 0xc00c, 528 TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA => 0xc00d, 529 TLS_ECDH_RSA_WITH_AES_128_CBC_SHA => 0xc00e, 530 TLS_ECDH_RSA_WITH_AES_256_CBC_SHA => 0xc00f, 531 TLS_ECDHE_RSA_WITH_NULL_SHA => 0xc010, 532 TLS_ECDHE_RSA_WITH_RC4_128_SHA => 0xc011, 533 TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA => 0xc012, 534 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA => 0xc013, 535 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA => 0xc014, 536 TLS_ECDH_anon_WITH_NULL_SHA => 0xc015, 537 TLS_ECDH_anon_WITH_RC4_128_SHA => 0xc016, 538 TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA => 0xc017, 539 TLS_ECDH_anon_WITH_AES_128_CBC_SHA => 0xc018, 540 TLS_ECDH_anon_WITH_AES_256_CBC_SHA => 0xc019, 541 TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA => 0xc01a, 542 TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA => 0xc01b, 543 TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA => 0xc01c, 544 TLS_SRP_SHA_WITH_AES_128_CBC_SHA => 0xc01d, 545 TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA => 0xc01e, 546 TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA => 0xc01f, 547 TLS_SRP_SHA_WITH_AES_256_CBC_SHA => 0xc020, 548 TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA => 0xc021, 549 TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA => 0xc022, 550 TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 => 0xc023, 551 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 => 0xc024, 552 TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 => 0xc025, 553 TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 => 0xc026, 554 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 => 0xc027, 555 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 => 0xc028, 556 TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 => 0xc029, 557 TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 => 0xc02a, 558 TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 => 0xc02b, 559 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 => 0xc02c, 560 TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 => 0xc02d, 561 TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 => 0xc02e, 562 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 => 0xc02f, 563 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 => 0xc030, 564 TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256 => 0xc031, 565 TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384 => 0xc032, 566 TLS_ECDHE_PSK_WITH_RC4_128_SHA => 0xc033, 567 TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA => 0xc034, 568 TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA => 0xc035, 569 TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA => 0xc036, 570 TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256 => 0xc037, 571 TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384 => 0xc038, 572 TLS_ECDHE_PSK_WITH_NULL_SHA => 0xc039, 573 TLS_ECDHE_PSK_WITH_NULL_SHA256 => 0xc03a, 574 TLS_ECDHE_PSK_WITH_NULL_SHA384 => 0xc03b, 575 TLS_RSA_WITH_ARIA_128_CBC_SHA256 => 0xc03c, 576 TLS_RSA_WITH_ARIA_256_CBC_SHA384 => 0xc03d, 577 TLS_DH_DSS_WITH_ARIA_128_CBC_SHA256 => 0xc03e, 578 TLS_DH_DSS_WITH_ARIA_256_CBC_SHA384 => 0xc03f, 579 TLS_DH_RSA_WITH_ARIA_128_CBC_SHA256 => 0xc040, 580 TLS_DH_RSA_WITH_ARIA_256_CBC_SHA384 => 0xc041, 581 TLS_DHE_DSS_WITH_ARIA_128_CBC_SHA256 => 0xc042, 582 TLS_DHE_DSS_WITH_ARIA_256_CBC_SHA384 => 0xc043, 583 TLS_DHE_RSA_WITH_ARIA_128_CBC_SHA256 => 0xc044, 584 TLS_DHE_RSA_WITH_ARIA_256_CBC_SHA384 => 0xc045, 585 TLS_DH_anon_WITH_ARIA_128_CBC_SHA256 => 0xc046, 586 TLS_DH_anon_WITH_ARIA_256_CBC_SHA384 => 0xc047, 587 TLS_ECDHE_ECDSA_WITH_ARIA_128_CBC_SHA256 => 0xc048, 588 TLS_ECDHE_ECDSA_WITH_ARIA_256_CBC_SHA384 => 0xc049, 589 TLS_ECDH_ECDSA_WITH_ARIA_128_CBC_SHA256 => 0xc04a, 590 TLS_ECDH_ECDSA_WITH_ARIA_256_CBC_SHA384 => 0xc04b, 591 TLS_ECDHE_RSA_WITH_ARIA_128_CBC_SHA256 => 0xc04c, 592 TLS_ECDHE_RSA_WITH_ARIA_256_CBC_SHA384 => 0xc04d, 593 TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256 => 0xc04e, 594 TLS_ECDH_RSA_WITH_ARIA_256_CBC_SHA384 => 0xc04f, 595 TLS_RSA_WITH_ARIA_128_GCM_SHA256 => 0xc050, 596 TLS_RSA_WITH_ARIA_256_GCM_SHA384 => 0xc051, 597 TLS_DHE_RSA_WITH_ARIA_128_GCM_SHA256 => 0xc052, 598 TLS_DHE_RSA_WITH_ARIA_256_GCM_SHA384 => 0xc053, 599 TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256 => 0xc054, 600 TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384 => 0xc055, 601 TLS_DHE_DSS_WITH_ARIA_128_GCM_SHA256 => 0xc056, 602 TLS_DHE_DSS_WITH_ARIA_256_GCM_SHA384 => 0xc057, 603 TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256 => 0xc058, 604 TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384 => 0xc059, 605 TLS_DH_anon_WITH_ARIA_128_GCM_SHA256 => 0xc05a, 606 TLS_DH_anon_WITH_ARIA_256_GCM_SHA384 => 0xc05b, 607 TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256 => 0xc05c, 608 TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384 => 0xc05d, 609 TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256 => 0xc05e, 610 TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384 => 0xc05f, 611 TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256 => 0xc060, 612 TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384 => 0xc061, 613 TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256 => 0xc062, 614 TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384 => 0xc063, 615 TLS_PSK_WITH_ARIA_128_CBC_SHA256 => 0xc064, 616 TLS_PSK_WITH_ARIA_256_CBC_SHA384 => 0xc065, 617 TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256 => 0xc066, 618 TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384 => 0xc067, 619 TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256 => 0xc068, 620 TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384 => 0xc069, 621 TLS_PSK_WITH_ARIA_128_GCM_SHA256 => 0xc06a, 622 TLS_PSK_WITH_ARIA_256_GCM_SHA384 => 0xc06b, 623 TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256 => 0xc06c, 624 TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384 => 0xc06d, 625 TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256 => 0xc06e, 626 TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384 => 0xc06f, 627 TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256 => 0xc070, 628 TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384 => 0xc071, 629 TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256 => 0xc072, 630 TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384 => 0xc073, 631 TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256 => 0xc074, 632 TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384 => 0xc075, 633 TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 => 0xc076, 634 TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384 => 0xc077, 635 TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256 => 0xc078, 636 TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384 => 0xc079, 637 TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256 => 0xc07a, 638 TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384 => 0xc07b, 639 TLS_DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256 => 0xc07c, 640 TLS_DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384 => 0xc07d, 641 TLS_DH_RSA_WITH_CAMELLIA_128_GCM_SHA256 => 0xc07e, 642 TLS_DH_RSA_WITH_CAMELLIA_256_GCM_SHA384 => 0xc07f, 643 TLS_DHE_DSS_WITH_CAMELLIA_128_GCM_SHA256 => 0xc080, 644 TLS_DHE_DSS_WITH_CAMELLIA_256_GCM_SHA384 => 0xc081, 645 TLS_DH_DSS_WITH_CAMELLIA_128_GCM_SHA256 => 0xc082, 646 TLS_DH_DSS_WITH_CAMELLIA_256_GCM_SHA384 => 0xc083, 647 TLS_DH_anon_WITH_CAMELLIA_128_GCM_SHA256 => 0xc084, 648 TLS_DH_anon_WITH_CAMELLIA_256_GCM_SHA384 => 0xc085, 649 TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256 => 0xc086, 650 TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384 => 0xc087, 651 TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256 => 0xc088, 652 TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384 => 0xc089, 653 TLS_ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256 => 0xc08a, 654 TLS_ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384 => 0xc08b, 655 TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256 => 0xc08c, 656 TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384 => 0xc08d, 657 TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256 => 0xc08e, 658 TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384 => 0xc08f, 659 TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256 => 0xc090, 660 TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384 => 0xc091, 661 TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256 => 0xc092, 662 TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384 => 0xc093, 663 TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256 => 0xc094, 664 TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384 => 0xc095, 665 TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 => 0xc096, 666 TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 => 0xc097, 667 TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256 => 0xc098, 668 TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384 => 0xc099, 669 TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 => 0xc09a, 670 TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 => 0xc09b, 671 TLS_RSA_WITH_AES_128_CCM => 0xc09c, 672 TLS_RSA_WITH_AES_256_CCM => 0xc09d, 673 TLS_DHE_RSA_WITH_AES_128_CCM => 0xc09e, 674 TLS_DHE_RSA_WITH_AES_256_CCM => 0xc09f, 675 TLS_RSA_WITH_AES_128_CCM_8 => 0xc0a0, 676 TLS_RSA_WITH_AES_256_CCM_8 => 0xc0a1, 677 TLS_DHE_RSA_WITH_AES_128_CCM_8 => 0xc0a2, 678 TLS_DHE_RSA_WITH_AES_256_CCM_8 => 0xc0a3, 679 TLS_PSK_WITH_AES_128_CCM => 0xc0a4, 680 TLS_PSK_WITH_AES_256_CCM => 0xc0a5, 681 TLS_DHE_PSK_WITH_AES_128_CCM => 0xc0a6, 682 TLS_DHE_PSK_WITH_AES_256_CCM => 0xc0a7, 683 TLS_PSK_WITH_AES_128_CCM_8 => 0xc0a8, 684 TLS_PSK_WITH_AES_256_CCM_8 => 0xc0a9, 685 TLS_PSK_DHE_WITH_AES_128_CCM_8 => 0xc0aa, 686 TLS_PSK_DHE_WITH_AES_256_CCM_8 => 0xc0ab, 687 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 => 0xcca8, 688 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 => 0xcca9, 689 TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256 => 0xccaa, 690 TLS_PSK_WITH_CHACHA20_POLY1305_SHA256 => 0xccab, 691 TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 => 0xccac, 692 TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256 => 0xccad, 693 TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256 => 0xccae, 694 SSL_RSA_FIPS_WITH_DES_CBC_SHA => 0xfefe, 695 SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA => 0xfeff 696 } 697 } 698 699 enum_builder! { 700 /// The `ECPointFormat` TLS protocol enum. Values in this enum are taken 701 /// from the various RFCs covering TLS, and are listed by IANA. 702 /// The `Unknown` item is used when processing unrecognised ordinals. 703 @U8 704 EnumName: ECPointFormat; 705 EnumVal{ 706 Uncompressed => 0x00, 707 ANSIX962CompressedPrime => 0x01, 708 ANSIX962CompressedChar2 => 0x02 709 } 710 } 711 712 enum_builder! { 713 /// The `HeartbeatMode` TLS protocol enum. Values in this enum are taken 714 /// from the various RFCs covering TLS, and are listed by IANA. 715 /// The `Unknown` item is used when processing unrecognised ordinals. 716 @U8 717 EnumName: HeartbeatMode; 718 EnumVal{ 719 PeerAllowedToSend => 0x01, 720 PeerNotAllowedToSend => 0x02 721 } 722 } 723 724 enum_builder! { 725 /// The `ECCurveType` TLS protocol enum. Values in this enum are taken 726 /// from the various RFCs covering TLS, and are listed by IANA. 727 /// The `Unknown` item is used when processing unrecognised ordinals. 728 @U8 729 EnumName: ECCurveType; 730 EnumVal{ 731 ExplicitPrime => 0x01, 732 ExplicitChar2 => 0x02, 733 NamedCurve => 0x03 734 } 735 } 736 737 enum_builder! { 738 /// The `SignatureScheme` TLS protocol enum. Values in this enum are taken 739 /// from the various RFCs covering TLS, and are listed by IANA. 740 /// The `Unknown` item is used when processing unrecognised ordinals. 741 @U16 742 EnumName: SignatureScheme; 743 EnumVal{ 744 RSA_PKCS1_SHA1 => 0x0201, 745 ECDSA_SHA1_Legacy => 0x0203, 746 RSA_PKCS1_SHA256 => 0x0401, 747 ECDSA_NISTP256_SHA256 => 0x0403, 748 RSA_PKCS1_SHA384 => 0x0501, 749 ECDSA_NISTP384_SHA384 => 0x0503, 750 RSA_PKCS1_SHA512 => 0x0601, 751 ECDSA_NISTP521_SHA512 => 0x0603, 752 RSA_PSS_SHA256 => 0x0804, 753 RSA_PSS_SHA384 => 0x0805, 754 RSA_PSS_SHA512 => 0x0806, 755 ED25519 => 0x0807, 756 ED448 => 0x0808 757 } 758 } 759 760 enum_builder! { 761 /// The `PSKKeyExchangeMode` TLS protocol enum. Values in this enum are taken 762 /// from the various RFCs covering TLS, and are listed by IANA. 763 /// The `Unknown` item is used when processing unrecognised ordinals. 764 @U8 765 EnumName: PSKKeyExchangeMode; 766 EnumVal{ 767 PSK_KE => 0x00, 768 PSK_DHE_KE => 0x01 769 } 770 } 771 772 enum_builder! { 773 /// The `KeyUpdateRequest` TLS protocol enum. Values in this enum are taken 774 /// from the various RFCs covering TLS, and are listed by IANA. 775 /// The `Unknown` item is used when processing unrecognised ordinals. 776 @U8 777 EnumName: KeyUpdateRequest; 778 EnumVal{ 779 UpdateNotRequested => 0x00, 780 UpdateRequested => 0x01 781 } 782 } 783 784 enum_builder! { 785 /// The `CertificateStatusType` TLS protocol enum. Values in this enum are taken 786 /// from the various RFCs covering TLS, and are listed by IANA. 787 /// The `Unknown` item is used when processing unrecognised ordinals. 788 @U8 789 EnumName: CertificateStatusType; 790 EnumVal{ 791 OCSP => 0x01 792 } 793 } 794