diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2016-08-20 21:09:54 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2016-08-26 02:12:36 +0900 |
commit | a3311831a1b16beea04cd716769def7bd9887bd3 (patch) | |
tree | aac4142c17eb7249a40028fb1378955820ef4dda | |
parent | c3825dd99c1e9c21e01d6bad59e88569f31ff4ef (diff) | |
download | ruby-openssl-a3311831a1b16beea04cd716769def7bd9887bd3.tar.gz |
asn1: constify functions
In order to avoid compiler warnings when build with OpenSSL 1.1.0.
-rw-r--r-- | ext/openssl/ossl.c | 2 | ||||
-rw-r--r-- | ext/openssl/ossl.h | 6 | ||||
-rw-r--r-- | ext/openssl/ossl_asn1.c | 9 | ||||
-rw-r--r-- | ext/openssl/ossl_asn1.h | 6 |
4 files changed, 12 insertions, 11 deletions
diff --git a/ext/openssl/ossl.c b/ext/openssl/ossl.c index 1bf99e62..5cd0fe21 100644 --- a/ext/openssl/ossl.c +++ b/ext/openssl/ossl.c @@ -98,7 +98,7 @@ OSSL_IMPL_ARY2SK(x509, X509, cX509Cert, DupX509CertPtr) #define OSSL_IMPL_SK2ARY(name, type) \ VALUE \ -ossl_##name##_sk2ary(STACK_OF(type) *sk) \ +ossl_##name##_sk2ary(const STACK_OF(type) *sk) \ { \ type *t; \ int i, num; \ diff --git a/ext/openssl/ossl.h b/ext/openssl/ossl.h index c15a25bc..0ba64e65 100644 --- a/ext/openssl/ossl.h +++ b/ext/openssl/ossl.h @@ -107,9 +107,9 @@ int string2hex(const unsigned char *, int, char **, int *); STACK_OF(X509) *ossl_x509_ary2sk0(VALUE); STACK_OF(X509) *ossl_x509_ary2sk(VALUE); STACK_OF(X509) *ossl_protect_x509_ary2sk(VALUE,int*); -VALUE ossl_x509_sk2ary(STACK_OF(X509) *certs); -VALUE ossl_x509crl_sk2ary(STACK_OF(X509_CRL) *crl); -VALUE ossl_x509name_sk2ary(STACK_OF(X509_NAME) *names); +VALUE ossl_x509_sk2ary(const STACK_OF(X509) *certs); +VALUE ossl_x509crl_sk2ary(const STACK_OF(X509_CRL) *crl); +VALUE ossl_x509name_sk2ary(const STACK_OF(X509_NAME) *names); VALUE ossl_buf2str(char *buf, int len); #define ossl_str_adjust(str, p) \ do{\ diff --git a/ext/openssl/ossl_asn1.c b/ext/openssl/ossl_asn1.c index 5fea9a2f..85b1f02e 100644 --- a/ext/openssl/ossl_asn1.c +++ b/ext/openssl/ossl_asn1.c @@ -28,7 +28,7 @@ static VALUE ossl_asn1eoc_initialize(VALUE self); * DATE conversion */ VALUE -asn1time_to_time(ASN1_TIME *time) +asn1time_to_time(const ASN1_TIME *time) { struct tm tm; VALUE argv[6]; @@ -103,7 +103,7 @@ time_to_time_t(VALUE time) * STRING conversion */ VALUE -asn1str_to_str(ASN1_STRING *str) +asn1str_to_str(const ASN1_STRING *str) { return rb_str_new((const char *)str->data, str->length); } @@ -114,7 +114,7 @@ asn1str_to_str(ASN1_STRING *str) */ #define DO_IT_VIA_RUBY 0 VALUE -asn1integer_to_num(ASN1_INTEGER *ai) +asn1integer_to_num(const ASN1_INTEGER *ai) { BIGNUM *bn; #if DO_IT_VIA_RUBY @@ -126,7 +126,8 @@ asn1integer_to_num(ASN1_INTEGER *ai) ossl_raise(rb_eTypeError, "ASN1_INTEGER is NULL!"); } if (ai->type == V_ASN1_ENUMERATED) - bn = ASN1_ENUMERATED_to_BN(ai, NULL); + /* const_cast: workaround for old OpenSSL */ + bn = ASN1_ENUMERATED_to_BN((ASN1_ENUMERATED *)ai, NULL); else bn = ASN1_INTEGER_to_BN(ai, NULL); diff --git a/ext/openssl/ossl_asn1.h b/ext/openssl/ossl_asn1.h index b1c85a68..d6a170c8 100644 --- a/ext/openssl/ossl_asn1.h +++ b/ext/openssl/ossl_asn1.h @@ -13,7 +13,7 @@ /* * ASN1_DATE conversions */ -VALUE asn1time_to_time(ASN1_TIME *); +VALUE asn1time_to_time(const ASN1_TIME *); #if defined(HAVE_ASN1_TIME_ADJ) /* Splits VALUE to seconds and offset days. VALUE is typically a Time or an * Integer. This is used when updating ASN1_*TIME with ASN1_TIME_adj() or @@ -27,12 +27,12 @@ time_t time_to_time_t(VALUE); /* * ASN1_STRING conversions */ -VALUE asn1str_to_str(ASN1_STRING *); +VALUE asn1str_to_str(const ASN1_STRING *); /* * ASN1_INTEGER conversions */ -VALUE asn1integer_to_num(ASN1_INTEGER *); +VALUE asn1integer_to_num(const ASN1_INTEGER *); ASN1_INTEGER *num_to_asn1integer(VALUE, ASN1_INTEGER *); /* |