From 3baeb11a8fbcfcdbc31976d421f17b85503b3ecd Mon Sep 17 00:00:00 2001 From: WuKong Date: Fri, 4 Sep 2015 09:25:34 +0200 Subject: init attribute-based encryption Change-Id: Iba1a3d722110abf747a0fba366f3ebc911d25b25 --- moon-abe/pbc-0.5.14/misc/get_time.win32.c | 42 +++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 moon-abe/pbc-0.5.14/misc/get_time.win32.c (limited to 'moon-abe/pbc-0.5.14/misc/get_time.win32.c') diff --git a/moon-abe/pbc-0.5.14/misc/get_time.win32.c b/moon-abe/pbc-0.5.14/misc/get_time.win32.c new file mode 100644 index 00000000..98463198 --- /dev/null +++ b/moon-abe/pbc-0.5.14/misc/get_time.win32.c @@ -0,0 +1,42 @@ +#include // for intptr_t +#include +#include "pbc_utils.h" + +typedef struct _FILETIME { + unsigned long dwLowDateTime; + unsigned long dwHighDateTime; +} FILETIME; + +void __stdcall GetSystemTimeAsFileTime(FILETIME*); + +int __cdecl gettimeofday(struct timeval* p, void* tz) { + UNUSED_VAR(tz); + union { + long long ns100; // Time since 1 Jan 1601 in 100ns units. + FILETIME ft; + } _now; + + GetSystemTimeAsFileTime( &(_now.ft) ); + p->tv_usec=(long)((_now.ns100 / 10LL) % 1000000LL ); + p->tv_sec= (long)((_now.ns100-(116444736000000000LL))/10000000LL); + return 0; // Assume success? +} + +double pbc_get_time(void) { + static struct timeval last_tv, tv; + static int first = 1; + static double res = 0; + + if (first) { + gettimeofday(&last_tv, NULL); + first = 0; + return 0; + } else { + gettimeofday(&tv, NULL); + res += tv.tv_sec - last_tv.tv_sec; + res += (tv.tv_usec - last_tv.tv_usec) / 1000000.0; + last_tv = tv; + + return res; + } +} -- cgit 1.2.3-korg