view src/event/modules/ngx_iocp_module.h @ 7386:9200b41db765 stable-1.14

HTTP/2: limit the number of idle state switches. An attack that continuously switches HTTP/2 connection between idle and active states can result in excessive CPU usage. This is because when a connection switches to the idle state, all of its memory pool caches are freed. This change limits the maximum allowed number of idle state switches to 10 * http2_max_requests (i.e., 10000 by default). This limits possible CPU usage in one connection, and also imposes a limit on the maximum lifetime of a connection. Initially reported by Gal Goldshtein from F5 Networks.
author Ruslan Ermilov <ru@nginx.com>
date Tue, 06 Nov 2018 16:29:49 +0300
parents d620f497c50f
children
line wrap: on
line source


/*
 * Copyright (C) Igor Sysoev
 * Copyright (C) Nginx, Inc.
 */


#ifndef _NGX_IOCP_MODULE_H_INCLUDED_
#define _NGX_IOCP_MODULE_H_INCLUDED_


typedef struct {
    int  threads;
    int  post_acceptex;
    int  acceptex_read;
} ngx_iocp_conf_t;


extern ngx_module_t  ngx_iocp_module;


#endif /* _NGX_IOCP_MODULE_H_INCLUDED_ */