lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <9442473c-27fc-12d5-d520-206796e4edfa@datenfreihafen.org>
Date:   Tue, 16 Nov 2021 19:31:46 +0100
From:   Stefan Schmidt <stefan@...enfreihafen.org>
To:     Alexander Aring <aahringo@...hat.com>, mudongliangabcd@...il.com
Cc:     linux-wpan@...r.kernel.org, netdev@...r.kernel.org
Subject: Re: [PATCH wpan] net: ieee802154: handle iftypes as u32

Hello.

On 12.11.21 04:09, Alexander Aring wrote:
> This patch fixes an issue that an u32 netlink value is handled as a
> signed enum value which doesn't fit into the range of u32 netlink type.
> If it's handled as -1 value some BIT() evaluation ends in a
> shift-out-of-bounds issue. To solve the issue we set the to u32 max which
> is s32 "-1" value to keep backwards compatibility and let the followed enum
> values start counting at 0. This brings the compiler to never handle the
> enum as signed and a check if the value is above NL802154_IFTYPE_MAX should
> filter -1 out.
> 
> Fixes: f3ea5e44231a ("ieee802154: add new interface command")
> Signed-off-by: Alexander Aring <aahringo@...hat.com>
> ---
>   include/net/nl802154.h | 7 ++++---
>   1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/include/net/nl802154.h b/include/net/nl802154.h
> index ddcee128f5d9..145acb8f2509 100644
> --- a/include/net/nl802154.h
> +++ b/include/net/nl802154.h
> @@ -19,6 +19,8 @@
>    *
>    */
>   
> +#include <linux/types.h>
> +
>   #define NL802154_GENL_NAME "nl802154"
>   
>   enum nl802154_commands {
> @@ -150,10 +152,9 @@ enum nl802154_attrs {
>   };
>   
>   enum nl802154_iftype {
> -	/* for backwards compatibility TODO */
> -	NL802154_IFTYPE_UNSPEC = -1,
> +	NL802154_IFTYPE_UNSPEC = (~(__u32)0),
>   
> -	NL802154_IFTYPE_NODE,
> +	NL802154_IFTYPE_NODE = 0,
>   	NL802154_IFTYPE_MONITOR,
>   	NL802154_IFTYPE_COORD,
>   


This patch has been applied to the wpan tree and will be
part of the next pull request to net. Thanks!

regards
Stefan Schmidt

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ