diff options
| -rw-r--r-- | include/time.h | 4 | ||||
| -rw-r--r-- | src/time/timespec_get.c | 12 | 
2 files changed, 15 insertions, 1 deletions
| diff --git a/include/time.h b/include/time.h index dc880706..6124ef1e 100644 --- a/include/time.h +++ b/include/time.h @@ -17,11 +17,11 @@ extern "C" {  #define __NEED_size_t  #define __NEED_time_t  #define __NEED_clock_t +#define __NEED_struct_timespec  #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \   || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \   || defined(_BSD_SOURCE) -#define __NEED_struct_timespec  #define __NEED_clockid_t  #define __NEED_timer_t  #define __NEED_pid_t @@ -59,9 +59,11 @@ struct tm *gmtime (const time_t *);  struct tm *localtime (const time_t *);  char *asctime (const struct tm *);  char *ctime (const time_t *); +int timespec_get(struct timespec *, int);  #define CLOCKS_PER_SEC 1000000L +#define TIME_UTC 1  #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \   || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ diff --git a/src/time/timespec_get.c b/src/time/timespec_get.c new file mode 100644 index 00000000..03c5a77b --- /dev/null +++ b/src/time/timespec_get.c @@ -0,0 +1,12 @@ +#include <time.h> + +int __clock_gettime(clockid_t, struct timespec *); + +/* There is no other implemented value than TIME_UTC; all other values + * are considered erroneous. */ +int timespec_get(struct timespec * ts, int base) +{ +	if (base != TIME_UTC) return 0; +	int ret = __clock_gettime(CLOCK_REALTIME, ts); +	return ret < 0 ? 0 : base; +} | 
