@@ -65,6 +65,8 @@ static const int X509_NAME_FLAGS = ASN1_STRFLGS_ESC_CTRL
6565namespace node {
6666namespace crypto {
6767
68+ using node::THROW_ERR_TLS_INVALID_PROTOCOL_METHOD;
69+
6870using v8::Array;
6971using v8::ArrayBufferView;
7072using v8::Boolean;
@@ -424,17 +426,23 @@ void SecureContext::Init(const FunctionCallbackInfo<Value>& args) {
424426 // protocols are supported unless explicitly disabled (which we do below
425427 // for SSLv2 and SSLv3.)
426428 if (strcmp (*sslmethod, " SSLv2_method" ) == 0 ) {
427- return env->ThrowError (" SSLv2 methods disabled" );
429+ THROW_ERR_TLS_INVALID_PROTOCOL_METHOD (env, " SSLv2 methods disabled" );
430+ return ;
428431 } else if (strcmp (*sslmethod, " SSLv2_server_method" ) == 0 ) {
429- return env->ThrowError (" SSLv2 methods disabled" );
432+ THROW_ERR_TLS_INVALID_PROTOCOL_METHOD (env, " SSLv2 methods disabled" );
433+ return ;
430434 } else if (strcmp (*sslmethod, " SSLv2_client_method" ) == 0 ) {
431- return env->ThrowError (" SSLv2 methods disabled" );
435+ THROW_ERR_TLS_INVALID_PROTOCOL_METHOD (env, " SSLv2 methods disabled" );
436+ return ;
432437 } else if (strcmp (*sslmethod, " SSLv3_method" ) == 0 ) {
433- return env->ThrowError (" SSLv3 methods disabled" );
438+ THROW_ERR_TLS_INVALID_PROTOCOL_METHOD (env, " SSLv3 methods disabled" );
439+ return ;
434440 } else if (strcmp (*sslmethod, " SSLv3_server_method" ) == 0 ) {
435- return env->ThrowError (" SSLv3 methods disabled" );
441+ THROW_ERR_TLS_INVALID_PROTOCOL_METHOD (env, " SSLv3 methods disabled" );
442+ return ;
436443 } else if (strcmp (*sslmethod, " SSLv3_client_method" ) == 0 ) {
437- return env->ThrowError (" SSLv3 methods disabled" );
444+ THROW_ERR_TLS_INVALID_PROTOCOL_METHOD (env, " SSLv3 methods disabled" );
445+ return ;
438446 } else if (strcmp (*sslmethod, " SSLv23_method" ) == 0 ) {
439447 // noop
440448 } else if (strcmp (*sslmethod, " SSLv23_server_method" ) == 0 ) {
@@ -478,7 +486,8 @@ void SecureContext::Init(const FunctionCallbackInfo<Value>& args) {
478486 max_version = TLS1_2_VERSION;
479487 method = TLS_client_method ();
480488 } else {
481- return env->ThrowError (" Unknown method" );
489+ THROW_ERR_TLS_INVALID_PROTOCOL_METHOD (env, " Unknown method" );
490+ return ;
482491 }
483492 }
484493
0 commit comments