Author: gavin
Date: Tue Apr  2 19:33:35 2013
New Revision: 249031
URL: http://svnweb.freebsd.org/changeset/base/249031

Log:
  When r241373 was merged, one file appears to have been missed from the
  commit.  Merge it:
          Remove undefined behavior from sranddev() and
          srandomdev(). This doesn't actually work
          with any modern C compiler:
  
          In particular, both clang and modern gcc
          verisons silently elide any xor operation
          with 'junk'.
  
  No mergeinfo changes with this commit as r241475 already updated the
  mergeinfo.
  
  Approved by:  re (jpaetzel)

Modified:
  releng/8.4/lib/libc/stdlib/random.c

Modified: releng/8.4/lib/libc/stdlib/random.c
==============================================================================
--- releng/8.4/lib/libc/stdlib/random.c Tue Apr  2 19:07:11 2013        
(r249030)
+++ releng/8.4/lib/libc/stdlib/random.c Tue Apr  2 19:33:35 2013        
(r249031)
@@ -315,10 +315,9 @@ srandomdev()
 
        if (!done) {
                struct timeval tv;
-               unsigned long junk;
 
                gettimeofday(&tv, NULL);
-               srandom((getpid() << 16) ^ tv.tv_sec ^ tv.tv_usec ^ junk);
+               srandom((getpid() << 16) ^ tv.tv_sec ^ tv.tv_usec);
                return;
        }
 
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to