aboutsummaryrefslogtreecommitdiffstats
path: root/acl.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-12-28 07:44:13 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-12-28 07:44:13 +0000
commitfdf4efefb93d2baedab0d31bb0e3d05f48bb80d5 (patch)
treef5e7d8a1fa13fb43a06d79d557f1d2d9c29197f4 /acl.c
parentc423c07af0c6af6760ff63b8aaec6310755b9430 (diff)
Fix leak of file descriptors in odd networking situations
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4564 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'acl.c')
-rwxr-xr-xacl.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/acl.c b/acl.c
index b2c619f8b..f4daaab2a 100755
--- a/acl.c
+++ b/acl.c
@@ -259,11 +259,13 @@ int ast_ouraddrfor(struct in_addr *them, struct in_addr *us)
sin.sin_addr = *them;
if (connect(s, (struct sockaddr *)&sin, sizeof(sin))) {
ast_log(LOG_WARNING, "Cannot connect\n");
+ close(s);
return -1;
}
slen = sizeof(sin);
if (getsockname(s, (struct sockaddr *)&sin, &slen)) {
ast_log(LOG_WARNING, "Cannot get socket name\n");
+ close(s);
return -1;
}
close(s);