X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/fa7225c82381bac4432a6edf16f53b5370238d85..7e6b461318c8a779d91381531435a68ee4e8b6ed:/OSX/libsecurity_cryptkit/lib/platform.c diff --git a/OSX/libsecurity_cryptkit/lib/platform.c b/OSX/libsecurity_cryptkit/lib/platform.c index b34746e9..371d98f1 100644 --- a/OSX/libsecurity_cryptkit/lib/platform.c +++ b/OSX/libsecurity_cryptkit/lib/platform.c @@ -19,93 +19,14 @@ #include "platform.h" #include #include "feeDebug.h" -#ifdef NeXT - -/* - * OpenStep.... - */ -void CKRaise(const char *reason) { - #if FEE_DEBUG - printf("CryptKit fatal error: %s\n", reason); - #endif - abort(); -} #import "feeDebug.h" -#if !defined(NeXT_PDO) && FEE_DEBUG - -/* - * Mach, private build. use quick microsecond-accurate system clock. - */ - -#include - -unsigned createRandomSeed() -{ - struct tsval tsp; - - (void)kern_timestamp(&tsp); - return tsp.low_val; -} - -#else - -/* - * OpenStep, normal case. - */ -#include -#include - -extern int getpid(); - -unsigned createRandomSeed(void) -{ - time_t curTime; - unsigned thisPid; - - time(&curTime); - thisPid = (unsigned)getpid(); - - return (unsigned)curTime ^ (unsigned)thisPid; -} - -#endif /* FEE_DEBUG */ - -#elif WIN32 - -/* - * OpenStep on Windows. - */ -#include /* for _getpid() */ - -void CKRaise(const char *reason) { - #if FEE_DEBUG - printf("CryptKit fatal error: %s\n", reason); - #endif - abort(); -} - -extern void time(unsigned *tp); - -unsigned createRandomSeed() -{ - unsigned curTime; - unsigned thisPid; - - time(&curTime); - thisPid = _getpid(); - return (unsigned)curTime ^ (unsigned)thisPid; -} - - -#elif __MAC_BUILD__ - +#if __MAC_BUILD__ /* * Macintosh, all flavors. */ #include -#include #include void CKRaise(const char *reason) { @@ -121,82 +42,6 @@ void CKRaise(const char *reason) { abort(); } -/* for X, this isn't used except for testing when SecurityServer when - * Yarrow is not running. So let's strip it down so we don't have - * to link against CarbonCore. - */ -#define BARE_BONES_SEED 1 -#if BARE_BONES_SEED - -#include - -extern int getpid(); - -unsigned createRandomSeed() -{ - time_t curTime; - unsigned thisPid; - - time(&curTime); - thisPid = (unsigned)getpid(); - - return (unsigned)curTime ^ (unsigned)thisPid; -} - -#else /* BARE_BONES_SEED */ - -#include -#include - -// this is mighty pitiful anyway... -unsigned createRandomSeed() -{ - UnsignedWide curTime; - //unsigned ticks; /* use 16 bits */ - unsigned rtnHi; - unsigned rtnLo; - - /* FIXME - need a way to distinguish OS9x from Carbon. Carbon - * doesn't have LMGetTicks(). */ - - Microseconds(&curTime); /* low 16 bits are pretty good */ - - // Carbon hack - // rtnHi = LMGetTicks(); - rtnHi = 0x5a5aa5a5; - rtnLo = curTime.lo & 0xffff; - return (rtnHi ^ rtnLo); -} -#endif /* BARE_BONES_SEED */ - -#elif unix - -/* try for generic UNIX */ - -void CKRaise(const char *reason) { - #if FEE_DEBUG - printf("CryptKit fatal error: %s\n", reason); - #endif - abort(); -} - -#include -#include - -extern int getpid(); - -unsigned createRandomSeed() -{ - time_t curTime; - unsigned thisPid; - - time(&curTime); - thisPid = (unsigned)getpid(); - - return (unsigned)curTime ^ (unsigned)thisPid; -} - - #else #error platform-specific work needed in security_cryptkit/platform.c