Hi,

Attached is a patch which fixes a crash that I ran into on my
OpenBSD/amd64 system. I have a "Tunnel" statement in my .mbsyncrc and
upon invoking mbsync, it crashed with a segfault. Not anymore with this
patch.

Please CC me as I'm not subscribed to this list.

Thanks,
Caspar Schutijser

>From b69b6635c1f4f62f22b7bb26e0c62b7c7c5eab64 Mon Sep 17 00:00:00 2001
From: Caspar Schutijser <cas...@schutijser.com>
Date: Sun, 18 Aug 2019 10:38:48 +0200
Subject: [PATCH] Do not call freeaddrinfo() on a NULL pointer

---
 src/socket.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/socket.c b/src/socket.c
index e3fda42..f1def1e 100644
--- a/src/socket.c
+++ b/src/socket.c
@@ -545,8 +545,10 @@ static void
 socket_connected( conn_t *conn )
 {
 #ifdef HAVE_IPV6
-	freeaddrinfo( conn->addrs );
-	conn->addrs = 0;
+	if (conn->addrs) {
+		freeaddrinfo( conn->addrs );
+		conn->addrs = 0;
+	}
 #endif
 	conf_notifier( &conn->notify, 0, POLLIN );
 	socket_expect_read( conn, 0 );
-- 
2.22.0

_______________________________________________
isync-devel mailing list
isync-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/isync-devel

Reply via email to