use unit64_t for CPUID and timestamp code

Reviewed-by: Matt Caswell <matt@openssl.org>
This commit is contained in:
Dr. Stephen Henson 2015-05-13 17:47:13 +01:00
parent c1a623c55a
commit 1c7b2c0ed5
2 changed files with 11 additions and 23 deletions

View File

@ -134,11 +134,7 @@ unsigned int *OPENSSL_ia32cap_loc(void)
# if defined(OPENSSL_CPUID_OBJ) && !defined(OPENSSL_NO_ASM) && !defined(I386_ONLY)
# define OPENSSL_CPUID_SETUP
# if defined(_WIN32)
typedef unsigned __int64 IA32CAP;
# else
typedef unsigned long long IA32CAP;
# endif
typedef uint64_t IA32CAP;
void OPENSSL_cpuid_setup(void)
{
static int trigger = 0;

View File

@ -71,22 +71,14 @@
#define n2s(c,s) ((s=(((unsigned int)(c[0]))<< 8)| \
(((unsigned int)(c[1])) )),c+=2)
#if (defined(_WIN32) || defined(_WIN64)) && !defined(__MINGW32__)
# define SCT_TIMESTAMP unsigned __int64
#elif defined(__arch64__)
# define SCT_TIMESTAMP unsigned long
#else
# define SCT_TIMESTAMP unsigned long long
#endif
#define n2l8(c,l) (l =((SCT_TIMESTAMP)(*((c)++)))<<56, \
l|=((SCT_TIMESTAMP)(*((c)++)))<<48, \
l|=((SCT_TIMESTAMP)(*((c)++)))<<40, \
l|=((SCT_TIMESTAMP)(*((c)++)))<<32, \
l|=((SCT_TIMESTAMP)(*((c)++)))<<24, \
l|=((SCT_TIMESTAMP)(*((c)++)))<<16, \
l|=((SCT_TIMESTAMP)(*((c)++)))<< 8, \
l|=((SCT_TIMESTAMP)(*((c)++))))
#define n2l8(c,l) (l =((uint64_t)(*((c)++)))<<56, \
l|=((uint64_t)(*((c)++)))<<48, \
l|=((uint64_t)(*((c)++)))<<40, \
l|=((uint64_t)(*((c)++)))<<32, \
l|=((uint64_t)(*((c)++)))<<24, \
l|=((uint64_t)(*((c)++)))<<16, \
l|=((uint64_t)(*((c)++)))<< 8, \
l|=((uint64_t)(*((c)++))))
typedef struct SCT_st {
/* The encoded SCT */
@ -99,7 +91,7 @@ typedef struct SCT_st {
unsigned char version;
unsigned char *logid;
unsigned short logidlen;
SCT_TIMESTAMP timestamp;
uint64_t timestamp;
unsigned char *ext;
unsigned short extlen;
unsigned char hash_alg;
@ -149,7 +141,7 @@ static void tls12_signature_print(BIO *out, const unsigned char hash_alg,
BIO_printf(out, "%s", OBJ_nid2ln(nid));
}
static void timestamp_print(BIO *out, SCT_TIMESTAMP timestamp)
static void timestamp_print(BIO *out, uint64_t timestamp)
{
ASN1_GENERALIZEDTIME *gen;
char genstr[20];