diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-02-19 06:39:52 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-02-19 06:39:52 +0000 |
commit | 3e1394f36fd39da810ebd807d5346ddd0c0f3b5b (patch) | |
tree | df3f089271b90fcd690b21ddaeed78bbeeb6d214 | |
parent | a285f8565d73bc1cba0b369f5cd46d7e23911bc1 (diff) | |
download | ruby-3e1394f36fd39da810ebd807d5346ddd0c0f3b5b.tar.gz |
* ext/openssl/ossl_ocsp.c (ossl_ocspbres_verify): OCSP_basic_verify
returns positive value on success, not non-zero. [ruby-core:21762]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ext/openssl/ossl_ocsp.c | 8 |
2 files changed, 9 insertions, 4 deletions
@@ -1,3 +1,8 @@ +Thu Feb 19 15:39:50 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/openssl/ossl_ocsp.c (ossl_ocspbres_verify): OCSP_basic_verify + returns positive value on success, not non-zero. [ruby-core:21762] + Thu Feb 19 15:17:00 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * lib/tmpdir.rb (@@systmpdir): File.expand_path also joins paths. diff --git a/ext/openssl/ossl_ocsp.c b/ext/openssl/ossl_ocsp.c index 07a97d82c9..a658c0180a 100644 --- a/ext/openssl/ossl_ocsp.c +++ b/ext/openssl/ossl_ocsp.c @@ -593,22 +593,22 @@ ossl_ocspbres_sign(int argc, VALUE *argv, VALUE self) static VALUE ossl_ocspbres_verify(int argc, VALUE *argv, VALUE self) { - VALUE certs, store, flags; + VALUE certs, store, flags, result; OCSP_BASICRESP *bs; STACK_OF(X509) *x509s; X509_STORE *x509st; - int flg, result; + int flg; rb_scan_args(argc, argv, "21", &certs, &store, &flags); x509st = GetX509StorePtr(store); flg = NIL_P(flags) ? 0 : INT2NUM(flags); x509s = ossl_x509_ary2sk(certs); GetOCSPBasicRes(self, bs); - result = OCSP_basic_verify(bs, x509s, x509st, flg); + result = OCSP_basic_verify(bs, x509s, x509st, flg) > 0 ? Qtrue : Qfalse; sk_X509_pop_free(x509s, X509_free); if(!result) rb_warn("%s", ERR_error_string(ERR_peek_error(), NULL)); - return result ? Qtrue : Qfalse; + return result; } /* |