diff options
Diffstat (limited to 'src/libstddjb/localtm_fmt.c')
-rw-r--r-- | src/libstddjb/localtm_fmt.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/libstddjb/localtm_fmt.c b/src/libstddjb/localtm_fmt.c new file mode 100644 index 0000000..ee083ef --- /dev/null +++ b/src/libstddjb/localtm_fmt.c @@ -0,0 +1,17 @@ +/* ISC license. */ + +#include <time.h> +#include <skalibs/uint.h> +#include <skalibs/djbtime.h> + +unsigned int localtm_fmt (char *s, struct tm const *l) +{ + char *p = s ; + p += uint_fmt(p, 1900 + l->tm_year) ; *p++ = '-' ; + uint0_fmt(p, 1 + l->tm_mon, 2) ; p += 2 ; *p++ = '-' ; + uint0_fmt(p, l->tm_mday, 2) ; p += 2 ; *p++ = ' ' ; + uint0_fmt(p, l->tm_hour, 2) ; p += 2 ; *p++ = ':' ; + uint0_fmt(p, l->tm_min, 2) ; p += 2 ; *p++ = ':' ; + uint0_fmt(p, l->tm_sec, 2) ; p += 2 ; + return p - s ; +} |