On Tue, 2009-09-08 at 12:21 +0200, Sumit Bose wrote: > > ../../server/responder/nss/nsssrv_cmd.c: In function ‘fill_grent’: > > ../../server/responder/nss/nsssrv_cmd.c:1371: warning: ‘i’ may be > used > > uninitialized in this function > > The value of count might have an unexpected value, but in this case > fill_grent will return an error, too.
Yet this is bad, as the function is supposed to always return how many entries have been used, even in case of errors. Attached a patch to fix this, that makes it explicit. Simo. -- Simo Sorce * Red Hat, Inc * New York
>From 639f2883ed24668ccd09ecda6d7c7decf19cce81 Mon Sep 17 00:00:00 2001 From: Simo Sorce <sso...@redhat.com> Date: Tue, 8 Sep 2009 14:36:11 -0400 Subject: [PATCH] Make counter for used messages explicit. --- server/responder/nss/nsssrv_cmd.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/server/responder/nss/nsssrv_cmd.c b/server/responder/nss/nsssrv_cmd.c index 5b73be0..405dae8 100644 --- a/server/responder/nss/nsssrv_cmd.c +++ b/server/responder/nss/nsssrv_cmd.c @@ -1434,7 +1434,7 @@ static int fill_grent(struct sss_packet *packet, size_t nsize; size_t delim; size_t dom_len; - int i, ret, num, memnum; + int i, ret, num, memnum, used; size_t rzero, rsize; bool add_domain = dom->fqnames; const char *domain = dom->name; @@ -1450,6 +1450,7 @@ static int fill_grent(struct sss_packet *packet, num = 0; memnum = 0; + used = 0; /* first 2 fields (len and reserved), filled up later */ ret = sss_packet_grow(packet, 2*sizeof(uint32_t)); @@ -1460,7 +1461,7 @@ static int fill_grent(struct sss_packet *packet, rzero = 2*sizeof(uint32_t); rsize = 0; - for (i = 0; i < *count; i++) { + for (i = 0; i < *count; i++, used++) { msg = msgs[i]; /* new group */ @@ -1673,7 +1674,7 @@ static int fill_grent(struct sss_packet *packet, } done: - *count = i; + *count = used; if (num == 0) { /* if num is 0 most probably something went wrong, -- 1.6.2.5
_______________________________________________ sssd-devel mailing list sssd-devel@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/sssd-devel