diff testprof/store_test.c @ 191:1c15b283127b libtomcrypt-orig

Import of libtomcrypt 1.02 with manual path rename rearrangement etc
author Matt Johnston <matt@ucc.asn.au>
date Fri, 06 May 2005 13:23:02 +0000
parents
children 39d5d58461d6
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testprof/store_test.c	Fri May 06 13:23:02 2005 +0000
@@ -0,0 +1,44 @@
+#include <tomcrypt_test.h>
+
+/* Test store/load macros with offsets */
+int store_test(void)
+{
+  unsigned char buf[24];
+  int y;
+  ulong32 L, L1;
+  ulong64 LL, LL1;
+
+  L = 0x12345678UL;
+  for (y = 0; y < 4; y++) {
+      STORE32L(L, buf + y);
+      LOAD32L(L1, buf + y);
+      if (L1 != L) {
+         fprintf(stderr, "\n32L failed at offset %d\n", y);
+         return 1;
+      }
+      STORE32H(L, buf + y);
+      LOAD32H(L1, buf + y);
+      if (L1 != L) {
+         fprintf(stderr, "\n32H failed at offset %d\n", y);
+         return 1;
+      }
+  }
+
+  LL = CONST64 (0x01020304050607);
+  for (y = 0; y < 8; y++) {
+      STORE64L(LL, buf + y);
+      LOAD64L(LL1, buf + y);
+      if (LL1 != LL) {
+         fprintf(stderr, "\n64L failed at offset %d\n", y);
+         return 1;
+      }
+      STORE64H(LL, buf + y);
+      LOAD64H(LL1, buf + y);
+      if (LL1 != LL) {
+         fprintf(stderr, "\n64H failed at offset %d\n", y);
+         return 1;
+      }
+  }
+
+  return 0;
+}