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

diff --git a/programs/Makefile b/programs/Makefile
index a87ae3e..8f3894e 100644
--- a/programs/Makefile
+++ b/programs/Makefile
@@ -2,7 +2,7 @@
 # To compile on SunOS: add "-lsocket -lnsl" to LDFLAGS
 # To compile on MinGW: add "-lws2_32" to LDFLAGS
 
-CFLAGS	= -I../include -D_FILE_OFFSET_BITS=64
+CFLAGS	= -I../include -D_FILE_OFFSET_BITS=64 -Wall -Wdeclaration-after-statement
 OFLAGS	= -O
 LDFLAGS	= -L../library -lpolarssl
 
diff --git a/programs/pkey/rsa_genkey.c b/programs/pkey/rsa_genkey.c
index 066e136..72d5e4a 100644
--- a/programs/pkey/rsa_genkey.c
+++ b/programs/pkey/rsa_genkey.c
@@ -41,7 +41,6 @@
     havege_state hs;
     FILE *fpub  = NULL;
     FILE *fpriv = NULL;
-    x509_raw cert;
 
     printf( "\n  . Seeding the random number generator..." );
     fflush( stdout );
diff --git a/programs/test/benchmark.c b/programs/test/benchmark.c
index 0b8c97f..35e29d9 100644
--- a/programs/test/benchmark.c
+++ b/programs/test/benchmark.c
@@ -34,6 +34,7 @@
 #include "polarssl/md5.h"
 #include "polarssl/sha1.h"
 #include "polarssl/sha2.h"
+#include "polarssl/sha4.h"
 #include "polarssl/arc4.h"
 #include "polarssl/des.h"
 #include "polarssl/aes.h"
diff --git a/programs/test/selftest.c b/programs/test/selftest.c
index 25b2c21..82c002a 100644
--- a/programs/test/selftest.c
+++ b/programs/test/selftest.c
@@ -38,6 +38,7 @@
 #include "polarssl/arc4.h"
 #include "polarssl/des.h"
 #include "polarssl/aes.h"
+#include "polarssl/camellia.h"
 #include "polarssl/base64.h"
 #include "polarssl/bignum.h"
 #include "polarssl/rsa.h"
diff --git a/programs/test/ssl_cert_test.c b/programs/test/ssl_cert_test.c
index 7ec3370..1be4341 100644
--- a/programs/test/ssl_cert_test.c
+++ b/programs/test/ssl_cert_test.c
@@ -83,6 +83,8 @@
          * 1.2. Load own certificate
          */
 	char	name[512];
+	int flags;
+
 	snprintf(name, 512, "ssl/test-ca/%s", client_certificates[i]);
 
         printf( "  . Loading the client certificatei %s...", name );
@@ -105,8 +107,6 @@
 	printf( "  . Verify the client certificate with CA certificate..." );
 	fflush( stdout );
 
-	int flags;
-
 	ret = x509parse_verify( &clicert, &cacert, NULL, &flags );
 	if( ret != 0 )
 	{
diff --git a/programs/test/ssl_test.c b/programs/test/ssl_test.c
index 9d06bd1..32ea1c1 100644
--- a/programs/test/ssl_test.c
+++ b/programs/test/ssl_test.c
@@ -127,8 +127,8 @@
     int client_fd;
     int bytes_to_read;
     int bytes_to_write;
-    int offset_to_read;
-    int offset_to_write;
+    int offset_to_read = 0;
+    int offset_to_write = 0;
 
     long int nb_read;
     long int nb_written;
@@ -136,8 +136,8 @@
     unsigned long read_state[5];
     unsigned long write_state[5];
 
-    unsigned char *read_buf;
-    unsigned char *write_buf;
+    unsigned char *read_buf = NULL;
+    unsigned char *write_buf = NULL;
 
     struct hr_time t;
     havege_state hs;