sslproto.h
来自「支持SSL v2/v3, TLS, PKCS #5, PKCS #7, PKCS」· C头文件 代码 · 共 159 行
H
159 行
/* * Various and sundry protocol constants. DON'T CHANGE THESE. These values * are mostly defined by the SSL2, SSL3, or TLS protocol specifications. * Cipher kinds and ciphersuites are part of the public API. * * The contents of this file are subject to the Mozilla Public * License Version 1.1 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. * * The Original Code is the Netscape security libraries. * * The Initial Developer of the Original Code is Netscape * Communications Corporation. Portions created by Netscape are * Copyright (C) 1994-2000 Netscape Communications Corporation. All * Rights Reserved. * * Contributor(s): * * Alternatively, the contents of this file may be used under the * terms of the GNU General Public License Version 2 or later (the * "GPL"), in which case the provisions of the GPL are applicable * instead of those above. If you wish to allow use of your * version of this file only under the terms of the GPL and not to * allow others to use your version of this file under the MPL, * indicate your decision by deleting the provisions above and * replace them with the notice and other provisions required by * the GPL. If you do not delete the provisions above, a recipient * may use your version of this file under either the MPL or the * GPL. * * $Id: sslproto.h,v 1.1 2000/03/31 19:35:27 relyea%netscape.com Exp $ */#ifndef __sslproto_h_#define __sslproto_h_#define SSL_LIBRARY_VERSION_2 0x0002#define SSL_LIBRARY_VERSION_2_1 0x0201#define SSL_LIBRARY_VERSION_3_0 0x0300#define SSL_LIBRARY_VERSION_3_1_TLS 0x0301/* Header lengths of some of the messages */#define SSL_HL_ERROR_HBYTES 3#define SSL_HL_CLIENT_HELLO_HBYTES 9#define SSL_HL_CLIENT_MASTER_KEY_HBYTES 10#define SSL_HL_CLIENT_FINISHED_HBYTES 1#define SSL_HL_SERVER_HELLO_HBYTES 11#define SSL_HL_SERVER_VERIFY_HBYTES 1#define SSL_HL_SERVER_FINISHED_HBYTES 1#define SSL_HL_REQUEST_CERTIFICATE_HBYTES 2#define SSL_HL_CLIENT_CERTIFICATE_HBYTES 6/* Security handshake protocol codes */#define SSL_MT_ERROR 0#define SSL_MT_CLIENT_HELLO 1#define SSL_MT_CLIENT_MASTER_KEY 2#define SSL_MT_CLIENT_FINISHED 3#define SSL_MT_SERVER_HELLO 4#define SSL_MT_SERVER_VERIFY 5#define SSL_MT_SERVER_FINISHED 6#define SSL_MT_REQUEST_CERTIFICATE 7#define SSL_MT_CLIENT_CERTIFICATE 8/* Certificate types */#define SSL_CT_X509_CERTIFICATE 0x01#if 0 /* XXX Not implemented yet */#define SSL_PKCS6_CERTIFICATE 0x02#endif#define SSL_AT_MD5_WITH_RSA_ENCRYPTION 0x01/* Error codes */#define SSL_PE_NO_CYPHERS 0x0001#define SSL_PE_NO_CERTIFICATE 0x0002#define SSL_PE_BAD_CERTIFICATE 0x0004#define SSL_PE_UNSUPPORTED_CERTIFICATE_TYPE 0x0006/* Cypher kinds (not the spec version!) */#define SSL_CK_RC4_128_WITH_MD5 0x01#define SSL_CK_RC4_128_EXPORT40_WITH_MD5 0x02#define SSL_CK_RC2_128_CBC_WITH_MD5 0x03#define SSL_CK_RC2_128_CBC_EXPORT40_WITH_MD5 0x04#define SSL_CK_IDEA_128_CBC_WITH_MD5 0x05#define SSL_CK_DES_64_CBC_WITH_MD5 0x06#define SSL_CK_DES_192_EDE3_CBC_WITH_MD5 0x07/* Cipher enables. These are used only for SSL_EnableCipher * These values define the SSL2 suites, and do not colide with the * SSL3 Cipher suites defined below. */#define SSL_EN_RC4_128_WITH_MD5 0xFF01#define SSL_EN_RC4_128_EXPORT40_WITH_MD5 0xFF02#define SSL_EN_RC2_128_CBC_WITH_MD5 0xFF03#define SSL_EN_RC2_128_CBC_EXPORT40_WITH_MD5 0xFF04#define SSL_EN_IDEA_128_CBC_WITH_MD5 0xFF05#define SSL_EN_DES_64_CBC_WITH_MD5 0xFF06#define SSL_EN_DES_192_EDE3_CBC_WITH_MD5 0xFF07/* SSL v3 Cipher Suites */#define SSL_NULL_WITH_NULL_NULL 0x0000#define SSL_RSA_WITH_NULL_MD5 0x0001#define SSL_RSA_WITH_NULL_SHA 0x0002#define SSL_RSA_EXPORT_WITH_RC4_40_MD5 0x0003#define SSL_RSA_WITH_RC4_128_MD5 0x0004#define SSL_RSA_WITH_RC4_128_SHA 0x0005#define SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5 0x0006#define SSL_RSA_WITH_IDEA_CBC_SHA 0x0007#define SSL_RSA_EXPORT_WITH_DES40_CBC_SHA 0x0008#define SSL_RSA_WITH_DES_CBC_SHA 0x0009#define SSL_RSA_WITH_3DES_EDE_CBC_SHA 0x000a #define SSL_DH_DSS_EXPORT_WITH_DES40_CBC_SHA 0x000b#define SSL_DH_DSS_WITH_DES_CBC_SHA 0x000c#define SSL_DH_DSS_WITH_3DES_EDE_CBC_SHA 0x000d#define SSL_DH_RSA_EXPORT_WITH_DES40_CBC_SHA 0x000e#define SSL_DH_RSA_WITH_DES_CBC_SHA 0x000f#define SSL_DH_RSA_WITH_3DES_EDE_CBC_SHA 0x0010 #define SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA 0x0011#define SSL_DHE_DSS_WITH_DES_CBC_SHA 0x0012#define SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA 0x0013#define SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA 0x0014#define SSL_DHE_RSA_WITH_DES_CBC_SHA 0x0015#define SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA 0x0016 #define SSL_DH_ANON_EXPORT_WITH_RC4_40_MD5 0x0017#define SSL_DH_ANON_WITH_RC4_128_MD5 0x0018#define SSL_DH_ANON_EXPORT_WITH_DES40_CBC_SHA 0x0019#define SSL_DH_ANON_WITH_DES_CBC_SHA 0x001a#define SSL_DH_ANON_WITH_3DES_EDE_CBC_SHA 0x001b#define SSL_FORTEZZA_DMS_WITH_NULL_SHA 0x001c#define SSL_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA 0x001d#define SSL_FORTEZZA_DMS_WITH_RC4_128_SHA 0x001e/* New TLS cipher suites backported to SSL3. */#define TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA 0x0062#define TLS_RSA_EXPORT1024_WITH_RC4_56_SHA 0x0064#define TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA 0x0063#define TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA 0x0065#define TLS_DHE_DSS_WITH_RC4_128_SHA 0x0066/* Netscape "experimental" cipher suites. */#define SSL_RSA_OLDFIPS_WITH_3DES_EDE_CBC_SHA 0xffe0#define SSL_RSA_OLDFIPS_WITH_DES_CBC_SHA 0xffe1/* New non-experimental openly spec'ed versions of those cipher suites. */#define SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA 0xfeff#define SSL_RSA_FIPS_WITH_DES_CBC_SHA 0xfefe#endif /* __sslproto_h_ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?