e9a1e47
diff -ur ruby-1.8.6-p287.orig/ext/openssl/openssl_missing.c ruby-1.8.6-p287/ext/openssl/openssl_missing.c
e9a1e47
--- ruby-1.8.6-p287.orig/ext/openssl/openssl_missing.c	2007-02-13 00:01:19.000000000 +0100
e9a1e47
+++ ruby-1.8.6-p287/ext/openssl/openssl_missing.c	2009-03-15 05:32:31.000000000 +0100
e9a1e47
@@ -43,7 +43,7 @@
e9a1e47
 {
e9a1e47
     return CRYPTO_set_ex_data(&str->ex_data, idx, data);
e9a1e47
 }
e9a1e47
- 
e9a1e47
+
e9a1e47
 void *X509_STORE_get_ex_data(X509_STORE *str, int idx)
e9a1e47
 {
e9a1e47
     return CRYPTO_get_ex_data(&str->ex_data, idx);
e9a1e47
@@ -113,7 +113,7 @@
e9a1e47
 #endif
e9a1e47
 
e9a1e47
 #if !defined(HAVE_EVP_CIPHER_CTX_COPY)
e9a1e47
-/* 
e9a1e47
+/*
e9a1e47
  * this function does not exist in OpenSSL yet... or ever?.
e9a1e47
  * a future version may break this function.
e9a1e47
  * tested on 0.9.7d.
e9a1e47
@@ -182,12 +182,12 @@
e9a1e47
 		(ASN1_STRING *)(*a)->serialNumber,
e9a1e47
 		(ASN1_STRING *)(*b)->serialNumber));
e9a1e47
 }
e9a1e47
-		    
e9a1e47
+
e9a1e47
 int
e9a1e47
 X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev)
e9a1e47
 {
e9a1e47
     X509_CRL_INFO *inf;
e9a1e47
-    
e9a1e47
+
e9a1e47
     inf = crl->crl;
e9a1e47
     if (!inf->revoked)
e9a1e47
 	inf->revoked = sk_X509_REVOKED_new(OSSL_X509_REVOKED_cmp);
e9a1e47
@@ -233,54 +233,6 @@
e9a1e47
 }
e9a1e47
 #endif
e9a1e47
 
e9a1e47
-#if !defined(HAVE_BN_RAND_RANGE) || !defined(HAVE_BN_PSEUDO_RAND_RANGE)
e9a1e47
-static int
e9a1e47
-bn_rand_range(int pseudo, BIGNUM *r, BIGNUM *range)
e9a1e47
-{
e9a1e47
-    int (*bn_rand)(BIGNUM *, int, int, int) = pseudo ? BN_pseudo_rand : BN_rand;
e9a1e47
-    int n;
e9a1e47
-
e9a1e47
-    if (range->neg || BN_is_zero(range)) return 0;
e9a1e47
-
e9a1e47
-    n = BN_num_bits(range);
e9a1e47
-
e9a1e47
-    if (n == 1) {
e9a1e47
-	if (!BN_zero(r)) return 0;
e9a1e47
-    } else if (!BN_is_bit_set(range, n - 2) && !BN_is_bit_set(range, n - 3)) {
e9a1e47
-	do {
e9a1e47
-	    if (!bn_rand(r, n + 1, -1, 0)) return 0;
e9a1e47
-	    if (BN_cmp(r ,range) >= 0) {
e9a1e47
-		if (!BN_sub(r, r, range)) return 0;
e9a1e47
-		if (BN_cmp(r, range) >= 0)
e9a1e47
-		    if (!BN_sub(r, r, range)) return 0;
e9a1e47
-	    }
e9a1e47
-	} while (BN_cmp(r, range) >= 0);
e9a1e47
-    } else {
e9a1e47
-	do {
e9a1e47
-	    if (!bn_rand(r, n, -1, 0)) return 0;
e9a1e47
-	} while (BN_cmp(r, range) >= 0);
e9a1e47
-    }
e9a1e47
-
e9a1e47
-    return 1;
e9a1e47
-}
e9a1e47
-#endif
e9a1e47
-
e9a1e47
-#if !defined(HAVE_BN_RAND_RANGE)
e9a1e47
-int
e9a1e47
-BN_rand_range(BIGNUM *r, BIGNUM *range)
e9a1e47
-{
e9a1e47
-    return bn_rand_range(0, r, range);
e9a1e47
-}
e9a1e47
-#endif
e9a1e47
-
e9a1e47
-#if !defined(HAVE_BN_PSEUDO_RAND_RANGE)
e9a1e47
-int
e9a1e47
-BN_pseudo_rand_range(BIGNUM *r, BIGNUM *range)
e9a1e47
-{
e9a1e47
-    return bn_rand_range(1, r, range);
e9a1e47
-}
e9a1e47
-#endif
e9a1e47
-
e9a1e47
 #if !defined(HAVE_CONF_GET1_DEFAULT_CONFIG_FILE)
e9a1e47
 #define OPENSSL_CONF "openssl.cnf"
e9a1e47
 char *
e9a1e47
@@ -315,7 +267,7 @@
e9a1e47
 {
e9a1e47
     int i,j;
e9a1e47
     const char *prompt;
e9a1e47
-    
e9a1e47
+
e9a1e47
     if (key) {
e9a1e47
 	i = strlen(key);
e9a1e47
 	i = (i > num) ? num : i;