musl - musl - an implementation of the standard library for Linux-based systems

index : musl
musl - an implementation of the standard library for Linux-based systems
summary refs log tree commit diff
path: root/include/sys/time.h
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2014年02月05日 16:34:23 -0500
committerRich Felker <dalias@aerifal.cx>2014年02月05日 16:34:23 -0500
commitad87c2eecf70c6f2852a4908b04a6329cbebaf7d (patch)
treec9686b113ecb2c703c4af2d4a898510e10545835 /include/sys/time.h
parenta0351ee6a7b795808aa20c4b607bc7a0379422ef (diff)
downloadmusl-ad87c2eecf70c6f2852a4908b04a6329cbebaf7d.tar.gz
add nonstandard timespec/timeval conversion macros in sys/time.h
these are poorly designed (illogical argument order) and even poorly implemented (brace issues) on glibc, but unfortunately some software is using them. we could consider removing them again in the future at some point if they're documented as deprecated, but for now the simplest thing to do is just to provide them under _GNU_SOURCE.
Diffstat (limited to 'include/sys/time.h')
-rw-r--r--include/sys/time.h 11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/sys/time.h b/include/sys/time.h
index b6787c3c..bfe1414e 100644
--- a/include/sys/time.h
+++ b/include/sys/time.h
@@ -51,6 +51,17 @@ int adjtime (const struct timeval *, struct timeval *);
((a)->tv_usec += 1000000, (a)->tv_sec--) )
#endif
+#if defined(_GNU_SOURCE)
+#define TIMEVAL_TO_TIMESPEC(tv, ts) ( \
+ (ts)->tv_sec = (tv)->tv_sec, \
+ (ts)->tv_nsec = (tv)->tv_usec * 1000, \
+ (void)0 )
+#define TIMESPEC_TO_TIMEVAL(tv, ts) ( \
+ (tv)->tv_sec = (ts)->tv_sec, \
+ (tv)->tv_usec = (ts)->tv_nsec / 1000, \
+ (void)0 )
+#endif
+
#ifdef __cplusplus
}
#endif
generated by cgit v1.2.1 (git 2.18.0) at 2025年09月04日 05:16:23 +0000

AltStyle によって変換されたページ (->オリジナル) /