]> git.saurik.com Git - apple/security.git/blobdiff - OSX/libsecurity_filedb/lib/AtomicFile.cpp
Security-59306.80.4.tar.gz
[apple/security.git] / OSX / libsecurity_filedb / lib / AtomicFile.cpp
index 9dd9bbfdc3580061d399b1cc5b42a0cc935aa39a..6c21d12d2ab272967dd019f3802627475467881f 100644 (file)
 
 #include <security_filedb/AtomicFile.h>
 
 
 #include <security_filedb/AtomicFile.h>
 
-#include <security_utilities/devrandom.h>
 #include <CommonCrypto/CommonDigest.h>
 #include <security_cdsa_utilities/cssmerrors.h>
 #include <Security/cssm.h>
 #include <CommonCrypto/CommonDigest.h>
 #include <security_cdsa_utilities/cssmerrors.h>
 #include <Security/cssm.h>
+#include <Security/SecRandom.h>
 #include <errno.h>
 #include <fcntl.h>
 #include <limits.h>
 #include <errno.h>
 #include <fcntl.h>
 #include <limits.h>
@@ -962,7 +962,6 @@ std::string
 NetworkFileLocker::unique(mode_t mode)
 {
        static const int randomPart = 16;
 NetworkFileLocker::unique(mode_t mode)
 {
        static const int randomPart = 16;
-       DevRandomGenerator randomGen;
        std::string::size_type dirSize = mDir.size();
        std::string fullname(dirSize + randomPart + 2, '\0');
        fullname.replace(0, dirSize, mDir);
        std::string::size_type dirSize = mDir.size();
        std::string fullname(dirSize + randomPart + 2, '\0');
        fullname.replace(0, dirSize, mDir);
@@ -974,7 +973,7 @@ NetworkFileLocker::unique(mode_t mode)
        for (int retries = 0; retries < 10; ++retries)
        {
                /* Make a random filename. */
        for (int retries = 0; retries < 10; ++retries)
        {
                /* Make a random filename. */
-               randomGen.random(buf, randomPart);
+        MacOSError::check(SecRandomCopyBytes(kSecRandomDefault, randomPart, buf));
                for (int ix = 0; ix < randomPart; ++ix)
                {
                        char ch = buf[ix] & 0x3f;
                for (int ix = 0; ix < randomPart; ++ix)
                {
                        char ch = buf[ix] & 0x3f;