[PATCH] Fix compiler warning
Jeremy Allison
jra at samba.org
Tue Oct 20 16:47:27 UTC 2015
On Tue, Oct 20, 2015 at 12:44:57PM +0530, Anoop C S wrote:
> On Fri, 2015-10-16 at 10:33 -0700, Jeremy Allison wrote:
> > On Fri, Oct 16, 2015 at 01:38:38PM +0200, Michael Adam wrote:
> > > On 2015-10-16 at 16:58 +0530, Anoop C S wrote:
> > > > Hi,
> > > >
> > > > Please see the attached patch which fixes a compiler warning from
> > > > sysquotas_nfs.c
> > >
> > > To me, this looks good. I also already discussed this with Anoop.
> > > All definitions of the enum I can find start with 1.
> > > But I don't know all the history. This code originally comes from
> > > source3/smbd/quotas.c, added in 2001:
> > > f439f72ceec665dbd1eae367eb5d7302d8a3338d
> > > Has the definition been different back then? ...
> > >
> > > So I tentatively give my review.
> > > (Barring explanation why we need the 0 case... ;-)
> >
> > No, it's good. If you look at the zero case it's
> > merely being used as a different error case, which is already
> > correctly handled in default:
> >
> > I'll push. Thanks Anoop !
> >
> > > If this is OK, then we need the corresponding patch to
> > > smbd/quotas.c, Anoop.
> >
> > Yes please !
>
> I have attached the similar patch for smbd/quotas.c. Do we need to
> separate out different switch cases for quota status here with
> corresponding DEBUG messages?
This patch doesn't work as-is, as it removes the 'goto out;'
part which isn't present in default:
I think this patch plus an additional change to the
error message and additional 'goto out;' in default:
would be better.
Thanks !
Jeremy.
> From b29782609531545e16b274d8f67850eb3e5db855 Mon Sep 17 00:00:00 2001
> From: Anoop C S <anoopcs at redhat.com>
> Date: Tue, 20 Oct 2015 11:23:23 +0530
> Subject: [PATCH] smbd/quotas: Remove invalid quota status switch case
>
> getquota_rslt structure from rquota.h defines the enum
> named status whose values start from 1. But in quotas.c
> we have an invalid check for status 0. This change is
> to remove that particular switch case.
>
> Signed-off-by: Anoop C S <anoopcs at redhat.com>
> ---
> source3/smbd/quotas.c | 11 +++--------
> 1 file changed, 3 insertions(+), 8 deletions(-)
>
> diff --git a/source3/smbd/quotas.c b/source3/smbd/quotas.c
> index c64b63a..77d70b4 100644
> --- a/source3/smbd/quotas.c
> +++ b/source3/smbd/quotas.c
> @@ -171,17 +171,12 @@ static bool nfs_quotas(char *nfspath, uid_t euser_id, uint64_t *bsize, uint64_t
> }
>
> /*
> - * gqr.status returns 0 if the rpc call fails, 1 if quotas exist, 2 if there is
> - * no quota set, and 3 if no permission to get the quota. If 0 or 3 return
> - * something sensible.
> + * gqr.status returns 1 if quotas exist, 2 if there is
> + * no quota set, and 3 if no permission to get the quota.
> + * If 3, return something sensible.
> */
>
> switch (gqr.status) {
> - case 0:
> - DEBUG(9,("nfs_quotas: Remote Quotas Failed! Error \"%i\" \n", gqr.status));
> - ret = False;
> - goto out;
> -
> case 1:
> DEBUG(9,("nfs_quotas: Good quota data\n"));
> D.dqb_bsoftlimit = gqr.getquota_rslt_u.gqr_rquota.rq_bsoftlimit;
> --
> 2.4.3
>
More information about the samba-technical
mailing list