Bug #394

built-in implementation for uuid generation generates rfc 4122 non-conformant uuids

Added by David Patrick 143 days ago. Updated 137 days ago.

Status:Rejected Start:03/07/2010
Priority:Normal Due date:
To:Paul Beckingham % Done:

0%

Category:core Spent time: -
Target version:1.9.1 - Kuwagata

Description

(according to Helmut, on IRC)

uhm. your non-uuid/uuid.h std::string uuid() implementation is buggy. as it generates random uuids the first digit of the third block should be the constant digit 4.
See http://en.wikipedia.org/wiki/Uuid Version 4
I think it to be a bug, because the uuids generated are just random strings and don't follow the uuid rfc, so they technically are not uuids. the simplest way to avoid it is to link against libuuid (debian does not do this).
in src/util.cpp:
- id14 = randomHexDigit ();
+ id14 = '4';
one would have to read http://tools.ietf.org/html/rfc4122 to be sure on that.
only the built-in implementation is flawed, using libuuid (which should be automatically enabled when available) is not buggy.
you can also refer to section 4.4 of rfc4122

History

Updated by Federico Hernandez 140 days ago

  • Status changed from New to Assigned
  • To changed from Paul Beckingham to Federico Hernandez
  • Priority changed from High to Normal

Updated by David Patrick 139 days ago

  • Subject changed from built-in implementation for uuid generation genereats rfc 4122 non-conformant uuids to built-in implementation for uuid generation generates rfc 4122 non-conformant uuids

Updated by Paul Beckingham 137 days ago

  • Status changed from Assigned to Rejected
  • To changed from Federico Hernandez to Paul Beckingham

This is a waste of time. This isn't a bug.

I have no concerns about task UUIDs colliding with other MAC, DCE, MD5 or SHA-1 based UUIDs, because task UUIDs are not intermingled in a common namespace.

Also available in: Atom PDF