refreshed android patches

This commit is contained in:
Joey Hess 2013-12-27 00:32:29 -04:00
parent 6c3e11abaf
commit 01bd650e2d
7 changed files with 118 additions and 703 deletions

View file

@ -1,29 +1,20 @@
From f6ed5c3093111ffe0276f5b5bb6241783611ab1c Mon Sep 17 00:00:00 2001
From: androidbuilder <androidbuilder@example.com>
Date: Mon, 11 Nov 2013 01:54:25 +0000
From 0cfdb30120976290068f4bcbebbf236b960afbb6 Mon Sep 17 00:00:00 2001
From: dummy <dummy@example.com>
Date: Thu, 26 Dec 2013 20:01:30 -0400
Subject: [PATCH] hack to build
---
Crypto/Number/Basic.hs | 17 -----------------
Crypto/Number/Basic.hs | 14 --------------
Crypto/Number/ModArithmetic.hs | 29 -----------------------------
Crypto/Number/Prime.hs | 18 ------------------
crypto-numbers.cabal | 2 +-
4 files changed, 1 insertion(+), 65 deletions(-)
4 files changed, 1 insertion(+), 62 deletions(-)
diff --git a/Crypto/Number/Basic.hs b/Crypto/Number/Basic.hs
index af03052..5de8518 100644
index 65c14b3..eaee853 100644
--- a/Crypto/Number/Basic.hs
+++ b/Crypto/Number/Basic.hs
@@ -1,8 +1,5 @@
{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE CPP #-}
-#if MIN_VERSION_integer_gmp(0,5,1)
-{-# LANGUAGE UnboxedTuples #-}
-#endif
-- |
-- Module : Crypto.Number.Basic
-- License : BSD-style
@@ -17,11 +14,7 @@ module Crypto.Number.Basic
@@ -20,11 +20,7 @@ module Crypto.Number.Basic
, areEven
) where
@ -35,7 +26,7 @@ index af03052..5de8518 100644
-- | sqrti returns two integer (l,b) so that l <= sqrt i <= b
-- the implementation is quite naive, use an approximation for the first number
@@ -60,25 +53,16 @@ sqrti i
@@ -63,25 +59,16 @@ sqrti i
-- gcde 'a' 'b' find (x,y,gcd(a,b)) where ax + by = d
--
gcde :: Integer -> Integer -> (Integer, Integer, Integer)
@ -61,7 +52,7 @@ index af03052..5de8518 100644
gcde_binary a' b'
| b' == 0 = (1,0,a')
| a' >= b' = compute a' b'
@@ -102,7 +86,6 @@ gcde_binary a' b'
@@ -105,7 +92,6 @@ gcde_binary a' b'
in if u2 >= v2
then loop g x y (u2 - v2) v2 (a2 - c2) (b2 - d2) c2 d2
else loop g x y u2 (v2 - u2) a2 b2 (c2 - a2) (d2 - b2)
@ -70,10 +61,10 @@ index af03052..5de8518 100644
-- | check if a list of integer are all even
areEven :: [Integer] -> Bool
diff --git a/Crypto/Number/ModArithmetic.hs b/Crypto/Number/ModArithmetic.hs
index 031f477..38b22b7 100644
index 942c12f..f8cfc32 100644
--- a/Crypto/Number/ModArithmetic.hs
+++ b/Crypto/Number/ModArithmetic.hs
@@ -26,12 +26,8 @@ module Crypto.Number.ModArithmetic
@@ -29,12 +29,8 @@ module Crypto.Number.ModArithmetic
import Control.Exception (throw, Exception)
import Data.Typeable
@ -86,7 +77,7 @@ index 031f477..38b22b7 100644
-- | Raised when two numbers are supposed to be coprimes but are not.
data CoprimesAssertionError = CoprimesAssertionError
@@ -52,13 +48,7 @@ expSafe :: Integer -- ^ base
@@ -55,13 +51,7 @@ expSafe :: Integer -- ^ base
-> Integer -- ^ exponant
-> Integer -- ^ modulo
-> Integer -- ^ result
@ -100,7 +91,7 @@ index 031f477..38b22b7 100644
-- | Compute the modular exponentiation of base^exponant using
-- the fastest algorithm without any consideration for
@@ -71,11 +61,7 @@ expFast :: Integer -- ^ base
@@ -74,11 +64,7 @@ expFast :: Integer -- ^ base
-> Integer -- ^ modulo
-> Integer -- ^ result
expFast =
@ -112,7 +103,7 @@ index 031f477..38b22b7 100644
-- note on exponentiation: 0^0 is treated as 1 for mimicking the standard library;
-- the mathematic debate is still open on whether or not this is true, but pratically
@@ -84,22 +70,15 @@ expFast =
@@ -87,22 +73,15 @@ expFast =
-- | exponentiation_rtl_binary computes modular exponentiation as b^e mod m
-- using the right-to-left binary exponentiation algorithm (HAC 14.79)
exponentiation_rtl_binary :: Integer -> Integer -> Integer -> Integer
@ -135,7 +126,7 @@ index 031f477..38b22b7 100644
exponentiation b e m
| b == 1 = b
| e == 0 = 1
@@ -107,7 +86,6 @@ exponentiation b e m
@@ -110,7 +89,6 @@ exponentiation b e m
| even e = let p = (exponentiation b (e `div` 2) m) `mod` m
in (p^(2::Integer)) `mod` m
| otherwise = (b * exponentiation b (e-1) m) `mod` m
@ -143,7 +134,7 @@ index 031f477..38b22b7 100644
--{-# DEPRECATED exponantiation_rtl_binary "typo in API name it's called exponentiation_rtl_binary #-}
exponantiation_rtl_binary :: Integer -> Integer -> Integer -> Integer
@@ -119,17 +97,10 @@ exponantiation = exponentiation
@@ -122,17 +100,10 @@ exponantiation = exponentiation
-- | inverse computes the modular inverse as in g^(-1) mod m
inverse :: Integer -> Integer -> Maybe Integer
@ -162,19 +153,20 @@ index 031f477..38b22b7 100644
-- | Compute the modular inverse of 2 coprime numbers.
-- This is equivalent to inverse except that the result
diff --git a/Crypto/Number/Prime.hs b/Crypto/Number/Prime.hs
index 2060f4d..61d37c0 100644
index 0cea9da..458c94d 100644
--- a/Crypto/Number/Prime.hs
+++ b/Crypto/Number/Prime.hs
@@ -1,8 +1,6 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE BangPatterns #-}
@@ -3,9 +3,7 @@
#ifndef MIN_VERSION_integer_gmp
#define MIN_VERSION_integer_gmp(a,b,c) 0
#endif
-#if MIN_VERSION_integer_gmp(0,5,1)
{-# LANGUAGE MagicHash #-}
-#endif
-- |
-- Module : Crypto.Number.Prime
-- License : BSD-style
@@ -27,12 +25,7 @@ import Crypto.Number.Generate
@@ -30,12 +28,7 @@ import Crypto.Number.Generate
import Crypto.Number.Basic (sqrti, gcde_binary)
import Crypto.Number.ModArithmetic (exponantiation)
@ -187,7 +179,7 @@ index 2060f4d..61d37c0 100644
-- | returns if the number is probably prime.
-- first a list of small primes are implicitely tested for divisibility,
@@ -75,21 +68,11 @@ findPrimeFromWith rng prop !n
@@ -78,21 +71,11 @@ findPrimeFromWith rng prop !n
-- | find a prime from a starting point with no specific property.
findPrimeFrom :: CPRG g => g -> Integer -> (Integer, g)
findPrimeFrom rng n =
@ -209,7 +201,7 @@ index 2060f4d..61d37c0 100644
primalityTestMillerRabin rng tries !n
| n <= 3 = error "Miller-Rabin requires tested value to be > 3"
| even n = (False, rng)
@@ -126,7 +109,6 @@ primalityTestMillerRabin rng tries !n
@@ -129,7 +112,6 @@ primalityTestMillerRabin rng tries !n
| x2 == 1 = False
| x2 /= nm1 = loop' ws ((x2*x2) `mod` n) (r+1)
| otherwise = loop ws
@ -218,7 +210,7 @@ index 2060f4d..61d37c0 100644
{-
n < z -> witness to test
diff --git a/crypto-numbers.cabal b/crypto-numbers.cabal
index 05c00c1..8da5e2a 100644
index 9610e34..6669d78 100644
--- a/crypto-numbers.cabal
+++ b/crypto-numbers.cabal
@@ -15,7 +15,7 @@ Extra-Source-Files: Tests/*.hs