我正在尝试通过引用函数(http://www.ietf.org/rfc/rfc4122.txt)来生成 v5 UUID:
/* uuid_create_sha1_from_name -- create a version 5 (SHA-1) UUID
using a "name" from a "name space" */
void uuid_create_sha1_from_name(
uuid_t *uuid, /* resulting UUID */
uuid_t nsid, /* UUID of the namespace */
void *name, /* the name from which to generate a UUID */
int namelen /* the length of the name */
);
uuid_t nsid
我已经阅读了帮助,但我仍然不清楚上述函数的 2nd( ) 和 3rd ( void *name
) 参数有什么区别?
有人可以用一个例子解释我上面的内容吗?
我还想了解以下在 RFC4122 链接中的含义,它对第二个参数有什么意义吗?
/* Name string is a URL */
uuid_t NameSpace_URL = { /* 6ba7b811-9dad-11d1-80b4-00c04fd430c8 */
0x6ba7b811,
0x9dad,
0x11d1,
0x80, 0xb4, 0x00, 0xc0, 0x4f, 0xd4, 0x30, 0xc8
};