mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* ext/openssl/ossl_{ec,dh,dsa,rsa}.c: Remove useless warnings.
* ext/openssl/ossl_asn1.c: Simplify code. * ext/openssl/ossl_ssl_session.c Fix compiler warnings. Undefine #id if SSL_SESSION_get_id is not supported. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
43b1b0e16a
commit
161b45f59c
7 changed files with 26 additions and 33 deletions
|
@ -1,3 +1,12 @@
|
||||||
|
Tue Feb 26 16:06:00 2008 Technorama Ltd. <oss-ruby@technorama.net>
|
||||||
|
|
||||||
|
* ext/openssl/ossl_{ec,dh,dsa,rsa}.c: Remove useless warnings.
|
||||||
|
|
||||||
|
* ext/openssl/ossl_asn1.c: Simplify code.
|
||||||
|
|
||||||
|
* ext/openssl/ossl_ssl_session.c Fix compiler warnings.
|
||||||
|
Undefine #id if SSL_SESSION_get_id is not supported.
|
||||||
|
|
||||||
Tue Feb 26 15:50:10 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
Tue Feb 26 15:50:10 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
* parse.y (value_expr_gen): removed inappropriate warning.
|
* parse.y (value_expr_gen): removed inappropriate warning.
|
||||||
|
|
|
@ -347,16 +347,11 @@ decode_bstr(unsigned char* der, int length, long *unused_bits)
|
||||||
if(!(bstr = d2i_ASN1_BIT_STRING(NULL, &p, length)))
|
if(!(bstr = d2i_ASN1_BIT_STRING(NULL, &p, length)))
|
||||||
ossl_raise(eASN1Error, NULL);
|
ossl_raise(eASN1Error, NULL);
|
||||||
len = bstr->length;
|
len = bstr->length;
|
||||||
if(!(buf = OPENSSL_malloc(len))){
|
|
||||||
ASN1_BIT_STRING_free(bstr);
|
|
||||||
ossl_raise(eASN1Error, NULL);
|
|
||||||
}
|
|
||||||
*unused_bits = 0;
|
*unused_bits = 0;
|
||||||
if(bstr->flags & ASN1_STRING_FLAG_BITS_LEFT)
|
if(bstr->flags & ASN1_STRING_FLAG_BITS_LEFT)
|
||||||
*unused_bits = bstr->flags & 0x07;
|
*unused_bits = bstr->flags & 0x07;
|
||||||
memcpy(buf, bstr->data, len);
|
ret = rb_str_new(bstr->data, len);
|
||||||
ASN1_BIT_STRING_free(bstr);
|
ASN1_BIT_STRING_free(bstr);
|
||||||
ret = ossl_buf2str(buf, len);
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -925,7 +920,7 @@ ossl_asn1prim_to_der(VALUE self)
|
||||||
{
|
{
|
||||||
ASN1_TYPE *asn1;
|
ASN1_TYPE *asn1;
|
||||||
int tn, tc, explicit;
|
int tn, tc, explicit;
|
||||||
long length, reallen;
|
long len, reallen;
|
||||||
unsigned char *buf, *p;
|
unsigned char *buf, *p;
|
||||||
VALUE str;
|
VALUE str;
|
||||||
|
|
||||||
|
@ -934,26 +929,24 @@ ossl_asn1prim_to_der(VALUE self)
|
||||||
explicit = ossl_asn1_is_explicit(self);
|
explicit = ossl_asn1_is_explicit(self);
|
||||||
asn1 = ossl_asn1_get_asn1type(self);
|
asn1 = ossl_asn1_get_asn1type(self);
|
||||||
|
|
||||||
length = ASN1_object_size(1, ossl_i2d_ASN1_TYPE(asn1, NULL), tn);
|
len = ASN1_object_size(1, ossl_i2d_ASN1_TYPE(asn1, NULL), tn);
|
||||||
if(!(buf = OPENSSL_malloc(length))){
|
if(!(buf = OPENSSL_malloc(len))){
|
||||||
ossl_ASN1_TYPE_free(asn1);
|
ossl_ASN1_TYPE_free(asn1);
|
||||||
ossl_raise(eASN1Error, "cannot alloc buffer");
|
ossl_raise(eASN1Error, "cannot alloc buffer");
|
||||||
}
|
}
|
||||||
p = buf;
|
p = buf;
|
||||||
if(tc == V_ASN1_UNIVERSAL) ossl_i2d_ASN1_TYPE(asn1, &p);
|
if (tc == V_ASN1_UNIVERSAL) {
|
||||||
else{
|
ossl_i2d_ASN1_TYPE(asn1, &p);
|
||||||
if(explicit){
|
} else if (explicit) {
|
||||||
ASN1_put_object(&p, 1, ossl_i2d_ASN1_TYPE(asn1, NULL), tn, tc);
|
ASN1_put_object(&p, 1, ossl_i2d_ASN1_TYPE(asn1, NULL), tn, tc);
|
||||||
ossl_i2d_ASN1_TYPE(asn1, &p);
|
ossl_i2d_ASN1_TYPE(asn1, &p);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
ossl_i2d_ASN1_TYPE(asn1, &p);
|
ossl_i2d_ASN1_TYPE(asn1, &p);
|
||||||
*buf = tc | tn | (*buf & V_ASN1_CONSTRUCTED);
|
*buf = tc | tn | (*buf & V_ASN1_CONSTRUCTED);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
ossl_ASN1_TYPE_free(asn1);
|
ossl_ASN1_TYPE_free(asn1);
|
||||||
reallen = p - buf;
|
reallen = p - buf;
|
||||||
assert(reallen <= length);
|
assert(reallen <= len);
|
||||||
str = ossl_buf2str(buf, reallen); /* buf will be free in ossl_buf2str */
|
str = ossl_buf2str(buf, reallen); /* buf will be free in ossl_buf2str */
|
||||||
|
|
||||||
return str;
|
return str;
|
||||||
|
|
|
@ -524,11 +524,9 @@ Init_ossl_dh()
|
||||||
}
|
}
|
||||||
|
|
||||||
#else /* defined NO_DH */
|
#else /* defined NO_DH */
|
||||||
# warning >>> OpenSSL is compiled without DH support <<<
|
|
||||||
void
|
void
|
||||||
Init_ossl_dh()
|
Init_ossl_dh()
|
||||||
{
|
{
|
||||||
rb_warning("OpenSSL is compiled without DH support");
|
|
||||||
}
|
}
|
||||||
#endif /* NO_DH */
|
#endif /* NO_DH */
|
||||||
|
|
||||||
|
|
|
@ -477,12 +477,8 @@ Init_ossl_dsa()
|
||||||
}
|
}
|
||||||
|
|
||||||
#else /* defined NO_DSA */
|
#else /* defined NO_DSA */
|
||||||
# warning >>> OpenSSL is compiled without DSA support <<<
|
|
||||||
|
|
||||||
void
|
void
|
||||||
Init_ossl_dsa()
|
Init_ossl_dsa()
|
||||||
{
|
{
|
||||||
rb_warning("OpenSSL is compiled without DSA support");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* NO_DSA */
|
#endif /* NO_DSA */
|
||||||
|
|
|
@ -1576,10 +1576,7 @@ void Init_ossl_ec()
|
||||||
}
|
}
|
||||||
|
|
||||||
#else /* defined NO_EC */
|
#else /* defined NO_EC */
|
||||||
# warning >>> OpenSSL is compiled without EC support <<<
|
|
||||||
|
|
||||||
void Init_ossl_ec()
|
void Init_ossl_ec()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* NO_EC */
|
#endif /* NO_EC */
|
||||||
|
|
|
@ -585,11 +585,9 @@ Init_ossl_rsa()
|
||||||
}
|
}
|
||||||
|
|
||||||
#else /* defined NO_RSA */
|
#else /* defined NO_RSA */
|
||||||
# warning >>> OpenSSL is compiled without RSA support <<<
|
|
||||||
void
|
void
|
||||||
Init_ossl_rsa()
|
Init_ossl_rsa()
|
||||||
{
|
{
|
||||||
rb_warning("OpenSSL is compiled without RSA support");
|
|
||||||
}
|
}
|
||||||
#endif /* NO_RSA */
|
#endif /* NO_RSA */
|
||||||
|
|
||||||
|
|
|
@ -174,7 +174,7 @@ static VALUE ossl_ssl_session_get_id(VALUE self)
|
||||||
|
|
||||||
p = SSL_SESSION_get_id(ctx, &i);
|
p = SSL_SESSION_get_id(ctx, &i);
|
||||||
|
|
||||||
return rb_str_new(p, i);
|
return rb_str_new((const char *) p, i);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -200,7 +200,7 @@ static VALUE ossl_ssl_session_to_der(VALUE self)
|
||||||
else if (len >= sizeof(buf))
|
else if (len >= sizeof(buf))
|
||||||
ossl_raise(eSSLSession, "i2d_SSL_SESSION too large");
|
ossl_raise(eSSLSession, "i2d_SSL_SESSION too large");
|
||||||
|
|
||||||
return rb_str_new(p, len);
|
return rb_str_new((const char *) p, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -289,6 +289,8 @@ void Init_ossl_ssl_session(void)
|
||||||
|
|
||||||
#ifdef HAVE_SSL_SESSION_GET_ID
|
#ifdef HAVE_SSL_SESSION_GET_ID
|
||||||
rb_define_method(cSSLSession, "id", ossl_ssl_session_get_id, 0);
|
rb_define_method(cSSLSession, "id", ossl_ssl_session_get_id, 0);
|
||||||
|
#else
|
||||||
|
rb_undef_method(cSSLSession, "id");
|
||||||
#endif
|
#endif
|
||||||
rb_define_method(cSSLSession, "to_der", ossl_ssl_session_to_der, 0);
|
rb_define_method(cSSLSession, "to_der", ossl_ssl_session_to_der, 0);
|
||||||
rb_define_method(cSSLSession, "to_pem", ossl_ssl_session_to_pem, 0);
|
rb_define_method(cSSLSession, "to_pem", ossl_ssl_session_to_pem, 0);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue