On Sun, Nov 23, 2025 at 03:19:58AM +0200, Osama Abdelkader wrote: > Add a simple uuidgen utility that generates RFC 4122 compliant > UUIDs (version 4, random). Uses the existing generate_uuid() > function from libbb. > > Features: > - Generates standard format UUIDs: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx > - RFC 4122 version 4 compliant > - Minimal implementation (~1.1 kb) > - NOFORK applet for efficiency > > Signed-off-by: Osama Abdelkader <[email protected]> > --- > util-linux/uuidgen.c | 47 ++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 47 insertions(+) > create mode 100644 util-linux/uuidgen.c > > diff --git a/util-linux/uuidgen.c b/util-linux/uuidgen.c > new file mode 100644 > index 000000000..6c5fb6903 > --- /dev/null > +++ b/util-linux/uuidgen.c > @@ -0,0 +1,47 @@ > +/* vi: set sw=4 ts=4: */ > +/* > + * Mini uuidgen implementation for busybox > + * > + * Licensed under GPLv2 or later, see file LICENSE in this source tree. > + */ > +//config:config UUIDGEN > +//config: bool "uuidgen (1.1 kb)" > +//config: default y > +//config: help > +//config: Generate a UUID (Universally Unique Identifier) in RFC 4122 > format. > + > +//applet:IF_UUIDGEN(APPLET_NOFORK(uuidgen, uuidgen, BB_DIR_USR_BIN, > BB_SUID_DROP, uuidgen)) > + > +//kbuild:lib-$(CONFIG_UUIDGEN) += uuidgen.o > + > +//usage:#define uuidgen_trivial_usage > +//usage: "" > +//usage:#define uuidgen_full_usage "\n\n" > +//usage: "Generate a UUID (Universally Unique Identifier)" > + > +#include "libbb.h" > + > +/* This is a NOFORK applet. Be very careful! */ > + > +int uuidgen_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; > +int uuidgen_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) > +{ > + uint8_t uuid[16]; > + > + if (argv[1]) { > + bb_show_usage(); > + } > + > + generate_uuid(uuid); > + > + /* Format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx */ > + > printf("%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x\n", > + uuid[0], uuid[1], uuid[2], uuid[3], > + uuid[4], uuid[5], > + uuid[6], uuid[7], > + uuid[8], uuid[9], > + uuid[10], uuid[11], uuid[12], uuid[13], uuid[14], uuid[15]); > + > + return fflush_all(); > +} > + > -- > 2.43.0 > ping. _______________________________________________ busybox mailing list [email protected] https://lists.busybox.net/mailman/listinfo/busybox
Re: [PATCH] util-linux: add minimal uuidgen implementation
Osama Abdelkader via busybox Thu, 29 Jan 2026 13:36:21 -0800
- [PATCH] util-linux: add minimal uuidgen imple... Osama Abdelkader
- Re: [PATCH] util-linux: add minimal uuid... Kang-Che Sung
- Re: [PATCH] util-linux: add minimal ... Osama Abdelkader
- Re: [PATCH] util-linux: add minimal ... Osama Abdelkader
- Re: [PATCH] util-linux: add minimal uuid... Osama Abdelkader via busybox
- Re: [PATCH] util-linux: add minimal ... Hans Ulli Kroll via busybox
- Re: [PATCH] util-linux: add mini... Osama Abdelkader via busybox
