Details
- Reviewers
bapt - Group Reviewers
desktop - Commits
- rG8fd1953b7eb2: bin/uuidgen: add support for v4 uuids
rGf176fe8e7f63: bin/uuidgen: add support for v4 uuids
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Buildable 48724 Build 45610: arc lint + arc unit
Event Timeline
only small style issue.
bin/uuidgen/uuidgen.1 | ||
---|---|---|
57 | You probably don't want this, as your version does not call the uuidgen(2) syscall. | |
bin/uuidgen/uuidgen.c | ||
54 | style issue: should be return(-1) | |
56 | to respect style, this should be declare at the top of the function. | |
58 | same, this should be declare at the top of the function, followed by an empty line. | |
71 | should be return (0); |
Should this version become the default? On the one hand, it has POLA violation potential, on the other hand, it's what the command does under another system.
bin/uuidgen/uuidgen.1 | ||
---|---|---|
55 | This grammar looks wrong. It doesn't help that the terms as defined by the RFC are confusing. | |
57 | Do we want to remove the other cross reference a couple of lines below? | |
bin/uuidgen/uuidgen.c | ||
54 | bapt missed the space, he meant return (-1). | |
60 | style(9) doesn't allow this comment style yet. | |
133 | If you want to improve style of the cast, just remove it. |
I would do it in 2 steps, first implement v4 and MFC this change everywhere.
2, make v4 the default (meaning we need an argument for the v1). and document it for 14.0R
bin/uuidgen/uuidgen.c | ||
---|---|---|
64 | Is this the* a typo? |
beside the typo @pstef points at, LGTM please before pushing don't forget to bump the date of the manpage, and I think you can mark this as "MFC after: 1 week"
Only uuidgen(1), the utility? I'd like uuidgen(2), the syscall, to use V4 by default, similar to NetBSD. For example, wlroots gave up on uuid_create(3) because it's not random compared to OpenBSD and NetBSD. For another example, uuidgen(2) leaks MAC-based UUIDs into GPT labels, ZFS hostid, etc. that maybe shared with untrusted parties and not configurable unlike, say, IPv6 via net.inet6.ip6.use_tempaddr=1.