OLD | NEW |
1 /* ssl/s3_lib.c */ | 1 /* ssl/s3_lib.c */ |
2 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 * All rights reserved. | 3 * All rights reserved. |
4 * | 4 * |
5 * This package is an SSL implementation written | 5 * This package is an SSL implementation written |
6 * by Eric Young (eay@cryptsoft.com). | 6 * by Eric Young (eay@cryptsoft.com). |
7 * The implementation was written so as to conform with Netscapes SSL. | 7 * The implementation was written so as to conform with Netscapes SSL. |
8 * | 8 * |
9 * This library is free for commercial and non-commercial use as long as | 9 * This library is free for commercial and non-commercial use as long as |
10 * the following conditions are aheared to. The following conditions | 10 * the following conditions are aheared to. The following conditions |
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
159 #endif /* OPENSSL_NO_TLSEXT */ | 159 #endif /* OPENSSL_NO_TLSEXT */ |
160 #include <openssl/md5.h> | 160 #include <openssl/md5.h> |
161 #ifndef OPENSSL_NO_DH | 161 #ifndef OPENSSL_NO_DH |
162 #include <openssl/dh.h> | 162 #include <openssl/dh.h> |
163 #endif | 163 #endif |
164 | 164 |
165 const char ssl3_version_str[]="SSLv3" OPENSSL_VERSION_PTEXT; | 165 const char ssl3_version_str[]="SSLv3" OPENSSL_VERSION_PTEXT; |
166 | 166 |
167 #define SSL3_NUM_CIPHERS (sizeof(ssl3_ciphers)/sizeof(SSL_CIPHER)) | 167 #define SSL3_NUM_CIPHERS (sizeof(ssl3_ciphers)/sizeof(SSL_CIPHER)) |
168 | 168 |
| 169 /* FIXED_NONCE_LEN is a macro that results in the correct value to set the |
| 170 * fixed nonce length in SSL_CIPHER.algorithms2. It's the inverse of |
| 171 * SSL_CIPHER_AEAD_FIXED_NONCE_LEN. */ |
| 172 #define FIXED_NONCE_LEN(x) ((x/2)<<24) |
| 173 |
169 /* list of available SSLv3 ciphers (sorted by id) */ | 174 /* list of available SSLv3 ciphers (sorted by id) */ |
170 OPENSSL_GLOBAL SSL_CIPHER ssl3_ciphers[]={ | 175 OPENSSL_GLOBAL SSL_CIPHER ssl3_ciphers[]={ |
171 | 176 |
172 /* The RSA ciphers */ | 177 /* The RSA ciphers */ |
173 /* Cipher 01 */ | 178 /* Cipher 01 */ |
174 { | 179 { |
175 1, | 180 1, |
176 SSL3_TXT_RSA_NULL_MD5, | 181 SSL3_TXT_RSA_NULL_MD5, |
177 SSL3_CK_RSA_NULL_MD5, | 182 SSL3_CK_RSA_NULL_MD5, |
178 SSL_kRSA, | 183 SSL_kRSA, |
(...skipping 1650 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1829 { | 1834 { |
1830 1, | 1835 1, |
1831 TLS1_TXT_RSA_WITH_AES_128_GCM_SHA256, | 1836 TLS1_TXT_RSA_WITH_AES_128_GCM_SHA256, |
1832 TLS1_CK_RSA_WITH_AES_128_GCM_SHA256, | 1837 TLS1_CK_RSA_WITH_AES_128_GCM_SHA256, |
1833 SSL_kRSA, | 1838 SSL_kRSA, |
1834 SSL_aRSA, | 1839 SSL_aRSA, |
1835 SSL_AES128GCM, | 1840 SSL_AES128GCM, |
1836 SSL_AEAD, | 1841 SSL_AEAD, |
1837 SSL_TLSV1_2, | 1842 SSL_TLSV1_2, |
1838 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 1843 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
1839 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 1844 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 1845 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
1840 128, | 1846 128, |
1841 128, | 1847 128, |
1842 }, | 1848 }, |
1843 | 1849 |
1844 /* Cipher 9D */ | 1850 /* Cipher 9D */ |
1845 { | 1851 { |
1846 1, | 1852 1, |
1847 TLS1_TXT_RSA_WITH_AES_256_GCM_SHA384, | 1853 TLS1_TXT_RSA_WITH_AES_256_GCM_SHA384, |
1848 TLS1_CK_RSA_WITH_AES_256_GCM_SHA384, | 1854 TLS1_CK_RSA_WITH_AES_256_GCM_SHA384, |
1849 SSL_kRSA, | 1855 SSL_kRSA, |
(...skipping 11 matching lines...) Expand all Loading... |
1861 { | 1867 { |
1862 1, | 1868 1, |
1863 TLS1_TXT_DHE_RSA_WITH_AES_128_GCM_SHA256, | 1869 TLS1_TXT_DHE_RSA_WITH_AES_128_GCM_SHA256, |
1864 TLS1_CK_DHE_RSA_WITH_AES_128_GCM_SHA256, | 1870 TLS1_CK_DHE_RSA_WITH_AES_128_GCM_SHA256, |
1865 SSL_kEDH, | 1871 SSL_kEDH, |
1866 SSL_aRSA, | 1872 SSL_aRSA, |
1867 SSL_AES128GCM, | 1873 SSL_AES128GCM, |
1868 SSL_AEAD, | 1874 SSL_AEAD, |
1869 SSL_TLSV1_2, | 1875 SSL_TLSV1_2, |
1870 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 1876 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
1871 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 1877 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 1878 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
1872 128, | 1879 128, |
1873 128, | 1880 128, |
1874 }, | 1881 }, |
1875 | 1882 |
1876 /* Cipher 9F */ | 1883 /* Cipher 9F */ |
1877 { | 1884 { |
1878 1, | 1885 1, |
1879 TLS1_TXT_DHE_RSA_WITH_AES_256_GCM_SHA384, | 1886 TLS1_TXT_DHE_RSA_WITH_AES_256_GCM_SHA384, |
1880 TLS1_CK_DHE_RSA_WITH_AES_256_GCM_SHA384, | 1887 TLS1_CK_DHE_RSA_WITH_AES_256_GCM_SHA384, |
1881 SSL_kEDH, | 1888 SSL_kEDH, |
(...skipping 11 matching lines...) Expand all Loading... |
1893 { | 1900 { |
1894 0, | 1901 0, |
1895 TLS1_TXT_DH_RSA_WITH_AES_128_GCM_SHA256, | 1902 TLS1_TXT_DH_RSA_WITH_AES_128_GCM_SHA256, |
1896 TLS1_CK_DH_RSA_WITH_AES_128_GCM_SHA256, | 1903 TLS1_CK_DH_RSA_WITH_AES_128_GCM_SHA256, |
1897 SSL_kDHr, | 1904 SSL_kDHr, |
1898 SSL_aDH, | 1905 SSL_aDH, |
1899 SSL_AES128GCM, | 1906 SSL_AES128GCM, |
1900 SSL_AEAD, | 1907 SSL_AEAD, |
1901 SSL_TLSV1_2, | 1908 SSL_TLSV1_2, |
1902 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 1909 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
1903 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 1910 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 1911 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
1904 128, | 1912 128, |
1905 128, | 1913 128, |
1906 }, | 1914 }, |
1907 | 1915 |
1908 /* Cipher A1 */ | 1916 /* Cipher A1 */ |
1909 { | 1917 { |
1910 0, | 1918 0, |
1911 TLS1_TXT_DH_RSA_WITH_AES_256_GCM_SHA384, | 1919 TLS1_TXT_DH_RSA_WITH_AES_256_GCM_SHA384, |
1912 TLS1_CK_DH_RSA_WITH_AES_256_GCM_SHA384, | 1920 TLS1_CK_DH_RSA_WITH_AES_256_GCM_SHA384, |
1913 SSL_kDHr, | 1921 SSL_kDHr, |
(...skipping 11 matching lines...) Expand all Loading... |
1925 { | 1933 { |
1926 1, | 1934 1, |
1927 TLS1_TXT_DHE_DSS_WITH_AES_128_GCM_SHA256, | 1935 TLS1_TXT_DHE_DSS_WITH_AES_128_GCM_SHA256, |
1928 TLS1_CK_DHE_DSS_WITH_AES_128_GCM_SHA256, | 1936 TLS1_CK_DHE_DSS_WITH_AES_128_GCM_SHA256, |
1929 SSL_kEDH, | 1937 SSL_kEDH, |
1930 SSL_aDSS, | 1938 SSL_aDSS, |
1931 SSL_AES128GCM, | 1939 SSL_AES128GCM, |
1932 SSL_AEAD, | 1940 SSL_AEAD, |
1933 SSL_TLSV1_2, | 1941 SSL_TLSV1_2, |
1934 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 1942 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
1935 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 1943 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 1944 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
1936 128, | 1945 128, |
1937 128, | 1946 128, |
1938 }, | 1947 }, |
1939 | 1948 |
1940 /* Cipher A3 */ | 1949 /* Cipher A3 */ |
1941 { | 1950 { |
1942 1, | 1951 1, |
1943 TLS1_TXT_DHE_DSS_WITH_AES_256_GCM_SHA384, | 1952 TLS1_TXT_DHE_DSS_WITH_AES_256_GCM_SHA384, |
1944 TLS1_CK_DHE_DSS_WITH_AES_256_GCM_SHA384, | 1953 TLS1_CK_DHE_DSS_WITH_AES_256_GCM_SHA384, |
1945 SSL_kEDH, | 1954 SSL_kEDH, |
(...skipping 11 matching lines...) Expand all Loading... |
1957 { | 1966 { |
1958 0, | 1967 0, |
1959 TLS1_TXT_DH_DSS_WITH_AES_128_GCM_SHA256, | 1968 TLS1_TXT_DH_DSS_WITH_AES_128_GCM_SHA256, |
1960 TLS1_CK_DH_DSS_WITH_AES_128_GCM_SHA256, | 1969 TLS1_CK_DH_DSS_WITH_AES_128_GCM_SHA256, |
1961 SSL_kDHd, | 1970 SSL_kDHd, |
1962 SSL_aDH, | 1971 SSL_aDH, |
1963 SSL_AES128GCM, | 1972 SSL_AES128GCM, |
1964 SSL_AEAD, | 1973 SSL_AEAD, |
1965 SSL_TLSV1_2, | 1974 SSL_TLSV1_2, |
1966 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 1975 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
1967 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 1976 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 1977 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
1968 128, | 1978 128, |
1969 128, | 1979 128, |
1970 }, | 1980 }, |
1971 | 1981 |
1972 /* Cipher A5 */ | 1982 /* Cipher A5 */ |
1973 { | 1983 { |
1974 0, | 1984 0, |
1975 TLS1_TXT_DH_DSS_WITH_AES_256_GCM_SHA384, | 1985 TLS1_TXT_DH_DSS_WITH_AES_256_GCM_SHA384, |
1976 TLS1_CK_DH_DSS_WITH_AES_256_GCM_SHA384, | 1986 TLS1_CK_DH_DSS_WITH_AES_256_GCM_SHA384, |
1977 SSL_kDHd, | 1987 SSL_kDHd, |
(...skipping 11 matching lines...) Expand all Loading... |
1989 { | 1999 { |
1990 1, | 2000 1, |
1991 TLS1_TXT_ADH_WITH_AES_128_GCM_SHA256, | 2001 TLS1_TXT_ADH_WITH_AES_128_GCM_SHA256, |
1992 TLS1_CK_ADH_WITH_AES_128_GCM_SHA256, | 2002 TLS1_CK_ADH_WITH_AES_128_GCM_SHA256, |
1993 SSL_kEDH, | 2003 SSL_kEDH, |
1994 SSL_aNULL, | 2004 SSL_aNULL, |
1995 SSL_AES128GCM, | 2005 SSL_AES128GCM, |
1996 SSL_AEAD, | 2006 SSL_AEAD, |
1997 SSL_TLSV1_2, | 2007 SSL_TLSV1_2, |
1998 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 2008 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
1999 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 2009 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 2010 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
2000 128, | 2011 128, |
2001 128, | 2012 128, |
2002 }, | 2013 }, |
2003 | 2014 |
2004 /* Cipher A7 */ | 2015 /* Cipher A7 */ |
2005 { | 2016 { |
2006 1, | 2017 1, |
2007 TLS1_TXT_ADH_WITH_AES_256_GCM_SHA384, | 2018 TLS1_TXT_ADH_WITH_AES_256_GCM_SHA384, |
2008 TLS1_CK_ADH_WITH_AES_256_GCM_SHA384, | 2019 TLS1_CK_ADH_WITH_AES_256_GCM_SHA384, |
2009 SSL_kEDH, | 2020 SSL_kEDH, |
(...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2702 { | 2713 { |
2703 1, | 2714 1, |
2704 TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, | 2715 TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, |
2705 TLS1_CK_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, | 2716 TLS1_CK_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, |
2706 SSL_kEECDH, | 2717 SSL_kEECDH, |
2707 SSL_aECDSA, | 2718 SSL_aECDSA, |
2708 SSL_AES128GCM, | 2719 SSL_AES128GCM, |
2709 SSL_AEAD, | 2720 SSL_AEAD, |
2710 SSL_TLSV1_2, | 2721 SSL_TLSV1_2, |
2711 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 2722 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
2712 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 2723 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 2724 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
2713 128, | 2725 128, |
2714 128, | 2726 128, |
2715 }, | 2727 }, |
2716 | 2728 |
2717 /* Cipher C02C */ | 2729 /* Cipher C02C */ |
2718 { | 2730 { |
2719 1, | 2731 1, |
2720 TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, | 2732 TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, |
2721 TLS1_CK_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, | 2733 TLS1_CK_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, |
2722 SSL_kEECDH, | 2734 SSL_kEECDH, |
(...skipping 11 matching lines...) Expand all Loading... |
2734 { | 2746 { |
2735 1, | 2747 1, |
2736 TLS1_TXT_ECDH_ECDSA_WITH_AES_128_GCM_SHA256, | 2748 TLS1_TXT_ECDH_ECDSA_WITH_AES_128_GCM_SHA256, |
2737 TLS1_CK_ECDH_ECDSA_WITH_AES_128_GCM_SHA256, | 2749 TLS1_CK_ECDH_ECDSA_WITH_AES_128_GCM_SHA256, |
2738 SSL_kECDHe, | 2750 SSL_kECDHe, |
2739 SSL_aECDH, | 2751 SSL_aECDH, |
2740 SSL_AES128GCM, | 2752 SSL_AES128GCM, |
2741 SSL_AEAD, | 2753 SSL_AEAD, |
2742 SSL_TLSV1_2, | 2754 SSL_TLSV1_2, |
2743 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 2755 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
2744 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 2756 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 2757 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
2745 128, | 2758 128, |
2746 128, | 2759 128, |
2747 }, | 2760 }, |
2748 | 2761 |
2749 /* Cipher C02E */ | 2762 /* Cipher C02E */ |
2750 { | 2763 { |
2751 1, | 2764 1, |
2752 TLS1_TXT_ECDH_ECDSA_WITH_AES_256_GCM_SHA384, | 2765 TLS1_TXT_ECDH_ECDSA_WITH_AES_256_GCM_SHA384, |
2753 TLS1_CK_ECDH_ECDSA_WITH_AES_256_GCM_SHA384, | 2766 TLS1_CK_ECDH_ECDSA_WITH_AES_256_GCM_SHA384, |
2754 SSL_kECDHe, | 2767 SSL_kECDHe, |
(...skipping 11 matching lines...) Expand all Loading... |
2766 { | 2779 { |
2767 1, | 2780 1, |
2768 TLS1_TXT_ECDHE_RSA_WITH_AES_128_GCM_SHA256, | 2781 TLS1_TXT_ECDHE_RSA_WITH_AES_128_GCM_SHA256, |
2769 TLS1_CK_ECDHE_RSA_WITH_AES_128_GCM_SHA256, | 2782 TLS1_CK_ECDHE_RSA_WITH_AES_128_GCM_SHA256, |
2770 SSL_kEECDH, | 2783 SSL_kEECDH, |
2771 SSL_aRSA, | 2784 SSL_aRSA, |
2772 SSL_AES128GCM, | 2785 SSL_AES128GCM, |
2773 SSL_AEAD, | 2786 SSL_AEAD, |
2774 SSL_TLSV1_2, | 2787 SSL_TLSV1_2, |
2775 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 2788 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
2776 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 2789 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 2790 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
2777 128, | 2791 128, |
2778 128, | 2792 128, |
2779 }, | 2793 }, |
2780 | 2794 |
2781 /* Cipher C030 */ | 2795 /* Cipher C030 */ |
2782 { | 2796 { |
2783 1, | 2797 1, |
2784 TLS1_TXT_ECDHE_RSA_WITH_AES_256_GCM_SHA384, | 2798 TLS1_TXT_ECDHE_RSA_WITH_AES_256_GCM_SHA384, |
2785 TLS1_CK_ECDHE_RSA_WITH_AES_256_GCM_SHA384, | 2799 TLS1_CK_ECDHE_RSA_WITH_AES_256_GCM_SHA384, |
2786 SSL_kEECDH, | 2800 SSL_kEECDH, |
(...skipping 11 matching lines...) Expand all Loading... |
2798 { | 2812 { |
2799 1, | 2813 1, |
2800 TLS1_TXT_ECDH_RSA_WITH_AES_128_GCM_SHA256, | 2814 TLS1_TXT_ECDH_RSA_WITH_AES_128_GCM_SHA256, |
2801 TLS1_CK_ECDH_RSA_WITH_AES_128_GCM_SHA256, | 2815 TLS1_CK_ECDH_RSA_WITH_AES_128_GCM_SHA256, |
2802 SSL_kECDHr, | 2816 SSL_kECDHr, |
2803 SSL_aECDH, | 2817 SSL_aECDH, |
2804 SSL_AES128GCM, | 2818 SSL_AES128GCM, |
2805 SSL_AEAD, | 2819 SSL_AEAD, |
2806 SSL_TLSV1_2, | 2820 SSL_TLSV1_2, |
2807 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, | 2821 SSL_NOT_EXP|SSL_HIGH|SSL_FIPS, |
2808 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256, | 2822 » SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(4)| |
| 2823 » » SSL_CIPHER_ALGORITHM2_VARIABLE_NONCE_INCLUDED_IN_RECORD, |
2809 128, | 2824 128, |
2810 128, | 2825 128, |
2811 }, | 2826 }, |
2812 | 2827 |
2813 /* Cipher C032 */ | 2828 /* Cipher C032 */ |
2814 { | 2829 { |
2815 1, | 2830 1, |
2816 TLS1_TXT_ECDH_RSA_WITH_AES_256_GCM_SHA384, | 2831 TLS1_TXT_ECDH_RSA_WITH_AES_256_GCM_SHA384, |
2817 TLS1_CK_ECDH_RSA_WITH_AES_256_GCM_SHA384, | 2832 TLS1_CK_ECDH_RSA_WITH_AES_256_GCM_SHA384, |
2818 SSL_kECDHr, | 2833 SSL_kECDHr, |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2882 SSL_eGOST2814789CNT, | 2897 SSL_eGOST2814789CNT, |
2883 SSL_GOST89MAC, | 2898 SSL_GOST89MAC, |
2884 SSL_TLSV1, | 2899 SSL_TLSV1, |
2885 SSL_NOT_EXP|SSL_HIGH, | 2900 SSL_NOT_EXP|SSL_HIGH, |
2886 SSL_HANDSHAKE_MAC_DEFAULT|TLS1_PRF|TLS1_STREAM_MAC, | 2901 SSL_HANDSHAKE_MAC_DEFAULT|TLS1_PRF|TLS1_STREAM_MAC, |
2887 256, | 2902 256, |
2888 256 | 2903 256 |
2889 }, | 2904 }, |
2890 #endif | 2905 #endif |
2891 | 2906 |
| 2907 { |
| 2908 1, |
| 2909 TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305, |
| 2910 TLS1_CK_ECDHE_RSA_CHACHA20_POLY1305, |
| 2911 SSL_kEECDH, |
| 2912 SSL_aRSA, |
| 2913 SSL_CHACHA20POLY1305, |
| 2914 SSL_AEAD, |
| 2915 SSL_TLSV1_2, |
| 2916 SSL_NOT_EXP|SSL_HIGH, |
| 2917 SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(0), |
| 2918 256, |
| 2919 0, |
| 2920 }, |
| 2921 |
| 2922 { |
| 2923 1, |
| 2924 TLS1_TXT_ECDHE_ECDSA_WITH_CHACHA20_POLY1305, |
| 2925 TLS1_CK_ECDHE_ECDSA_CHACHA20_POLY1305, |
| 2926 SSL_kEECDH, |
| 2927 SSL_aECDSA, |
| 2928 SSL_CHACHA20POLY1305, |
| 2929 SSL_AEAD, |
| 2930 SSL_TLSV1_2, |
| 2931 SSL_NOT_EXP|SSL_HIGH, |
| 2932 SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(0), |
| 2933 256, |
| 2934 0, |
| 2935 }, |
| 2936 |
| 2937 { |
| 2938 1, |
| 2939 TLS1_TXT_DHE_RSA_WITH_CHACHA20_POLY1305, |
| 2940 TLS1_CK_DHE_RSA_CHACHA20_POLY1305, |
| 2941 SSL_kEDH, |
| 2942 SSL_aRSA, |
| 2943 SSL_CHACHA20POLY1305, |
| 2944 SSL_AEAD, |
| 2945 SSL_TLSV1_2, |
| 2946 SSL_NOT_EXP|SSL_HIGH, |
| 2947 SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256|SSL_CIPHER_ALGORITHM2_AEAD|FIXE
D_NONCE_LEN(0), |
| 2948 256, |
| 2949 0, |
| 2950 }, |
| 2951 |
2892 /* end of list */ | 2952 /* end of list */ |
2893 }; | 2953 }; |
2894 | 2954 |
2895 SSL3_ENC_METHOD SSLv3_enc_data={ | 2955 SSL3_ENC_METHOD SSLv3_enc_data={ |
2896 ssl3_enc, | 2956 ssl3_enc, |
2897 n_ssl3_mac, | 2957 n_ssl3_mac, |
2898 ssl3_setup_key_block, | 2958 ssl3_setup_key_block, |
2899 ssl3_generate_master_secret, | 2959 ssl3_generate_master_secret, |
2900 ssl3_change_cipher_state, | 2960 ssl3_change_cipher_state, |
2901 ssl3_final_finish_mac, | 2961 ssl3_final_finish_mac, |
(...skipping 1438 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4340 */ | 4400 */ |
4341 long ssl_get_algorithm2(SSL *s) | 4401 long ssl_get_algorithm2(SSL *s) |
4342 { | 4402 { |
4343 long alg2 = s->s3->tmp.new_cipher->algorithm2; | 4403 long alg2 = s->s3->tmp.new_cipher->algorithm2; |
4344 if (TLS1_get_version(s) >= TLS1_2_VERSION && | 4404 if (TLS1_get_version(s) >= TLS1_2_VERSION && |
4345 alg2 == (SSL_HANDSHAKE_MAC_DEFAULT|TLS1_PRF)) | 4405 alg2 == (SSL_HANDSHAKE_MAC_DEFAULT|TLS1_PRF)) |
4346 return SSL_HANDSHAKE_MAC_SHA256 | TLS1_PRF_SHA256; | 4406 return SSL_HANDSHAKE_MAC_SHA256 | TLS1_PRF_SHA256; |
4347 return alg2; | 4407 return alg2; |
4348 } | 4408 } |
4349 | 4409 |
OLD | NEW |