lib/util: Add RFC3339 timestamp support to timeval_str_buf()
[Samba.git] / lib / util / time_basic.h
blobd1bb3b59bbc5d350a9a1e9244edf34eddd279a70
1 /*
2 * Unix SMB/CIFS implementation.
3 * time handling functions
5 * Copyright (C) Andrew Tridgell 1992-2004
6 * Copyright (C) Stefan (metze) Metzmacher 2002
7 * Copyright (C) Jeremy Allison 2007
8 * Copyright (C) Andrew Bartlett 2011
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 3 of the License, or
13 * (at your option) any later version.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with this program. If not, see <http://www.gnu.org/licenses/>.
24 #include "replace.h"
25 #include "system/time.h"
27 /**
28 a gettimeofday wrapper
29 **/
30 _PUBLIC_ void GetTimeOfDay(struct timeval *tval);
32 struct timeval_buf { char buf[128]; };
34 /**
35 Put a date and time into dst->buf, return it dst->buf
36 (optionally with microseconds)
38 If rfc5424 is true then produce the RFC5424 timestamp format (which
39 is a stricter instance of RFC3339 and is used for syslog). For
40 example: 2003-08-24T05:14:15.000003-07:00. Otherwise,
41 format is %Y/%m/%d %H:%M:%S
42 **/
44 char *timeval_str_buf(const struct timeval *tp, bool rfc5424, bool hires,
45 struct timeval_buf *dst);