From f7e32651e7dac302c941b16caa137c0c501e70bd Mon Sep 17 00:00:00 2001 From: Stephen Gallagher Date: Mon, 27 Apr 2009 08:18:06 -0400 Subject: Eliminate segfault on NSS and PAM responder startup. If the data provider is not yet available when NSS and PAM start, they will generate a segmentation fault when trying to configure their automatic reconnection to the Data Provider. I've now added code in sss_dp_init() to detect whether the dp_ctx is NULL and return EIO. --- server/responder/common/responder_common.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'server/responder/common') diff --git a/server/responder/common/responder_common.c b/server/responder/common/responder_common.c index 50cda623a..52be78063 100644 --- a/server/responder/common/responder_common.c +++ b/server/responder/common/responder_common.c @@ -554,6 +554,10 @@ int sss_process_init(TALLOC_CTX *mem_ctx, DEBUG(0, ("fatal error setting up backend connector\n")); return ret; } + else if (!rctx->dp_ctx) { + DEBUG(0, ("Data Provider is not yet available. Retrying.\n")); + return EIO; + } ret = sysdb_init(rctx, ev, cdb, NULL, &rctx->sysdb); if (ret != EOK) { -- cgit