aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/afb-session.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/afb-session.c b/src/afb-session.c
index 6b6ad634..01e9bfcf 100644
--- a/src/afb-session.c
+++ b/src/afb-session.c
@@ -39,7 +39,7 @@
#define _MAXEXP_ ((time_t)(~(time_t)0))
#define _MAXEXP2_ ((time_t)((((unsigned long long)_MAXEXP_) >> 1)))
#define MAX_EXPIRATION (_MAXEXP_ >= 0 ? _MAXEXP_ : _MAXEXP2_)
-#define NOW (time(NULL))
+#define NOW (time_now())
struct cookie
{
@@ -73,6 +73,14 @@ static struct {
char initok[SIZEUUID];
} sessions;
+/* Get the actual raw time */
+static inline time_t time_now()
+{
+ struct timespec ts;
+ clock_gettime(CLOCK_MONOTONIC_RAW, &ts);
+ return ts.tv_sec;
+}
+
/* generate a uuid */
static void new_uuid(char uuid[SIZEUUID])
{