lkml.org 
[lkml]   [2016]   [Apr]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v3 04/10] lib/uuid: introduce few more generic helpers for UUID
From
Date
On Tue, 2016-04-05 at 16:56 +0300, Andy Shevchenko wrote:
> There are new helpers in this patch:
>
> uuid_is_valid checks if a UUID is valid
> uuid_be_to_bin converts from string to binary (big
> endian)
> uuid_le_to_bin converts from string to binary (little
> endian)
>
> They will be used in future, i.e. in the following patches in the
> series.
>
> This also moves indices arrays to lib/uuid.c to be shared accross
> modules.
>

> --- a/lib/uuid.c
> +++ b/lib/uuid.c

> +static int __uuid_to_bin(const char *uuid, __u8 b[16], const u8
> ei[16])
> +{
> + static const u8 si[16] =
> {0,2,4,6,9,11,14,16,19,21,24,26,28,30,32,34};
> + unsigned int i;
> +
> + if (uuid_is_valid(uuid))

Oops, sorry, typo is here, should be negative check.

if (!uuid_is_valid(uuid))


> + return -EINVAL;
> +
> + for (i = 0; i < 16; i++) {
> + int hi = hex_to_bin(uuid[si[i]] + 0);
> + int lo = hex_to_bin(uuid[si[i]] + 1);
> +
> + b[ei[i]] = (hi << 4) | lo;
> + }
> +
> + return 0;
> +}

--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

\
 
 \ /
  Last update: 2016-04-05 16:41    [W:0.184 / U:0.244 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site