diff options
author | Rich Felker <dalias@aerifal.cx> | 2013-10-25 14:15:08 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2013-10-25 14:15:08 -0400 |
commit | 4b15d9f46a2b260661d2e054575e617c76795578 (patch) | |
tree | b5ed03ad58216b42cfd0675f183aee72074c348b | |
parent | 78f889153167452de4cbced921f6428b3d4f663a (diff) | |
download | musl-4b15d9f46a2b260661d2e054575e617c76795578.tar.gz musl-4b15d9f46a2b260661d2e054575e617c76795578.tar.bz2 musl-4b15d9f46a2b260661d2e054575e617c76795578.tar.xz musl-4b15d9f46a2b260661d2e054575e617c76795578.zip |
add legacy ftime function and sys/timeb.h
despite being marked legacy, this was specified by SUSv3 as part of
the XSI option; only the most recent version of the standard dropped
it. reportedly there's actual code using it.
-rw-r--r-- | include/sys/timeb.h | 22 | ||||
-rw-r--r-- | src/time/ftime.c | 12 |
2 files changed, 34 insertions, 0 deletions
diff --git a/include/sys/timeb.h b/include/sys/timeb.h new file mode 100644 index 00000000..108c1f5c --- /dev/null +++ b/include/sys/timeb.h @@ -0,0 +1,22 @@ +#ifndef _SYS_TIMEB_H +#define _SYS_TIMEB_H +#ifdef __cplusplus +extern "C" { +#endif + +#define __NEED_time_t + +#include <bits/alltypes.h> + +struct timeb { + time_t time; + unsigned short millitm; + short timezone, dstflag; +}; + +int ftime(struct timeb *); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/src/time/ftime.c b/src/time/ftime.c new file mode 100644 index 00000000..a1734d0f --- /dev/null +++ b/src/time/ftime.c @@ -0,0 +1,12 @@ +#include <sys/timeb.h> +#include <time.h> + +int ftime(struct timeb *tp) +{ + struct timespec ts; + clock_gettime(CLOCK_REALTIME, &ts); + tp->time = ts.tv_sec; + tp->millitm = ts.tv_nsec / 1000000; + tp->timezone = tp->dstflag = 0; + return 0; +} |