diff options
-rw-r--r-- | sysdep/unix/io.c | 10 | ||||
-rw-r--r-- | sysdep/unix/timer.h | 4 |
2 files changed, 13 insertions, 1 deletions
diff --git a/sysdep/unix/io.c b/sysdep/unix/io.c index f860307..267e589 100644 --- a/sysdep/unix/io.c +++ b/sysdep/unix/io.c @@ -293,6 +293,16 @@ tm_format_date(char *x, bird_clock_t t) } void +tm_format_datetime(char *x, bird_clock_t t) +{ + struct tm *tm; + + tm = localtime(&t); + if (strftime(x, TM_DATETIME_BUFFER_SIZE, "%d-%m-%Y %H:%M:%S", tm) == TM_DATETIME_BUFFER_SIZE) + strcpy(x, "<too-long>"); +} + +void tm_format_reltime(char *x, bird_clock_t t) { struct tm *tm; diff --git a/sysdep/unix/timer.h b/sysdep/unix/timer.h index 242b330..b33622a 100644 --- a/sysdep/unix/timer.h +++ b/sysdep/unix/timer.h @@ -35,8 +35,10 @@ extern bird_clock_t now; /* Time in seconds since unknown epoch */ bird_clock_t tm_parse_date(char *); /* Convert date to bird_clock_t */ void tm_format_date(char *, bird_clock_t); /* Convert bird_clock_t to date */ #define TM_DATE_BUFFER_SIZE 12 /* Buffer size required by tm_format_date */ +void tm_format_datetime(char *, bird_clock_t); /* Convert bird_clock_t to date + time */ +#define TM_DATETIME_BUFFER_SIZE 64 /* Buffer size required by tm_format_datetime */ void tm_format_reltime(char *, bird_clock_t); /* Convert bird_clock_t to relative datetime string */ -#define TM_RELTIME_BUFFER_SIZE 12 /* Buffer size required by tm_format_time */ +#define TM_RELTIME_BUFFER_SIZE 12 /* Buffer size required by tm_format_reltime */ #ifdef TIME_T_IS_64BIT #define TIME_INFINITY 0x7fffffffffffffff |