mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
Remove configure switch --disable-strong-random
This removes a portion of infrastructure introduced by fe0a0b5
to allow
compilation of Postgres in environments where no strong random source is
available, meaning that there is no linking to OpenSSL and no
/dev/urandom (Windows having its own CryptoAPI). No systems shipped
this century lack /dev/urandom, and the buildfarm is actually not
testing this switch at all, so just remove it. This simplifies
particularly some backend code which included a fallback implementation
using shared memory, and removes a set of alternate regression output
files from pgcrypto.
Author: Michael Paquier
Reviewed-by: Tom Lane
Discussion: https://postgr.es/m/20181230063219.GG608@paquier.xyz
This commit is contained in:
@ -37,8 +37,6 @@
|
||||
#include "px.h"
|
||||
#include "pgp.h"
|
||||
|
||||
#include "utils/backend_random.h"
|
||||
|
||||
|
||||
#define MDC_DIGEST_LEN 20
|
||||
#define STREAM_ID 0xE0
|
||||
@ -481,13 +479,12 @@ init_encdata_packet(PushFilter **pf_res, PGP_Context *ctx, PushFilter *dst)
|
||||
static int
|
||||
write_prefix(PGP_Context *ctx, PushFilter *dst)
|
||||
{
|
||||
#ifdef HAVE_STRONG_RANDOM
|
||||
uint8 prefix[PGP_MAX_BLOCK + 2];
|
||||
int res,
|
||||
bs;
|
||||
|
||||
bs = pgp_get_cipher_block_size(ctx->cipher_algo);
|
||||
if (!pg_backend_random((char *) prefix, bs))
|
||||
if (!pg_strong_random(prefix, bs))
|
||||
return PXE_NO_RANDOM;
|
||||
|
||||
prefix[bs + 0] = prefix[bs - 2];
|
||||
@ -496,9 +493,6 @@ write_prefix(PGP_Context *ctx, PushFilter *dst)
|
||||
res = pushf_write(dst, prefix, bs + 2);
|
||||
px_memset(prefix, 0, bs + 2);
|
||||
return res < 0 ? res : 0;
|
||||
#else
|
||||
return PXE_NO_RANDOM;
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
@ -587,13 +581,9 @@ init_sess_key(PGP_Context *ctx)
|
||||
{
|
||||
if (ctx->use_sess_key || ctx->pub_key)
|
||||
{
|
||||
#ifdef HAVE_STRONG_RANDOM
|
||||
ctx->sess_key_len = pgp_get_cipher_key_size(ctx->cipher_algo);
|
||||
if (!pg_strong_random((char *) ctx->sess_key, ctx->sess_key_len))
|
||||
if (!pg_strong_random(ctx->sess_key, ctx->sess_key_len))
|
||||
return PXE_NO_RANDOM;
|
||||
#else
|
||||
return PXE_NO_RANDOM;
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Reference in New Issue
Block a user