]> git.ozlabs.org Git - ccan/blobdiff - ccan/time/time.c
shachain: Fix signed/unsigned mismatches
[ccan] / ccan / time / time.c
index 54cb3f4b73ae601cf469592237bc165748593e4c..d0542f5654e86f06e69bc40c530ce0c989643e92 100644 (file)
@@ -3,7 +3,7 @@
 #include <stdlib.h>
 #include <stdio.h>
 
-#if !HAVE_CLOCK_GETTIME && !HAVE_CLOCK_GETTIME_IN_LIBRT
+#if !HAVE_CLOCK_GETTIME
 #include <sys/time.h>
 
 struct timeabs time_now(void)
@@ -23,7 +23,18 @@ struct timeabs time_now(void)
        clock_gettime(CLOCK_REALTIME, &ret.ts);
        return TIMEABS_CHECK(ret);
 }
-#endif /* HAVE_CLOCK_GETTIME || HAVE_CLOCK_GETTIME_IN_LIBRT */
+#endif /* HAVE_CLOCK_GETTIME */
+
+struct timemono time_mono(void)
+{
+       struct timemono ret;
+#ifdef TIME_HAVE_MONOTONIC
+       clock_gettime(CLOCK_MONOTONIC, &ret.ts);
+#else /* Best we can do */
+       ret.ts = time_now().ts;
+#endif /* !HAVE_TIME_MONOTONIC */
+       return ret;
+}
 
 struct timerel time_divide(struct timerel t, unsigned long div)
 {