Hi Juan,
2008/10/9 Juan Lang juan.lang@gmail.com:
- RtlGenRandom(Uuid, sizeof(*Uuid));
- /* Clear the version bits and set the version (4) */
- Uuid->Data3 &= 0x0fff;
- Uuid->Data3 |= (4 << 12);
The RFC recommends the following:
o Set the two most significant bits (bits 6 and 7) of the clock_seq_hi_and_reserved to zero and one, respectively.
However, I don't see that done in your patch. Also, I don't know what compatibility effect changing the algorithm will have on applications. Have you checked which algorithm recent versions of Windows use and what bits are set?
Hi Rob,
The RFC recommends the following:
o Set the two most significant bits (bits 6 and 7) of the clock_seq_hi_and_reserved to zero and one, respectively.
However, I don't see that done in your patch.
Thanks, I missed that.
Have you checked which algorithm recent versions of Windows use and what bits are set?
Yes, they use this version of the algorithm, and have for some time now. I just verified on Win2k. (So does uuidgen on Linux.) UuidCreateSequential may use the old algorithm, I'm not sure.
I'll update the patch. It'll still cause intermittent failures in the quartz tests, which I don't believe are truly caused by the change, so perhaps it'll never get in. --Juan