uuid: relax UUID value validation
This patch completely relaxes UUID checks and accepts an arbitrary 128-bit sequence as an UUID for binary data. String representations still should match the grammars in RFC 4122, Section 3 [1] and RFC 9562, Section 4 [2]. [1]: https://datatracker.ietf.org/doc/html/rfc4122#section-3 [2]: https://datatracker.ietf.org/doc/html/rfc9562#name-uuid-format Closes #5444 @TarantoolBot document Title: uuid: relaxed UUID validation [The UUID module documentation][1] mentions that Tarantool generates UUIDs following the rules for RFC 4122,[version 4, variant 1][2]. It is worth mentioning that the user can store an arbitrary 128-bit sequence as an UUID for binary data. String representations still should match the grammars in RFC 4122, [Section 3][3], and RFC 9562, [Section 4][4]. [1]: https://www.tarantool.io/en/doc/latest/reference/reference_lua/uuid/ [2]: https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_(random) [3]: https://datatracker.ietf.org/doc/html/rfc4122#section-3 [4]: https://datatracker.ietf.org/doc/html/rfc9562#name-uuid-format
Showing
- changelogs/unreleased/gh-5444-relax-uuid-validation.md 4 additions, 0 deletionschangelogs/unreleased/gh-5444-relax-uuid-validation.md
- src/box/sql/mem.c 1 addition, 2 deletionssrc/box/sql/mem.c
- src/lib/core/mp_uuid.c 0 additions, 5 deletionssrc/lib/core/mp_uuid.c
- src/lib/core/tt_uuid.c 0 additions, 3 deletionssrc/lib/core/tt_uuid.c
- src/lib/core/tt_uuid.h 1 addition, 12 deletionssrc/lib/core/tt_uuid.h
- test/app-luatest/gh_5444_relax_uuid_validation_test.lua 46 additions, 0 deletionstest/app-luatest/gh_5444_relax_uuid_validation_test.lua
- tools/tarantool-gdb.py 0 additions, 8 deletionstools/tarantool-gdb.py
Loading
Please register or sign in to comment