]> git.pld-linux.org Git - packages/perl-Crypt-RC6.git/blame - perl-Crypt-RC6-endian.patch
perl 5.38.0 rebuild
[packages/perl-Crypt-RC6.git] / perl-Crypt-RC6-endian.patch
CommitLineData
c95735eb
JB
1--- Crypt-RC6-1.0/_rc6.c.orig 2002-03-16 22:54:10.000000000 +0000
2+++ Crypt-RC6-1.0/_rc6.c 2004-05-09 00:14:37.000000000 +0000
3@@ -5,6 +5,14 @@
4 \r
5 #include "platform.h"\r
6 \r
7+#include <endian.h>\r
8+#if __BYTE_ORDER == __BIG_ENDIAN\r
9+# include <byteswap.h>\r
10+# define regswp(x) bswap_32(x)\r
11+#else\r
12+# define regswp(x) x\r
13+#endif\r
14+\r
15 /*\r
16 function: rc6_generateKeySchedule\r
17 \r
18@@ -27,6 +35,8 @@
19 /* Move the bytes of initKey into L, little-endian fashion. */\r
20 \r
21 memcpy(bPtr, initKey, keyLength);\r
22+ for(i=0; i<8; i++)\r
23+ L[i] = regswp(L[i]);\r
24 \r
25 /* Set S[0] to the constant P32, then generate the rest of S. */\r
26 \r
27@@ -61,10 +71,10 @@
28 \r
29 regPtr = (unsigned char*)&regs[0];\r
30 memcpy(regPtr, input, 16);\r
31- A = regs[0]; /* Cook up A, B, C, and D as our four 32-bit registers. */\r
32- B = regs[1];\r
33- C = regs[2];\r
34- D = regs[3];\r
35+ A = regswp(regs[0]); /* Cook up A, B, C, and D as our four 32-bit registers. */\r
36+ B = regswp(regs[1]);\r
37+ C = regswp(regs[2]);\r
38+ D = regswp(regs[3]);\r
39 B += S[0];\r
40 D += S[1];\r
41 for (j = 1; j <= 20; j++) /* Perform 20 rounds. */\r
42@@ -81,10 +91,10 @@
43 }\r
44 A += S[42];\r
45 C += S[43];\r
46- regs[0] = A;\r
47- regs[1] = B;\r
48- regs[2] = C;\r
49- regs[3] = D;\r
50+ regs[0] = regswp(A);\r
51+ regs[1] = regswp(B);\r
52+ regs[2] = regswp(C);\r
53+ regs[3] = regswp(D);\r
54 memcpy(output, regPtr, 16);\r
55 }\r
56 \r
57@@ -104,10 +114,10 @@
58 \r
59 regPtr = (unsigned char*)&regs[0];\r
60 memcpy(regPtr, input, 16);\r
61- A = regs[0];\r
62- B = regs[1];\r
63- C = regs[2];\r
64- D = regs[3];\r
65+ A = regswp(regs[0]);\r
66+ B = regswp(regs[1]);\r
67+ C = regswp(regs[2]);\r
68+ D = regswp(regs[3]);\r
69 C -= S[43];\r
70 A -= S[42];\r
71 for (j = 20; j >= 1; j--)\r
72@@ -126,10 +136,10 @@
73 }\r
74 D -= S[1];\r
75 B -= S[0];\r
76- regs[0] = A;\r
77- regs[1] = B;\r
78- regs[2] = C;\r
79- regs[3] = D;\r
80+ regs[0] = regswp(A);\r
81+ regs[1] = regswp(B);\r
82+ regs[2] = regswp(C);\r
83+ regs[3] = regswp(D);\r
84 memcpy(output, regPtr, 16);\r
85 }\r
86 \r
This page took 0.113524 seconds and 4 git commands to generate.