Re: [PATCH] libmultipathd Avoid parsing errors due to unsupported designators

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 23, 2023 at 08:23:24PM +0000, Martin Wilck wrote:
> On Mon, 2023-03-20 at 12:22 -0700, Brian Bunker wrote:
> > Unsupported designators, even if they are correct, will result
> > in parsing errors. Add support for these two:
> > 
> > Logical Unit Group (0x6)
> > Vendor Specific (0x0)
> > 
> > Mar 20 13:37:35 init107-18 multipath[45016]: parse_vpd_pg83:
> > invalid device designator at offset 87: 01060004
> > Mar 20 13:37:35 init107-18 multipath[45016]: parse_vpd_pg83:
> > invalid device designator at offset 131: 02000005
> > 
> > Thanks,
> > Brian
> 
> Thanks. I've modified your patch as attached.
> 
> Martin
> 

> From 9edbc2b6154786a9e7bb38890d023301c65c8a6a Mon Sep 17 00:00:00 2001
> From: Brian Bunker <brian@xxxxxxxxxxxxxxx>
> Date: Mon, 20 Mar 2023 12:22:02 -0700
> Subject: [PATCH] libmultipathd Avoid parsing errors due to unsupported
>  designators
> 
> Unsupported designators, even if they are correct, will result
> in parsing errors. Add support for these two:
> 
> Logical Unit Group (0x6)
> Vendor Specific (0x0)
> 
> Mar 20 13:37:35 init107-18 multipath[45016]: parse_vpd_pg83:
> invalid device designator at offset 87: 01060004
> Mar 20 13:37:35 init107-18 multipath[45016]: parse_vpd_pg83:
> invalid device designator at offset 131: 02000005
> 
> Thanks,
> Brian
> 
> mwilck: added descriptor type 7 (MD5) for completeness.
> 
> Signed-off-by: Brian Bunker <brian@xxxxxxxxxxxxxxx>
> Signed-off-by: Martin Wilck <mwilck@xxxxxxxx>
Reviewed-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx>

> ---
>  libmultipath/discovery.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c
> index 3a5ba17..6865cd9 100644
> --- a/libmultipath/discovery.c
> +++ b/libmultipath/discovery.c
> @@ -1211,6 +1211,17 @@ parse_vpd_pg83(const unsigned char *in, size_t in_len,
>  			invalid = (d[3] < 8);
>  			new_prio = 2;
>  			break;
> +		case 0x6:
> +			/* Logical Unit Group */
> +			invalid = (d[3] != 4);
> +			break;
> +		case 0x7:
> +			/* MD5 logical unit designator */
> +			invalid = (d[3] != 16);
> +			break;
> +		case 0x0:
> +			/* Vendor Specific */
> +			break;
>  		case 0xa:
>  			condlog(2, "%s: UUID identifiers not yet supported",
>  				__func__);
> -- 
> 2.39.2
> 

--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://listman.redhat.com/mailman/listinfo/dm-devel




[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux