[SSSD] [PATCH] IPA: Handle NULL members in process_members()

Lukas Slebodnik lslebodn at redhat.com
Tue Oct 14 15:28:36 UTC 2014


On (14/10/14 14:27), Jakub Hrozek wrote:
>Hi,
>
>I stumbled upon a crash when reviewing Pavel's recent subdomain fix against
>an IPA 3.3 server. I'm not sure if it's the right way to fix the problem,
>normally I would prefer a { NULL } array so the loop falls through, but
>this quick patch allowed me to at least continue with the review..

>From 4eb6b369127a4ef896036cdcbef7fd03f5b10e7f Mon Sep 17 00:00:00 2001
>From: Jakub Hrozek <jhrozek at redhat.com>
>Date: Tue, 14 Oct 2014 14:15:25 +0200
>Subject: [PATCH] IPA: Handle NULL members in process_members()
>
>---
> src/providers/ipa/ipa_s2n_exop.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
>diff --git a/src/providers/ipa/ipa_s2n_exop.c b/src/providers/ipa/ipa_s2n_exop.c
>index 0d5c35678efda5a87fa0d9164542cbb89ff4edf9..680340688fd983bd131d382b11cad2963a8088b2 100644
>--- a/src/providers/ipa/ipa_s2n_exop.c
>+++ b/src/providers/ipa/ipa_s2n_exop.c
>@@ -1126,6 +1126,11 @@ static errno_t process_members(struct sss_domain_info *domain,
>     struct sss_domain_info *obj_domain;
>     struct sss_domain_info *parent_domain;
> 
>+    if (members == NULL) {
>+        DEBUG(SSSDBG_TRACE_INTERNAL, "No members\n");
>+        return EOK;
>+    }
>+
>     tmp_ctx = talloc_new(NULL);
>     if (tmp_ctx == NULL) {
>         DEBUG(SSSDBG_OP_FAILURE, "talloc_new failed.\n");

make sense.

It would be good to log name of group, but it cannot be done
in function process_members.

There are possible solutions:
   * add extra argument just for debug message
   * return different error code, which will be special cased in calling
     function (ipa_s2n_save_objects).
   * add another trace debug message before calling function process_members.

LS



More information about the sssd-devel mailing list