From e35b2bad1a10a8eef9c1ffb563847b9c9df0cfce Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Fri, 25 Dec 2020 11:35:59 -0500 Subject: [PATCH] remove uint128 requirement from patch 978f869b99 (CFE) Used char[16] instead. Reported-by: buildfarm member florican Backpatch-through: master --- src/common/kmgr_utils.c | 6 +++--- src/include/common/kmgr_utils.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/common/kmgr_utils.c b/src/common/kmgr_utils.c index d031976f50..db8572c8ea 100644 --- a/src/common/kmgr_utils.c +++ b/src/common/kmgr_utils.c @@ -81,7 +81,7 @@ kmgr_wrap_key(PgCipherCtx *ctx, CryptoKey *in, CryptoKey *out) &enclen, /* Resulting length, must match input for us */ iv, /* Generated IV from above */ sizeof(iv), /* Length of the IV */ - (unsigned char *) &out->tag, /* Resulting tag */ + out->tag, /* Resulting tag */ sizeof(out->tag))) /* Length of our tag */ return false; @@ -106,7 +106,7 @@ kmgr_unwrap_key(PgCipherCtx *ctx, CryptoKey *in, CryptoKey *out) out->pgkey_id = in->pgkey_id; out->counter = in->counter; - out->tag = in->tag; + memcpy(out->tag, in->tag, sizeof(in->tag)); /* Construct the IV we are going to use, see kmgr_utils.h */ memcpy(iv, &out->pgkey_id, sizeof(out->pgkey_id)); @@ -120,7 +120,7 @@ kmgr_unwrap_key(PgCipherCtx *ctx, CryptoKey *in, CryptoKey *out) &declen, /* Length of plaintext */ iv, /* IV we constructed above */ sizeof(iv), /* Size of our IV */ - (unsigned char *) &in->tag, /* Tag which will be verified */ + in->tag, /* Tag which will be verified */ sizeof(in->tag))) /* Size of our tag */ return false; diff --git a/src/include/common/kmgr_utils.h b/src/include/common/kmgr_utils.h index 23124a7fc6..ce26df56fb 100644 --- a/src/include/common/kmgr_utils.h +++ b/src/include/common/kmgr_utils.h @@ -82,7 +82,7 @@ typedef struct CryptoKey { uint64 pgkey_id; /* Upper half of IV */ uint64 counter; /* Lower half of IV */ - uint128 tag; /* GCM tag */ + unsigned char tag[16]; /* GCM tag */ unsigned char encrypted_key[sizeof(int) + KMGR_MAX_KEY_LEN_BYTES]; } CryptoKey;