On Fri, Jul 12, 2024 at 07:14:25PM +0200, Martin Wilck wrote:
> Also, make the function static.
> 
Reviewed-by: Benjamin Marzinski <[email protected]>
> Signed-off-by: Martin Wilck <[email protected]>
> ---
>  libmultipath/devmapper.c | 37 +++++++++++++++++++------------------
>  libmultipath/devmapper.h |  1 -
>  2 files changed, 19 insertions(+), 19 deletions(-)
> 
> diff --git a/libmultipath/devmapper.c b/libmultipath/devmapper.c
> index 4bff62d..a63154f 100644
> --- a/libmultipath/devmapper.c
> +++ b/libmultipath/devmapper.c
> @@ -806,43 +806,44 @@ out:
>       return r;
>  }
>  
> -/*
> - * returns:
> - *    1 : match
> - *    0 : no match
> - *   -1 : empty map, or more than 1 target
> - */
> -int dm_type(const char *name, char *type)
> +enum {
> +     DM_TYPE_NOMATCH = 0,
> +     DM_TYPE_MATCH,
> +     /* more than 1 target */
> +     DM_TYPE_MULTI,
> +     /* empty map */
> +     DM_TYPE_EMPTY,
> +     DM_TYPE_ERR,
> +};
> +static int dm_type_match(const char *name, char *type)
>  {
> -     int r = 0;
>       struct dm_task __attribute__((cleanup(cleanup_dm_task))) *dmt = NULL;
>       uint64_t start, length;
>       char *target_type = NULL;
>       char *params;
>  
>       if (!(dmt = libmp_dm_task_create(DM_DEVICE_TABLE)))
> -             return 0;
> +             return DM_TYPE_ERR;
>  
>       if (!dm_task_set_name(dmt, name))
> -             goto out;
> +             return DM_TYPE_ERR;
>  
>       if (!libmp_dm_task_run(dmt)) {
>               dm_log_error(3, DM_DEVICE_TABLE, dmt);
> -             goto out;
> +             return DM_TYPE_ERR;
>       }
>  
>       /* Fetch 1st target */
>       if (dm_get_next_target(dmt, NULL, &start, &length,
>                              &target_type, &params) != NULL)
>               /* multiple targets */
> -             r = -1;
> +             return DM_TYPE_MULTI;
>       else if (!target_type)
> -             r = -1;
> +             return DM_TYPE_EMPTY;
>       else if (!strcmp(target_type, type))
> -             r = 1;
> -
> -out:
> -     return r;
> +             return DM_TYPE_MATCH;
> +     else
> +             return DM_TYPE_NOMATCH;
>  }
>  
>  /*
> @@ -1426,7 +1427,7 @@ do_foreach_partmaps (const char * mapname,
>                   /*
>                    * if there is only a single "linear" target
>                    */
> -                 (dm_type(names->name, TGT_PART) == 1) &&
> +                 (dm_type_match(names->name, TGT_PART) == DM_TYPE_MATCH) &&
>  
>                   /*
>                    * and the uuid of the target is a partition of the
> diff --git a/libmultipath/devmapper.h b/libmultipath/devmapper.h
> index 19b79c5..ff28575 100644
> --- a/libmultipath/devmapper.h
> +++ b/libmultipath/devmapper.h
> @@ -46,7 +46,6 @@ int dm_map_present (const char *name);
>  int dm_map_present_by_uuid(const char *uuid);
>  int dm_get_map(const char *name, unsigned long long *size, char **outparams);
>  int dm_get_status(const char *name, char **outstatus);
> -int dm_type(const char *name, char *type);
>  int dm_is_mpath(const char *name);
>  
>  enum {
> -- 
> 2.45.2


Reply via email to