view src/os/unix/ngx_time.c @ 551:483cca230603 release-0.2.4

nginx-0.2.4-RELEASE import *) Feature: the ngx_http_ssi_module supports "$var=text", "$var!=text", "$var=/text/", and "$var!=/text/" expressions in the "if" command. *) Bugfix: in proxying location without trailing slash; the bug had appeared in 0.1.44. *) Bugfix: the segmentation fault may occurred if the "rtsig" method was used; the bug had appeared in 0.2.0.
author Igor Sysoev <igor@sysoev.ru>
date Mon, 03 Oct 2005 12:53:14 +0000
parents dadfa78d2270
children 9c2f3ed7a247
line wrap: on
line source


/*
 * Copyright (C) Igor Sysoev
 */


#include <ngx_config.h>
#include <ngx_core.h>


void ngx_localtime(ngx_tm_t *tm)
{
#if (NGX_HAVE_LOCALTIME_R)
    time_t     now;

    now = ngx_time();
    (void) localtime_r(&now, tm);

#else
    time_t     now;
    ngx_tm_t  *t;

    now = ngx_time();
    t = localtime(&now);
    *tm = *t;

#endif

    tm->ngx_tm_mon++;
    tm->ngx_tm_year += 1900;
}


void ngx_libc_localtime(struct tm *tm)
{
#if (NGX_HAVE_LOCALTIME_R)
    time_t      now;

    now = ngx_time();
    (void) localtime_r(&now, tm);

#else
    time_t      now;
    struct tm  *t;

    now = ngx_time();
    t = localtime(&now);
    *tm = *t;

#endif
}


void ngx_libc_gmtime(struct tm *tm)
{
#if (NGX_HAVE_LOCALTIME_R)
    time_t      now;

    now = ngx_time();
    (void) gmtime_r(&now, tm);

#else
    time_t      now;
    struct tm  *t;

    now = ngx_time();
    t = gmtime(&now);
    *tm = *t;

#endif
}