From 841e3e35937d942f4456d73070de32a0247eca46 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Mon, 2 Jun 2014 15:00:15 +0200 Subject: Actually really fix helper_connect4 when passing a hostname --- helper.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'helper.c') diff --git a/helper.c b/helper.c index 2589675..6aed251 100644 --- a/helper.c +++ b/helper.c @@ -65,10 +65,12 @@ int helper_connect4(char *address, int port, char *ip) for (rp = result; rp != NULL; rp = rp->ai_next) { const int sock = socket_tcp4b(); if (sock == -1) continue; - memcpy(ip, rp->ai_addr->sa_data, 4); - if (socket_connect4(sock, ip, port) == 0) { - freeaddrinfo(result); - return sock; // Success + if (rp->ai_addr != NULL) { + memcpy(ip, &((struct sockaddr_in*)rp->ai_addr)->sin_addr, 4); + if (socket_connect4(sock, ip, port) == 0) { + freeaddrinfo(result); + return sock; // Success + } } close(sock); } -- cgit v1.2.3-55-g7522