[前][次][番号順一覧][スレッド一覧]

ruby-changes:23067

From: naruse <ko1@a...>
Date: Fri, 23 Mar 2012 11:33:16 +0900 (JST)
Subject: [ruby-changes:23067] naruse:r35117 (trunk): Refix Bug #6094: use unsigned long integer literal.

naruse	2012-03-23 11:33:05 +0900 (Fri, 23 Mar 2012)

  New Revision: 35117

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=35117

  Log:
    Refix Bug #6094: use unsigned long integer literal.
    
    * ext/openssl/ossl_pkey_rsa.c (rsa_generate): fix argument type.
      [Bug #6094]

  Modified files:
    trunk/ChangeLog
    trunk/ext/openssl/ossl_pkey_rsa.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 35116)
+++ ChangeLog	(revision 35117)
@@ -29,6 +29,11 @@
 	* win32/win32.c (unixtime_to_filetime): convert time_t to FILETIME
 	  simply.
 
+Thu Mar 22 13:43:31 2012  Nobuyoshi Nakada  <nobu@r...>
+
+	* ext/openssl/ossl_pkey_rsa.c (rsa_generate): fix argument type.
+	  [Bug #6094]
+
 Thu Mar 22 11:14:10 2012  NAKAMURA Usaku  <usa@r...>
 
 	* test/ruby/test_io.rb (TestIO#test_pos_with_getc): updated.
Index: ext/openssl/ossl_pkey_rsa.c
===================================================================
--- ext/openssl/ossl_pkey_rsa.c	(revision 35116)
+++ ext/openssl/ossl_pkey_rsa.c	(revision 35117)
@@ -95,7 +95,7 @@
 #endif
 
 static RSA *
-rsa_generate(int size, int exp)
+rsa_generate(int size, unsigned long exp)
 {
 #if defined(HAVE_RSA_GENERATE_KEY_EX) && HAVE_BN_GENCB
     int i;
@@ -111,7 +111,7 @@
 	return 0;
     }
     for (i = 0; i < (int)sizeof(exp) * 8; ++i) {
-	if (exp & (1 << i)) {
+	if (exp & (1UL << i)) {
 	    if (BN_set_bit(e, i) == 0) {
 		BN_free(e);
 		RSA_free(rsa);
@@ -168,7 +168,7 @@
 
     rb_scan_args(argc, argv, "11", &size, &exp);
 
-    rsa = rsa_generate(NUM2INT(size), NIL_P(exp) ? RSA_F4 : NUM2INT(exp)); /* err handled by rsa_instance */
+    rsa = rsa_generate(NUM2INT(size), NIL_P(exp) ? RSA_F4 : NUM2ULONG(exp)); /* err handled by rsa_instance */
     obj = rsa_instance(klass, rsa);
 
     if (obj == Qfalse) {
@@ -213,7 +213,7 @@
 	rsa = RSA_new();
     }
     else if (FIXNUM_P(arg)) {
-	rsa = rsa_generate(FIX2INT(arg), NIL_P(pass) ? RSA_F4 : NUM2INT(pass));
+	rsa = rsa_generate(FIX2INT(arg), NIL_P(pass) ? RSA_F4 : NUM2ULONG(pass));
 	if (!rsa) ossl_raise(eRSAError, NULL);
     }
     else {

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]