mirror of
https://github.com/postgres/postgres.git
synced 2025-10-13 18:28:01 +03:00
Make some use of anonymous unions [pgcrypto]
Make some use of anonymous unions, which are allowed as of C11, as examples and encouragement for future code, and to test compilers. This commit changes some structures in pgcrypto. Reviewed-by: Chao Li <li.evan.chao@gmail.com> Discussion: https://www.postgresql.org/message-id/flat/f00a9968-388e-4f8c-b5ef-5102e962d997%40eisentraut.org
This commit is contained in:
@@ -98,7 +98,7 @@ free_openssl_digest(OSSLDigest *digest)
|
||||
static unsigned
|
||||
digest_result_size(PX_MD *h)
|
||||
{
|
||||
OSSLDigest *digest = (OSSLDigest *) h->p.ptr;
|
||||
OSSLDigest *digest = (OSSLDigest *) h->ptr;
|
||||
int result = EVP_MD_CTX_size(digest->ctx);
|
||||
|
||||
if (result < 0)
|
||||
@@ -110,7 +110,7 @@ digest_result_size(PX_MD *h)
|
||||
static unsigned
|
||||
digest_block_size(PX_MD *h)
|
||||
{
|
||||
OSSLDigest *digest = (OSSLDigest *) h->p.ptr;
|
||||
OSSLDigest *digest = (OSSLDigest *) h->ptr;
|
||||
int result = EVP_MD_CTX_block_size(digest->ctx);
|
||||
|
||||
if (result < 0)
|
||||
@@ -122,7 +122,7 @@ digest_block_size(PX_MD *h)
|
||||
static void
|
||||
digest_reset(PX_MD *h)
|
||||
{
|
||||
OSSLDigest *digest = (OSSLDigest *) h->p.ptr;
|
||||
OSSLDigest *digest = (OSSLDigest *) h->ptr;
|
||||
|
||||
if (!EVP_DigestInit_ex(digest->ctx, digest->algo, NULL))
|
||||
elog(ERROR, "EVP_DigestInit_ex() failed");
|
||||
@@ -131,7 +131,7 @@ digest_reset(PX_MD *h)
|
||||
static void
|
||||
digest_update(PX_MD *h, const uint8 *data, unsigned dlen)
|
||||
{
|
||||
OSSLDigest *digest = (OSSLDigest *) h->p.ptr;
|
||||
OSSLDigest *digest = (OSSLDigest *) h->ptr;
|
||||
|
||||
if (!EVP_DigestUpdate(digest->ctx, data, dlen))
|
||||
elog(ERROR, "EVP_DigestUpdate() failed");
|
||||
@@ -140,7 +140,7 @@ digest_update(PX_MD *h, const uint8 *data, unsigned dlen)
|
||||
static void
|
||||
digest_finish(PX_MD *h, uint8 *dst)
|
||||
{
|
||||
OSSLDigest *digest = (OSSLDigest *) h->p.ptr;
|
||||
OSSLDigest *digest = (OSSLDigest *) h->ptr;
|
||||
|
||||
if (!EVP_DigestFinal_ex(digest->ctx, dst, NULL))
|
||||
elog(ERROR, "EVP_DigestFinal_ex() failed");
|
||||
@@ -149,7 +149,7 @@ digest_finish(PX_MD *h, uint8 *dst)
|
||||
static void
|
||||
digest_free(PX_MD *h)
|
||||
{
|
||||
OSSLDigest *digest = (OSSLDigest *) h->p.ptr;
|
||||
OSSLDigest *digest = (OSSLDigest *) h->ptr;
|
||||
|
||||
free_openssl_digest(digest);
|
||||
pfree(h);
|
||||
@@ -204,7 +204,7 @@ px_find_digest(const char *name, PX_MD **res)
|
||||
h->update = digest_update;
|
||||
h->finish = digest_finish;
|
||||
h->free = digest_free;
|
||||
h->p.ptr = digest;
|
||||
h->ptr = digest;
|
||||
|
||||
*res = h;
|
||||
return 0;
|
||||
|
@@ -117,7 +117,7 @@ struct px_digest
|
||||
{
|
||||
unsigned code;
|
||||
void *ptr;
|
||||
} p;
|
||||
};
|
||||
};
|
||||
|
||||
struct px_alias
|
||||
|
@@ -105,22 +105,22 @@ pg_cryptohash_init(pg_cryptohash_ctx *ctx)
|
||||
switch (ctx->type)
|
||||
{
|
||||
case PG_MD5:
|
||||
pg_md5_init(&ctx->data.md5);
|
||||
pg_md5_init(&ctx->md5);
|
||||
break;
|
||||
case PG_SHA1:
|
||||
pg_sha1_init(&ctx->data.sha1);
|
||||
pg_sha1_init(&ctx->sha1);
|
||||
break;
|
||||
case PG_SHA224:
|
||||
pg_sha224_init(&ctx->data.sha224);
|
||||
pg_sha224_init(&ctx->sha224);
|
||||
break;
|
||||
case PG_SHA256:
|
||||
pg_sha256_init(&ctx->data.sha256);
|
||||
pg_sha256_init(&ctx->sha256);
|
||||
break;
|
||||
case PG_SHA384:
|
||||
pg_sha384_init(&ctx->data.sha384);
|
||||
pg_sha384_init(&ctx->sha384);
|
||||
break;
|
||||
case PG_SHA512:
|
||||
pg_sha512_init(&ctx->data.sha512);
|
||||
pg_sha512_init(&ctx->sha512);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -141,22 +141,22 @@ pg_cryptohash_update(pg_cryptohash_ctx *ctx, const uint8 *data, size_t len)
|
||||
switch (ctx->type)
|
||||
{
|
||||
case PG_MD5:
|
||||
pg_md5_update(&ctx->data.md5, data, len);
|
||||
pg_md5_update(&ctx->md5, data, len);
|
||||
break;
|
||||
case PG_SHA1:
|
||||
pg_sha1_update(&ctx->data.sha1, data, len);
|
||||
pg_sha1_update(&ctx->sha1, data, len);
|
||||
break;
|
||||
case PG_SHA224:
|
||||
pg_sha224_update(&ctx->data.sha224, data, len);
|
||||
pg_sha224_update(&ctx->sha224, data, len);
|
||||
break;
|
||||
case PG_SHA256:
|
||||
pg_sha256_update(&ctx->data.sha256, data, len);
|
||||
pg_sha256_update(&ctx->sha256, data, len);
|
||||
break;
|
||||
case PG_SHA384:
|
||||
pg_sha384_update(&ctx->data.sha384, data, len);
|
||||
pg_sha384_update(&ctx->sha384, data, len);
|
||||
break;
|
||||
case PG_SHA512:
|
||||
pg_sha512_update(&ctx->data.sha512, data, len);
|
||||
pg_sha512_update(&ctx->sha512, data, len);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -182,7 +182,7 @@ pg_cryptohash_final(pg_cryptohash_ctx *ctx, uint8 *dest, size_t len)
|
||||
ctx->error = PG_CRYPTOHASH_ERROR_DEST_LEN;
|
||||
return -1;
|
||||
}
|
||||
pg_md5_final(&ctx->data.md5, dest);
|
||||
pg_md5_final(&ctx->md5, dest);
|
||||
break;
|
||||
case PG_SHA1:
|
||||
if (len < SHA1_DIGEST_LENGTH)
|
||||
@@ -190,7 +190,7 @@ pg_cryptohash_final(pg_cryptohash_ctx *ctx, uint8 *dest, size_t len)
|
||||
ctx->error = PG_CRYPTOHASH_ERROR_DEST_LEN;
|
||||
return -1;
|
||||
}
|
||||
pg_sha1_final(&ctx->data.sha1, dest);
|
||||
pg_sha1_final(&ctx->sha1, dest);
|
||||
break;
|
||||
case PG_SHA224:
|
||||
if (len < PG_SHA224_DIGEST_LENGTH)
|
||||
@@ -198,7 +198,7 @@ pg_cryptohash_final(pg_cryptohash_ctx *ctx, uint8 *dest, size_t len)
|
||||
ctx->error = PG_CRYPTOHASH_ERROR_DEST_LEN;
|
||||
return -1;
|
||||
}
|
||||
pg_sha224_final(&ctx->data.sha224, dest);
|
||||
pg_sha224_final(&ctx->sha224, dest);
|
||||
break;
|
||||
case PG_SHA256:
|
||||
if (len < PG_SHA256_DIGEST_LENGTH)
|
||||
@@ -206,7 +206,7 @@ pg_cryptohash_final(pg_cryptohash_ctx *ctx, uint8 *dest, size_t len)
|
||||
ctx->error = PG_CRYPTOHASH_ERROR_DEST_LEN;
|
||||
return -1;
|
||||
}
|
||||
pg_sha256_final(&ctx->data.sha256, dest);
|
||||
pg_sha256_final(&ctx->sha256, dest);
|
||||
break;
|
||||
case PG_SHA384:
|
||||
if (len < PG_SHA384_DIGEST_LENGTH)
|
||||
@@ -214,7 +214,7 @@ pg_cryptohash_final(pg_cryptohash_ctx *ctx, uint8 *dest, size_t len)
|
||||
ctx->error = PG_CRYPTOHASH_ERROR_DEST_LEN;
|
||||
return -1;
|
||||
}
|
||||
pg_sha384_final(&ctx->data.sha384, dest);
|
||||
pg_sha384_final(&ctx->sha384, dest);
|
||||
break;
|
||||
case PG_SHA512:
|
||||
if (len < PG_SHA512_DIGEST_LENGTH)
|
||||
@@ -222,7 +222,7 @@ pg_cryptohash_final(pg_cryptohash_ctx *ctx, uint8 *dest, size_t len)
|
||||
ctx->error = PG_CRYPTOHASH_ERROR_DEST_LEN;
|
||||
return -1;
|
||||
}
|
||||
pg_sha512_final(&ctx->data.sha512, dest);
|
||||
pg_sha512_final(&ctx->sha512, dest);
|
||||
break;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user