CVSROOT:        /cvs
Module name:    src
Changes by:     js...@cvs.openbsd.org   2014/10/18 10:13:16

Modified files:
        lib/libssl/src/ssl: d1_both.c d1_clnt.c d1_enc.c d1_pkt.c 
                            d1_srvr.c s23_clnt.c s23_srvr.c s3_both.c 
                            s3_clnt.c s3_pkt.c s3_srvr.c ssl_lib.c 
                            ssl_sess.c t1_clnt.c t1_enc.c t1_lib.c 
                            t1_srvr.c 

Log message:
Use arc4random_buf() instead of RAND_bytes() or RAND_pseudo_bytes().

arc4random provides high quality pseudo-random numbers, hence there is no
need to differentiate between "strong" and "pseudo". Furthermore, the
arc4random_buf() function is guaranteed to succeed, which avoids the need
to check for and handle failure, simplifying the code.

It is worth noting that a number of the replaced RAND_bytes() and
RAND_pseudo_bytes() calls were missing return value checks and these
functions can fail for a number of reasons (at least in OpenSSL -
thankfully they were converted to wrappers around arc4random_buf() some
time ago in LibreSSL).

ok beck@ deraadt@ miod@

Reply via email to