summaryrefslogtreecommitdiff
path: root/net-p2p/xmule/files/patch-src::KnownFile.cpp
blob: 504b5557f6954a288302820a0e6ea419eedefd12 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
--- src/KnownFile.cpp.orig	Wed Apr 30 14:30:10 2003
+++ src/KnownFile.cpp	Mon May 26 12:46:29 2003
@@ -271,6 +271,73 @@
 	return ferror(file);
 }
 
+static void MD4Transform(uint32 Hash[4], uint32 x[16])
+{
+  uint32 a = Hash[0];
+  uint32 b = Hash[1];
+  uint32 c = Hash[2];
+  uint32 d = Hash[3];
+
+  /* Round 1 */
+  MD4_FF(a, b, c, d, x[ 0], S11); // 01
+  MD4_FF(d, a, b, c, x[ 1], S12); // 02
+  MD4_FF(c, d, a, b, x[ 2], S13); // 03
+  MD4_FF(b, c, d, a, x[ 3], S14); // 04
+  MD4_FF(a, b, c, d, x[ 4], S11); // 05
+  MD4_FF(d, a, b, c, x[ 5], S12); // 06
+  MD4_FF(c, d, a, b, x[ 6], S13); // 07
+  MD4_FF(b, c, d, a, x[ 7], S14); // 08
+  MD4_FF(a, b, c, d, x[ 8], S11); // 09
+  MD4_FF(d, a, b, c, x[ 9], S12); // 10
+  MD4_FF(c, d, a, b, x[10], S13); // 11
+  MD4_FF(b, c, d, a, x[11], S14); // 12
+  MD4_FF(a, b, c, d, x[12], S11); // 13
+  MD4_FF(d, a, b, c, x[13], S12); // 14
+  MD4_FF(c, d, a, b, x[14], S13); // 15
+  MD4_FF(b, c, d, a, x[15], S14); // 16
+
+  /* Round 2 */
+  MD4_GG(a, b, c, d, x[ 0], S21); // 17
+  MD4_GG(d, a, b, c, x[ 4], S22); // 18
+  MD4_GG(c, d, a, b, x[ 8], S23); // 19
+  MD4_GG(b, c, d, a, x[12], S24); // 20
+  MD4_GG(a, b, c, d, x[ 1], S21); // 21
+  MD4_GG(d, a, b, c, x[ 5], S22); // 22
+  MD4_GG(c, d, a, b, x[ 9], S23); // 23
+  MD4_GG(b, c, d, a, x[13], S24); // 24
+  MD4_GG(a, b, c, d, x[ 2], S21); // 25
+  MD4_GG(d, a, b, c, x[ 6], S22); // 26
+  MD4_GG(c, d, a, b, x[10], S23); // 27
+  MD4_GG(b, c, d, a, x[14], S24); // 28
+  MD4_GG(a, b, c, d, x[ 3], S21); // 29
+  MD4_GG(d, a, b, c, x[ 7], S22); // 30
+  MD4_GG(c, d, a, b, x[11], S23); // 31
+  MD4_GG(b, c, d, a, x[15], S24); // 32
+
+  /* Round 3 */
+  MD4_HH(a, b, c, d, x[ 0], S31); // 33
+  MD4_HH(d, a, b, c, x[ 8], S32); // 34
+  MD4_HH(c, d, a, b, x[ 4], S33); // 35
+  MD4_HH(b, c, d, a, x[12], S34); // 36
+  MD4_HH(a, b, c, d, x[ 2], S31); // 37
+  MD4_HH(d, a, b, c, x[10], S32); // 38
+  MD4_HH(c, d, a, b, x[ 6], S33); // 39
+  MD4_HH(b, c, d, a, x[14], S34); // 40
+  MD4_HH(a, b, c, d, x[ 1], S31); // 41
+  MD4_HH(d, a, b, c, x[ 9], S32); // 42
+  MD4_HH(c, d, a, b, x[ 5], S33); // 43
+  MD4_HH(b, c, d, a, x[13], S34); // 44
+  MD4_HH(a, b, c, d, x[ 3], S31); // 45
+  MD4_HH(d, a, b, c, x[11], S32); // 46
+  MD4_HH(c, d, a, b, x[ 7], S33); // 47
+  MD4_HH(b, c, d, a, x[15], S34); // 48
+
+  Hash[0] += a;
+  Hash[1] += b;
+  Hash[2] += c;
+  Hash[3] += d;
+}
+
 void CKnownFile::CreateHashFromInput(FILE* file,CFile* file2, int Length, uchar* Output, uchar* in_string) { 
 	// time critial
 	bool PaddingStarted = false;
@@ -342,73 +409,6 @@
   return m_iPartCount>0?m_iPartCount:(m_iPartCount=((m_nFileSize+(PARTSIZE-1))/PARTSIZE));
 }
 #endif
-
-static void MD4Transform(uint32 Hash[4], uint32 x[16])
-{
-  uint32 a = Hash[0];
-  uint32 b = Hash[1];
-  uint32 c = Hash[2];
-  uint32 d = Hash[3];
-
-  /* Round 1 */
-  MD4_FF(a, b, c, d, x[ 0], S11); // 01
-  MD4_FF(d, a, b, c, x[ 1], S12); // 02
-  MD4_FF(c, d, a, b, x[ 2], S13); // 03
-  MD4_FF(b, c, d, a, x[ 3], S14); // 04
-  MD4_FF(a, b, c, d, x[ 4], S11); // 05
-  MD4_FF(d, a, b, c, x[ 5], S12); // 06
-  MD4_FF(c, d, a, b, x[ 6], S13); // 07
-  MD4_FF(b, c, d, a, x[ 7], S14); // 08
-  MD4_FF(a, b, c, d, x[ 8], S11); // 09
-  MD4_FF(d, a, b, c, x[ 9], S12); // 10
-  MD4_FF(c, d, a, b, x[10], S13); // 11
-  MD4_FF(b, c, d, a, x[11], S14); // 12
-  MD4_FF(a, b, c, d, x[12], S11); // 13
-  MD4_FF(d, a, b, c, x[13], S12); // 14
-  MD4_FF(c, d, a, b, x[14], S13); // 15
-  MD4_FF(b, c, d, a, x[15], S14); // 16
-
-  /* Round 2 */
-  MD4_GG(a, b, c, d, x[ 0], S21); // 17
-  MD4_GG(d, a, b, c, x[ 4], S22); // 18
-  MD4_GG(c, d, a, b, x[ 8], S23); // 19
-  MD4_GG(b, c, d, a, x[12], S24); // 20
-  MD4_GG(a, b, c, d, x[ 1], S21); // 21
-  MD4_GG(d, a, b, c, x[ 5], S22); // 22
-  MD4_GG(c, d, a, b, x[ 9], S23); // 23
-  MD4_GG(b, c, d, a, x[13], S24); // 24
-  MD4_GG(a, b, c, d, x[ 2], S21); // 25
-  MD4_GG(d, a, b, c, x[ 6], S22); // 26
-  MD4_GG(c, d, a, b, x[10], S23); // 27
-  MD4_GG(b, c, d, a, x[14], S24); // 28
-  MD4_GG(a, b, c, d, x[ 3], S21); // 29
-  MD4_GG(d, a, b, c, x[ 7], S22); // 30
-  MD4_GG(c, d, a, b, x[11], S23); // 31
-  MD4_GG(b, c, d, a, x[15], S24); // 32
-
-  /* Round 3 */
-  MD4_HH(a, b, c, d, x[ 0], S31); // 33
-  MD4_HH(d, a, b, c, x[ 8], S32); // 34
-  MD4_HH(c, d, a, b, x[ 4], S33); // 35
-  MD4_HH(b, c, d, a, x[12], S34); // 36
-  MD4_HH(a, b, c, d, x[ 2], S31); // 37
-  MD4_HH(d, a, b, c, x[10], S32); // 38
-  MD4_HH(c, d, a, b, x[ 6], S33); // 39
-  MD4_HH(b, c, d, a, x[14], S34); // 40
-  MD4_HH(a, b, c, d, x[ 1], S31); // 41
-  MD4_HH(d, a, b, c, x[ 9], S32); // 42
-  MD4_HH(c, d, a, b, x[ 5], S33); // 43
-  MD4_HH(b, c, d, a, x[13], S34); // 44
-  MD4_HH(a, b, c, d, x[ 3], S31); // 45
-  MD4_HH(d, a, b, c, x[11], S32); // 46
-  MD4_HH(c, d, a, b, x[ 7], S33); // 47
-  MD4_HH(b, c, d, a, x[15], S34); // 48
-
-  Hash[0] += a;
-  Hash[1] += b;
-  Hash[2] += c;
-  Hash[3] += d;
-}
 
 // Adde by Tarod [Juanjo]
 void CAbstractFile::SetFileName(char* NewName)