summaryrefslogtreecommitdiffstats
path: root/src/afb-session.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/afb-session.c')
-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 17ca7af8..c312b46c 100644
--- a/src/afb-session.c
+++ b/src/afb-session.c
@@ -40,7 +40,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())
/* structure for a cookie added to sessions */
struct cookie
@@ -86,6 +86,14 @@ static struct {
.mutex = PTHREAD_MUTEX_INITIALIZER
};
+/* 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 new fresh 'uuid' */
static void new_uuid(char uuid[SIZEUUID])
{