annotate auto/lib/libatomic/make @ 7146:5c25f01bbd52 stable-1.12

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 9b3bbaddb1ef
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3363
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
1
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
2 # Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 3363
diff changeset
3 # Copyright (C) Nginx, Inc.
3363
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
4
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
6 cat << END >> $NGX_MAKEFILE
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8 $NGX_LIBATOMIC/src/libatomic_ops.a: $NGX_LIBATOMIC/Makefile
4841
95ce3172493e Configure: fixed make macros to use parentheses instead of braces.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4740
diff changeset
9 cd $NGX_LIBATOMIC && \$(MAKE)
3363
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
10
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
11 $NGX_LIBATOMIC/Makefile: $NGX_MAKEFILE
5439
9b3bbaddb1ef Configure: call "make distclean" for libatomic.
Piotr Sikora <piotr@cloudflare.com>
parents: 4841
diff changeset
12 cd $NGX_LIBATOMIC \\
9b3bbaddb1ef Configure: call "make distclean" for libatomic.
Piotr Sikora <piotr@cloudflare.com>
parents: 4841
diff changeset
13 && if [ -f Makefile ]; then \$(MAKE) distclean; fi \\
9b3bbaddb1ef Configure: call "make distclean" for libatomic.
Piotr Sikora <piotr@cloudflare.com>
parents: 4841
diff changeset
14 && ./configure
3363
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
15
b4aa418af6ef libatomic_ops support
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
16 END