aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/libpq/auth.c13
-rw-r--r--src/backend/postmaster/postmaster.c8
2 files changed, 6 insertions, 15 deletions
diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c
index 2b1841fb9bb..9b79dc517da 100644
--- a/src/backend/libpq/auth.c
+++ b/src/backend/libpq/auth.c
@@ -194,9 +194,6 @@ static int pg_SSPI_make_upn(char *accountname,
* RADIUS Authentication
*----------------------------------------------------------------
*/
-#ifdef USE_OPENSSL
-#include <openssl/rand.h>
-#endif
static int CheckRADIUSAuth(Port *port);
@@ -718,7 +715,7 @@ CheckMD5Auth(Port *port, char **logdetail)
if (!pg_backend_random(md5Salt, 4))
{
ereport(LOG,
- (errmsg("could not acquire random number for MD5 salt.")));
+ (errmsg("could not generate random MD5 salt.")));
return STATUS_ERROR;
}
@@ -2550,18 +2547,12 @@ CheckRADIUSAuth(Port *port)
/* Construct RADIUS packet */
packet->code = RADIUS_ACCESS_REQUEST;
packet->length = RADIUS_HEADER_LENGTH;
-#ifdef USE_OPENSSL
- if (RAND_bytes(packet->vector, RADIUS_VECTOR_LENGTH) != 1)
+ if (!pg_backend_random((char *) packet->vector, RADIUS_VECTOR_LENGTH))
{
ereport(LOG,
(errmsg("could not generate random encryption vector")));
return STATUS_ERROR;
}
-#else
- for (i = 0; i < RADIUS_VECTOR_LENGTH; i++)
- /* Use a lower strengh random number of OpenSSL is not available */
- packet->vector[i] = random() % 255;
-#endif
packet->id = packet->vector[0];
radius_add_attribute(packet, RADIUS_SERVICE_TYPE, (unsigned char *) &service, sizeof(service));
radius_add_attribute(packet, RADIUS_USER_NAME, (unsigned char *) port->user_name, strlen(port->user_name));
diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c
index 09884b31325..16dc075a3a1 100644
--- a/src/backend/postmaster/postmaster.c
+++ b/src/backend/postmaster/postmaster.c
@@ -3903,8 +3903,8 @@ BackendStartup(Port *port)
{
free(bn);
ereport(LOG,
- (errcode(ERRCODE_OUT_OF_MEMORY),
- errmsg("could not acquire random number")));
+ (errcode(ERRCODE_INTERNAL_ERROR),
+ errmsg("could not generate random cancel key")));
return STATUS_ERROR;
}
@@ -5288,7 +5288,7 @@ StartAutovacuumWorker(void)
{
ereport(LOG,
(errcode(ERRCODE_INTERNAL_ERROR),
- errmsg("could not acquire random number")));
+ errmsg("could not generate random cancel key")));
return;
}
@@ -5594,7 +5594,7 @@ assign_backendlist_entry(RegisteredBgWorker *rw)
{
ereport(LOG,
(errcode(ERRCODE_INTERNAL_ERROR),
- errmsg("could not acquire random number")));
+ errmsg("could not generate random cancel key")));
rw->rw_crashed_at = GetCurrentTimestamp();
return false;