size_t RNG_GetNoise(void *buf, size_t maxbytes) { struct timeval tv; int n = 0; int c; n = GetHighResClock(buf, maxbytes); maxbytes -= n; (void)gettimeofday(&tv, 0); c = CopyLowBits((char*)buf+n, maxbytes, &tv.tv_usec, sizeof(tv.tv_usec)); n += c; maxbytes -= c; c = CopyLowBits((char*)buf+n, maxbytes, &tv.tv_sec, sizeof(tv.tv_sec)); n += c; return n; }
size_t RNG_GetNoise(void *buf, size_t maxbytes) { struct timeval tv; int n = 0; int c; n = GetHighResClock(buf, maxbytes); maxbytes -= n; #if defined(__sun) && (defined(_svr4) || defined(SVR4)) || defined(sony) (void)gettimeofday(&tv); #else (void)gettimeofday(&tv, 0); #endif c = CopyLowBits((char*)buf+n, maxbytes, &tv.tv_usec, sizeof(tv.tv_usec)); n += c; maxbytes -= c; c = CopyLowBits((char*)buf+n, maxbytes, &tv.tv_sec, sizeof(tv.tv_sec)); n += c; return n; }