]> pd.if.org Git - pdclib/blobdiff - platform/example/functions/time/time.c
POSIX interfacing time retrieval
[pdclib] / platform / example / functions / time / time.c
diff --git a/platform/example/functions/time/time.c b/platform/example/functions/time/time.c
new file mode 100644 (file)
index 0000000..cbb29e1
--- /dev/null
@@ -0,0 +1,41 @@
+/* time( time_t * )
+
+   This file is part of the Public Domain C Library (PDCLib).
+   Permission is granted to use, modify, and / or redistribute at will.
+*/
+
+#include <time.h>
+
+#ifndef REGTEST
+
+#include <sys/time.h>
+
+/* See comments in time.h on the semantics of time_t. */
+
+time_t time( time_t * timer )
+{
+    struct timeval tv;
+    if ( gettimeofday( &tv, NULL ) == 0 )
+    {
+        if ( timer != NULL )
+        {
+            *timer = tv.tv_sec;
+        }
+        return tv.tv_sec;
+    }
+    return -1;
+}
+
+#endif
+
+#ifdef TEST
+
+#include "_PDCLIB_test.h"
+
+int main( void )
+{
+    TESTCASE( NO_TESTDRIVER );
+    return TEST_RESULTS;
+}
+
+#endif