[dm-devel] [PATCH] multipath: rlookup WWIDs with spaces by alias

Hannes Reinecke hare at suse.de
Mon Nov 14 09:17:54 UTC 2011


On 11/12/2011 05:54 AM, Benjamin Marzinski wrote:
> If a WWID contained spaces, the rlookup code wasn't able to look it up
> by its user_friendly_name, since the code was only reading the wwid till
> the first space.  It now reads to the end of the line.
>
> Signed-off-by: Benjamin Marzinski<bmarzins at redhat.com>
> ---
>   libmultipath/alias.c |    2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> Index: multipath-tools-110412/libmultipath/alias.c
> ===================================================================
> --- multipath-tools-110412.orig/libmultipath/alias.c
> +++ multipath-tools-110412/libmultipath/alias.c
> @@ -288,7 +288,7 @@ rlookup_binding(FILE *f, char **map_wwid
>   		curr_id = scan_devname(alias, NULL); /* TBD: Why this call? */
>   		if (curr_id>= id)
>   			id = curr_id + 1;
> -		wwid = strtok(NULL, " \t");
> +		wwid = strtok(NULL, "");
>   		if (!wwid){
>   			condlog(3,
>   				"Ignoring malformed line %u in bindings file",
>
Please, don't.

We keep on changing this one back and forth about every year.
(The original patch was by you, back in 2008. Then I changed it back 
because it breaks compability with existing configuration files. Now you 
go and change it _again_).

The real problem here is

'If the WWID contains spaces'

The WWID _never_ should contain spaces. I pretty certain we can't handle 
WWID with spaces in the bindings file; eg we don't have any quotation 
mechanism implemented.
So can't we just settle on 'The WWID must not contain spaces' ?

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare at suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)




More information about the dm-devel mailing list