New function ltime() returns a struct tm of the current local time.
[sgt/putty] / windows / wintime.c
diff --git a/windows/wintime.c b/windows/wintime.c
new file mode 100644 (file)
index 0000000..eea0cf6
--- /dev/null
@@ -0,0 +1,20 @@
+#include "putty.h"
+#include <time.h>
+
+struct tm ltime(void)
+{
+    SYSTEMTIME st;
+    struct tm tm;
+
+    GetLocalTime(&st);
+    tm.tm_sec=st.wSecond;
+    tm.tm_min=st.wMinute;
+    tm.tm_hour=st.wHour;
+    tm.tm_mday=st.wDay;
+    tm.tm_mon=st.wMonth-1;
+    tm.tm_year=(st.wYear>=1900?st.wYear-1900:0);
+    tm.tm_wday=st.wDayOfWeek;
+    tm.tm_yday=-1; /* GetLocalTime doesn't tell us */
+    tm.tm_isdst=0; /* GetLocalTime doesn't tell us */
+    return tm;
+}