Messages in this thread | | | Subject | Re: [PATCH v3 04/10] lib/uuid: introduce few more generic helpers for UUID | From | Andy Shevchenko <> | Date | Tue, 05 Apr 2016 17:15:58 +0300 |
| |
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
| |