Changed time_t timestamp type to uint32_t
authorDmitry Kasatkin <dmitry.kasatkin@intel.com>
Thu, 2 Feb 2012 08:12:34 +0000 (10:12 +0200)
committerDmitry Kasatkin <dmitry.kasatkin@intel.com>
Thu, 6 Sep 2012 11:08:53 +0000 (14:08 +0300)
time_t is actually long and is different on 32 and 64 bit architectures.
Format of the signatures should not depend on the architecture and should
be the same. Changed timestamp to uint32_t like in GPG.

Signed-off-by: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
src/evmctl.c

index 04955e0..c3048af 100644 (file)
@@ -108,7 +108,7 @@ enum digest_algo {
 
 struct pubkey_hdr {
        uint8_t version;        /* key format version */
-       time_t timestamp;       /* key made, always 0 for now */
+       uint32_t timestamp;     /* key made, always 0 for now */
        uint8_t algo;
        uint8_t nmpi;
        char mpi[0];
@@ -116,7 +116,7 @@ struct pubkey_hdr {
 
 struct signature_hdr {
        uint8_t version;        /* signature format version */
-       time_t timestamp;       /* signature made */
+       uint32_t timestamp;     /* signature made */
        uint8_t algo;
        uint8_t hash;
        uint8_t keyid[8];
@@ -336,7 +336,7 @@ static int sign_hash(const unsigned char *hash, int size, const char *keyfile, u
 
        /* now create a new hash */
        hdr->version = 1;
-       time(&hdr->timestamp);
+       hdr->timestamp = time(NULL);
        hdr->algo = PUBKEY_ALGO_RSA;
        hdr->hash = DIGEST_ALGO_SHA1;