ref: 5b9a5aa4cbf4c2032973e272f79b82343bd9cd26
parent: a603318eec298f1093139117fdc46097c745c293
author: Simon Tatham <anakin@pobox.com>
date: Sat Dec 15 16:09:45 EST 2007
64-bit cleanliness: we were already carefully using a uint32 type in the SHA code, but it wasn't correctly defined! [originally from svn r7817]
--- a/puzzles.h
+++ b/puzzles.h
@@ -7,6 +7,7 @@
#include <stdio.h> /* for FILE */
#include <stdlib.h> /* for size_t */
+#include <limits.h> /* for UINT_MAX */
#ifndef TRUE
#define TRUE 1
@@ -331,7 +332,14 @@
char *random_state_encode(random_state *state);
random_state *random_state_decode(char *input);
/* random.c also exports SHA, which occasionally comes in useful. */
+#if __STDC_VERSION__ >= 199901L
+#include <stdint.h>
+typedef uint32_t uint32;
+#elif UINT_MAX >= 4294967295L
+typedef unsigned int uint32;
+#else
typedef unsigned long uint32;
+#endif
typedef struct {
uint32 h[5];
unsigned char block[64];