Ignore:
Timestamp:
Feb 9, 2011, 3:11:56 PM (14 years ago)
Author:
[email protected]
Message:

2011-02-09 Adam Barth <[email protected]>

Reviewed by Eric Seidel.

Add WTF::cryptographicallyRandomNumber
https://bugs.webkit.org/show_bug.cgi?id=54083

Introduce a cryptographically strong random number generator to WTF.
The random number generator is based on arc4random as found in:

http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libc/crypt/arc4random.c?rev=1.22

I've changed to source to WebKit style and abstracted the operating
system interaction to OSRandomSource. We'll use this functionality to
expose a cryptographically strong random number generator to
JavaScript.

  • Android.mk:
  • Android.v8.wtf.mk:
  • GNUmakefile.am:
  • JavaScriptCore.gypi:
  • JavaScriptCore.vcproj/WTF/WTF.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • config.h:
  • wtf/CMakeLists.txt:
  • wtf/CryptographicallyRandomNumber.cpp: Added. (WTF::initMutexIfNeeded): (WTF::init): (WTF::addRandomData): (WTF::stir): (WTF::stirIfNeeded): (WTF::getByte): (WTF::getWord): (WTF::cryptographicallyRandomNumber): (WTF::cryptographicallyRandomValues):
  • wtf/CryptographicallyRandomNumber.h: Added.
  • wtf/OSRandomSource.cpp: Added. (WTF::randomValuesFromOS):
  • wtf/OSRandomSource.h: Added.
  • wtf/wtf.pri:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/Android.mk

    r77391 r78149  
    162162        wtf/Assertions.cpp \
    163163        wtf/ByteArray.cpp \
     164        wtf/CryptographicallyRandomNumber.cpp \
    164165        wtf/CurrentTime.cpp \
    165166        wtf/DateMath.cpp \
     
    168169        wtf/HashTable.cpp \
    169170        wtf/MainThread.cpp \
     171        wtf/OSRandomSource.cpp \
    170172        wtf/PageAllocationAligned.cpp\
    171173        wtf/PageBlock.cpp\
    172174        wtf/RandomNumber.cpp \
    173175        wtf/RefCountedLeakCounter.cpp \
    174     wtf/StackBounds.cpp \
     176        wtf/StackBounds.cpp \
    175177        wtf/TCSystemAlloc.cpp \
    176178        wtf/ThreadIdentifierDataPthreads.cpp \
Note: See TracChangeset for help on using the changeset viewer.