Fix SEGFAULT when trying to connect to IPv6 peer in non-IPv6 environment
authorMaximilian Stein <m@steiny.biz>
Mon, 15 Jan 2018 23:45:38 +0000 (00:45 +0100)
committerGuus Sliepen <guus@tinc-vpn.org>
Tue, 16 Jan 2018 06:50:39 +0000 (07:50 +0100)
commitd2732abcc7ab0b10577c4eeedb2135d8f5f6b4d5
treeb363645b135ac96bfe06d84b6c1a9c791b3ad6f8
parent92afeec172f1f8a9f8b0bfdb94311bf0405433bb
Fix SEGFAULT when trying to connect to IPv6 peer in non-IPv6 environment

Using my tinc setup I observe spurious SEGFAULTs in the daemon process.

My configuration comprises a proxy (type exec) and the peer's address is
given by its domain name. The domain resolves to both IPv4 and IPv6.
As IPv6 is not working in my environment, all connection attempts to the
resolved IPv6 addresses fail. Sometimes, after such a failure, the
segfault occurs.

Apparently, the issue is caused by a use after free due to failing to
reset a pointer.
src/net.c