Mercurial > hg > nginx-quic
view src/core/ngx_times.h @ 5665:46d0795a846c
SPDY: avoid sending RST_STREAM on WINDOW_UPDATE with unknown SID.
There's a race condition between closing a stream by one endpoint
and sending a WINDOW_UPDATE frame by another. So it would be better
to just skip such frames for unknown streams, like is already done
for the DATA frames.
author | Valentin Bartenev <vbart@nginx.com> |
---|---|
date | Mon, 21 Apr 2014 19:21:17 +0400 |
parents | d620f497c50f |
children | 777202558122 |
line wrap: on
line source
/* * Copyright (C) Igor Sysoev * Copyright (C) Nginx, Inc. */ #ifndef _NGX_TIMES_H_INCLUDED_ #define _NGX_TIMES_H_INCLUDED_ #include <ngx_config.h> #include <ngx_core.h> typedef struct { time_t sec; ngx_uint_t msec; ngx_int_t gmtoff; } ngx_time_t; void ngx_time_init(void); void ngx_time_update(void); void ngx_time_sigsafe_update(void); u_char *ngx_http_time(u_char *buf, time_t t); u_char *ngx_http_cookie_time(u_char *buf, time_t t); void ngx_gmtime(time_t t, ngx_tm_t *tp); time_t ngx_next_time(time_t when); #define ngx_next_time_n "mktime()" extern volatile ngx_time_t *ngx_cached_time; #define ngx_time() ngx_cached_time->sec #define ngx_timeofday() (ngx_time_t *) ngx_cached_time extern volatile ngx_str_t ngx_cached_err_log_time; extern volatile ngx_str_t ngx_cached_http_time; extern volatile ngx_str_t ngx_cached_http_log_time; extern volatile ngx_str_t ngx_cached_http_log_iso8601; /* * milliseconds elapsed since epoch and truncated to ngx_msec_t, * used in event timers */ extern volatile ngx_msec_t ngx_current_msec; #endif /* _NGX_TIMES_H_INCLUDED_ */