postgres.git / summary / log / commit / refs

commit    a0634241bcaf71886eeaf1cb49d43a5426bfa4de
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Sat Sep 03 20:17:52 2011 +0000
First released in: 9.2.0, 8.2.22, 8.3.16, 8.4.9, 9.0.5, 9.1.0

    Fix typo in pg_srand48 (srand48 in older branches).
    
    ">" should be ">>".  This typo results in failure to use all of the bits
    of the provided seed.
    
    This might rise to the level of a security bug if we were relying on
    srand48 for any security-critical purposes, but we are not --- in fact,
    it's not used at all unless the platform lacks srandom(), which is
    improbable.  Even on such a platform the exposure seems minimal.
    
    Reported privately by Andres Freund.


src/port/rand.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/port/rand.c b/src/port/rand.c index 8559ef8c175..5982ef9cb72 100644 --- a/src/port/rand.c +++ b/src/port/rand.c @@ -74,7 +74,7 @@ srand48(long seed) { _rand48_seed[0] = RAND48_SEED_0; _rand48_seed[1] = (unsigned short) seed; - _rand48_seed[2] = (unsigned short) (seed > 16); + _rand48_seed[2] = (unsigned short) (seed >> 16); _rand48_mult[0] = RAND48_MULT_0; _rand48_mult[1] = RAND48_MULT_1; _rand48_mult[2] = RAND48_MULT_2; [parent: 007e7acab2ea]