summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorgotoyuzo <gotoyuzo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-10-03 19:29:13 +0000
committergotoyuzo <gotoyuzo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-10-03 19:29:13 +0000
commit7d18f560f5b25bee62c26a80ccc97f7de618fc8f (patch)
tree1d1155231f1712e4e10fb970f8b6aaf58d384c52 /ext
parent9d04d1df145bace824d89c66947994a5e0c93566 (diff)
* ext/openssl/extconf.rb: add check for X509V3_set_nconf.
* ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config): cannot implement if X509V3_set_nconf doesn't exist. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r--ext/openssl/extconf.rb1
-rw-r--r--ext/openssl/ossl_x509ext.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/ext/openssl/extconf.rb b/ext/openssl/extconf.rb
index 87a815f550..5ef85beae1 100644
--- a/ext/openssl/extconf.rb
+++ b/ext/openssl/extconf.rb
@@ -80,6 +80,7 @@ have_func("BN_mod_sub")
have_func("BN_rand_range")
have_func("BN_pseudo_rand_range")
have_func("CONF_get1_default_config_file")
+have_func("X509V3_set_nconf")
if try_compile("#define FOO(a, ...) foo(a, ##__VA_ARGS__)\n int x(){FOO(1);FOO(1,2);FOO(1,2,3);}\n")
$defs.push("-DHAVE_VA_ARGS_MACRO")
end
diff --git a/ext/openssl/ossl_x509ext.c b/ext/openssl/ossl_x509ext.c
index eddc7b4470..23e768a9b5 100644
--- a/ext/openssl/ossl_x509ext.c
+++ b/ext/openssl/ossl_x509ext.c
@@ -162,6 +162,7 @@ ossl_x509extfactory_set_crl(VALUE self, VALUE crl)
static VALUE
ossl_x509extfactory_set_config(VALUE self, VALUE config)
{
+#ifdef HAVE_X509V3_SET_NCONF
X509V3_CTX *ctx;
CONF *conf;
@@ -171,6 +172,9 @@ ossl_x509extfactory_set_config(VALUE self, VALUE config)
X509V3_set_nconf(ctx, conf);
return config;
+#else
+ rb_notimplement();
+#endif
}
static VALUE