]> git.ipfire.org Git - thirdparty/open-vm-tools.git/commit
fix buffer overrun in AsyncTCPSocketConnect()
authorOliver Kurth <okurth@vmware.com>
Wed, 7 Feb 2018 00:32:40 +0000 (16:32 -0800)
committerOliver Kurth <okurth@vmware.com>
Wed, 7 Feb 2018 00:32:40 +0000 (16:32 -0800)
commitee4bd450c4449f8905dbca2e4759660fda5c58dc
tree1026f42d545cf518f4d1e45efdf0ac88a53b046f
parent13df0e2fc2f68aeab0380761eb0c5ab129730710
fix buffer overrun in AsyncTCPSocketConnect()

Callers may pass a struct smaller than sockaddr_storage, but a
sockaddr_storage-sized chunk gets copied to asock->remoteAddr.
memcpy() should be used.

One such caller is AsyncSocket_ConnectUnixDomain(). It passes sockaddr_un.
sizeof(sockaddr_un) == 110, sizeof(sockaddr_storage) == 128.

Caught by AddressSanitizer.
open-vm-tools/lib/asyncsocket/asyncsocket.c