From 47097806f13d93daffb73b4221f3f18a99f66b2b Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Tue, 1 Apr 2025 10:26:30 +0200 Subject: New public API gpgrt_strlist_* * src/strlist.c: Rename all functions to have a _gpgrt_strlist prefix. (append_to_strlist2, strlist_length): Remove. (_gpgrt_strlist_free): rtake care of the wipe flag. (_gpgrt_strlist_add): Add a flags arg to use it for prepend and append. Return an error on failure. (_gpgrt_strlist_tokenize): Ditto. (_gpgrt_strlist_copy): Chnage to return an error on failure. (_gpgrt_strlist_pop): Ditto. * src/Makefile.am (libgpg_error_la_SOURCES): Add strlist.c. * src/argparse.c (trim_spaces): Move to ... * src/stringutils.c (_gpgrt_trim_spaces): here and rename. * src/visibility.c: Add wrappers for all exported functions. * src/visibility.h: MArk exported functions as visisble. * src/gpg-error.def.in: Export new functions * src/gpg-error.vers: Ditto. * src/gpg-error.h.in (GPGRT_STRLIST_APPEND): New. (GPGRT_STRLIST_WIPE): New. (gpgrt_strlist_free): New. (gpgrt_strlist_add): New. (gpgrt_strlist_tokenize): New. (gpgrt_strlist_copy): New. (gpgrt_strlist_rev): New. (gpgrt_strlist_prev): New. (gpgrt_strlist_last): New. (gpgrt_strlist_pop): New. (gpgrt_strlist_find): New. (gpgrt_strlist_count): New inline function. -- This is a modified set of function as used by gpg for ages. These are quite useful functions and will be needed internally for some other planned features. The idea is to make their counterparts in gnupg wrapper around those new functions. After we have moved the secure memory stuff from Libgcrypt to here we can also implement a GPGRT_STRLICT_SECMEM flag to allow allocating strings here ion secure memory. For now we only have the WIPE flag which wipes the memory on free. --- NEWS | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'NEWS') diff --git a/NEWS b/NEWS index 4bade72..34250d2 100644 --- a/NEWS +++ b/NEWS @@ -1,14 +1,28 @@ Noteworthy changes in version 1.52 (unreleased) [C38/A38/R_] ----------------------------------------------- - * The KEY_WOW64_xxKEY flags can now be passed to the Regsiry read + * The KEY_WOW64_xxKEY flags can now be passed to the Registry read functions. * New command --getreg for gpg-error on Windows. + * New simple string list API. + * Interface changes relative to the 1.51 release: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - _gpgrt_w32_reg_query_string NEW (Windows only). + gpgrt_w32_reg_query_string NEW (Windows only). + gpgrt_strlist_t NEW type. + gpgrt_strlist_free NEW. + gpgrt_strlist_add NEW. + gpgrt_strlist_tokenize NEW. + gpgrt_strlist_copy NEW. + gpgrt_strlist_rev NEW. + gpgrt_strlist_prev NEW. + gpgrt_strlist_last NEW. + gpgrt_strlist_pop NEW. + gpgrt_strlist_find NEW. + GPGRT_STRLIST_APPEND NEW const. + GPGRT_STRLIST_WIPE NEW const. Release-info: https://dev.gnupg.org/T7385 -- cgit