Lines Matching refs:hasher

65 void RandAddSeedPerfmon(CSHA512& hasher)  in RandAddSeedPerfmon()  argument
91 hasher.Write(vData.data(), nSize); in RandAddSeedPerfmon()
110 CSHA512& operator<<(CSHA512& hasher, const T& data) { in operator <<() argument
115 hasher.Write((const unsigned char*)&data, sizeof(data)); in operator <<()
116 return hasher; in operator <<()
120 void AddSockaddr(CSHA512& hasher, const struct sockaddr *addr) in AddSockaddr() argument
125 hasher.Write((const unsigned char*)addr, sizeof(sockaddr_in)); in AddSockaddr()
128 hasher.Write((const unsigned char*)addr, sizeof(sockaddr_in6)); in AddSockaddr()
131 hasher.Write((const unsigned char*)&addr->sa_family, sizeof(addr->sa_family)); in AddSockaddr()
135 void AddFile(CSHA512& hasher, const char *path) in AddFile() argument
143 hasher.Write((const unsigned char*)&f, sizeof(f)); in AddFile()
144 if (fstat(f, &sb) == 0) hasher << sb; in AddFile()
147 if (n > 0) hasher.Write(fbuf, n); in AddFile()
155 void AddPath(CSHA512& hasher, const char *path) in AddPath() argument
159 hasher.Write((const unsigned char*)path, strlen(path) + 1); in AddPath()
160 hasher << sb; in AddPath()
167 void AddSysctl(CSHA512& hasher) in AddSysctl() argument
174 hasher << sizeof(CTL); in AddSysctl()
175 hasher.Write((const unsigned char*)CTL, sizeof(CTL)); in AddSysctl()
177 hasher << siz; in AddSysctl()
178 hasher.Write(buffer, siz); in AddSysctl()
184 void inline AddCPUID(CSHA512& hasher, uint32_t leaf, uint32_t subleaf, uint32_t& ax, uint32_t& bx, … in AddCPUID() argument
187 hasher << leaf << subleaf << ax << bx << cx << dx; in AddCPUID()
190 void AddAllCPUID(CSHA512& hasher) in AddAllCPUID() argument
194 AddCPUID(hasher, 0, 0, ax, bx, cx, dx); // Returns max leaf in ax in AddAllCPUID()
199 AddCPUID(hasher, leaf, subleaf, ax, bx, cx, dx); in AddAllCPUID()
217 AddCPUID(hasher, 0x80000000, 0, ax, bx, cx, dx); // Returns max extended leaf in ax in AddAllCPUID()
220 AddCPUID(hasher, leaf, 0, ax, bx, cx, dx); in AddAllCPUID()
226 void RandAddDynamicEnv(CSHA512& hasher) in RandAddDynamicEnv() argument
228 RandAddSeedPerfmon(hasher); in RandAddDynamicEnv()
234 hasher << ftime; in RandAddDynamicEnv()
239 hasher << ts; in RandAddDynamicEnv()
243 hasher << ts; in RandAddDynamicEnv()
247 hasher << ts; in RandAddDynamicEnv()
252 hasher << tv; in RandAddDynamicEnv()
255 hasher << std::chrono::system_clock::now().time_since_epoch().count(); in RandAddDynamicEnv()
256 hasher << std::chrono::steady_clock::now().time_since_epoch().count(); in RandAddDynamicEnv()
257 hasher << std::chrono::high_resolution_clock::now().time_since_epoch().count(); in RandAddDynamicEnv()
262 if (getrusage(RUSAGE_SELF, &usage) == 0) hasher << usage; in RandAddDynamicEnv()
266 AddFile(hasher, "/proc/diskstats"); in RandAddDynamicEnv()
267 AddFile(hasher, "/proc/vmstat"); in RandAddDynamicEnv()
268 AddFile(hasher, "/proc/schedstat"); in RandAddDynamicEnv()
269 AddFile(hasher, "/proc/zoneinfo"); in RandAddDynamicEnv()
270 AddFile(hasher, "/proc/meminfo"); in RandAddDynamicEnv()
271 AddFile(hasher, "/proc/softirqs"); in RandAddDynamicEnv()
272 AddFile(hasher, "/proc/stat"); in RandAddDynamicEnv()
273 AddFile(hasher, "/proc/self/schedstat"); in RandAddDynamicEnv()
274 AddFile(hasher, "/proc/self/status"); in RandAddDynamicEnv()
280 AddSysctl<CTL_KERN, KERN_PROC, KERN_PROC_ALL>(hasher); in RandAddDynamicEnv()
285 AddSysctl<CTL_HW, HW_DISKSTATS>(hasher); in RandAddDynamicEnv()
290 AddSysctl<CTL_VM, VM_LOADAVG>(hasher); in RandAddDynamicEnv()
293 AddSysctl<CTL_VM, VM_TOTAL>(hasher); in RandAddDynamicEnv()
296 AddSysctl<CTL_VM, VM_METER>(hasher); in RandAddDynamicEnv()
303 hasher << &addr << addr; in RandAddDynamicEnv()
307 void RandAddStaticEnv(CSHA512& hasher) in RandAddStaticEnv() argument
310 hasher << (CHAR_MIN < 0) << sizeof(void*) << sizeof(long) << sizeof(int); in RandAddStaticEnv()
312 hasher << __GNUC__ << __GNUC_MINOR__ << __GNUC_PATCHLEVEL__; in RandAddStaticEnv()
315 hasher << _MSC_VER; in RandAddStaticEnv()
317 hasher << __cplusplus; in RandAddStaticEnv()
319 hasher << _XOPEN_VERSION; in RandAddStaticEnv()
323 hasher.Write((const unsigned char*)COMPILER_VERSION, strlen(COMPILER_VERSION) + 1); in RandAddStaticEnv()
327 hasher << CLIENT_VERSION; in RandAddStaticEnv()
332 hasher << getauxval(AT_HWCAP); in RandAddStaticEnv()
335 hasher << getauxval(AT_HWCAP2); in RandAddStaticEnv()
339 if (random_aux) hasher.Write(random_aux, 16); in RandAddStaticEnv()
343 if (platform_str) hasher.Write((const unsigned char*)platform_str, strlen(platform_str) + 1); in RandAddStaticEnv()
347 if (exec_str) hasher.Write((const unsigned char*)exec_str, strlen(exec_str) + 1); in RandAddStaticEnv()
352 AddAllCPUID(hasher); in RandAddStaticEnv()
356 hasher << &hasher << &RandAddStaticEnv << &malloc << &errno << &environ; in RandAddStaticEnv()
361 hasher.Write((const unsigned char*)hname, strnlen(hname, 256)); in RandAddStaticEnv()
370 hasher.Write((const unsigned char*)&ifit, sizeof(ifit)); in RandAddStaticEnv()
371 hasher.Write((const unsigned char*)ifit->ifa_name, strlen(ifit->ifa_name) + 1); in RandAddStaticEnv()
372 hasher.Write((const unsigned char*)&ifit->ifa_flags, sizeof(ifit->ifa_flags)); in RandAddStaticEnv()
373 AddSockaddr(hasher, ifit->ifa_addr); in RandAddStaticEnv()
374 AddSockaddr(hasher, ifit->ifa_netmask); in RandAddStaticEnv()
375 AddSockaddr(hasher, ifit->ifa_dstaddr); in RandAddStaticEnv()
385 hasher.Write((const unsigned char*)&name.sysname, strlen(name.sysname) + 1); in RandAddStaticEnv()
386 hasher.Write((const unsigned char*)&name.nodename, strlen(name.nodename) + 1); in RandAddStaticEnv()
387 hasher.Write((const unsigned char*)&name.release, strlen(name.release) + 1); in RandAddStaticEnv()
388 hasher.Write((const unsigned char*)&name.version, strlen(name.version) + 1); in RandAddStaticEnv()
389 hasher.Write((const unsigned char*)&name.machine, strlen(name.machine) + 1); in RandAddStaticEnv()
393 AddPath(hasher, "/"); in RandAddStaticEnv()
394 AddPath(hasher, "."); in RandAddStaticEnv()
395 AddPath(hasher, "/tmp"); in RandAddStaticEnv()
396 AddPath(hasher, "/home"); in RandAddStaticEnv()
397 AddPath(hasher, "/proc"); in RandAddStaticEnv()
399 AddFile(hasher, "/proc/cmdline"); in RandAddStaticEnv()
400 AddFile(hasher, "/proc/cpuinfo"); in RandAddStaticEnv()
401 AddFile(hasher, "/proc/version"); in RandAddStaticEnv()
403 AddFile(hasher, "/etc/passwd"); in RandAddStaticEnv()
404 AddFile(hasher, "/etc/group"); in RandAddStaticEnv()
405 AddFile(hasher, "/etc/hosts"); in RandAddStaticEnv()
406 AddFile(hasher, "/etc/resolv.conf"); in RandAddStaticEnv()
407 AddFile(hasher, "/etc/timezone"); in RandAddStaticEnv()
408 AddFile(hasher, "/etc/localtime"); in RandAddStaticEnv()
416 AddSysctl<CTL_HW, HW_MACHINE>(hasher); in RandAddStaticEnv()
419 AddSysctl<CTL_HW, HW_MODEL>(hasher); in RandAddStaticEnv()
422 AddSysctl<CTL_HW, HW_NCPU>(hasher); in RandAddStaticEnv()
425 AddSysctl<CTL_HW, HW_PHYSMEM>(hasher); in RandAddStaticEnv()
428 AddSysctl<CTL_HW, HW_USERMEM>(hasher); in RandAddStaticEnv()
431 AddSysctl<CTL_HW, HW_MACHINE_ARCH>(hasher); in RandAddStaticEnv()
434 AddSysctl<CTL_HW, HW_REALMEM>(hasher); in RandAddStaticEnv()
437 AddSysctl<CTL_HW, HW_CPU_FREQ>(hasher); in RandAddStaticEnv()
440 AddSysctl<CTL_HW, HW_BUS_FREQ>(hasher); in RandAddStaticEnv()
443 AddSysctl<CTL_HW, HW_CACHELINE>(hasher); in RandAddStaticEnv()
448 AddSysctl<CTL_KERN, KERN_BOOTFILE>(hasher); in RandAddStaticEnv()
451 AddSysctl<CTL_KERN, KERN_BOOTTIME>(hasher); in RandAddStaticEnv()
454 AddSysctl<CTL_KERN, KERN_CLOCKRATE>(hasher); in RandAddStaticEnv()
457 AddSysctl<CTL_KERN, KERN_HOSTID>(hasher); in RandAddStaticEnv()
460 AddSysctl<CTL_KERN, KERN_HOSTUUID>(hasher); in RandAddStaticEnv()
463 AddSysctl<CTL_KERN, KERN_HOSTNAME>(hasher); in RandAddStaticEnv()
466 AddSysctl<CTL_KERN, KERN_OSRELDATE>(hasher); in RandAddStaticEnv()
469 AddSysctl<CTL_KERN, KERN_OSRELEASE>(hasher); in RandAddStaticEnv()
472 AddSysctl<CTL_KERN, KERN_OSREV>(hasher); in RandAddStaticEnv()
475 AddSysctl<CTL_KERN, KERN_OSTYPE>(hasher); in RandAddStaticEnv()
478 AddSysctl<CTL_KERN, KERN_OSREV>(hasher); in RandAddStaticEnv()
481 AddSysctl<CTL_KERN, KERN_VERSION>(hasher); in RandAddStaticEnv()
489 hasher.Write((const unsigned char*)environ[i], strlen(environ[i])); in RandAddStaticEnv()
495 hasher << GetCurrentProcessId() << GetCurrentThreadId(); in RandAddStaticEnv()
497hasher << getpid() << getppid() << getsid(0) << getpgid(0) << getuid() << geteuid() << getgid() <<… in RandAddStaticEnv()
499 hasher << std::this_thread::get_id(); in RandAddStaticEnv()