From: Ken Hornstein Date: Fri, 23 Sep 2016 18:00:59 +0000 (-0400) Subject: Switch decodeBase64() second argument to an unsigned char **. X-Git-Url: https://diplodocus.org/git/nmh/commitdiff_plain/15c89585836a98f6340619a58a1ec0e7e1d83dfc?hp=-c Switch decodeBase64() second argument to an unsigned char **. --- 15c89585836a98f6340619a58a1ec0e7e1d83dfc diff --git a/h/prototypes.h b/h/prototypes.h index c9dd291e..bc5b6a56 100644 --- a/h/prototypes.h +++ b/h/prototypes.h @@ -484,7 +484,8 @@ int writeBase64raw (const unsigned char *, size_t, unsigned char *); * fourth argument: non-zero for text content, and for which CR's should be skipped * fifth argument: for an MD5 digest, it can be null */ -int decodeBase64 (const char *, const char **, size_t *, int, unsigned char *); +int decodeBase64 (const char *, unsigned char **, size_t *, int, + unsigned char *); void hexify (const unsigned char *, size_t, char **); diff --git a/mts/smtp/smtp.c b/mts/smtp/smtp.c index 36612006..4fb6b1f4 100644 --- a/mts/smtp/smtp.c +++ b/mts/smtp/smtp.c @@ -1012,7 +1012,7 @@ sm_sasl_callback(enum sasl_message_type mtype, unsigned const char *indata, *outdata = NULL; *outdatalen = 0; } else { - rc = decodeBase64(line + 4, (const char **) outdata, &len, 0, NULL); + rc = decodeBase64(line + 4, outdata, &len, 0, NULL); if (rc != OK) { netsec_err(errstr, "Unable to decode base64 response"); return NOTOK; diff --git a/sbr/base64.c b/sbr/base64.c index f1fec4ed..79d7aa94 100644 --- a/sbr/base64.c +++ b/sbr/base64.c @@ -233,8 +233,8 @@ static unsigned char b642nib[0x80] = { * See description of arguments with declaration in h/prototypes.h. */ int -decodeBase64 (const char *encoded, const char **decoded, size_t *len, int skip_crs, - unsigned char *digest) { +decodeBase64 (const char *encoded, unsigned char **decoded, size_t *len, + int skip_crs, unsigned char *digest) { const char *cp = encoded; int self_delimiting = 0; int bitno, skip; @@ -314,7 +314,7 @@ test_end: return NOTOK; } - *decoded = charstring_buffer_copy (decoded_c); + *decoded = (unsigned char *) charstring_buffer_copy (decoded_c); *len = charstring_bytes (decoded_c); charstring_free (decoded_c); diff --git a/sbr/netsec.c b/sbr/netsec.c index 7d5c48c8..18bb97ac 100644 --- a/sbr/netsec.c +++ b/sbr/netsec.c @@ -292,7 +292,7 @@ void netsec_b64_snoop_decoder(netsec_context *nsc, const char *string, size_t len, void *context) { - const char *decoded; + unsigned char *decoded; size_t decodedlen; int offset; NMH_UNUSED(nsc); diff --git a/uip/mhparse.c b/uip/mhparse.c index 984b1430..8ebe1894 100644 --- a/uip/mhparse.c +++ b/uip/mhparse.c @@ -1751,7 +1751,7 @@ openBase64 (CT ct, char **file) /* sbeck -- handle suffixes */ CI ci; CE ce = &ct->c_cefile; - const char *decoded; + unsigned char *decoded; size_t decoded_len; unsigned char digest[16]; @@ -1840,7 +1840,7 @@ openBase64 (CT ct, char **file) if (decodeBase64 (buffer, &decoded, &decoded_len, ct->c_type == CT_TEXT, ct->c_digested ? digest : NULL) == OK) { size_t i; - const char *decoded_p = decoded; + unsigned char *decoded_p = decoded; for (i = 0; i < decoded_len; ++i) { putc (*decoded_p++, ce->ce_fp); } @@ -2906,13 +2906,13 @@ openURL (CT ct, char **file) static int readDigest (CT ct, char *cp) { - const char *digest; + unsigned char *digest; size_t len; if (decodeBase64 (cp, &digest, &len, 0, NULL) == OK) { const size_t maxlen = sizeof ct->c_digest / sizeof ct->c_digest[0]; - if (strlen (digest) <= maxlen) { + if (strlen ((char *) digest) <= maxlen) { memcpy (ct->c_digest, digest, maxlen); if (debugsw) { @@ -2929,7 +2929,7 @@ readDigest (CT ct, char *cp) } else { if (debugsw) { fprintf (stderr, "invalid MD5 digest (got %d octets)\n", - (int) strlen (digest)); + (int) strlen ((char *) digest)); } return NOTOK; diff --git a/uip/popsbr.c b/uip/popsbr.c index 466146c3..8e1394b9 100644 --- a/uip/popsbr.c +++ b/uip/popsbr.c @@ -383,7 +383,7 @@ pop_sasl_callback(enum sasl_message_type mtype, unsigned const char *indata, *outdata = NULL; *outdatalen = 0; } else { - rc = decodeBase64(line + 2, (const char **) outdata, &len, 0, NULL); + rc = decodeBase64(line + 2, outdata, &len, 0, NULL); *outdatalen = len; if (rc != OK) { netsec_err(errstr, "Unable to decode base64 response");