@@ -414,21 +414,24 @@ public String getCipherSuite() {
414414 }
415415
416416 Def setCipherSuite (final String suite ) {
417- if ( this .cipherSuite == null ) {
417+ String cipherSuite = this .cipherSuite ;
418+ if (cipherSuite == null ) {
418419 synchronized (this ) {
419- if ( this .cipherSuite == null ) {
420- this .cipherSuite = suite ; return this ;
420+ if (this .cipherSuite == null ) {
421+ this .cipherSuite = suite ;
422+ return this ;
421423 }
422424 }
425+ cipherSuite = suite ;
423426 }
424- if ( suite .equals (this . cipherSuite ) ) return this ;
427+ if (suite .equals (cipherSuite )) return this ;
425428 try {
426429 Def clone = (Def ) super .clone ();
427430 clone .cipherSuite = suite ;
428431 return clone ;
429432 }
430433 catch (CloneNotSupportedException e ) {
431- throw new RuntimeException (e ); // won't happen
434+ throw new AssertionError (e ); // won't happen
432435 }
433436 }
434437
@@ -1673,7 +1676,7 @@ private static Collection<Def> matchingPattern(
16731676 ));
16741677
16751678 String name ;
1676- CipherNames = new HashMap <String , Def >(Ciphers .size () + 24 , 1 );
1679+ CipherNames = new HashMap <String , Def >(Ciphers .size () + 64 , 1 );
16771680
16781681 SuiteToOSSL = new HashMap <String , String >( 120 , 1 );
16791682 SuiteToOSSL .put ("SSL_RSA_WITH_NULL_MD5" , "NULL-MD5" );
@@ -1721,22 +1724,16 @@ private static Collection<Def> matchingPattern(
17211724 SuiteToOSSL .put ("TLS_DH_anon_WITH_3DES_EDE_CBC_SHA" ,"ADH-DES-CBC3-SHA" );
17221725 SuiteToOSSL .put ("TLS_RSA_WITH_AES_128_CBC_SHA" , "AES128-SHA" );
17231726 SuiteToOSSL .put ("TLS_RSA_WITH_AES_256_CBC_SHA" , "AES256-SHA" );
1724- SuiteToOSSL .put ("TLS_RSA_WITH_AES_128_CBC_SHA256" , "AES128-SHA256" );
1725- SuiteToOSSL .put ("TLS_RSA_WITH_AES_256_CBC_SHA256" , "AES256-SHA256" );
17261727 SuiteToOSSL .put ("TLS_DH_DSS_WITH_AES_128_CBC_SHA" ,"DH-DSS-AES128-SHA" );
17271728 SuiteToOSSL .put ("TLS_DH_DSS_WITH_AES_256_CBC_SHA" ,"DH-DSS-AES256-SHA" );
17281729 SuiteToOSSL .put ("TLS_DH_RSA_WITH_AES_128_CBC_SHA" ,"DH-RSA-AES128-SHA" );
17291730 SuiteToOSSL .put ("TLS_DH_RSA_WITH_AES_256_CBC_SHA" ,"DH-RSA-AES256-SHA" );
17301731 SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_128_CBC_SHA" , "DHE-DSS-AES128-SHA" );
1731- SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_256_CBC_SHA" ,"DHE-DSS-AES256-SHA" );
1732- SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_128_CBC_SHA256" , "DHE-DSS-AES128-SHA256" );
1733- SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_256_CBC_SHA256" , "DHE-DSS-AES256-SHA256" );
1732+ SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_256_CBC_SHA" , "DHE-DSS-AES256-SHA" );
17341733 SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_128_CBC_SHA" , "DHE-RSA-AES128-SHA" );
1735- SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_256_CBC_SHA" ,"DHE-RSA-AES256-SHA" );
1736- SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_128_CBC_SHA256" , "DHE-RSA-AES128-SHA256" );
1737- SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_256_CBC_SHA256" , "DHE-RSA-AES256-SHA256" );
1738- SuiteToOSSL .put ("TLS_DH_anon_WITH_AES_128_CBC_SHA" ,"ADH-AES128-SHA" );
1739- SuiteToOSSL .put ("TLS_DH_anon_WITH_AES_256_CBC_SHA" ,"ADH-AES256-SHA" );
1734+ SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_256_CBC_SHA" , "DHE-RSA-AES256-SHA" );
1735+ SuiteToOSSL .put ("TLS_DH_anon_WITH_AES_128_CBC_SHA" , "ADH-AES128-SHA" );
1736+ SuiteToOSSL .put ("TLS_DH_anon_WITH_AES_256_CBC_SHA" , "ADH-AES256-SHA" );
17401737 SuiteToOSSL .put ("TLS_DH_anon_WITH_AES_128_CBC_SHA256" , "ADH-AES128-SHA256" );
17411738 SuiteToOSSL .put ("TLS_DH_anon_WITH_AES_256_CBC_SHA256" , "ADH-AES256-SHA256" );
17421739 SuiteToOSSL .put ("TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA" ,"EXP1024-DES-CBC-SHA" );
@@ -1925,8 +1922,80 @@ private static Collection<Def> matchingPattern(
19251922
19261923 SuiteToOSSL .put ("TLS_ECDH_anon_WITH_RC4_128_SHA" , name = "AECDH-RC4-SHA" );
19271924 CipherNames .put (name , new Def (name ,
1928- SSL_kECDHE |SSL_aNULL |SSL_RC4 |SSL_SHA |SSL_TLSV1 ,
1929- SSL_NOT_EXP , 128 , 128 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1925+ SSL_kECDHE |SSL_aNULL |SSL_RC4 |SSL_SHA |SSL_TLSV1 ,
1926+ SSL_NOT_EXP , 128 , 128 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1927+ ));
1928+
1929+ SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" , name = "DHE-RSA-AES128-GCM-SHA256" );
1930+ CipherNames .put (name , new Def (name ,
1931+ SSL_kEDH |SSL_aRSA |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1932+ SSL_NOT_EXP , 128 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1933+ ));
1934+
1935+ SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_128_CBC_SHA256" , name = "DHE-RSA-AES128-SHA256" );
1936+ CipherNames .put (name , new Def (name ,
1937+ SSL_kEDH |SSL_aRSA |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1938+ SSL_NOT_EXP , 128 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1939+ ));
1940+
1941+ SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_256_CBC_SHA256" , name = "DHE-RSA-AES256-SHA256" );
1942+ CipherNames .put (name , new Def (name ,
1943+ SSL_kEDH |SSL_aRSA |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1944+ SSL_NOT_EXP , 256 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1945+ ));
1946+
1947+ SuiteToOSSL .put ("TLS_DHE_RSA_WITH_AES_256_GCM_SHA384" , name = "DHE-RSA-AES256-GCM-SHA384" );
1948+ CipherNames .put (name , new Def (name ,
1949+ SSL_kEDH |SSL_aRSA |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1950+ SSL_NOT_EXP , 256 , 384 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1951+ ));
1952+
1953+ SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_128_GCM_SHA256" , name = "DHE-DSS-AES128-GCM-SHA256" );
1954+ CipherNames .put (name , new Def (name ,
1955+ SSL_kEDH |SSL_aDSS |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1956+ SSL_NOT_EXP , 128 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1957+ ));
1958+
1959+ SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_128_CBC_SHA256" , name = "DHE-DSS-AES128-SHA256" );
1960+ CipherNames .put (name , new Def (name ,
1961+ SSL_kEDH |SSL_aDSS |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1962+ SSL_NOT_EXP , 128 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1963+ ));
1964+
1965+ SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_256_CBC_SHA256" , name = "DHE-DSS-AES256-SHA256" );
1966+ CipherNames .put (name , new Def (name ,
1967+ SSL_kEDH |SSL_aDSS |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1968+ SSL_NOT_EXP , 256 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1969+ ));
1970+
1971+ SuiteToOSSL .put ("TLS_DHE_DSS_WITH_AES_256_GCM_SHA384" , name = "DHE-DSS-AES256-GCM-SHA384" );
1972+ CipherNames .put (name , new Def (name ,
1973+ SSL_kEDH |SSL_aDSS |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1974+ SSL_NOT_EXP , 256 , 384 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1975+ ));
1976+
1977+ SuiteToOSSL .put ("TLS_RSA_WITH_AES_128_GCM_SHA256" , name = "AES128-GCM-SHA256" );
1978+ CipherNames .put (name , new Def (name ,
1979+ SSL_aRSA |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1980+ SSL_NOT_EXP , 128 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1981+ ));
1982+
1983+ SuiteToOSSL .put ("TLS_RSA_WITH_AES_128_CBC_SHA256" , name = "AES128-SHA256" );
1984+ CipherNames .put (name , new Def (name ,
1985+ SSL_aRSA |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1986+ SSL_NOT_EXP , 128 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1987+ ));
1988+
1989+ SuiteToOSSL .put ("TLS_RSA_WITH_AES_256_CBC_SHA256" , name = "AES256-SHA256" );
1990+ CipherNames .put (name , new Def (name ,
1991+ SSL_aRSA |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1992+ SSL_NOT_EXP , 256 , 256 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
1993+ ));
1994+
1995+ SuiteToOSSL .put ("TLS_RSA_WITH_AES_256_GCM_SHA384" , name = "AES256-GCM-SHA384" );
1996+ CipherNames .put (name , new Def (name ,
1997+ SSL_aRSA |SSL_AES |SSL_SHA |SSL_TLSV1 ,
1998+ SSL_NOT_EXP , 256 , 384 , SSL_ALL_CIPHERS , SSL_ALL_STRENGTHS
19301999 ));
19312000
19322001 SuiteToOSSL .put ("TLS_ECDHE_ECDSA_WITH_NULL_SHA" , "ECDHE-ECDSA-NULL-SHA" );
0 commit comments