summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRussell Bryant <russell@russellbryant.com>2005-07-19 19:06:24 +0000
committerRussell Bryant <russell@russellbryant.com>2005-07-19 19:06:24 +0000
commitc8f5c38f6683a685b767d4ed7f2ec7ca88d5bcdd (patch)
treec6421805af206c2810c0c0b3da797e6f2bbed92c /include
parent11fae70fca525dae74f397b2f142debeeca47f40 (diff)
let the compiler learn the types for the elements of a struct timeval to fix
portability issues git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6164 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include')
-rwxr-xr-xinclude/asterisk/time.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/asterisk/time.h b/include/asterisk/time.h
index 4dfeb359e..a10636a69 100755
--- a/include/asterisk/time.h
+++ b/include/asterisk/time.h
@@ -16,6 +16,13 @@
#include "asterisk/inline_api.h"
+/* We have to let the compiler learn what types to use for the elements of a
+ struct timeval since on linux, it's time_t and suseconds_t, but on *BSD,
+ they are just a long. */
+extern struct timeval tv;
+typedef typeof(tv.tv_sec) ast_time_t;
+typedef typeof(tv.tv_usec) ast_suseconds_t;
+
/*!
* \brief Computes the difference (in milliseconds) between two \c struct \c timeval instances.
* \param end the beginning of the time period
@@ -104,7 +111,7 @@ struct timeval ast_tv(int sec, int usec),
)
#endif
AST_INLINE_API(
-struct timeval ast_tv(time_t sec, suseconds_t usec),
+struct timeval ast_tv(ast_time_t sec, ast_suseconds_t usec),
{
struct timeval t;
t.tv_sec = sec;