summaryrefslogtreecommitdiffstats
path: root/src/sss_client/ssh/sss_ssh_knownhostsproxy.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sss_client/ssh/sss_ssh_knownhostsproxy.c')
-rw-r--r--src/sss_client/ssh/sss_ssh_knownhostsproxy.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/sss_client/ssh/sss_ssh_knownhostsproxy.c b/src/sss_client/ssh/sss_ssh_knownhostsproxy.c
index 544ea7198..1cfdf24d9 100644
--- a/src/sss_client/ssh/sss_ssh_knownhostsproxy.c
+++ b/src/sss_client/ssh/sss_ssh_knownhostsproxy.c
@@ -136,6 +136,8 @@ connect_socket(const char *host,
if (ret == EINTR || ret == EAGAIN) {
continue;
}
+ DEBUG(SSSDBG_OP_FAILURE,
+ ("poll() failed (%d): %s\n", ret, strerror(ret)));
goto done;
}
@@ -149,25 +151,31 @@ connect_socket(const char *host,
if (ret == EAGAIN || ret == EINTR || ret == EWOULDBLOCK) {
continue;
}
+ DEBUG(SSSDBG_OP_FAILURE,
+ ("read() failed (%d): %s\n", ret, strerror(ret)));
goto done;
} else if (res == 0) {
- ret = EOK;
- goto done;
+ break;
}
res = sss_atomic_write(i == 0 ? sock : 1, buffer, res);
if (res == -1) {
ret = errno;
+ DEBUG(SSSDBG_OP_FAILURE,
+ ("sss_atomic_write() failed (%d): %s\n",
+ ret, strerror(ret)));
goto done;
}
}
if (fds[i].revents & POLLHUP) {
- ret = EOK;
- goto done;
+ break;
}
}
}
+ ret = EOK;
+ DEBUG(SSSDBG_TRACE_FUNC, ("Connection closed\n"));
+
done:
if (ai) freeaddrinfo(ai);
if (sock >= 0) close(sock);
@@ -274,6 +282,8 @@ int main(int argc, const char **argv)
/* look up public keys */
ret = sss_ssh_get_ent(mem_ctx, SSS_SSH_GET_HOST_PUBKEYS, host, &ent);
if (ret != EOK) {
+ DEBUG(SSSDBG_CRIT_FAILURE,
+ ("sss_ssh_get_ent() failed (%d): %s\n", ret, strerror(ret)));
ERROR("Error looking up public keys\n");
}