[dm-devel] [PATCH 08/12] libmultipath(coverity): fix "enum misuse" for find_multipaths

Martin Wilck mwilck at suse.com
Thu Jan 17 21:25:03 UTC 2019


On Thu, 2019-01-17 at 13:55 -0600, Benjamin Marzinski wrote:
> On Tue, Jan 08, 2019 at 11:54:05PM +0100, Martin Wilck wrote:
> > Signed-off-by: Martin Wilck <mwilck at suse.com>
> > ---
> >  libmultipath/dict.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/libmultipath/dict.c b/libmultipath/dict.c
> > index fd29abc..eaad4f1 100644
> > --- a/libmultipath/dict.c
> > +++ b/libmultipath/dict.c
> > @@ -327,7 +327,7 @@ def_find_multipaths_handler(struct config
> > *conf, vector strvec)
> >  	int i;
> >  
> >  	if (set_yes_no_undef(strvec, &conf->find_multipaths) == 0 &&
> > -	    conf->find_multipaths != YNU_UNDEF)
> > +	    conf->find_multipaths != FIND_MULTIPATHS_UNDEF)
> >  		return 0;
> 
> Is there some reason that I don't understand why YNU_UNDEF is
> problematic here, but not later in the function at the:
> 
>         if (conf->find_multipaths == YNU_UNDEF) {
>                 condlog(0, "illegal value for find_multipaths: %s",
> buff);
>                 conf->find_multipaths = DEFAULT_FIND_MULTIPATHS;
>         }
> 
> check?

Good catch. Maybe coverity would have found that in a second pass? Or I
was just too blind... As I said, this round of work on coverity was
disrupted by coverity's server downtime, which is still not fixed.

Anyway, this isn't wrong, only incomplete. I'd rather not resend the
whole series because of this. When coverity is up again, I'll do
another round of fixes.

Martin

-- 
Dr. Martin Wilck <mwilck at suse.com>, Tel. +49 (0)911 74053 2107
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)





More information about the dm-devel mailing list