projects
/
citadel.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
4adfcf1
)
Memleak: sock_connect() needs to call freeaddrinfo()
author
Wilfried Goesgens
<dothebart@citadel.org>
Sun, 14 Nov 2010 22:07:10 +0000
(23:07 +0100)
committer
Wilfried Goesgens
<dothebart@citadel.org>
Sun, 14 Nov 2010 22:07:10 +0000
(23:07 +0100)
citadel/clientsocket.c
patch
|
blob
|
history
diff --git
a/citadel/clientsocket.c
b/citadel/clientsocket.c
index d8a3e6b017de5a3d919d6303b4c0957542afd3d0..54bceb7a5f4468ffbd91a1f06071a925e3e47765 100644
(file)
--- a/
citadel/clientsocket.c
+++ b/
citadel/clientsocket.c
@@
-96,10
+96,12
@@
int sock_connect(char *host, char *service)
sock = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);
if (sock < 0) {
CtdlLogPrintf(CTDL_ERR, "socket() failed: %s\n", strerror(errno));
+ freeaddrinfo(res);
return(-1);
}
rc = connect(sock, ai->ai_addr, ai->ai_addrlen);
if (rc >= 0) {
+ freeaddrinfo(res);
return(sock);
}
else {
@@
-107,7
+109,7
@@
int sock_connect(char *host, char *service)
close(sock);
}
}
-
+ freeaddrinfo(res);
return(-1);
}