Re: [PATCH 3/9] staging: wlan-ng: use "%*pE" for serial number

From: Kees Cook
Date: Thu Sep 05 2019 - 17:30:46 EST


On Thu, Sep 05, 2019 at 03:44:27PM -0400, J. Bruce Fields wrote:
> From: "J. Bruce Fields" <bfields@xxxxxxxxxx>
>
> Almost every user of "%*pE" in the kernel uses just bare "%*pE". This
> is the only user of "%pEhp". I can't see why it's needed.

Agreed, though to be clear, before, I think every byte in the string
is hex-escaped. After this patch, the space and specials will get
character-based escapes and everything else will switch to octal escapes.

i.e. a string of newline, capital-a, NUL will change from "\x0a\x41" to
"\n\101".

Given that this is only reported to dmesg, it is probably fine. Also,
it's staging and prism2 ... is anyone actually using this?

Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>

-Kees

>
> Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>
> ---
> drivers/staging/wlan-ng/prism2sta.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/wlan-ng/prism2sta.c b/drivers/staging/wlan-ng/prism2sta.c
> index fb5441399131..8f25496188aa 100644
> --- a/drivers/staging/wlan-ng/prism2sta.c
> +++ b/drivers/staging/wlan-ng/prism2sta.c
> @@ -846,7 +846,7 @@ static int prism2sta_getcardinfo(struct wlandevice *wlandev)
> result = hfa384x_drvr_getconfig(hw, HFA384x_RID_NICSERIALNUMBER,
> snum, HFA384x_RID_NICSERIALNUMBER_LEN);
> if (!result) {
> - netdev_info(wlandev->netdev, "Prism2 card SN: %*pEhp\n",
> + netdev_info(wlandev->netdev, "Prism2 card SN: %*pE\n",
> HFA384x_RID_NICSERIALNUMBER_LEN, snum);
> } else {
> netdev_err(wlandev->netdev, "Failed to retrieve Prism2 Card SN\n");
> --
> 2.21.0
>

--
Kees Cook