lp://qastaging/libgcrypt
- Get this branch:
- bzr branch lp://qastaging/libgcrypt
Branch information
Import details
This branch is an import of the HEAD branch of the Git repository at git://git.gnupg.org/libgcrypt.git.
Last successful import was .
Recent revisions
- 1447. By Jussi Kivilinna <email address hidden>
-
Prevent tail call optimization with _gcry_burn_stack
* configure.ac: New check, HAVE_GCC_
ASM_VOLATILE_ MEMORY.
* src/g10lib.h (_gcry_burn_stack): Rename to __gcry_burn_stack.
(__gcry_burn_stack_ dummy): New.
(_gcry_burn_stack): New macro.
* src/misc.c (_gcry_burn_stack): Rename to __gcry_burn_stack.
(__gcry_burn_stack_ dummy): New.
--Tail call optimization can turn _gcry_burn_stack call in to tail jump. When
this happens, stack pointer is restored to initial state of current function.
This causes problem for _gcry_burn_stack because its callers do not count in
current function stack depth.One solution is to prevent gcry_burn_stack being tail optimized by inserting
dummy function call behind it. Another would be to add memory barrier 'asm
volatile("":::"memory" )' behind every _gcry_burn_stack call. This however
requires GCC asm support from compiler.Patch adds detection for memory barrier support and when available uses
memory barrier to prevent when tail call optimization. If not available
dummy function call is used instead.Signed-off-by: Jussi Kivilinna <email address hidden>
- 1445. By Werner Koch <email address hidden>
-
Provide Pth compatiblity for use with GnuPG 2.0.
* src/ath.c (ath_install): Call ath_init and declare Pth as
compatible.
--GnuPG 2.0 requires GNU Pth which is a plain userland thread
implementation. Given that decent versions of GNU Pth seem to work
together with pthread, we can declare Pth as compatible. Native
pthreads in Libgcrypt are only used internal to Libgcrypt and any
internal blocking should be invisible to Pth.Signed-off-by: Werner Koch <email address hidden>
- 1444. By Jussi Kivilinna <email address hidden>
-
sha512: fix building on ARM
* cipher/sha512.c (transform) [USE_ARM_NEON_ASM]: Fix 'hd' to 'ctx'.
--
Signed-off-by: Jussi Kivilinna <email address hidden> - 1443. By Werner Koch <email address hidden>
-
Remove deprecated control codes.
* src/gcrypt.h.in (GCRYCTL_SET_KEY): Remove.
(GCRYCTL_SET_IV): Remove.
(GCRYCTL_SET_CTR): Remove.
* cipher/md.c (gcry_md_ctl): Remove deprecated GCRYCTL_SET_KEY.
* cipher/cipher.c (gcry_cipher_ctl): Remove deprecated
GCRYCTL_SET_KEY, GCRYCTL_SET_IV, GCRYCTL_SET_CTR.
--Real functions are available for a long time now thus there is no more
point in supporting the control code hacks. We have an ABI break
anyway thus this is a good time to get rid of them.Signed-off-by: Werner Koch <email address hidden>
- 1442. By Dmitry Eremin-Solenikov
-
Fix errors when building with Clang on PPC
* mpi/longlong.h (add_ssaaaa, sub_ddmmss, count_leading_
zeros,
umul_ppmm): Do not cast asm output to USItype.Signed-off-by: Dmitry Eremin-Solenikov <email address hidden>
- 1441. By Werner Koch <email address hidden>
-
Remove last remains of the former module system.
* src/gcrypt-
module. h, src/module.c: Remove.
* src/visibility.h: Do not include gcrypt-module.h.
* src/g10lib.h: Remove all prototypes from module.c
(gcry_module): Remove.
* cipher/cipher- internal. h (gcry_cipher_ handle) : Remove unused field. Signed-off-by: Werner Koch <email address hidden>
- 1440. By Werner Koch <email address hidden>
-
Fix missing prototype warning in visibility.c
* src/ec-context.h (_gcry_mpi_ec_new): Move prototype to mpi.h.
- 1439. By Werner Koch <email address hidden>
-
md: Simplify the message digest dispatcher md.c.
* src/gcrypt-module.h (gcry_md_spec_t): Move to ...
* src/cipher-proto.h: here. Merge with md_extra_spec_t. Add fields
ALGO and FLAGS. Set these fields in all digest modules.
* cipher/md.c: Change most code to replace the former module
system by a simpler system to gain information about the algorithms.Signed-off-by: Werner Koch <email address hidden>
- 1438. By Werner Koch <email address hidden>
-
cipher: Simplify the cipher dispatcher cipher.c.
* src/gcrypt-module.h (gcry_cipher_
spec_t) : Move to ...
* src/cipher-proto.h (gcry_cipher_spec_t) : here. Merge with
cipher_extra_spec_ t. Add fields ALGO and FLAGS. Set these fields in
all cipher modules.
* cipher/cipher.c: Change most code to replace the former module
system by a simpler system to gain information about the algorithms.
(disable_pubkey_ algo): Simplified. Not anymore thread-safe, though. * cipher/md.c (_gcry_
md_selftest) : Use correct structure. Not a real
problem because both define the same function as their first field.* cipher/pubkey.c (_gcry_
pk_selftest) : Take care of the disabled flag. Signed-off-by: Werner Koch <email address hidden>
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)