- Added const-correctness to main codebase

diff --git a/library/md5.c b/library/md5.c
index c518086..ca994b9 100644
--- a/library/md5.c
+++ b/library/md5.c
@@ -72,7 +72,7 @@
     ctx->state[3] = 0x10325476;
 }
 
-static void md5_process( md5_context *ctx, unsigned char data[64] )
+static void md5_process( md5_context *ctx, const unsigned char data[64] )
 {
     unsigned long X[16], A, B, C, D;
 
@@ -198,7 +198,7 @@
 /*
  * MD5 process buffer
  */
-void md5_update( md5_context *ctx, unsigned char *input, int ilen )
+void md5_update( md5_context *ctx, const unsigned char *input, int ilen )
 {
     int fill;
     unsigned long left;
@@ -278,7 +278,7 @@
 /*
  * output = MD5( input buffer )
  */
-void md5( unsigned char *input, int ilen, unsigned char output[16] )
+void md5( const unsigned char *input, int ilen, unsigned char output[16] )
 {
     md5_context ctx;
 
@@ -292,7 +292,7 @@
 /*
  * output = MD5( file contents )
  */
-int md5_file( char *path, unsigned char output[16] )
+int md5_file( const char *path, unsigned char output[16] )
 {
     FILE *f;
     size_t n;
@@ -324,7 +324,7 @@
 /*
  * MD5 HMAC context setup
  */
-void md5_hmac_starts( md5_context *ctx, unsigned char *key, int keylen )
+void md5_hmac_starts( md5_context *ctx, const unsigned char *key, int keylen )
 {
     int i;
     unsigned char sum[16];
@@ -354,7 +354,7 @@
 /*
  * MD5 HMAC process buffer
  */
-void md5_hmac_update( md5_context *ctx, unsigned char *input, int ilen )
+void md5_hmac_update( md5_context *ctx, const unsigned char *input, int ilen )
 {
     md5_update( ctx, input, ilen );
 }
@@ -378,7 +378,8 @@
 /*
  * output = HMAC-MD5( hmac key, input buffer )
  */
-void md5_hmac( unsigned char *key, int keylen, unsigned char *input, int ilen,
+void md5_hmac( const unsigned char *key, int keylen,
+               const unsigned char *input, int ilen,
                unsigned char output[16] )
 {
     md5_context ctx;