|
@@ -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
|
|
|
+ }
|
|
|
+
|