
25 Jul
2011
25 Jul
'11
11:37 p.m.
Dear "Jason Hobbs",
In message 1309366710-17400-2-git-send-email-jason.hobbs@calxeda.com you wrote:
Signed-off-by: Jason Hobbs jason.hobbs@calxeda.com
...
+void uuid_str_to_bin(const char *uuid, unsigned char *out) +{
- uint16_t tmp16;
- uint32_t tmp32;
- uint64_t tmp64;
- if (!uuid || !out)
return;
- tmp32 = cpu_to_le32(simple_strtoul(uuid, NULL, 16));
- memcpy(out, &tmp32, 4);
- tmp16 = cpu_to_le16(simple_strtoul(uuid + 9, NULL, 16));
- memcpy(out + 4, &tmp16, 2);
- tmp16 = cpu_to_le16(simple_strtoul(uuid + 14, NULL, 16));
- memcpy(out + 6, &tmp16, 2);
- tmp16 = cpu_to_be16(simple_strtoul(uuid + 19, NULL, 16));
- memcpy(out + 8, &tmp16, 2);
- tmp64 = cpu_to_be64(simple_strtoull(uuid + 24, NULL, 16));
- memcpy(out + 10, (char *)&tmp64 + 2, 6);
+}
I asked this before, and I repeat my question: Should we not add at least basic error checking? Like verifying that the input string is actually long enough for what we are doing here?
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
1st Old Man: Gee, its windy today.
2nd Old Man: No it's not... it's Thursday.
3rd Old Man: Yeh, me too. Let's go for a beer.