commit d20564a9a6d75192ec21170f2c6cd699eb361d96
parent 2bdefab1da7bc64f433cba5871fc57d5524a06e1
Author: rsc <devnull@localhost>
Date: Tue, 18 Jul 2006 15:23:58 +0000
add vttimefmt
Diffstat:
3 files changed, 28 insertions(+), 0 deletions(-)
diff --git a/include/venti.h b/include/venti.h
@@ -488,6 +488,8 @@ uvlong vtfilegetsize(VtFile*);
int vtfilesetsize(VtFile*, u64int);
int vtfileremove(VtFile*);
+extern int vttimefmt(Fmt*);
+
extern int chattyventi;
extern int ventidoublechecksha1;
extern int ventilogging;
diff --git a/src/libventi/mkfile b/src/libventi/mkfile
@@ -27,6 +27,7 @@ OFILES=\
srvhello.$O\
strdup.$O\
string.$O\
+ time.$O\
version.$O\
zero.$O\
zeroscore.$O\
diff --git a/src/libventi/time.c b/src/libventi/time.c
@@ -0,0 +1,25 @@
+#include <u.h>
+#include <libc.h>
+#include <venti.h>
+
+int
+vttimefmt(Fmt *fmt)
+{
+ vlong ns;
+ Tm tm;
+
+ if(fmt->flags&FmtLong){
+ ns = nsec();
+ tm = *localtime(ns/1000000000);
+ return fmtprint(fmt, "%04d/%02d%02d %02d:%02d:%02d.%03d",
+ tm.year+1900, tm.mon+1, tm.mday,
+ tm.hour, tm.min, tm.sec,
+ (int)(ns%1000000000)/1000000);
+ }else{
+ tm = *localtime(time(0));
+ return fmtprint(fmt, "%04d/%02d%02d %02d:%02d:%02d",
+ tm.year+1900, tm.mon+1, tm.mday,
+ tm.hour, tm.min, tm.sec);
+ }
+}
+