Re: [PATCH v2] prism54: prism54_get_encode() test below 0 on unsigned index

From: Luis R. Rodriguez
Date: Sun Apr 27 2008 - 15:48:50 EST


On Sun, Apr 27, 2008 at 5:25 AM, Roger While <simrw@xxxxxxxxxxxx> wrote:
> Luis Rodriguez wrote :
>
>
>
> > The check for -1 seems silly lets just remove its use.
> >
> > Signed-off-by: Luis R. Rodriguez <lrodriguez@xxxxxxxxxxx>
> >
> > diff --git a/drivers/net/wireless/prism54/isl_ioctl.c
> b/drivers/net/wireless/prism54/isl_ioctl.c
> > index 5b375b2..7e2d3b6 100644
> > --- a/drivers/net/wireless/prism54/isl_ioctl.c
> > +++ b/drivers/net/wireless/prism54/isl_ioctl.c
> > @@ -1158,7 +1158,7 @@ prism54_get_encode(struct net_device *ndev, struct
> iw_request_info *info,
> > {
> > islpci_private *priv = netdev_priv(ndev);
> > struct obj_key *key;
> > - u32 devindex, index = (dwrq->flags & IW_ENCODE_INDEX) - 1;
> > + u32 devindex, index = (dwrq->flags & IW_ENCODE_INDEX);
> > u32 authen = 0, invoke = 0, exunencrypt = 0;
> > int rvalue;
> > union oid_res_t r;
> > @@ -1186,7 +1186,7 @@ prism54_get_encode(struct net_device *ndev, struct
> iw_request_info *info,
> > rvalue |= mgt_get_request(priv, DOT11_OID_DEFKEYID, 0, NULL, &r);
> > devindex = r.u;
> > /* Now get the key, return it */
> > - if (index == -1 || index > 3)
> > + if (!index || index > 3)
> > /* no index provided, use the current one */
> > index = devindex;
> > rvalue |= mgt_get_request(priv, DOT11_OID_DEFKEYX, index, NULL,
> &r);
> >
>
> This does not look right to me. Should this not be -
> if (!index || index > 4)
> ....
> else
> index -= 1;
> (Or alternatively pass index -1 to mgt_get_request)
>
> Also 5 lines further on we have -
> /* return the used key index */
> dwrq->flags |= devindex + 1;
> which looks suspect.

Yeah and you're patch already went in. Its OK, was just not likin the -1 stuff.

Luis
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/