projects
/
openssl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
enable-ec_nistp_64_gcc_128: Fix function prototype warning [-Wstrict-prototypes]
[openssl.git]
/
crypto
/
ec
/
ecp_nistp521.c
diff --git
a/crypto/ec/ecp_nistp521.c
b/crypto/ec/ecp_nistp521.c
index 9d264f63d40dfc04131f63f7622001873ebe6c42..4e6c0f98fbc7943ef9a4a27a9f119f544d060951 100644
(file)
--- a/
crypto/ec/ecp_nistp521.c
+++ b/
crypto/ec/ecp_nistp521.c
@@
-1,5
+1,5
@@
/*
/*
- * Copyright 2011-201
6
The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2011-201
8
The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
*
* Licensed under the OpenSSL license (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@@
-40,17
+40,16
@@
NON_EMPTY_TRANSLATION_UNIT
# include <openssl/err.h>
# include "ec_lcl.h"
# include <openssl/err.h>
# include "ec_lcl.h"
-# if defined(__
GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
+# if defined(__
SIZEOF_INT128__) && __SIZEOF_INT128__==16
/* even with gcc, the typedef won't work for 32-bit platforms */
typedef __uint128_t uint128_t; /* nonstandard; implemented by gcc on 64-bit
* platforms */
# else
/* even with gcc, the typedef won't work for 32-bit platforms */
typedef __uint128_t uint128_t; /* nonstandard; implemented by gcc on 64-bit
* platforms */
# else
-# error "
Need GCC 3.1 or later to define type uint128_t
"
+# error "
Your compiler doesn't appear to support 128-bit integer types
"
# endif
typedef uint8_t u8;
typedef uint64_t u64;
# endif
typedef uint8_t u8;
typedef uint64_t u64;
-typedef int64_t s64;
/*
* The underlying field. P521 operates over GF(2^521-1). We can serialise an
/*
* The underlying field. P521 operates over GF(2^521-1). We can serialise an
@@
-867,7
+866,7
@@
static limb felem_is_zero(const felem in)
* We know that ftmp[i] < 2^63, therefore the only way that the top bit
* can be set is if is_zero was 0 before the decrement.
*/
* We know that ftmp[i] < 2^63, therefore the only way that the top bit
* can be set is if is_zero was 0 before the decrement.
*/
- is_zero =
((s64) is_zero) >> 63
;
+ is_zero =
0 - (is_zero >> 63)
;
is_p = ftmp[0] ^ kPrime[0];
is_p |= ftmp[1] ^ kPrime[1];
is_p = ftmp[0] ^ kPrime[0];
is_p |= ftmp[1] ^ kPrime[1];
@@
-880,7
+879,7
@@
static limb felem_is_zero(const felem in)
is_p |= ftmp[8] ^ kPrime[8];
is_p--;
is_p |= ftmp[8] ^ kPrime[8];
is_p--;
- is_p =
((s64) is_p) >> 63
;
+ is_p =
0 - (is_p >> 63)
;
is_zero |= is_p;
return is_zero;
is_zero |= is_p;
return is_zero;
@@
-951,7
+950,7
@@
static void felem_contract(felem out, const felem in)
is_p &= is_p << 4;
is_p &= is_p << 2;
is_p &= is_p << 1;
is_p &= is_p << 4;
is_p &= is_p << 2;
is_p &= is_p << 1;
- is_p =
((s64) is_p) >> 63
;
+ is_p =
0 - (is_p >> 63)
;
is_p = ~is_p;
/* is_p is 0 iff |out| == 2^521-1 and all ones otherwise */
is_p = ~is_p;
/* is_p is 0 iff |out| == 2^521-1 and all ones otherwise */
@@
-977,7
+976,7
@@
static void felem_contract(felem out, const felem in)
is_greater |= is_greater << 4;
is_greater |= is_greater << 2;
is_greater |= is_greater << 1;
is_greater |= is_greater << 4;
is_greater |= is_greater << 2;
is_greater |= is_greater << 1;
- is_greater =
((s64) is_greater) >> 63
;
+ is_greater =
0 - (is_greater >> 63)
;
out[0] -= kPrime[0] & is_greater;
out[1] -= kPrime[1] & is_greater;
out[0] -= kPrime[0] & is_greater;
out[1] -= kPrime[1] & is_greater;
@@
-1659,7
+1658,9
@@
const EC_METHOD *EC_GFp_nistp521_method(void)
ec_key_simple_generate_public_key,
0, /* keycopy */
0, /* keyfinish */
ec_key_simple_generate_public_key,
0, /* keycopy */
0, /* keyfinish */
- ecdh_simple_compute_key
+ ecdh_simple_compute_key,
+ 0, /* field_inverse_mod_ord */
+ 0 /* blind_coordinates */
};
return &ret;
};
return &ret;
@@
-1670,7
+1671,7
@@
const EC_METHOD *EC_GFp_nistp521_method(void)
* FUNCTIONS TO MANAGE PRECOMPUTATION
*/
* FUNCTIONS TO MANAGE PRECOMPUTATION
*/
-static NISTP521_PRE_COMP *nistp521_pre_comp_new()
+static NISTP521_PRE_COMP *nistp521_pre_comp_new(
void
)
{
NISTP521_PRE_COMP *ret = OPENSSL_zalloc(sizeof(*ret));
{
NISTP521_PRE_COMP *ret = OPENSSL_zalloc(sizeof(*ret));