@@ -2825,9 +2825,24 @@ Init_ossl_ssl(void)
2825
2825
rb_define_const (mSSL , "VERIFY_CLIENT_ONCE" , INT2NUM (SSL_VERIFY_CLIENT_ONCE ));
2826
2826
2827
2827
rb_define_const (mSSL , "OP_ALL" , ULONG2NUM (SSL_OP_ALL ));
2828
+ #ifdef SSL_OP_CLEANSE_PLAINTEXT /* OpenSSL 3.0 */
2829
+ rb_define_const (mSSL , "OP_CLEANSE_PLAINTEXT" , ULONG2NUM (SSL_OP_CLEANSE_PLAINTEXT ));
2830
+ #endif
2828
2831
rb_define_const (mSSL , "OP_LEGACY_SERVER_CONNECT" , ULONG2NUM (SSL_OP_LEGACY_SERVER_CONNECT ));
2832
+ #ifdef SSL_OP_ENABLE_KTLS /* OpenSSL 3.0 */
2833
+ rb_define_const (mSSL , "OP_ENABLE_KTLS" , ULONG2NUM (SSL_OP_ENABLE_KTLS ));
2834
+ #endif
2829
2835
rb_define_const (mSSL , "OP_TLSEXT_PADDING" , ULONG2NUM (SSL_OP_TLSEXT_PADDING ));
2830
2836
rb_define_const (mSSL , "OP_SAFARI_ECDHE_ECDSA_BUG" , ULONG2NUM (SSL_OP_SAFARI_ECDHE_ECDSA_BUG ));
2837
+ #ifdef SSL_OP_IGNORE_UNEXPECTED_EOF /* OpenSSL 3.0 */
2838
+ rb_define_const (mSSL , "OP_IGNORE_UNEXPECTED_EOF" , ULONG2NUM (SSL_OP_IGNORE_UNEXPECTED_EOF ));
2839
+ #endif
2840
+ #ifdef SSL_OP_ALLOW_CLIENT_RENEGOTIATION /* OpenSSL 3.0 */
2841
+ rb_define_const (mSSL , "OP_ALLOW_CLIENT_RENEGOTIATION" , ULONG2NUM (SSL_OP_ALLOW_CLIENT_RENEGOTIATION ));
2842
+ #endif
2843
+ #ifdef SSL_OP_DISABLE_TLSEXT_CA_NAMES /* OpenSSL 3.0 */
2844
+ rb_define_const (mSSL , "OP_DISABLE_TLSEXT_CA_NAMES" , ULONG2NUM (SSL_OP_DISABLE_TLSEXT_CA_NAMES ));
2845
+ #endif
2831
2846
#ifdef SSL_OP_ALLOW_NO_DHE_KEX /* OpenSSL 1.1.1 */
2832
2847
rb_define_const (mSSL , "OP_ALLOW_NO_DHE_KEX" , ULONG2NUM (SSL_OP_ALLOW_NO_DHE_KEX ));
2833
2848
#endif
@@ -2839,20 +2854,28 @@ Init_ossl_ssl(void)
2839
2854
#ifdef SSL_OP_NO_ENCRYPT_THEN_MAC /* OpenSSL 1.1.1 */
2840
2855
rb_define_const (mSSL , "OP_NO_ENCRYPT_THEN_MAC" , ULONG2NUM (SSL_OP_NO_ENCRYPT_THEN_MAC ));
2841
2856
#endif
2842
- rb_define_const (mSSL , "OP_CIPHER_SERVER_PREFERENCE" , ULONG2NUM (SSL_OP_CIPHER_SERVER_PREFERENCE ));
2843
- rb_define_const (mSSL , "OP_TLS_ROLLBACK_BUG" , ULONG2NUM (SSL_OP_TLS_ROLLBACK_BUG ));
2844
- #ifdef SSL_OP_NO_RENEGOTIATION /* OpenSSL 1.1.1 */
2845
- rb_define_const (mSSL , "OP_NO_RENEGOTIATION" , ULONG2NUM (SSL_OP_NO_RENEGOTIATION ));
2857
+ #ifdef SSL_OP_ENABLE_MIDDLEBOX_COMPAT /* OpenSSL 1.1.1 */
2858
+ rb_define_const (mSSL , "OP_ENABLE_MIDDLEBOX_COMPAT" , ULONG2NUM (SSL_OP_ENABLE_MIDDLEBOX_COMPAT ));
2859
+ #endif
2860
+ #ifdef SSL_OP_PRIORITIZE_CHACHA /* OpenSSL 1.1.1 */
2861
+ rb_define_const (mSSL , "OP_PRIORITIZE_CHACHA" , ULONG2NUM (SSL_OP_PRIORITIZE_CHACHA ));
2862
+ #endif
2863
+ #ifdef SSL_OP_NO_ANTI_REPLAY /* OpenSSL 1.1.1 */
2864
+ rb_define_const (mSSL , "OP_NO_ANTI_REPLAY" , ULONG2NUM (SSL_OP_NO_ANTI_REPLAY ));
2846
2865
#endif
2847
- rb_define_const (mSSL , "OP_CRYPTOPRO_TLSEXT_BUG" , ULONG2NUM (SSL_OP_CRYPTOPRO_TLSEXT_BUG ));
2848
-
2849
2866
rb_define_const (mSSL , "OP_NO_SSLv3" , ULONG2NUM (SSL_OP_NO_SSLv3 ));
2850
2867
rb_define_const (mSSL , "OP_NO_TLSv1" , ULONG2NUM (SSL_OP_NO_TLSv1 ));
2851
2868
rb_define_const (mSSL , "OP_NO_TLSv1_1" , ULONG2NUM (SSL_OP_NO_TLSv1_1 ));
2852
2869
rb_define_const (mSSL , "OP_NO_TLSv1_2" , ULONG2NUM (SSL_OP_NO_TLSv1_2 ));
2853
2870
#ifdef SSL_OP_NO_TLSv1_3 /* OpenSSL 1.1.1 */
2854
2871
rb_define_const (mSSL , "OP_NO_TLSv1_3" , ULONG2NUM (SSL_OP_NO_TLSv1_3 ));
2855
2872
#endif
2873
+ rb_define_const (mSSL , "OP_CIPHER_SERVER_PREFERENCE" , ULONG2NUM (SSL_OP_CIPHER_SERVER_PREFERENCE ));
2874
+ rb_define_const (mSSL , "OP_TLS_ROLLBACK_BUG" , ULONG2NUM (SSL_OP_TLS_ROLLBACK_BUG ));
2875
+ #ifdef SSL_OP_NO_RENEGOTIATION /* OpenSSL 1.1.1 */
2876
+ rb_define_const (mSSL , "OP_NO_RENEGOTIATION" , ULONG2NUM (SSL_OP_NO_RENEGOTIATION ));
2877
+ #endif
2878
+ rb_define_const (mSSL , "OP_CRYPTOPRO_TLSEXT_BUG" , ULONG2NUM (SSL_OP_CRYPTOPRO_TLSEXT_BUG ));
2856
2879
2857
2880
/* SSL_OP_* flags for DTLS */
2858
2881
#if 0
0 commit comments