Re: [PATCH] gpib: agilent_82357a: don't check a NULL serial string

From: Dave Penkler

Date: Fri Mar 27 2026 - 06:50:19 EST


On Thu, Mar 26, 2026 at 09:12:56AM -0400, Joe Simmons-Talbott wrote:
> The agilent_82357a driver uses the USB device serial string for device
> matching but does not verify that the string exists before passing it
> to strcmp().
>
> Verify that the device has a serial number before accessing it to avoid
> triggering a NULL-pointer dereference with devices that don't provide
> a serial number (iSerialNumber = 0).
>
> Similar to commit aa79f996eb41 ("i2c: cp2615: fix serial string
> NULL-deref at probe").
>
> Found by Claude:sonnet-4.5
>
> Signed-off-by: Joe Simmons-Talbott <joest@xxxxxxxxxx>
> ---
> drivers/gpib/agilent_82357a/agilent_82357a.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpib/agilent_82357a/agilent_82357a.c b/drivers/gpib/agilent_82357a/agilent_82357a.c
> index e1349afbf933..da046ea40f11 100644
> --- a/drivers/gpib/agilent_82357a/agilent_82357a.c
> +++ b/drivers/gpib/agilent_82357a/agilent_82357a.c
> @@ -1298,7 +1298,7 @@ static inline int agilent_82357a_device_match(struct usb_interface *interface,
> if (gpib_match_device_path(&interface->dev, config->device_path) == 0)
> return 0;
> if (config->serial_number &&
> - strcmp(usbdev->serial, config->serial_number) != 0)
> + (!usbdev->serial || strcmp(usbdev->serial, config->serial_number) != 0))
> return 0;
>
> return 1;
> --
> 2.53.0
>
Acked-by: Dave Penkler <dpenkler@xxxxxxxxx>