diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/openssl/ossl.h | 1 | ||||
-rw-r--r-- | ext/openssl/ossl_config.c | 8 |
2 files changed, 9 insertions, 0 deletions
diff --git a/ext/openssl/ossl.h b/ext/openssl/ossl.h index e684d212e6..fd0c41ee1d 100644 --- a/ext/openssl/ossl.h +++ b/ext/openssl/ossl.h @@ -24,6 +24,7 @@ extern "C" { #if defined(_WIN32) # define OpenFile WINAPI_OpenFile +# define OSSL_NO_CONF_API 1 #endif #include <errno.h> #include <openssl/err.h> diff --git a/ext/openssl/ossl_config.c b/ext/openssl/ossl_config.c index 835f2a5b3d..1e42cb6e9f 100644 --- a/ext/openssl/ossl_config.c +++ b/ext/openssl/ossl_config.c @@ -148,7 +148,11 @@ ossl_config_initialize(int argc, VALUE *argv, VALUE self) ossl_raise(eConfigError, "error in %s:%d", filename, eline); } } +#ifdef OSSL_NO_CONF_API + else rb_raise(rb_eArgError, "wrong number of arguments(0 for 1)"); +#else else _CONF_new_data(conf); +#endif return self; } @@ -156,6 +160,9 @@ ossl_config_initialize(int argc, VALUE *argv, VALUE self) static VALUE ossl_config_add_value(VALUE self, VALUE section, VALUE name, VALUE value) { +#ifdef OSSL_NO_CONF_API + rb_notimplement(); +#else CONF *conf; CONF_VALUE *sv, *cv; @@ -181,6 +188,7 @@ ossl_config_add_value(VALUE self, VALUE section, VALUE name, VALUE value) } return value; +#endif } static VALUE |