summaryrefslogtreecommitdiffstats
path: root/source3/lib/time.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2011-09-22 20:33:22 +0200
committerStefan Metzmacher <metze@samba.org>2011-09-23 00:15:31 +0200
commit66f8070dd3a6a5c51c8e6d37deb7c52a9a717e1b (patch)
treea4201a369a93fe191a90a6a7d1e68b7585e8a072 /source3/lib/time.c
parent1bb6e6758cffea967b6b8299553653cf4192f2e9 (diff)
downloadsamba-66f8070dd3a6a5c51c8e6d37deb7c52a9a717e1b.tar.gz
samba-66f8070dd3a6a5c51c8e6d37deb7c52a9a717e1b.tar.xz
samba-66f8070dd3a6a5c51c8e6d37deb7c52a9a717e1b.zip
lib/util: move some timespec helpers from source3 to the toplevel
metze Autobuild-User: Stefan Metzmacher <metze@samba.org> Autobuild-Date: Fri Sep 23 00:15:31 CEST 2011 on sn-devel-104
Diffstat (limited to 'source3/lib/time.c')
-rw-r--r--source3/lib/time.c146
1 files changed, 0 insertions, 146 deletions
diff --git a/source3/lib/time.c b/source3/lib/time.c
index db9ec0a34f..7fe53928ab 100644
--- a/source3/lib/time.c
+++ b/source3/lib/time.c
@@ -264,95 +264,6 @@ time_t srv_make_unix_date3(const void *date_ptr)
}
/****************************************************************************
- Convert a normalized timeval to a timespec.
-****************************************************************************/
-
-struct timespec convert_timeval_to_timespec(const struct timeval tv)
-{
- struct timespec ts;
- ts.tv_sec = tv.tv_sec;
- ts.tv_nsec = tv.tv_usec * 1000;
- return ts;
-}
-
-/****************************************************************************
- Convert a normalized timespec to a timeval.
-****************************************************************************/
-
-struct timeval convert_timespec_to_timeval(const struct timespec ts)
-{
- struct timeval tv;
- tv.tv_sec = ts.tv_sec;
- tv.tv_usec = ts.tv_nsec / 1000;
- return tv;
-}
-
-/****************************************************************************
- Return a timespec for the current time
-****************************************************************************/
-
-struct timespec timespec_current(void)
-{
- struct timespec ts;
- clock_gettime(CLOCK_REALTIME, &ts);
- return ts;
-}
-
-/****************************************************************************
- Return the lesser of two timespecs.
-****************************************************************************/
-
-struct timespec timespec_min(const struct timespec *ts1,
- const struct timespec *ts2)
-{
- if (ts1->tv_sec < ts2->tv_sec) return *ts1;
- if (ts1->tv_sec > ts2->tv_sec) return *ts2;
- if (ts1->tv_nsec < ts2->tv_nsec) return *ts1;
- return *ts2;
-}
-
-/****************************************************************************
- compare two timespec structures.
- Return -1 if ts1 < ts2
- Return 0 if ts1 == ts2
- Return 1 if ts1 > ts2
-****************************************************************************/
-
-int timespec_compare(const struct timespec *ts1, const struct timespec *ts2)
-{
- if (ts1->tv_sec > ts2->tv_sec) return 1;
- if (ts1->tv_sec < ts2->tv_sec) return -1;
- if (ts1->tv_nsec > ts2->tv_nsec) return 1;
- if (ts1->tv_nsec < ts2->tv_nsec) return -1;
- return 0;
-}
-
-/****************************************************************************
- Round up a timespec if nsec > 500000000, round down if lower,
- then zero nsec.
-****************************************************************************/
-
-void round_timespec_to_sec(struct timespec *ts)
-{
- ts->tv_sec = convert_timespec_to_time_t(*ts);
- ts->tv_nsec = 0;
-}
-
-/****************************************************************************
- Round a timespec to usec value.
-****************************************************************************/
-
-void round_timespec_to_usec(struct timespec *ts)
-{
- struct timeval tv = convert_timespec_to_timeval(*ts);
- *ts = convert_timeval_to_timespec(tv);
- while (ts->tv_nsec > 1000000000) {
- ts->tv_sec += 1;
- ts->tv_nsec -= 1000000000;
- }
-}
-
-/****************************************************************************
Interprets an nt time into a unix struct timespec.
Differs from nt_time_to_unix in that an 8 byte value of 0xffffffffffffffff
will be returned as (time_t)-1, whereas nt_time_to_unix returns 0 in this case.
@@ -469,63 +380,6 @@ time_t uint64s_nt_time_to_unix_abs(const uint64_t *src)
}
/****************************************************************************
- Put a 8 byte filetime from a struct timespec. Uses GMT.
-****************************************************************************/
-
-void unix_timespec_to_nt_time(NTTIME *nt, struct timespec ts)
-{
- uint64_t d;
-
- if (ts.tv_sec ==0 && ts.tv_nsec == 0) {
- *nt = 0;
- return;
- }
- if (ts.tv_sec == TIME_T_MAX) {
- *nt = 0x7fffffffffffffffLL;
- return;
- }
- if (ts.tv_sec == (time_t)-1) {
- *nt = (uint64_t)-1;
- return;
- }
-
- d = ts.tv_sec;
- d += TIME_FIXUP_CONSTANT_INT;
- d *= 1000*1000*10;
- /* d is now in 100ns units. */
- d += (ts.tv_nsec / 100);
-
- *nt = d;
-}
-
-#if 0
-void nt_time_to_unix_timespec(struct timespec *ts, NTTIME t)
-{
- if (ts == NULL) {
- return;
- }
-
- /* t starts in 100 nsec units since 1601-01-01. */
-
- t *= 100;
- /* t is now in nsec units since 1601-01-01. */
-
- t -= TIME_FIXUP_CONSTANT*1000*1000*100;
- /* t is now in nsec units since the UNIX epoch 1970-01-01. */
-
- ts->tv_sec = t / 1000000000LL;
-
- if (TIME_T_MIN > ts->tv_sec || ts->tv_sec > TIME_T_MAX) {
- ts->tv_sec = 0;
- ts->tv_nsec = 0;
- return;
- }
-
- ts->tv_nsec = t - ts->tv_sec*1000000000LL;
-}
-#endif
-
-/****************************************************************************
Convert a time_t to a NTTIME structure
This is an absolute version of the one above.