Hi, based on the feedback to v1 of this patch series regarding the JSON part, I've decided to roll a second version. There are some general fixes/improvements, but most of it basically boils down to a revamp of how JSON functionality is provided.
The "jsmn.h" library now remains unmodified in the JSON module "grub-core/lib/json/". Instead of adding convenience functions to it directly, there is now a new "include/grub/json.h" and "grub-core/lib/json/json.c", providing a full-blown GRUB-native interface. The upstream library is thus not exposed to any users of the JSON interface anymore. I've also documented the process in grub-dev.texi as wished. Regards Patrick Patrick Steinhardt (6): json: Import upstream jsmn-1.1.0 json: Implement wrapping interface bootstrap: Add gnulib's base64 module afsplitter: Move into its own module luks: Move configuration of ciphers into cryptodisk disk: Implement support for LUKS2 Makefile.util.def | 2 + bootstrap.conf | 3 +- conf/Makefile.extra-dist | 1 + docs/grub-dev.texi | 14 + docs/grub.texi | 2 +- grub-core/Makefile.core.def | 19 +- grub-core/disk/AFSplitter.c | 3 + grub-core/disk/cryptodisk.c | 163 ++++- grub-core/disk/luks.c | 190 +---- grub-core/disk/luks2.c | 672 ++++++++++++++++++ grub-core/lib/gnulib-patches/fix-base64.patch | 23 + grub-core/lib/json/jsmn.h | 468 ++++++++++++ grub-core/lib/json/json.c | 241 +++++++ include/grub/cryptodisk.h | 3 + include/grub/json.h | 69 ++ 15 files changed, 1695 insertions(+), 178 deletions(-) create mode 100644 grub-core/disk/luks2.c create mode 100644 grub-core/lib/gnulib-patches/fix-base64.patch create mode 100644 grub-core/lib/json/jsmn.h create mode 100644 grub-core/lib/json/json.c create mode 100644 include/grub/json.h -- 2.23.0 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel