]> git.kaiwu.me - nginx.git/commit
Events: fixed handling zero-length client address.
authorRoman Arutyunyan <arut@nginx.com>
Fri, 1 Jun 2018 13:53:02 +0000 (16:53 +0300)
committerRoman Arutyunyan <arut@nginx.com>
Fri, 1 Jun 2018 13:53:02 +0000 (16:53 +0300)
commit26a57486f013abff616be8345e542c15419f0759
tree6a18ce05e742e64899809dba9e1be7a9116bd796
parentdac90a4bff8404e8097249a1ee444b77580f43ba
Events: fixed handling zero-length client address.

On Linux recvmsg() syscall may return a zero-length client address when
receiving a datagram from an unbound unix datagram socket.  It is usually
assumed that socket address has at least the sa_family member.  Zero-length
socket address caused buffer over-read in functions which receive socket
address, for example ngx_sock_ntop().  Typically the over-read resulted in
unexpected socket family followed by session close.  Now a fake socket address
is allocated instead of a zero-length client address.
src/event/ngx_event_accept.c