changeset 2628:59059ea978b2 HEAD

Change src from unsigned char* toi void* so callers don't have to do casting always.
author Timo Sirainen <tss@iki.fi>
date Wed, 15 Sep 2004 16:19:47 +0300
parents f806d35be249
children 6ba9dcff11b9
files src/lib/base64.c src/lib/base64.h src/lib/sha1.c src/lib/sha1.h
diffstat 4 files changed, 17 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib/base64.c	Wed Sep 15 16:02:33 2004 +0300
+++ b/src/lib/base64.c	Wed Sep 15 16:19:47 2004 +0300
@@ -46,17 +46,18 @@
 static const char basis_64[] =
    "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
 
-int base64_encode(const unsigned char *src, size_t src_size, buffer_t *dest)
+int base64_encode(const void *src, size_t src_size, buffer_t *dest)
 {
+	const unsigned char *src_c = src;
 	size_t src_pos;
 	int c1, c2, c3;
 
 	for (src_pos = 0; src_pos < src_size; ) {
-		c1 = src[src_pos++];
+		c1 = src_c[src_pos++];
 		if (buffer_append_c(dest, basis_64[c1 >> 2]) != 1)
 			return 0;
 
-		c2 = src_pos == src_size ? 0 : src[src_pos];
+		c2 = src_pos == src_size ? 0 : src_c[src_pos];
 		if (buffer_append_c(dest, basis_64[((c1 & 0x03) << 4) |
 						   ((c2 & 0xf0) >> 4)]) != 1)
 			return 0;
@@ -67,7 +68,7 @@
 			break;
 		}
 
-		c3 = src_pos == src_size ? 0 : src[src_pos];
+		c3 = src_pos == src_size ? 0 : src_c[src_pos];
 		if (buffer_append_c(dest, basis_64[((c2 & 0x0f) << 2) |
 						   ((c3 & 0xc0) >> 6)]) != 1)
 			return 0;
@@ -107,16 +108,17 @@
     XX,XX,XX,XX, XX,XX,XX,XX, XX,XX,XX,XX, XX,XX,XX,XX,
 };
 
-int base64_decode(const unsigned char *src, size_t src_size,
+int base64_decode(const void *src, size_t src_size,
 		  size_t *src_pos_r, buffer_t *dest)
 {
+	const unsigned char *src_c = src;
 	size_t src_pos;
 	unsigned char buf[4];
 	int c1, c2, c3, c4;
 	size_t ret, size;
 
 	for (src_pos = 0; src_pos+3 < src_size; ) {
-		c1 = src[src_pos++];
+		c1 = src_c[src_pos++];
 
 		if (c1 == '\n' || c1 == '\r' || c1 == ' ' || c1 == '\t')
 			continue;
@@ -124,15 +126,15 @@
 		if (index_64[c1] == XX)
 			return -1;
 
-		c2 = src[src_pos++];
+		c2 = src_c[src_pos++];
 		if (index_64[c2] == XX)
 			return -1;
 
-		c3 = src[src_pos++];
+		c3 = src_c[src_pos++];
 		if (c3 != '=' && index_64[c3] == XX)
 			return -1;
 
-		c4 = src[src_pos++];
+		c4 = src_c[src_pos++];
 		if (c4 != '=' && index_64[c4] == XX)
 			return -1;
 
--- a/src/lib/base64.h	Wed Sep 15 16:02:33 2004 +0300
+++ b/src/lib/base64.h	Wed Sep 15 16:19:47 2004 +0300
@@ -3,7 +3,7 @@
 
 /* Translates binary data into base64. The src must not point to dest buffer.
    Returns 1 if all ok, 0 if dest buffer got full. */
-int base64_encode(const unsigned char *src, size_t src_size, buffer_t *dest);
+int base64_encode(const void *src, size_t src_size, buffer_t *dest);
 
 /* Translates base64 data into binary and appends it to dest buffer. dest may
    point to same buffer as src. Returns 1 if all ok, 0 if dest buffer got full
@@ -13,7 +13,7 @@
    This function may be called multiple times for parsing the same stream.
    If src_pos is non-NULL, it's updated to first non-translated character in
    src. */
-int base64_decode(const unsigned char *src, size_t src_size,
+int base64_decode(const void *src, size_t src_size,
 		  size_t *src_pos_r, buffer_t *dest);
 
 /* max. buffer size required for base64_encode() */
--- a/src/lib/sha1.c	Wed Sep 15 16:02:33 2004 +0300
+++ b/src/lib/sha1.c	Wed Sep 15 16:19:47 2004 +0300
@@ -212,8 +212,9 @@
 }
 
 void
-sha1_loop(struct sha1_ctxt *ctxt, const uint8_t *input, size_t len)
+sha1_loop(struct sha1_ctxt *ctxt, const void *input, size_t len)
 {
+	const unsigned char *input_c = input;
 	size_t gaplen;
 	size_t gapstart;
 	size_t off;
@@ -226,7 +227,7 @@
 		gaplen = 64 - gapstart;
 
 		copysiz = (gaplen < len - off) ? gaplen : len - off;
-		memmove(&ctxt->m.b8[gapstart], &input[off], copysiz);
+		memmove(&ctxt->m.b8[gapstart], &input_c[off], copysiz);
 		COUNT += copysiz;
 		COUNT %= 64;
 		ctxt->c.b64[0] += copysiz * 8;
--- a/src/lib/sha1.h	Wed Sep 15 16:02:33 2004 +0300
+++ b/src/lib/sha1.h	Wed Sep 15 16:19:47 2004 +0300
@@ -56,7 +56,7 @@
 
 extern void sha1_init(struct sha1_ctxt *);
 extern void sha1_pad(struct sha1_ctxt *);
-extern void sha1_loop(struct sha1_ctxt *, const uint8_t *, size_t);
+extern void sha1_loop(struct sha1_ctxt *, const void *, size_t);
 extern void sha1_result(struct sha1_ctxt *, void *);