- Made changes for better compatibility with old-style C compilers

diff --git a/library/Makefile b/library/Makefile
index d8a0241..205c6a2 100644
--- a/library/Makefile
+++ b/library/Makefile
@@ -1,7 +1,7 @@
 
 # Also see "include/polarssl/config.h"
 
-CFLAGS	= -I../include -D_FILE_OFFSET_BITS=64
+CFLAGS	= -I../include -D_FILE_OFFSET_BITS=64 -Wall -Wdeclaration-after-statement
 OFLAGS	= -O
 
 # MicroBlaze specific options:
diff --git a/library/camellia.c b/library/camellia.c
index 571d6a4..a24bfb5 100644
--- a/library/camellia.c
+++ b/library/camellia.c
@@ -197,7 +197,7 @@
 	}
 };
 
-static const char indexes[2][4][20] =
+static const signed char indexes[2][4][20] =
 {
 	{
 		{  0,  1,  2,  3,  8,  9, 10, 11, 38, 39,
@@ -221,7 +221,7 @@
 	}
 };
 
-static const char transposes[2][20] =
+static const signed char transposes[2][20] =
 {
 	{
 		21, 22, 23, 20,
@@ -279,7 +279,6 @@
 
 void camellia_feistel(unsigned long x[2], unsigned long k[2], unsigned long z[2])
 {
-	unsigned char t[8];
 	unsigned long I0, I1;
 	I0 = x[0] ^ k[0];
 	I1 = x[1] ^ k[1];
@@ -310,6 +309,9 @@
     int i, idx;
     unsigned long *RK;
     unsigned char t[64];
+    unsigned long SIGMA[6][2];
+    unsigned long KC[16];
+    unsigned long TK[20];
 
     RK = ctx->rk;
 
@@ -335,7 +337,6 @@
     /*
      * Prepare SIGMA values
      */
-    unsigned long SIGMA[6][2];
     for (i = 0; i < 6; i++) {
     	GET_ULONG_BE(SIGMA[i][0], SIGMA_CHARS[i], 0);
     	GET_ULONG_BE(SIGMA[i][1], SIGMA_CHARS[i], 4);
@@ -345,7 +346,6 @@
      * Key storage in KC
      * Order: KL, KR, KA, KB
      */
-    unsigned long KC[16];
     memset(KC, 0, sizeof(KC));
 
     /* Store KL, KR */
@@ -377,7 +377,6 @@
     /*
      * Generating subkeys
      */ 
-    unsigned long TK[20];
 
     /* Manipulating KL */
     SHIFT_AND_PLACE(idx, 0);
@@ -456,8 +455,8 @@
                     unsigned char input[16],
                     unsigned char output[16] )
 {
-    int i, NR;
-    unsigned long *RK, X[4], Y[4], T;
+    int NR;
+    unsigned long *RK, X[4];
 
     NR = ctx->nr;
     RK = ctx->rk;
@@ -736,10 +735,9 @@
  */
 int camellia_self_test( int verbose )
 {
-    int i, j, u, v, offset;
+    int i, j, u, v;
     unsigned char key[32];
     unsigned char buf[64];
-    unsigned char prv[16];
     unsigned char src[16];
     unsigned char dst[16];
     unsigned char iv[16];
diff --git a/library/x509parse.c b/library/x509parse.c
index dcb8ea9..9b68af4 100644
--- a/library/x509parse.c
+++ b/library/x509parse.c
@@ -42,6 +42,8 @@
 #include "polarssl/md4.h"
 #include "polarssl/md5.h"
 #include "polarssl/sha1.h"
+#include "polarssl/sha2.h"
+#include "polarssl/sha4.h"
 
 #include <string.h>
 #include <stdlib.h>