summaryrefslogtreecommitdiff
path: root/source3/lib/time.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2002-01-11 21:52:46 +0000
committerJeremy Allison <jra@samba.org>2002-01-11 21:52:46 +0000
commitb741f6b04c2b0da7963cf0778f20a8ad1e8dbf9e (patch)
treea7abaf498a9a2866cd497cc1377ceb1749d78b88 /source3/lib/time.c
parentd6823366b881612234ab0655adb11c594f864c4a (diff)
downloadsamba-b741f6b04c2b0da7963cf0778f20a8ad1e8dbf9e.tar.gz
samba-b741f6b04c2b0da7963cf0778f20a8ad1e8dbf9e.tar.bz2
samba-b741f6b04c2b0da7963cf0778f20a8ad1e8dbf9e.zip
Latest attempt at changeid.
Jeremy. (This used to be commit 24ee18c77e1b61004d8ed817118a481f3d43e34c)
Diffstat (limited to 'source3/lib/time.c')
-rw-r--r--source3/lib/time.c28
1 files changed, 26 insertions, 2 deletions
diff --git a/source3/lib/time.c b/source3/lib/time.c
index f0f62ca841..975c58c7a5 100644
--- a/source3/lib/time.c
+++ b/source3/lib/time.c
@@ -129,10 +129,34 @@ static int get_serverzone(void)
/* Re-read the smb serverzone value */
+static struct timeval start_time_hires;
+
void TimeInit(void)
{
- done_serverzone_init = False;
- get_serverzone();
+ done_serverzone_init = False;
+ get_serverzone();
+ /* Save the start time of this process. */
+ GetTimeOfDay(&start_time_hires);
+}
+
+/**********************************************************************
+ Return a timeval struct of the uptime of this process. As TimeInit is
+ done before a daemon fork then this is the start time from the parent
+ daemon start. JRA.
+***********************************************************************/
+
+void get_process_uptime(struct timeval *ret_time)
+{
+ struct timeval time_now_hires;
+
+ GetTimeOfDay(&time_now_hires);
+ ret_time->tv_sec = time_now_hires.tv_sec - start_time_hires.tv_sec;
+ ret_time->tv_usec = time_now_hires.tv_usec - start_time_hires.tv_usec;
+ if (time_now_hires.tv_usec < start_time_hires.tv_usec) {
+ ret_time->tv_sec -= 1;
+ ret_time->tv_usec = 1000000 + (time_now_hires.tv_usec - start_time_hires.tv_usec);
+ } else
+ ret_time->tv_usec = time_now_hires.tv_usec - start_time_hires.tv_usec;
}
/*******************************************************************