summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShantanu Goel <sgoel@trade4.test-jc.tower-research.com>2012-06-18 08:49:10 -0400
committerJakub Hrozek <jhrozek@redhat.com>2012-10-01 10:21:59 +0200
commite23fceda5ed56d9679a4d1aebca054c392965b3e (patch)
tree89760f55e1076f2e45c2e8a75ead2b1d5a997439
parentf296b5868b74fc6d1260d970f92479982b62c74e (diff)
downloadsssd-e23fceda5ed56d9679a4d1aebca054c392965b3e.tar.gz
sssd-e23fceda5ed56d9679a4d1aebca054c392965b3e.tar.xz
sssd-e23fceda5ed56d9679a4d1aebca054c392965b3e.zip
Log message if close() fails in destructor.
-rw-r--r--src/responder/common/responder_common.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/responder/common/responder_common.c b/src/responder/common/responder_common.c
index b918bebb2..62c54faf0 100644
--- a/src/responder/common/responder_common.c
+++ b/src/responder/common/responder_common.c
@@ -87,7 +87,18 @@ static errno_t set_close_on_exec(int fd)
static int client_destructor(struct cli_ctx *ctx)
{
- if (ctx->cfd > 0) close(ctx->cfd);
+ errno_t ret;
+
+ if ((ctx->cfd > 0) && close(ctx->cfd) < 0) {
+ ret = errno;
+ DEBUG(SSSDBG_CRIT_FAILURE,
+ ("Failed to close fd [%d]: [%s]\n",
+ ctx->cfd, strerror(ret)));
+ }
+
+ DEBUG(SSSDBG_TRACE_INTERNAL,
+ ("Terminated client [%p][%d]\n",
+ ctx, ctx->cfd));
return 0;
}