head 1.3; access; symbols pkgsrc-2017Q1:1.2.0.54 pkgsrc-2017Q1-base:1.2 pkgsrc-2016Q4:1.2.0.52 pkgsrc-2016Q4-base:1.2 pkgsrc-2016Q3:1.2.0.50 pkgsrc-2016Q3-base:1.2 pkgsrc-2016Q2:1.2.0.48 pkgsrc-2016Q2-base:1.2 pkgsrc-2016Q1:1.2.0.46 pkgsrc-2016Q1-base:1.2 pkgsrc-2015Q4:1.2.0.44 pkgsrc-2015Q4-base:1.2 pkgsrc-2015Q3:1.2.0.42 pkgsrc-2015Q3-base:1.2 pkgsrc-2015Q2:1.2.0.40 pkgsrc-2015Q2-base:1.2 pkgsrc-2015Q1:1.2.0.38 pkgsrc-2015Q1-base:1.2 pkgsrc-2014Q4:1.2.0.36 pkgsrc-2014Q4-base:1.2 pkgsrc-2014Q3:1.2.0.34 pkgsrc-2014Q3-base:1.2 pkgsrc-2014Q2:1.2.0.32 pkgsrc-2014Q2-base:1.2 pkgsrc-2014Q1:1.2.0.30 pkgsrc-2014Q1-base:1.2 pkgsrc-2013Q4:1.2.0.28 pkgsrc-2013Q4-base:1.2 pkgsrc-2013Q3:1.2.0.26 pkgsrc-2013Q3-base:1.2 pkgsrc-2013Q2:1.2.0.24 pkgsrc-2013Q2-base:1.2 pkgsrc-2013Q1:1.2.0.22 pkgsrc-2013Q1-base:1.2 pkgsrc-2012Q4:1.2.0.20 pkgsrc-2012Q4-base:1.2 pkgsrc-2012Q3:1.2.0.18 pkgsrc-2012Q3-base:1.2 pkgsrc-2012Q2:1.2.0.16 pkgsrc-2012Q2-base:1.2 pkgsrc-2012Q1:1.2.0.14 pkgsrc-2012Q1-base:1.2 pkgsrc-2011Q4:1.2.0.12 pkgsrc-2011Q4-base:1.2 pkgsrc-2011Q3:1.2.0.10 pkgsrc-2011Q3-base:1.2 pkgsrc-2011Q2:1.2.0.8 pkgsrc-2011Q2-base:1.2 pkgsrc-2011Q1:1.2.0.6 pkgsrc-2011Q1-base:1.2 pkgsrc-2010Q4:1.2.0.4 pkgsrc-2010Q4-base:1.2 pkgsrc-2010Q3:1.2.0.2 pkgsrc-2010Q3-base:1.2 pkgsrc-2010Q2:1.1.0.8 pkgsrc-2010Q2-base:1.1 pkgsrc-2010Q1:1.1.0.6 pkgsrc-2010Q1-base:1.1 pkgsrc-2009Q4:1.1.0.4 pkgsrc-2009Q4-base:1.1 pkgsrc-2009Q3:1.1.0.2 pkgsrc-2009Q3-base:1.1; locks; strict; comment @# @; 1.3 date 2017.04.22.18.23.55; author taca; state dead; branches; next 1.2; commitid tDoWtAVFTjPkJyOz; 1.2 date 2010.09.10.03.29.00; author taca; state Exp; branches; next 1.1; 1.1 date 2009.08.11.14.26.59; author taca; state Exp; branches; next ; desc @@ 1.3 log @Remove ruby18 which is EOL almost 4 years ago. @ text @$NetBSD: patch-dp,v 1.2 2010/09/10 03:29:00 taca Exp $ * r18172: suppress warnings. * r26838: backport the commit from trunk. --- ext/openssl/ossl_pkcs7.c.orig 2010-06-21 09:18:59.000000000 +0000 +++ ext/openssl/ossl_pkcs7.c @@@@ -309,7 +309,7 @@@@ ossl_pkcs7_alloc(VALUE klass) static VALUE ossl_pkcs7_initialize(int argc, VALUE *argv, VALUE self) { - PKCS7 *p7; + PKCS7 *p7, *pkcs = DATA_PTR(self); BIO *in; VALUE arg; @@@@ -317,10 +317,12 @@@@ ossl_pkcs7_initialize(int argc, VALUE *a return self; arg = ossl_to_der_if_possible(arg); in = ossl_obj2bio(arg); - p7 = PEM_read_bio_PKCS7(in, (PKCS7 **)&DATA_PTR(self), NULL, NULL); + p7 = PEM_read_bio_PKCS7(in, &pkcs, NULL, NULL); + DATA_PTR(self) = pkcs; if (!p7) { - BIO_reset(in); - p7 = d2i_PKCS7_bio(in, (PKCS7 **)&DATA_PTR(self)); + (void)BIO_reset(in); + p7 = d2i_PKCS7_bio(in, &pkcs); + DATA_PTR(self) = pkcs; } BIO_free(in); ossl_pkcs7_set_data(self, Qnil); @@@@ -798,7 +800,7 @@@@ ossl_pkcs7_to_der(VALUE self) if((len = i2d_PKCS7(pkcs7, NULL)) <= 0) ossl_raise(ePKCS7Error, NULL); str = rb_str_new(0, len); - p = RSTRING_PTR(str); + p = (unsigned char *)RSTRING_PTR(str); if(i2d_PKCS7(pkcs7, &p) <= 0) ossl_raise(ePKCS7Error, NULL); ossl_str_adjust(str, p); @ 1.2 log @Update ruby18-base to 1.8.7.302 (Ruby 1.8.7 patchlevel 302). Since many changes from previous release, please refer http://www.ruby-lang.org/en/news/2010/08/16/ruby-1-8-7-p302-is-released/. Note: Since all security updates are already in previous package, This update dosen't include any securify fix. @ text @d1 1 a1 1 $NetBSD: patch-dp,v 1.1 2009/08/11 14:26:59 taca Exp $ @ 1.1 log @ * Make Ruby's OpenSSL library compatible with OpenSSL 1.0.0 and later, focusing to PR pkg/41829. * Add comments to patches. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD$ d3 2 a4 2 * Instead of returning different type of value thorugh generic type, use separate functions for each type. d6 1 a6 1 --- ext/openssl/ossl_pkcs7.c.orig 2007-06-09 00:02:04.000000000 +0900 d8 3 a10 8 @@@@ -570,12 +570,11 @@@@ ossl_pkcs7_add_certificate(VALUE self, V return self; } -static STACK * -pkcs7_get_certs_or_crls(VALUE self, int want_certs) +static STACK_OF(X509) * +pkcs7_get_certs(VALUE self) d12 18 a29 41 PKCS7 *pkcs7; STACK_OF(X509) *certs; - STACK_OF(X509_CRL) *crls; int i; GetPKCS7(self, pkcs7); @@@@ -583,17 +582,38 @@@@ pkcs7_get_certs_or_crls(VALUE self, int switch(i){ case NID_pkcs7_signed: certs = pkcs7->d.sign->cert; - crls = pkcs7->d.sign->crl; break; case NID_pkcs7_signedAndEnveloped: certs = pkcs7->d.signed_and_enveloped->cert; + break; + default: + certs = NULL; + } + + return certs; +} + +static STACK_OF(X509_CRL) * +pkcs7_get_crls(VALUE self) +{ + PKCS7 *pkcs7; + STACK_OF(X509_CRL) *crls; + int i; + + GetPKCS7(self, pkcs7); + i = OBJ_obj2nid(pkcs7->type); + switch(i){ + case NID_pkcs7_signed: + crls = pkcs7->d.sign->crl; + break; + case NID_pkcs7_signedAndEnveloped: crls = pkcs7->d.signed_and_enveloped->crl; break; default: - certs = crls = NULL; + crls = NULL; d31 11 a41 42 - return want_certs ? certs : crls; + return crls; } static VALUE @@@@ -608,7 +628,7 @@@@ ossl_pkcs7_set_certificates(VALUE self, STACK_OF(X509) *certs; X509 *cert; - certs = pkcs7_get_certs_or_crls(self, 1); + certs = pkcs7_get_certs(self); while((cert = sk_X509_pop(certs))) X509_free(cert); rb_block_call(ary, rb_intern("each"), 0, 0, ossl_pkcs7_set_certs_i, self); @@@@ -618,7 +638,7 @@@@ ossl_pkcs7_set_certificates(VALUE self, static VALUE ossl_pkcs7_get_certificates(VALUE self) { - return ossl_x509_sk2ary(pkcs7_get_certs_or_crls(self, 1)); + return ossl_x509_sk2ary(pkcs7_get_certs(self)); } static VALUE @@@@ -648,7 +668,7 @@@@ ossl_pkcs7_set_crls(VALUE self, VALUE ar STACK_OF(X509_CRL) *crls; X509_CRL *crl; - crls = pkcs7_get_certs_or_crls(self, 0); + crls = pkcs7_get_crls(self); while((crl = sk_X509_CRL_pop(crls))) X509_CRL_free(crl); rb_block_call(ary, rb_intern("each"), 0, 0, ossl_pkcs7_set_crls_i, self); @@@@ -658,7 +678,7 @@@@ ossl_pkcs7_set_crls(VALUE self, VALUE ar static VALUE ossl_pkcs7_get_crls(VALUE self) { - return ossl_x509crl_sk2ary(pkcs7_get_certs_or_crls(self, 0)); + return ossl_x509crl_sk2ary(pkcs7_get_crls(self)); } static VALUE @