From 35080019ce9cd3937861b4f1ed242a85d74ff5fd Mon Sep 17 00:00:00 2001 From: Ali Gholami Rudi Date: Thu, 31 Dec 2015 10:51:30 +0330 Subject: [PATCH] localtime: partial mktime() --- localtime.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/localtime.c b/localtime.c index 5005eb9..b7aca64 100644 --- a/localtime.c +++ b/localtime.c @@ -58,3 +58,19 @@ struct tm *gmtime(time_t *t) tp2tm(&tm, *t); return &tm; } + +time_t mktime(struct tm *tm) +{ + static int dpm[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; + int d = 0, s = 0; + int i; + s = tm->tm_hour * 3600 + tm->tm_min * 60 + tm->tm_sec; + for (i = 70; i < tm->tm_year; i++) + d += 365 + isleap(1900 + i); + tm->tm_yday = tm->tm_mday - 1; + for (i = 0; i < tm->tm_mon; i++) + tm->tm_yday += dpm[i]; + d += tm->tm_yday; + tzset(); + return d * 24 * 3600 + s + timezone; +} -- 2.11.4.GIT