summaryrefslogtreecommitdiff
path: root/package/grub/patches/patch-lib_libgcrypt-grub_cipher_rijndael_c
diff options
context:
space:
mode:
Diffstat (limited to 'package/grub/patches/patch-lib_libgcrypt-grub_cipher_rijndael_c')
-rw-r--r--package/grub/patches/patch-lib_libgcrypt-grub_cipher_rijndael_c53
1 files changed, 53 insertions, 0 deletions
diff --git a/package/grub/patches/patch-lib_libgcrypt-grub_cipher_rijndael_c b/package/grub/patches/patch-lib_libgcrypt-grub_cipher_rijndael_c
new file mode 100644
index 000000000..056abefa3
--- /dev/null
+++ b/package/grub/patches/patch-lib_libgcrypt-grub_cipher_rijndael_c
@@ -0,0 +1,53 @@
+--- grub-1.98.orig/lib/libgcrypt-grub/cipher/rijndael.c 2010-03-06 21:52:26.000000000 +0100
++++ grub-1.98/lib/libgcrypt-grub/cipher/rijndael.c 2010-06-26 20:23:29.463277513 +0200
+@@ -139,7 +139,7 @@ do_setkey (RIJNDAEL_context *ctx, const
+ if ((_gcry_get_hw_features () & HWF_PADLOCK_AES))
+ {
+ ctx->use_padlock = 1;
+- memcpy (ctx->padlock_key, key, keylen);
++ grub_memcpy (ctx->padlock_key, key, keylen);
+ }
+ #endif
+ }
+@@ -411,9 +411,9 @@ do_encrypt (const RIJNDAEL_context *ctx,
+ byte b[16];
+ } b;
+
+- memcpy (a.a, ax, 16);
++ grub_memcpy (a.a, ax, 16);
+ do_encrypt_aligned (ctx, b.b, a.a);
+- memcpy (bx, b.b, 16);
++ grub_memcpy (bx, b.b, 16);
+ }
+
+
+@@ -440,7 +440,7 @@ do_padlock (const RIJNDAEL_context *ctx,
+ if (decrypt_flag)
+ cword[0] |= 0x00000200;
+
+- memcpy (a, ax, 16);
++ grub_memcpy (a, ax, 16);
+
+ asm volatile
+ ("pushfl\n\t" /* Force key reload. */
+@@ -454,7 +454,7 @@ do_padlock (const RIJNDAEL_context *ctx,
+ : "%ecx", "cc", "memory"
+ );
+
+- memcpy (bx, b, 16);
++ grub_memcpy (bx, b, 16);
+
+ }
+ #endif /*USE_PADLOCK*/
+@@ -609,9 +609,9 @@ do_decrypt (RIJNDAEL_context *ctx, byte
+ ctx->decryption_prepared = 1;
+ }
+
+- memcpy (a.a, ax, 16);
++ grub_memcpy (a.a, ax, 16);
+ do_decrypt_aligned (ctx, b.b, a.a);
+- memcpy (bx, b.b, 16);
++ grub_memcpy (bx, b.b, 16);
+ #undef rk
+ }
+