1
0
mirror of https://git.libssh.org/projects/libssh.git synced 2025-07-31 00:03:07 +03:00

examples: Fix a possible resource leak in sshd_direct-tcpip

CID 1398985

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
This commit is contained in:
Andreas Schneider
2019-05-28 08:36:21 +02:00
parent 18a89c6ec2
commit 7e344ca052

View File

@ -380,6 +380,7 @@ static int open_tcp_socket(ssh_message msg) {
host = gethostbyname(dest_hostname); host = gethostbyname(dest_hostname);
if (host == NULL) { if (host == NULL) {
close(forwardsock);
_ssh_log(SSH_LOG_WARNING, "=== open_tcp_socket", "ERROR, no such host: %s", dest_hostname); _ssh_log(SSH_LOG_WARNING, "=== open_tcp_socket", "ERROR, no such host: %s", dest_hostname);
return -1; return -1;
} }
@ -390,6 +391,7 @@ static int open_tcp_socket(ssh_message msg) {
sin.sin_port = htons(dest_port); sin.sin_port = htons(dest_port);
if (connect(forwardsock, (struct sockaddr *)&sin, sizeof(sin)) < 0) { if (connect(forwardsock, (struct sockaddr *)&sin, sizeof(sin)) < 0) {
close(forwardsock);
_ssh_log(SSH_LOG_WARNING, "=== open_tcp_socket", "ERROR connecting: %s", strerror(errno)); _ssh_log(SSH_LOG_WARNING, "=== open_tcp_socket", "ERROR connecting: %s", strerror(errno));
return -1; return -1;
} }