gpgrt 1.57 will come with gpgrt_fconcat. This can be used to get the sysconfig in a portable way:
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Tue, Dec 9
Thu, Dec 4
@werner For rCd5e3cbfd , my mingw (GCC version 14) complains about the function-return-type difference of the prototype with GetProcAddress.
Fri, Nov 28
Scute fixed in rSc3dc9c581631: w32: Use CSIDL_COMMON_APPDATA if available.
Thu, Nov 27
Wed, Nov 26
Okay, forward porting that patch is the easiest solution. Actually this is not enough: Users of Libgcrypt also need to make sure that the new sysconfig dir has the right permissions. That's a part for the installer and concrete ACLs may differ.
Tue, Nov 25
I examined the code of gnupg_sysconfdir in gnupg/common/homedir.c, if we could factor out things to gpgrt, so that something like gpgrt_fconcat with GPGRT_SYSCONFDIR can be implemented.
Nov 12 2025
I checked the code under gnupg/dirmngr. Those are no harm.
Nov 7 2025
Nov 6 2025
Applied to 1.11 branch.
Nov 5 2025
I think this is correct even on Unix in case someone really uses /usr/local/etc (which I consider problematic). But for Windows we need to determine this at runtime.
For gpgrt/argparse this could be an option (to remove hard-coded /etc):
Nov 3 2025
Oct 30 2025
Note that:
If we consider backporting this to 1.10/1.11 branch, we also need to apply: rCdef1d4ea8f66: random:jent: Fix build with address sanitizer.
@jukivili
Thanks for your feedback.
Oct 29 2025
There's GCRYPT_IN_ASAN_TEST environment variable check in tests/t-secmen.c and tests/t-sexp.c. Are those check needed after this change? Could they be removed?
For the initial attempt, I push: rCfe06287003a1: secmem: Handle HAVE_BROKEN_MLOCK for the case with ASAN.
This is better than nothing.
Oct 28 2025
Aug 15 2025
Aug 12 2025
Aug 11 2025
It's in master (to be 1.12), then, it's backported to 1.11.2, which is confirmed build well.
So, closing.
Aug 10 2025
Thanks for testing.
Aug 9 2025
Hello,
thank you all. I can confirm that 1.11.2 builds successfully on ppc64el with gcc-15 (Debian sid + experimental). Lacking access I have not be able to check alpha. I would suggest closing this report as fixed.
cu Andreas
Aug 5 2025
Aug 4 2025
1.11.2 has been release see T7642
Release done.
Jul 31 2025
In T7642#203189, @gniibe wrote:I wonder about GCC 15 preparation for the release. If it's good to have, three patches are needed to apply:
Jul 30 2025
Ok, thanks. I pushed the powerpc patches to master.
I pushed the longlong patch: rCb61a7661d017: mpi: Provide the function prototype of __udiv_qrnnd.
Jul 23 2025
IIUC, it's actually binutils version dependency (instead of GCC 15), perhaps.
Jul 21 2025
I tested Ubuntu's version of GCC-15 (powerpc64le cross-compiler) and did not see this build failure:
Jul 18 2025
In T7721#203182, @gniibe wrote:For PowerISA 3.00 Instructions issue, following patch may help:
diff --git a/configure.ac b/configure.ac index 6cc1e189..70d632af 100644 --- a/configure.ac +++ b/configure.ac @@ -2448,10 +2448,11 @@ AC_CACHE_CHECK([whether GCC inline assembler supports PowerISA 3.00 instructions else gcry_cv_gcc_inline_asm_ppc_arch_3_00=no AC_LINK_IFELSE([AC_LANG_PROGRAM( - [[__asm__(".text\n\t" + [[__asm__(".machine \"any\"\n" + ".text\n\t" ".globl testfn;\n" "testfn:\n" - "stxvb16x %r1,%v12,%v30;\n" + "stxvb16x 47,0,9;\n" ); void testfn(void); ]], [ testfn(); ])],I figured out that .machine "any" is needed with GCC 15.
I wonder about GCC 15 preparation for the release. If it's good to have, three patches are needed to apply:
- Cherry-picking rCd5fb7cd9b351: Mark nonstring use cases with __nonstring__ attribute.
- strictly speaking, this adds a macro, which is considered an API change
- Cherry-picking rCf06e90f4137a: cipher:ecc: Silence GCC 15 warning.
- Apply changes of T7721: libgcrypt build-error with gcc-15 on powerpc and alpha
I figured out that .machine "any" is needed with GCC 15.
For Alpha (hppa, and sparc), IIUC, following patch may help:
For PowerISA 3.00 Instructions issue, following patch may help:
Jul 17 2025
Jul 15 2025
The powerpc64le issue (undefined reference to `gcry_poly1305_p10le_4blocks') also applies to GIT master.
Jul 14 2025
In T7721#202963, @werner wrote:Sure that this is about 1.11.0 ? We released 1.11.1 with at least one fix for gcc regression (T7166). In master we had some more fixes for gcc 15 bugs (or what ever you will call such regression in a compiler)
Jun 17 2025
Done in 1.11.1.
Done in 1.11.1.
Done in 1.11.1.
Jun 13 2025
Reading https://openssl-library.org/files/blog/Request_to_Extend_IETF_WGLC_for_PQ_Key_Specifications.pdf ,
seed (with "S") is included in the private-key.
The commit rC23543b6c1497: Add mldsa_compute_keygrip and let private-key include "p". works well for me.
To support Dilithium, we need to extend data handling of libgcrypt.
I propose following changes:
- internal flag of PUBKEY_FLAG_BYTE_STRING to ask opaque MPI for data to be signed/verified.
- The format of data as: (data(raw)[(flags no-prefix)](value ...)[(label ...)][(random-override ...)]): message, context, and random. Optional no-prefix flag to ask specific way of signing, controlling the internal, for Known Answer Tests (siggen).
May 27 2025
May 19 2025
Problem noted in T7166
Noet that one file is missing in the released tarball; when building for RISC-V please see T7647#201164
Patch applied.
Looking the FIPS 204 document, using the following functions (API) is good:
May 17 2025
I can confirm this. Here is the build error:
make[2]: Entering directory '/home/collinfunk/libgcrypt-1.11.1/cipher'
`echo /bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I../src -I../src -I../mpi -I../mpi -I/home/collinfunk/tmp/include -g -O2 -fvisibility=hidden -fno-delete-null-pointer-checks -Wall -O2 -march=rv64imafdcv -mstrict-align -c rijndael-vp-riscv.c | sed -e 's/-fsanitize[=,\-][=,a-z,A-Z,0-9,\,,\-]*//g' -e 's/-fprofile[=,\-][=,a-z,A-Z,0-9,\,,\-]*//g' -e 's/-fcoverage[=,\-][=,a-z,A-Z,0-9,\,,\-]*//g' `
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../src -I../src -I../mpi -I../mpi -I/home/collinfunk/tmp/include -g -O2 -fvisibility=hidden -fno-delete-null-pointer-checks -Wall -O2 -march=rv64imafdcv -mstrict-align -c rijndael-vp-riscv.c -fPIC -DPIC -o .libs/rijndael-vp-riscv.o
rijndael-vp-riscv.c:58:10: fatal error: simd-common-riscv.h: No such file or directory
58 | #include "simd-common-riscv.h"
| ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:1730: rijndael-vp-riscv.lo] Error 1Patch here: https://lists.gnupg.org/pipermail/gcrypt-devel/2025-May/005854.html
May 15 2025
Also pushed to 1.11
May 13 2025
May 11 2025
It's in 1.11.1.
Included in 1.11.1.
May 9 2025
That is quite possible because we do not have a test system for RISC-V and the make release tarbegt is not abale to verify this.
May 8 2025
May 7 2025
In libgcrypt/cipher/ecc-ecdsa.c, we have:
mpi_mulm (s, k_1, sum, ec->n); /* s = k^(-1)*(hash+(d*r)) mod n */
May 5 2025
May 2 2025
Apr 30 2025
I think you are correct.
Apr 23 2025
Apr 18 2025
IIUC, it's GCC 8 which starts the support of __nonstring__ attribute.
Mar 31 2025
Pushed all changes to master.
Mar 21 2025
I applied some to master (generic improvement parts).
Mar 20 2025
I think that this may be the last update.
Don't use mpi_powm to avoid normalizing (and to be faster).
Mar 18 2025
Here is another update (replacing ecc-no-normalize-2025-03-13.patch).
Further, ec_addm is modified to be less leaky.