annotate auto/lib/zlib/makefile.owc @ 6957:83bae3d354ab

HTTP/2: fixed connection finalization. All streams in connection must be finalized before the connection itself can be finalized and all related memory is freed. That's not always possible on the current event loop iteration. Thus when the last stream is finalized, it sets the special read event handler ngx_http_v2_handle_connection_handler() and posts the event. Previously, this handler didn't check the connection state and could call the regular event handler on a connection that was already in finalization stage. In the worst case that could lead to a segmentation fault, since some data structures aren't supposed to be used during connection finalization. Particularly, the waiting queue can contain already freed streams, so the WINDOW_UPDATE frame received by that moment could trigger accessing to these freed streams. Now, the connection error flag is explicitly checked in ngx_http_v2_handle_connection_handler().
author Valentin Bartenev <vbart@nginx.com>
date Wed, 29 Mar 2017 20:21:01 +0300
parents 9d458803bbe0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
444
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 297
diff changeset
1
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 297
diff changeset
2 # Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 2839
diff changeset
3 # Copyright (C) Nginx, Inc.
444
42d11f017717 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents: 297
diff changeset
4
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5
297
ee394e997c77 nginx-0.0.3-2004-03-29-21:43:58 import
Igor Sysoev <igor@sysoev.ru>
parents: 284
diff changeset
6 CFLAGS = -zq -bt=nt -ot -op -oi -oe -s -bm $(CPU_OPT)
282
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
30310107dbc9 nginx-0.0.2-2004-03-09-22:47:07 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8 zlib.lib:
2838
ecdc41bf2047 backout r2833: CURDIR was set to Unix style path
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
9 cd $(ZLIB)
ecdc41bf2047 backout r2833: CURDIR was set to Unix style path
Igor Sysoev <igor@sysoev.ru>
parents: 493
diff changeset
10
2839
cb7739c822c6 add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents: 2838
diff changeset
11 wcl386 -c $(CFLAGS) adler32.c crc32.c deflate.c trees.c zutil.c &
4839
9d458803bbe0 Configure: provide inflate() when building zlib on win32.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
12 compress.c inflate.c inffast.c inftrees.c
2839
cb7739c822c6 add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents: 2838
diff changeset
13 wlib -n zlib.lib adler32.obj crc32.obj deflate.obj trees.obj &
4839
9d458803bbe0 Configure: provide inflate() when building zlib on win32.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
14 zutil.obj compress.obj inflate.obj inffast.obj inftrees.obj