On Tue, Oct 02, 2012 at 03:39:19PM +0200, Pavel Březina wrote: > https://fedorahosted.org/sssd/ticket/1514 > > See the commit message and ticket comments for more information. > > This patch introduces one of the possible solutions, but I suggest > to consider actually changing memory hierarchy in responders.
Instead of creating the boolean flag, what about iterating over the dp_requests table in the sss_responder_ctx_destructor, cancel the pending requests and remove the original sss_dp_req_destructor ? > > Currently, the hierarchy looks like this: > main_ctx->specific_ctx->rctx, where specific_ctx is one of the pam, > nss, sudo, etc. contexts. > > Does anybody know why it is not main_ctx->rctx->specific_ctx? This > would solve the issue as well and I personally think that it is more > logical. Hmm, I don't actually see any reason why the responder context is allocated below the specific context either. I discussed the hierarchy some more with Pavel and the proposal is to modify the hierarchy as follows: main_ctx --> rctx +--> dp_requests | +--> specific_ctx And then set a desctructor to dp_requests so that it is freed before specific_ctx is as destructors of the DP requests might need to access data from the specific_ctx. Stephen, you probably know the hierarchy of the DP requests the best, what do you think? _______________________________________________ sssd-devel mailing list sssd-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/sssd-devel