Mercurial > hg > nginx
view auto/lib/pcre/makefile.msvc @ 7120:874171c3c71a
Fixed handling of non-null-terminated unix sockets.
At least FreeBSD, macOS, NetBSD, and OpenBSD can return unix sockets
with non-null-terminated sun_path. Additionally, the address may become
non-null-terminated if it does not fit into the buffer provided and was
truncated (may happen on macOS, NetBSD, and Solaris, which allow unix socket
addresess larger than struct sockaddr_un). As such, ngx_sock_ntop() might
overread the sockaddr provided, as it used "%s" format and thus assumed
null-terminated string.
To fix this, the ngx_strnlen() function was introduced, and it is now used
to calculate correct length of sun_path.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Wed, 04 Oct 2017 21:19:38 +0300 |
parents | bd828a14e017 |
children |
line wrap: on
line source
# Copyright (C) Igor Sysoev # Copyright (C) Nginx, Inc. CFLAGS = -O2 -Ob1 -Oi -Gs $(LIBC) $(CPU_OPT) PCREFLAGS = -DHAVE_CONFIG_H -DPCRE_STATIC -DPOSIX_MALLOC_THRESHOLD=10 \ -DSUPPORT_PCRE8 -DHAVE_MEMMOVE pcre.lib: cd $(PCRE) cl -nologo -c $(CFLAGS) -I . $(PCREFLAGS) pcre_*.c link -lib -out:pcre.lib -verbose:lib pcre_*.obj pcre.h: cd $(PCRE) copy /y pcre.h.generic pcre.h copy /y config.h.generic config.h copy /y pcre_chartables.c.dist pcre_chartables.c