Mercurial > hg > nginx-quic
view src/os/win32/ngx_time.c @ 547:818fbd4750b9 release-0.2.2
nginx-0.2.2-RELEASE import
*) Feature: the "config errmsg" command of the ngx_http_ssi_module.
*) Change: the ngx_http_geo_module variables can be overridden by the
"set" directive.
*) Feature: the "ssl_protocols" and "ssl_prefer_server_ciphers"
directives of the ngx_http_ssl_module and ngx_imap_ssl_module.
*) Bugfix: the ngx_http_autoindex_module did not show correctly the
long file names;
*) Bugfix: the ngx_http_autoindex_module now do not show the files
starting by dot.
*) Bugfix: if the SSL handshake failed then another connection may be
closed too.
Thanks to Rob Mueller.
*) Bugfix: the export versions of MSIE 5.x could not connect via HTTPS.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 30 Sep 2005 14:41:25 +0000 |
parents | 9b8c906f6e63 |
children | 9c2f3ed7a247 |
line wrap: on
line source
/* * Copyright (C) Igor Sysoev */ #include <ngx_config.h> #include <ngx_core.h> void ngx_gettimeofday(struct timeval *tp) { uint64_t intervals; FILETIME ft; GetSystemTimeAsFileTime(&ft); /* * A file time is a 64-bit value that represents the number * of 100-nanosecond intervals that have elapsed since * January 1, 1601 12:00 A.M. UTC. * * Between January 1, 1970 (Epoch) and January 1, 1601 there were * 134744 days, * 11644473600 seconds or * 11644473600,000,000,0 100-nanosecond intervals. * * See also MSKB Q167296. */ intervals = ((uint64_t) ft.dwHighDateTime << 32) | ft.dwLowDateTime; intervals -= 116444736000000000; tp->tv_sec = (long) (intervals / 10000000); tp->tv_usec = (long) ((intervals % 10000000) / 10); } void ngx_libc_localtime(struct tm *tm) { time_t now; struct tm *t; now = ngx_time(); t = localtime(&now); *tm = *t; } void ngx_libc_gmtime(struct tm *tm) { time_t now; struct tm *t; now = ngx_time(); t = gmtime(&now); *tm = *t; } ngx_int_t ngx_gettimezone(void) { TIME_ZONE_INFORMATION tz; if (GetTimeZoneInformation(&tz) != TIME_ZONE_ID_INVALID) { return -tz.Bias; } return 0; }