Package: profanity / 0.4.4-2

endian.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Author: Jurica Stanojkovic <Jurica.Stanojkovic@imgtec.com>
Description: Fix FTBS on big endian architectures
Forwarded: https://github.com/boothj5/profanity/pull/438
--- a/src/tools/p_sha1.c
+++ b/src/tools/p_sha1.c
@@ -107,13 +107,7 @@ void P_SHA1_Transform(uint32_t state[5],
 
 /* blk0() and blk() perform the initial expand. */
 /* I got the idea of expanding during the round function from SSLeay */
-/* FIXME: can we do this in an endian-proof way? */
-#ifdef WORDS_BIGENDIAN
-#define blk0(i) block->l[i]
-#else
-#define blk0(i) (block->l[i] = (rol(block->l[i],24)&0xFF00FF00) \
-    |(rol(block->l[i],8)&0x00FF00FF))
-#endif
+#define blk0(i) (block->l[i] = (ntohl(block->l[i])))
 #define blk(i) (block->l[i&15] = rol(block->l[(i+13)&15]^block->l[(i+8)&15] \
     ^block->l[(i+2)&15]^block->l[i&15],1))