1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* ext/openssl/ossl_ssl.c: Only show a warning if the default

DH callback is actually used.

* ext/openssl/ossl_rand.c: New method: random_add().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@14726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
technorama 2007-12-27 01:50:50 +00:00
parent a4afe2df99
commit 55180306dd
3 changed files with 30 additions and 1 deletions

View file

@ -1,3 +1,10 @@
Thu Dec 27 10:47:32 2007 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/ossl_ssl.c: Only show a warning if the default
DH callback is actually used.
* ext/openssl/ossl_rand.c: New method: random_add().
Wed Dec 26 22:27:45 2007 NARUSE, Yui <naruse@ruby-lang.org>
* lib/resolv.rb (Resolv::DNS::Name.==): fix for other is array of

View file

@ -27,6 +27,12 @@ VALUE eRandomError;
/*
* Private
*/
/*
* call-seq:
* seed(str) -> str
*
*/
static VALUE
ossl_rand_seed(VALUE self, VALUE str)
{
@ -36,6 +42,20 @@ ossl_rand_seed(VALUE self, VALUE str)
return str;
}
/*
* call-seq:
* add(str, entropy) -> self
*
*/
static VALUE
ossl_rand_add(VALUE self, VALUE str, VALUE entropy)
{
StringValue(str);
RAND_add(RSTRING_PTR(str), RSTRING_LEN(str), NUM2DBL(entropy));
return self;
}
/*
* call-seq:
* load_random_file(filename) -> true
@ -166,6 +186,7 @@ Init_ossl_rand()
eRandomError = rb_define_class_under(mRandom, "RandomError", eOSSLError);
DEFMETH(mRandom, "seed", ossl_rand_seed, 1);
DEFMETH(mRandom, "random_add", ossl_rand_add, 2);
DEFMETH(mRandom, "load_random_file", ossl_rand_load_file, 1);
DEFMETH(mRandom, "write_random_file", ossl_rand_write_file, 1);
DEFMETH(mRandom, "random_bytes", ossl_rand_bytes, 1);

View file

@ -260,6 +260,8 @@ ossl_tmp_dh_callback(SSL *ssl, int is_export, int keylength)
static DH*
ossl_default_tmp_dh_callback(SSL *ssl, int is_export, int keylength)
{
rb_warning("using default DH parameters.");
switch(keylength){
case 512:
return OSSL_DEFAULT_DH_512;
@ -453,7 +455,6 @@ ossl_sslctx_setup(VALUE self)
SSL_CTX_set_tmp_dh_callback(ctx, ossl_tmp_dh_callback);
}
else{
rb_warning("using default DH parameters.");
SSL_CTX_set_tmp_dh_callback(ctx, ossl_default_tmp_dh_callback);
}
#endif