summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libmcrypt/files/libmcrypt-2.5.8-c99.patch')
-rw-r--r--dev-libs/libmcrypt/files/libmcrypt-2.5.8-c99.patch56
1 files changed, 56 insertions, 0 deletions
diff --git a/dev-libs/libmcrypt/files/libmcrypt-2.5.8-c99.patch b/dev-libs/libmcrypt/files/libmcrypt-2.5.8-c99.patch
new file mode 100644
index 000000000000..25c555c99627
--- /dev/null
+++ b/dev-libs/libmcrypt/files/libmcrypt-2.5.8-c99.patch
@@ -0,0 +1,56 @@
+https://src.fedoraproject.org/rpms/libmcrypt/blob/e02fbd614a5b7ba093e9e15ab322e7eb02d64e3b/f/libmcrypt-c99.patch
+
+Add return and argument types to fake prototypes in mcrypt_symb.c.
+This avoids build failures with future compilers that do not support
+implicit function declarations.
+
+Also fix a minor type error in the perminit calls in the Triple DES
+implementation.
+
+Submitted upstream: <https://sourceforge.net/p/mcrypt/patches/15/>
+
+diff --git a/lib/Makefile.am b/lib/Makefile.am
+index a1a09578858aaf3c..a92f150627a1f610 100644
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -23,8 +23,8 @@ mcrypt_symb.c: mcrypt_internal.h
+ @echo "/* This is automatically created. Don't touch... */" >> mcrypt_symb.c
+ @echo "" >> mcrypt_symb.c
+ -@for i in $(EXTRA_ALGOS); do \
+- if test -f ../modules/algorithms/$$i.c; then cat ../modules/algorithms/$$i.c 2>/dev/null|grep define|grep LTX|awk '{print "extern "$$3"();";}' >> mcrypt_symb.c 2>/dev/null; fi; \
+- if test -f ../modules/modes/$$i.c; then cat ../modules/modes/$$i.c 2>/dev/null|grep define|grep LTX|awk '{print "extern "$$3"();";}' >> mcrypt_symb.c 2>/dev/null; fi; \
++ if test -f ../modules/algorithms/$$i.c; then cat ../modules/algorithms/$$i.c 2>/dev/null|grep define|grep LTX|awk '{print "extern void "$$3"(void);";}' >> mcrypt_symb.c 2>/dev/null; fi; \
++ if test -f ../modules/modes/$$i.c; then cat ../modules/modes/$$i.c 2>/dev/null|grep define|grep LTX|awk '{print "extern void "$$3"(void);";}' >> mcrypt_symb.c 2>/dev/null; fi; \
+ done
+ @echo "" >> mcrypt_symb.c
+ @echo "const mcrypt_preloaded mps[] = {" >> mcrypt_symb.c
+diff --git a/lib/Makefile.in b/lib/Makefile.in
+index 1baaa1e94be1abce..e0e690d1c831370f 100644
+--- a/lib/Makefile.in
++++ b/lib/Makefile.in
+@@ -561,8 +561,8 @@ mcrypt_symb.c: mcrypt_internal.h
+ @echo "/* This is automatically created. Don't touch... */" >> mcrypt_symb.c
+ @echo "" >> mcrypt_symb.c
+ -@for i in $(EXTRA_ALGOS); do \
+- if test -f ../modules/algorithms/$$i.c; then cat ../modules/algorithms/$$i.c 2>/dev/null|grep define|grep LTX|awk '{print "extern "$$3"();";}' >> mcrypt_symb.c 2>/dev/null; fi; \
+- if test -f ../modules/modes/$$i.c; then cat ../modules/modes/$$i.c 2>/dev/null|grep define|grep LTX|awk '{print "extern "$$3"();";}' >> mcrypt_symb.c 2>/dev/null; fi; \
++ if test -f ../modules/algorithms/$$i.c; then cat ../modules/algorithms/$$i.c 2>/dev/null|grep define|grep LTX|awk '{print "extern void "$$3"(void);";}' >> mcrypt_symb.c 2>/dev/null; fi; \
++ if test -f ../modules/modes/$$i.c; then cat ../modules/modes/$$i.c 2>/dev/null|grep define|grep LTX|awk '{print "extern void "$$3"(void);";}' >> mcrypt_symb.c 2>/dev/null; fi; \
+ done
+ @echo "" >> mcrypt_symb.c
+ @echo "const mcrypt_preloaded mps[] = {" >> mcrypt_symb.c
+diff --git a/modules/algorithms/tripledes.c b/modules/algorithms/tripledes.c
+index 98e9bd45b4f336b1..2737d2fd8fd02a3f 100644
+--- a/modules/algorithms/tripledes.c
++++ b/modules/algorithms/tripledes.c
+@@ -201,8 +201,8 @@ static int _mcrypt_desinit(TRIPLEDES_KEY * key)
+ spinit(key, 0);
+ spinit(key, 1);
+ spinit(key, 2);
+- perminit(&key->iperm, ip);
+- perminit(&key->fperm, fp);
++ perminit(key->iperm, ip);
++ perminit(key->fperm, fp);
+
+
+ return 0;