From: Jeremy Harris Date: Mon, 14 Aug 2017 12:35:22 +0000 (+0100) Subject: tidying X-Git-Tag: exim-4_90_RC1~88 X-Git-Url: https://git.exim.org/exim.git/commitdiff_plain/5903c6ff59527362e869fedb565c56935ce8dd68 tidying --- diff --git a/src/OS/unsupported/os.c-BSDI b/src/OS/unsupported/os.c-BSDI index 3cef2ac6d..03a7a1cef 100644 --- a/src/OS/unsupported/os.c-BSDI +++ b/src/OS/unsupported/os.c-BSDI @@ -12,8 +12,8 @@ src/os.c file. */ #define OS_UNSETENV int -os_unsetenv(const unsigned char * name) +os_unsetenv(const uschar * name) { -unsetenv((char *)name); +unsetenv(CS name); return 0; } diff --git a/src/OS/unsupported/os.c-IRIX b/src/OS/unsupported/os.c-IRIX index 487091aeb..1f6b0e1b1 100644 --- a/src/OS/unsupported/os.c-IRIX +++ b/src/OS/unsupported/os.c-IRIX @@ -82,7 +82,7 @@ for (nextaddr = buf; nextaddr < lim; nextaddr += ifm->ifm_msglen) if ((ifam->ifam_addrs & RTA_IFA) != 0) { - char *cp = (char *)mask; + char *cp = CS mask; struct sockaddr *sa = (struct sockaddr *)mask; ADVANCE(cp, sa); addr = (struct sockaddr_in *)cp; diff --git a/src/OS/unsupported/os.c-IRIX6 b/src/OS/unsupported/os.c-IRIX6 index 487091aeb..1f6b0e1b1 100644 --- a/src/OS/unsupported/os.c-IRIX6 +++ b/src/OS/unsupported/os.c-IRIX6 @@ -82,7 +82,7 @@ for (nextaddr = buf; nextaddr < lim; nextaddr += ifm->ifm_msglen) if ((ifam->ifam_addrs & RTA_IFA) != 0) { - char *cp = (char *)mask; + char *cp = CS mask; struct sockaddr *sa = (struct sockaddr *)mask; ADVANCE(cp, sa); addr = (struct sockaddr_in *)cp; diff --git a/src/OS/unsupported/os.c-IRIX632 b/src/OS/unsupported/os.c-IRIX632 index 487091aeb..1f6b0e1b1 100644 --- a/src/OS/unsupported/os.c-IRIX632 +++ b/src/OS/unsupported/os.c-IRIX632 @@ -82,7 +82,7 @@ for (nextaddr = buf; nextaddr < lim; nextaddr += ifm->ifm_msglen) if ((ifam->ifam_addrs & RTA_IFA) != 0) { - char *cp = (char *)mask; + char *cp = CS mask; struct sockaddr *sa = (struct sockaddr *)mask; ADVANCE(cp, sa); addr = (struct sockaddr_in *)cp; diff --git a/src/OS/unsupported/os.c-IRIX65 b/src/OS/unsupported/os.c-IRIX65 index 487091aeb..1f6b0e1b1 100644 --- a/src/OS/unsupported/os.c-IRIX65 +++ b/src/OS/unsupported/os.c-IRIX65 @@ -82,7 +82,7 @@ for (nextaddr = buf; nextaddr < lim; nextaddr += ifm->ifm_msglen) if ((ifam->ifam_addrs & RTA_IFA) != 0) { - char *cp = (char *)mask; + char *cp = CS mask; struct sockaddr *sa = (struct sockaddr *)mask; ADVANCE(cp, sa); addr = (struct sockaddr_in *)cp; diff --git a/src/exim_monitor/em_log.c b/src/exim_monitor/em_log.c index 9ff994ced..73aa0e567 100644 --- a/src/exim_monitor/em_log.c +++ b/src/exim_monitor/em_log.c @@ -281,12 +281,8 @@ if (LOG != NULL) if (strstric(buffer, US"frozen", FALSE) != NULL) { queue_item *qq = find_queue(id, queue_noop, 0); - if (qq != NULL) - { - if (strstric(buffer, US"unfrozen", FALSE) != NULL) - qq->frozen = FALSE; - else qq->frozen = TRUE; - } + if (qq) + qq->frozen = strstric(buffer, US"unfrozen", FALSE) == NULL; } /* Notice defer messages, and add the destination if it diff --git a/src/exim_monitor/em_main.c b/src/exim_monitor/em_main.c index 3034a041c..00471ce3d 100644 --- a/src/exim_monitor/em_main.c +++ b/src/exim_monitor/em_main.c @@ -631,7 +631,7 @@ signal(SIGCHLD, sigchld_handler); /* Get the buffer for storing the string for the log display. */ -log_display_buffer = (uschar *)store_malloc(log_buffer_size); +log_display_buffer = US store_malloc(log_buffer_size); log_display_buffer[0] = 0; /* Initialize the data structures for the stripcharts */ diff --git a/src/exim_monitor/em_menu.c b/src/exim_monitor/em_menu.c index 6deb909da..935e82687 100644 --- a/src/exim_monitor/em_menu.c +++ b/src/exim_monitor/em_menu.c @@ -174,7 +174,7 @@ static void bodyAction(Widget w, XtPointer client_data, XtPointer call_data) { int i; -Widget text = text_create((uschar *)client_data, text_depth); +Widget text = text_create(US client_data, text_depth); FILE *f = NULL; w = w; /* Keep picky compilers happy */ @@ -183,7 +183,7 @@ call_data = call_data; for (i = 0; i < (spool_is_split? 2:1); i++) { uschar * fname; - message_subdir[0] = i != 0 ? ((uschar *)client_data)[5] : 0; + message_subdir[0] = i != 0 ? (US client_data)[5] : 0; fname = spool_fname(US"input", message_subdir, US client_data, US"-D"); if ((f = fopen(CS fname, "r"))) break; @@ -334,9 +334,9 @@ if (!delivery) if (rc == 0 && Ustrcmp(action + Ustrlen(action) - 4, "-Mes") == 0) { queue_item *q = find_queue(id, queue_noop, 0); - if (q != NULL) + if (q) { - if (q->sender != NULL) store_free(q->sender); + if (q->sender) store_free(q->sender); q->sender = store_malloc(Ustrlen(address_arg) + 1); Ustrcpy(q->sender, address_arg); } @@ -411,7 +411,7 @@ static void deliverAction(Widget w, XtPointer client_data, XtPointer call_data) { w = w; /* Keep picky compilers happy */ call_data = call_data; -ActOnMessage((uschar *)client_data, US"-v -M", US""); +ActOnMessage(US client_data, US"-v -M", US""); } @@ -424,7 +424,7 @@ static void freezeAction(Widget w, XtPointer client_data, XtPointer call_data) { w = w; /* Keep picky compilers happy */ call_data = call_data; -ActOnMessage((uschar *)client_data, US"-Mf", US""); +ActOnMessage(US client_data, US"-Mf", US""); } @@ -437,7 +437,7 @@ static void thawAction(Widget w, XtPointer client_data, XtPointer call_data) { w = w; /* Keep picky compilers happy */ call_data = call_data; -ActOnMessage((uschar *)client_data, US"-Mt", US""); +ActOnMessage(US client_data, US"-Mt", US""); } @@ -624,7 +624,7 @@ static void giveupAction(Widget w, XtPointer client_data, XtPointer call_data) { w = w; /* Keep picky compilers happy */ call_data = call_data; -ActOnMessage((uschar *)client_data, US"-v -Mg", US""); +ActOnMessage(US client_data, US"-v -Mg", US""); } @@ -637,7 +637,7 @@ static void removeAction(Widget w, XtPointer client_data, XtPointer call_data) { w = w; /* Keep picky compilers happy */ call_data = call_data; -ActOnMessage((uschar *)client_data, US"-Mrm", US""); +ActOnMessage(US client_data, US"-Mrm", US""); } @@ -650,7 +650,7 @@ static void headersAction(Widget w, XtPointer client_data, XtPointer call_data) { uschar buffer[256]; header_line *h, *next; -Widget text = text_create((uschar *)client_data, text_depth); +Widget text = text_create(US client_data, text_depth); void *reset_point; w = w; /* Keep picky compilers happy */ @@ -661,7 +661,7 @@ Then use Exim's function to read the header. */ reset_point = store_get(0); -sprintf(CS buffer, "%s-H", (uschar *)client_data); +sprintf(CS buffer, "%s-H", US client_data); if (spool_read_header(buffer, TRUE, FALSE) != spool_read_OK) { if (errno == ERRNO_SPOOLFORMAT) diff --git a/src/exim_monitor/em_version.c b/src/exim_monitor/em_version.c index a10aac4fb..0279654ac 100644 --- a/src/exim_monitor/em_version.c +++ b/src/exim_monitor/em_version.c @@ -25,7 +25,7 @@ Ustrcpy(today, __DATE__); if (today[4] == ' ') i = 1; today[3] = today[6] = '-'; -version_date = (uschar *)malloc(32); +version_date = US malloc(32); version_date[0] = 0; Ustrncat(version_date, today+4+i, 3-i); Ustrncat(version_date, today, 4); diff --git a/src/src/acl.c b/src/src/acl.c index 14eac6cd9..619f6f287 100644 --- a/src/src/acl.c +++ b/src/src/acl.c @@ -1140,7 +1140,7 @@ if (log_message != NULL && log_message != user_message) int length = Ustrlen(text) + 1; log_write(0, LOG_MAIN, "%s", text); logged = store_malloc(sizeof(string_item) + length); - logged->text = (uschar *)logged + sizeof(string_item); + logged->text = US logged + sizeof(string_item); memcpy(logged->text, text, length); logged->next = acl_warn_logged; acl_warn_logged = logged; @@ -1625,13 +1625,13 @@ if (ss == NULL) goto BAD_VERIFY; /* Handle name/address consistency verification in a separate function. */ for (vp= verify_type_list; - (char *)vp < (char *)verify_type_list + sizeof(verify_type_list); + CS vp < CS verify_type_list + sizeof(verify_type_list); vp++ ) if (vp->alt_opt_sep ? strncmpic(ss, vp->name, vp->alt_opt_sep) == 0 : strcmpic (ss, vp->name) == 0) break; -if ((char *)vp >= (char *)verify_type_list + sizeof(verify_type_list)) +if (CS vp >= CS verify_type_list + sizeof(verify_type_list)) goto BAD_VERIFY; if (vp->no_options && slash != NULL) diff --git a/src/src/auths/auth-spa.c b/src/src/auths/auth-spa.c index d1df7f2cb..6bc3d1f63 100644 --- a/src/src/auths/auth-spa.c +++ b/src/src/auths/auth-spa.c @@ -83,8 +83,8 @@ int main (int argc, char ** argv) challenge_str = argv [3]; - if (spa_base64_to_bits ((char *)&challenge, sizeof(challenge), - (const char *)(challenge_str))<0) + if (spa_base64_to_bits (CS &challenge, sizeof(challenge), + CCS (challenge_str))<0) { printf("bad base64 data in challenge: %s\n", challenge_str); exit (1); @@ -229,10 +229,10 @@ extern int DEBUGLEVEL; */ /* get single value from an SMB buffer */ -# define SVAL(buf,pos) (*(uint16x *)((char *)(buf) + (pos))) -# define IVAL(buf,pos) (*(uint32x *)((char *)(buf) + (pos))) -# define SVALS(buf,pos) (*(int16x *)((char *)(buf) + (pos))) -# define IVALS(buf,pos) (*(int32x *)((char *)(buf) + (pos))) +# define SVAL(buf,pos) (*(uint16x *)(CS (buf) + (pos))) +# define IVAL(buf,pos) (*(uint32x *)(CS (buf) + (pos))) +# define SVALS(buf,pos) (*(int16x *)(CS (buf) + (pos))) +# define IVALS(buf,pos) (*(int32x *)(CS (buf) + (pos))) /* store single value in an SMB buffer */ # define SSVAL(buf,pos,val) SVAL(buf,pos)=((uint16x)(val)) @@ -856,18 +856,18 @@ spa_smb_encrypt (uschar * passwd, uschar * c8, uschar * p24) memset (p21, '\0', 21); memset (p14, '\0', 14); - StrnCpy ((char *) p14, (char *) passwd, 14); + StrnCpy (CS p14, CS passwd, 14); - strupper ((char *) p14); + strupper (CS p14); E_P16 (p14, p21); SMBOWFencrypt (p21, c8, p24); #ifdef DEBUG_PASSWORD DEBUG_X (100, ("spa_smb_encrypt: lm#, challenge, response\n")); - dump_data (100, (char *) p21, 16); - dump_data (100, (char *) c8, 8); - dump_data (100, (char *) p24, 24); + dump_data (100, CS p21, 16); + dump_data (100, CS c8, 8); + dump_data (100, CS p24, 24); #endif } @@ -917,7 +917,7 @@ E_md4hash (uschar * passwd, uschar * p16) int16x wpwd[129]; /* Password cannot be longer than 128 characters */ - len = strlen ((char *) passwd); + len = strlen (CS passwd); if (len > 128) len = 128; /* Password must be converted to NT unicode */ @@ -945,7 +945,7 @@ nt_lm_owf_gen (char *pwd, uschar nt_p16[16], uschar p16[16]) #ifdef DEBUG_PASSWORD DEBUG_X (100, ("nt_lm_owf_gen: pwd, nt#\n")); dump_data (120, passwd, strlen (passwd)); - dump_data (100, (char *) nt_p16, 16); + dump_data (100, CS nt_p16, 16); #endif /* Mangle the passwords into Lanman format */ @@ -960,7 +960,7 @@ nt_lm_owf_gen (char *pwd, uschar nt_p16[16], uschar p16[16]) #ifdef DEBUG_PASSWORD DEBUG_X (100, ("nt_lm_owf_gen: pwd, lm#\n")); dump_data (120, passwd, strlen (passwd)); - dump_data (100, (char *) p16, 16); + dump_data (100, CS p16, 16); #endif /* clear out local copy of user's password (just being paranoid). */ memset (passwd, '\0', sizeof (passwd)); @@ -991,9 +991,9 @@ NTLMSSPOWFencrypt (uschar passwd[8], uschar * ntlmchalresp, uschar p24[24]) E_P24 (p21, ntlmchalresp, p24); #ifdef DEBUG_PASSWORD DEBUG_X (100, ("NTLMSSPOWFencrypt: p21, c8, p24\n")); - dump_data (100, (char *) p21, 21); - dump_data (100, (char *) ntlmchalresp, 8); - dump_data (100, (char *) p24, 24); + dump_data (100, CS p21, 21); + dump_data (100, CS ntlmchalresp, 8); + dump_data (100, CS p24, 24); #endif } @@ -1012,9 +1012,9 @@ spa_smb_nt_encrypt (uschar * passwd, uschar * c8, uschar * p24) #ifdef DEBUG_PASSWORD DEBUG_X (100, ("spa_smb_nt_encrypt: nt#, challenge, response\n")); - dump_data (100, (char *) p21, 16); - dump_data (100, (char *) c8, 8); - dump_data (100, (char *) p24, 24); + dump_data (100, CS p21, 16); + dump_data (100, CS c8, 8); + dump_data (100, CS p24, 24); #endif } @@ -1261,7 +1261,7 @@ spa_bytes_add(ptr, header, b, len*2); \ #define GetUnicodeString(structPtr, header) \ unicodeToString(((char*)structPtr) + IVAL(&structPtr->header.offset,0) , SVAL(&structPtr->header.len,0)/2) #define GetString(structPtr, header) \ -toString((((char *)structPtr) + IVAL(&structPtr->header.offset,0)), SVAL(&structPtr->header.len,0)) +toString(((CS structPtr) + IVAL(&structPtr->header.offset,0)), SVAL(&structPtr->header.len,0)) #ifdef notdef @@ -1503,8 +1503,8 @@ spa_build_auth_response (SPAAuthChallenge * challenge, } else domain = d = strdup((cf & 0x1)? - (const char *)GetUnicodeString(challenge, uDomain) : - (const char *)GetString(challenge, uDomain)); + CCS GetUnicodeString(challenge, uDomain) : + CCS GetString(challenge, uDomain)); spa_smb_encrypt (US password, challenge->challengeData, lmRespData); spa_smb_nt_encrypt (US password, challenge->challengeData, ntRespData); diff --git a/src/src/auths/call_pam.c b/src/src/auths/call_pam.c index b4677ec5a..a5cbec3ed 100644 --- a/src/src/auths/call_pam.c +++ b/src/src/auths/call_pam.c @@ -189,7 +189,7 @@ if (pam_error == PAM_SUCCESS) return OK; } -*errptr = (uschar *)pam_strerror(pamh, pam_error); +*errptr = US pam_strerror(pamh, pam_error); DEBUG(D_auth) debug_printf("PAM error: %s\n", *errptr); if (pam_error == PAM_USER_UNKNOWN || diff --git a/src/src/auths/cram_md5.c b/src/src/auths/cram_md5.c index 04d893c97..b9e57c1e9 100644 --- a/src/src/auths/cram_md5.c +++ b/src/src/auths/cram_md5.c @@ -121,8 +121,8 @@ and use that. */ if (len > 64) { md5_start(&base); - md5_end(&base, (uschar *)secret, len, md5secret); - secret = (uschar *)md5secret; + md5_end(&base, US secret, len, md5secret); + secret = US md5secret; len = 16; } @@ -143,7 +143,7 @@ for (i = 0; i < 64; i++) md5_start(&base); md5_mid(&base, isecret); -md5_end(&base, (uschar *)challenge, Ustrlen(challenge), md5secret); +md5_end(&base, US challenge, Ustrlen(challenge), md5secret); /* Compute the outer MD5 digest */ @@ -327,7 +327,7 @@ buffer[0] = 0; if (smtp_write_command(outblock, SCMD_FLUSH, "%s\r\n", b64encode(big_buffer, p - big_buffer)) < 0) return FAIL_SEND; -return smtp_read_response(inblock, (uschar *)buffer, buffsize, '2', timeout) +return smtp_read_response(inblock, US buffer, buffsize, '2', timeout) ? OK : FAIL; } #endif /* STAND_ALONE */ diff --git a/src/src/auths/dovecot.c b/src/src/auths/dovecot.c index 6378c1642..2dcaa0e42 100644 --- a/src/src/auths/dovecot.c +++ b/src/src/auths/dovecot.c @@ -393,7 +393,7 @@ fprintf(f, "VERSION\t%d\t%d\r\nSERVICE\tSMTP\r\nCPID\t%d\r\n" "AUTH\t%d\t%s\trip=%s\tlip=%s\tresp=%s\r\n", VERSION_MAJOR, VERSION_MINOR, getpid(), cuid, ablock->public_name, sender_host_address, interface_address, - data ? (char *) data : ""); + data ? CS data : ""); Subsequently, the command was modified to add "secured" and "valid-client- cert" when relevant. diff --git a/src/src/auths/gsasl_exim.c b/src/src/auths/gsasl_exim.c index 79c2313c9..48621a402 100644 --- a/src/src/auths/gsasl_exim.c +++ b/src/src/auths/gsasl_exim.c @@ -157,7 +157,7 @@ auth_gsasl_init(auth_instance *ablock) ablock->name, gsasl_strerror_name(rc), gsasl_strerror(rc)); HDEBUG(D_auth) debug_printf("GNU SASL supports: %s\n", p); - supported = gsasl_client_support_p(gsasl_ctx, (const char *)ob->server_mech); + supported = gsasl_client_support_p(gsasl_ctx, CCS ob->server_mech); if (!supported) log_write(0, LOG_PANIC_DIE|LOG_CONFIG_FOR, "%s authenticator: " "GNU SASL does not support mechanism \"%s\"", @@ -258,7 +258,7 @@ auth_gsasl_server(auth_instance *ablock, uschar *initial_data) debug_printf("GNU SASL: initialising session for %s, mechanism %s.\n", ablock->name, ob->server_mech); - rc = gsasl_server_start(gsasl_ctx, (const char *)ob->server_mech, &sctx); + rc = gsasl_server_start(gsasl_ctx, CCS ob->server_mech, &sctx); if (rc != GSASL_OK) { auth_defer_msg = string_sprintf("GNU SASL: session start failure: %s (%s)", gsasl_strerror_name(rc), gsasl_strerror(rc)); @@ -308,7 +308,7 @@ auth_gsasl_server(auth_instance *ablock, uschar *initial_data) HDEBUG(D_auth) debug_printf("Auth %s: Enabling channel-binding\n", ablock->name); gsasl_property_set(sctx, GSASL_CB_TLS_UNIQUE, - (const char *) tls_channelbinding_b64); + CCS tls_channelbinding_b64); } else { HDEBUG(D_auth) debug_printf("Auth %s: Not enabling channel-binding (data available)\n", @@ -369,7 +369,7 @@ auth_gsasl_server(auth_instance *ablock, uschar *initial_data) if ((rc == GSASL_NEEDS_MORE) || (to_send && *to_send)) exim_error = - auth_get_no64_data((uschar **)&received, (uschar *)to_send); + auth_get_no64_data((uschar **)&received, US to_send); if (to_send) { free(to_send); @@ -449,11 +449,11 @@ server_callback(Gsasl *ctx, Gsasl_session *sctx, Gsasl_property prop, auth_insta switch (prop) { case GSASL_VALIDATE_SIMPLE: /* GSASL_AUTHID, GSASL_AUTHZID, and GSASL_PASSWORD */ - propval = (uschar *) gsasl_property_fast(sctx, GSASL_AUTHID); + propval = US gsasl_property_fast(sctx, GSASL_AUTHID); auth_vars[0] = expand_nstring[1] = propval ? propval : US""; - propval = (uschar *) gsasl_property_fast(sctx, GSASL_AUTHZID); + propval = US gsasl_property_fast(sctx, GSASL_AUTHZID); auth_vars[1] = expand_nstring[2] = propval ? propval : US""; - propval = (uschar *) gsasl_property_fast(sctx, GSASL_PASSWORD); + propval = US gsasl_property_fast(sctx, GSASL_PASSWORD); auth_vars[2] = expand_nstring[3] = propval ? propval : US""; expand_nmax = 3; for (i = 1; i <= 3; ++i) @@ -469,7 +469,7 @@ server_callback(Gsasl *ctx, Gsasl_session *sctx, Gsasl_property prop, auth_insta cbrc = GSASL_AUTHENTICATION_ERROR; break; } - propval = (uschar *) gsasl_property_fast(sctx, GSASL_AUTHZID); + propval = US gsasl_property_fast(sctx, GSASL_AUTHZID); /* We always set $auth1, even if only to empty string. */ auth_vars[0] = expand_nstring[1] = propval ? propval : US""; expand_nlength[1] = Ustrlen(expand_nstring[1]); @@ -486,7 +486,7 @@ server_callback(Gsasl *ctx, Gsasl_session *sctx, Gsasl_property prop, auth_insta cbrc = GSASL_AUTHENTICATION_ERROR; break; } - propval = (uschar *) gsasl_property_fast(sctx, GSASL_ANONYMOUS_TOKEN); + propval = US gsasl_property_fast(sctx, GSASL_ANONYMOUS_TOKEN); /* We always set $auth1, even if only to empty string. */ auth_vars[0] = expand_nstring[1] = propval ? propval : US""; expand_nlength[1] = Ustrlen(expand_nstring[1]); @@ -507,9 +507,9 @@ server_callback(Gsasl *ctx, Gsasl_session *sctx, Gsasl_property prop, auth_insta First coding, we had these values swapped, but for consistency and prior to the first release of Exim with this authenticator, they've been switched to match the ordering of GSASL_VALIDATE_SIMPLE. */ - propval = (uschar *) gsasl_property_fast(sctx, GSASL_GSSAPI_DISPLAY_NAME); + propval = US gsasl_property_fast(sctx, GSASL_GSSAPI_DISPLAY_NAME); auth_vars[0] = expand_nstring[1] = propval ? propval : US""; - propval = (uschar *) gsasl_property_fast(sctx, GSASL_AUTHZID); + propval = US gsasl_property_fast(sctx, GSASL_AUTHZID); auth_vars[1] = expand_nstring[2] = propval ? propval : US""; expand_nmax = 2; for (i = 1; i <= 2; ++i) @@ -542,11 +542,11 @@ server_callback(Gsasl *ctx, Gsasl_session *sctx, Gsasl_property prop, auth_insta a new mechanism is added to the library. It *shouldn't* result in us needing to add more glue, since avoiding that is a large part of the point of SASL. */ - propval = (uschar *) gsasl_property_fast(sctx, GSASL_AUTHID); + propval = US gsasl_property_fast(sctx, GSASL_AUTHID); auth_vars[0] = expand_nstring[1] = propval ? propval : US""; - propval = (uschar *) gsasl_property_fast(sctx, GSASL_AUTHZID); + propval = US gsasl_property_fast(sctx, GSASL_AUTHZID); auth_vars[1] = expand_nstring[2] = propval ? propval : US""; - propval = (uschar *) gsasl_property_fast(sctx, GSASL_REALM); + propval = US gsasl_property_fast(sctx, GSASL_REALM); auth_vars[2] = expand_nstring[3] = propval ? propval : US""; expand_nmax = 3; for (i = 1; i <= 3; ++i) diff --git a/src/src/auths/md5.c b/src/src/auths/md5.c index 25655e9ba..71b8c9952 100644 --- a/src/src/auths/md5.c +++ b/src/src/auths/md5.c @@ -334,7 +334,7 @@ int main(void) { md5 base; int i = 0x01020304; -uschar *ctest = (uschar *)(&i); +uschar *ctest = US (&i); uschar buffer[256]; uschar digest[16]; printf("Checking md5: %s-endian\n", (ctest[0] == 0x04)? "little" : "big"); diff --git a/src/src/auths/pwcheck.c b/src/src/auths/pwcheck.c index 645265daa..54ba80f92 100644 --- a/src/src/auths/pwcheck.c +++ b/src/src/auths/pwcheck.c @@ -113,7 +113,7 @@ return PWCHECK_FAIL; s = socket(AF_UNIX, SOCK_STREAM, 0); if (s == -1) { return PWCHECK_FAIL; } - memset((char *)&srvaddr, 0, sizeof(srvaddr)); + memset(CS &srvaddr, 0, sizeof(srvaddr)); srvaddr.sun_family = AF_UNIX; strncpy(srvaddr.sun_path, CYRUS_PWCHECK_SOCKET, sizeof(srvaddr.sun_path)); r = connect(s, (struct sockaddr *)&srvaddr, sizeof(srvaddr)); @@ -124,9 +124,9 @@ return PWCHECK_FAIL; return PWCHECK_FAIL; } - iov[0].iov_base = (char *)userid; + iov[0].iov_base = CS userid; iov[0].iov_len = strlen(userid)+1; - iov[1].iov_base = (char *)passwd; + iov[1].iov_base = CS passwd; iov[1].iov_len = strlen(passwd)+1; retry_writev(s, iov, 2); @@ -200,7 +200,7 @@ int saslauthd_verify_password(const uschar *userid, return PWCHECK_FAIL; } - memset((char *)&srvaddr, 0, sizeof(srvaddr)); + memset(CS &srvaddr, 0, sizeof(srvaddr)); srvaddr.sun_family = AF_UNIX; strncpy(srvaddr.sun_path, CYRUS_SASLAUTHD_SOCKET, sizeof(srvaddr.sun_path)); @@ -343,7 +343,7 @@ static int retry_read(int fd, void *inbuf, unsigned nbyte) { int n; int nread = 0; - char *buf = (char *)inbuf; + char *buf = CS inbuf; if (nbyte == 0) return 0; @@ -432,7 +432,7 @@ retry_writev ( for (i = 0; i < iovcnt; i++) { if (iov[i].iov_len > (unsigned) n) { - iov[i].iov_base = (char *)iov[i].iov_base + n; + iov[i].iov_base = CS iov[i].iov_base + n; iov[i].iov_len -= n; break; } diff --git a/src/src/auths/spa.c b/src/src/auths/spa.c index 439086f1c..f14ca5e54 100644 --- a/src/src/auths/spa.c +++ b/src/src/auths/spa.c @@ -123,7 +123,7 @@ ablock->server = ob->spa_serverpassword != NULL; /* For interface, see auths/README */ -#define CVAL(buf,pos) (((unsigned char *)(buf))[pos]) +#define CVAL(buf,pos) ((US (buf))[pos]) #define PVAL(buf,pos) ((unsigned)CVAL(buf,pos)) #define SVAL(buf,pos) (PVAL(buf,pos)|PVAL(buf,(pos)+1)<<8) #define IVAL(buf,pos) (SVAL(buf,pos)|SVAL(buf,(pos)+2)<<16) @@ -151,7 +151,7 @@ if ((*data == '\0') && return FAIL; } -if (spa_base64_to_bits((char *)(&request), sizeof(request), (const char *)(data)) < 0) +if (spa_base64_to_bits(CS (&request), sizeof(request), CCS (data)) < 0) { DEBUG(D_auth) debug_printf("auth_spa_server(): bad base64 data in " "request: %s\n", data); @@ -171,7 +171,7 @@ if (auth_get_no64_data(&data, msgbuf) != OK) } /* dump client response */ -if (spa_base64_to_bits((char *)(&response), sizeof(response), (const char *)(data)) < 0) +if (spa_base64_to_bits(CS (&response), sizeof(response), CCS (data)) < 0) { DEBUG(D_auth) debug_printf("auth_spa_server(): bad base64 data in " "response: %s\n", data); @@ -324,7 +324,7 @@ if (smtp_write_command(outblock, SCMD_FLUSH, "AUTH %s\r\n", return FAIL_SEND; /* wait for the 3XX OK message */ -if (!smtp_read_response(inblock, (uschar *)buffer, buffsize, '3', timeout)) +if (!smtp_read_response(inblock, US buffer, buffsize, '3', timeout)) return FAIL; DSPA("\n\n%s authenticator: using domain %s\n\n", ablock->name, domain); @@ -340,12 +340,12 @@ if (smtp_write_command(outblock, SCMD_FLUSH, "%s\r\n", msgbuf) < 0) return FAIL_SEND; /* wait for the auth challenge */ -if (!smtp_read_response(inblock, (uschar *)buffer, buffsize, '3', timeout)) +if (!smtp_read_response(inblock, US buffer, buffsize, '3', timeout)) return FAIL; /* convert the challenge into the challenge struct */ DSPA("\n\n%s authenticator: challenge (%s)\n\n", ablock->name, buffer + 4); -spa_base64_to_bits ((char *)(&challenge), sizeof(challenge), (const char *)(buffer + 4)); +spa_base64_to_bits (CS (&challenge), sizeof(challenge), CCS (buffer + 4)); spa_build_auth_response (&challenge, &response, CS username, CS password); spa_bits_to_base64 (US msgbuf, (unsigned char*)&response, diff --git a/src/src/auths/xtextencode.c b/src/src/auths/xtextencode.c index 38237207e..4d189fc06 100644 --- a/src/src/auths/xtextencode.c +++ b/src/src/auths/xtextencode.c @@ -28,7 +28,7 @@ uschar * auth_xtextencode(uschar *clear, int len) { uschar *code; -uschar *p = (uschar *)clear; +uschar *p = US clear; uschar *pp; int c = len; int count = 1; @@ -42,7 +42,7 @@ while (c -- > 0) pp = code = store_get(count); -p = (uschar *)clear; +p = US clear; c = len; while (c-- > 0) if ((x = *p++) < 33 || x > 127 || x == '+' || x == '=') diff --git a/src/src/bmi_spam.c b/src/src/bmi_spam.c index 378514939..546ac1e36 100644 --- a/src/src/bmi_spam.c +++ b/src/src/bmi_spam.c @@ -27,7 +27,7 @@ uschar *bmi_process_message(header_line *header_list, int data_fd) { uschar *verdicts = NULL; int i,j; - err = bmiInitSystem(BMI_VERSION, (char *)bmi_config_file, &system); + err = bmiInitSystem(BMI_VERSION, CS bmi_config_file, &system); if (bmiErrorIsFatal(err) == BMI_TRUE) { err_loc = bmiErrorGetLocation(err); err_type = bmiErrorGetType(err); @@ -51,24 +51,24 @@ uschar *bmi_process_message(header_line *header_list, int data_fd) { host_address = localhost; else host_address = sender_host_address; - err = bmiProcessConnection((char *)host_address, message); + err = bmiProcessConnection(CS host_address, message); if (bmiErrorIsFatal(err) == BMI_TRUE) { err_loc = bmiErrorGetLocation(err); err_type = bmiErrorGetType(err); log_write(0, LOG_PANIC, - "bmi error [loc %d type %d]: bmiProcessConnection() failed (IP %s).", (int)err_loc, (int)err_type, (char *)host_address); + "bmi error [loc %d type %d]: bmiProcessConnection() failed (IP %s).", (int)err_loc, (int)err_type, CS host_address); bmiFreeMessage(message); bmiFreeSystem(system); return NULL; }; /* Send envelope sender address */ - err = bmiProcessFROM((char *)sender_address, message); + err = bmiProcessFROM(CS sender_address, message); if (bmiErrorIsFatal(err) == BMI_TRUE) { err_loc = bmiErrorGetLocation(err); err_type = bmiErrorGetType(err); log_write(0, LOG_PANIC, - "bmi error [loc %d type %d]: bmiProcessFROM() failed (address %s).", (int)err_loc, (int)err_type, (char *)sender_address); + "bmi error [loc %d type %d]: bmiProcessFROM() failed (address %s).", (int)err_loc, (int)err_type, CS sender_address); bmiFreeMessage(message); bmiFreeSystem(system); return NULL; @@ -86,14 +86,14 @@ uschar *bmi_process_message(header_line *header_list, int data_fd) { err = bmiOptinMset(optin, r->bmi_optin, ':'); if (bmiErrorIsFatal(err) == BMI_TRUE) { log_write(0, LOG_PANIC|LOG_MAIN, - "bmi warning: [loc %d type %d]: bmiOptinMSet() failed (address '%s', string '%s').", (int)err_loc, (int)err_type, (char *)r->address, (char *)r->bmi_optin); + "bmi warning: [loc %d type %d]: bmiOptinMSet() failed (address '%s', string '%s').", (int)err_loc, (int)err_type, CS r->address, CS r->bmi_optin); if (optin != NULL) bmiOptinFree(optin); optin = NULL; }; }; - err = bmiAccumulateTO((char *)r->address, optin, message); + err = bmiAccumulateTO(CS r->address, optin, message); if (optin != NULL) bmiOptinFree(optin); @@ -102,7 +102,7 @@ uschar *bmi_process_message(header_line *header_list, int data_fd) { err_loc = bmiErrorGetLocation(err); err_type = bmiErrorGetType(err); log_write(0, LOG_PANIC, - "bmi error [loc %d type %d]: bmiAccumulateTO() failed (address %s).", (int)err_loc, (int)err_type, (char *)r->address); + "bmi error [loc %d type %d]: bmiAccumulateTO() failed (address %s).", (int)err_loc, (int)err_type, CS r->address); bmiFreeMessage(message); bmiFreeSystem(system); return NULL; @@ -126,7 +126,7 @@ uschar *bmi_process_message(header_line *header_list, int data_fd) { header_list = header_list->next; continue; }; - err = bmiAccumulateHeaders((const char *)header_list->text, header_list->slen, message); + err = bmiAccumulateHeaders(CCS header_list->text, header_list->slen, message); if (bmiErrorIsFatal(err) == BMI_TRUE) { err_loc = bmiErrorGetLocation(err); err_type = bmiErrorGetType(err); @@ -154,7 +154,7 @@ uschar *bmi_process_message(header_line *header_list, int data_fd) { do { j = fread(data_buffer, 1, sizeof(data_buffer), data_file); if (j > 0) { - err = bmiAccumulateBody((const char *)data_buffer, j, message); + err = bmiAccumulateBody(CCS data_buffer, j, message); if (bmiErrorIsFatal(err) == BMI_TRUE) { err_loc = bmiErrorGetLocation(err); err_type = bmiErrorGetType(err); @@ -328,7 +328,7 @@ uschar *bmi_get_base64_verdict(uschar *bmi_local_part, uschar *bmi_domain) { /* loop through verdicts */ verdict_ptr = bmi_verdicts; - while ((verdict_str = (const char *)string_nextinlist(&verdict_ptr, &sep, + while ((verdict_str = CCS string_nextinlist(&verdict_ptr, &sep, verdict_buffer, Ustrlen(bmi_verdicts)+1)) != NULL) { @@ -350,7 +350,7 @@ uschar *bmi_get_base64_verdict(uschar *bmi_local_part, uschar *bmi_domain) { uschar *rcpt_domain; /* compare address against our subject */ - rcpt_local_part = (unsigned char *)bmiRecipientAccessAddress(recipient); + rcpt_local_part = US bmiRecipientAccessAddress(recipient); rcpt_domain = Ustrchr(rcpt_local_part,'@'); if (rcpt_domain == NULL) { rcpt_domain = US""; @@ -364,7 +364,7 @@ uschar *bmi_get_base64_verdict(uschar *bmi_local_part, uschar *bmi_domain) { (strcmpic(rcpt_domain, bmi_domain) == 0) ) { /* found verdict */ bmiFreeVerdict(verdict); - return (uschar *)verdict_str; + return US verdict_str; }; }; diff --git a/src/src/daemon.c b/src/src/daemon.c index 16e8bbacb..b91b43746 100644 --- a/src/src/daemon.c +++ b/src/src/daemon.c @@ -1411,7 +1411,7 @@ if (daemon_listen && !inetd_wait_mode) #ifdef IPV6_V6ONLY if (af == AF_INET6 && wildcard && - setsockopt(listen_sockets[sk], IPPROTO_IPV6, IPV6_V6ONLY, (char *)(&on), + setsockopt(listen_sockets[sk], IPPROTO_IPV6, IPV6_V6ONLY, CS (&on), sizeof(on)) < 0) log_write(0, LOG_MAIN, "Setting IPV6_V6ONLY on daemon's IPv6 wildcard " "socket failed (%s): carrying on without it", strerror(errno)); @@ -1422,7 +1422,7 @@ if (daemon_listen && !inetd_wait_mode) smtp port for listening. */ if (setsockopt(listen_sockets[sk], SOL_SOCKET, SO_REUSEADDR, - (uschar *)(&on), sizeof(on)) < 0) + US (&on), sizeof(on)) < 0) log_write(0, LOG_MAIN|LOG_PANIC_DIE, "setting SO_REUSEADDR on socket " "failed when starting daemon: %s", strerror(errno)); @@ -1430,7 +1430,7 @@ if (daemon_listen && !inetd_wait_mode) disable this because it breaks some broken clients. */ if (tcp_nodelay) setsockopt(listen_sockets[sk], IPPROTO_TCP, TCP_NODELAY, - (uschar *)(&on), sizeof(on)); + US (&on), sizeof(on)); /* Now bind the socket to the required port; if Exim is being restarted it may not always be possible to bind immediately, even with SO_REUSEADDR diff --git a/src/src/dane-openssl.c b/src/src/dane-openssl.c index 8db73d086..0a74f1f28 100644 --- a/src/src/dane-openssl.c +++ b/src/src/dane-openssl.c @@ -253,12 +253,12 @@ for (matched = 0; !matched && slist; slist = slist->next) { case DANESSL_SELECTOR_CERT: len = i2d_X509(cert, NULL); - buf2 = buf = (unsigned char *) OPENSSL_malloc(len); + buf2 = buf = US OPENSSL_malloc(len); if(buf) i2d_X509(cert, &buf2); break; case DANESSL_SELECTOR_SPKI: len = i2d_X509_PUBKEY(X509_get_X509_PUBKEY(cert), NULL); - buf2 = buf = (unsigned char *) OPENSSL_malloc(len); + buf2 = buf = US OPENSSL_malloc(len); if(buf) i2d_X509_PUBKEY(X509_get_X509_PUBKEY(cert), &buf2); break; } @@ -824,7 +824,7 @@ if (gn->type != GEN_DNS) return 0; if (ASN1_STRING_type(gn->d.ia5) != V_ASN1_IA5STRING) return 0; -return check_name((const char *) ASN1_STRING_get0_data(gn->d.ia5), +return check_name(CCS ASN1_STRING_get0_data(gn->d.ia5), ASN1_STRING_length(gn->d.ia5)); } @@ -848,12 +848,12 @@ if (!(entry_str = X509_NAME_ENTRY_get_data(entry))) if ((len = ASN1_STRING_to_UTF8(&namebuf, entry_str)) < 0) return 0; -if (len <= 0 || check_name((char *) namebuf, len) == 0) +if (len <= 0 || check_name(CS namebuf, len) == 0) { OPENSSL_free(namebuf); return 0; } -return (char *) namebuf; +return CS namebuf; } static int diff --git a/src/src/dcc.c b/src/src/dcc.c index fcdc5a897..a11e12df4 100644 --- a/src/src/dcc.c +++ b/src/src/dcc.c @@ -185,10 +185,10 @@ dcc_process(uschar **listptr) /* If sockip contains an ip, we use a tcp socket, otherwise a UNIX socket */ if(Ustrcmp(sockip, "")){ - ipaddress = gethostbyname((char *)sockip); - bzero((char *) &serv_addr_in, sizeof(serv_addr_in)); + ipaddress = gethostbyname(CS sockip); + bzero(CS &serv_addr_in, sizeof(serv_addr_in)); serv_addr_in.sin_family = AF_INET; - bcopy((char *)ipaddress->h_addr, (char *)&serv_addr_in.sin_addr.s_addr, ipaddress->h_length); + bcopy(CS ipaddress->h_addr, CS &serv_addr_in.sin_addr.s_addr, ipaddress->h_length); serv_addr_in.sin_port = htons(portnr); if ((sockfd = socket(AF_INET, SOCK_STREAM,0)) < 0){ DEBUG(D_acl) diff --git a/src/src/dkim.c b/src/src/dkim.c index 519deabcf..2857e6398 100644 --- a/src/src/dkim.c +++ b/src/src/dkim.c @@ -48,7 +48,7 @@ for (rr = dns_next_rr(&dnsa, &dnss, RESET_ANSWERS); uschar len = rr->data[rr_offset++]; snprintf(answer + answer_offset, PDKIM_DNS_TXT_MAX_RECLEN - answer_offset, - "%.*s", (int)len, (char *) (rr->data + rr_offset)); + "%.*s", (int)len, CS (rr->data + rr_offset)); rr_offset += len; answer_offset += len; if (answer_offset >= PDKIM_DNS_TXT_MAX_RECLEN) diff --git a/src/src/dmarc.c b/src/src/dmarc.c index a0eccac3a..704b0c88d 100644 --- a/src/src/dmarc.c +++ b/src/src/dmarc.c @@ -84,7 +84,7 @@ int dmarc_init() int *netmask = NULL; /* Ignored */ int is_ipv6 = 0; char *tld_file = (dmarc_tld_file == NULL) ? - DMARC_TLD_FILE : (char *)dmarc_tld_file; + DMARC_TLD_FILE : CS dmarc_tld_file; /* Set some sane defaults. Also clears previous results when * multiple messages in one connection. */ @@ -308,7 +308,7 @@ if (!dmarc_abort && !sender_host_authenticated) sr == SPF_RESULT_PERMERROR ? ARES_RESULT_PERMERROR : ARES_RESULT_UNKNOWN; origin = DMARC_POLICY_SPF_ORIGIN_MAILFROM; - spf_human_readable = (uschar *)spf_response->header_comment; + spf_human_readable = US spf_response->header_comment; DEBUG(D_receive) debug_printf("DMARC using SPF sender domain = %s\n", spf_sender_domain); } @@ -336,7 +336,7 @@ if (!dmarc_abort && !sender_host_authenticated) vs == PDKIM_VERIFY_FAIL ? DMARC_POLICY_DKIM_OUTCOME_FAIL : vs == PDKIM_VERIFY_INVALID ? DMARC_POLICY_DKIM_OUTCOME_TMPFAIL : DMARC_POLICY_DKIM_OUTCOME_NONE; - libdm_status = opendmarc_policy_store_dkim(dmarc_pctx, (uschar *)sig->domain, + libdm_status = opendmarc_policy_store_dkim(dmarc_pctx, US sig->domain, dkim_result, US""); DEBUG(D_receive) debug_printf("DMARC adding DKIM sender domain = %s\n", sig->domain); @@ -400,7 +400,7 @@ if (!dmarc_abort && !sender_host_authenticated) /* Can't use exim's string manipulation functions so allocate memory * for libopendmarc using its max hostname length definition. */ - uschar *dmarc_domain = (uschar *)calloc(DMARC_MAXHOSTNAMELEN, sizeof(uschar)); + uschar *dmarc_domain = US calloc(DMARC_MAXHOSTNAMELEN, sizeof(uschar)); libdm_status = opendmarc_policy_fetch_utilized_domain(dmarc_pctx, dmarc_domain, DMARC_MAXHOSTNAMELEN-1); dmarc_used_domain = string_copy(dmarc_domain); diff --git a/src/src/expand.c b/src/src/expand.c index d8d36a3b5..83e519a7d 100644 --- a/src/src/expand.c +++ b/src/src/expand.c @@ -6655,19 +6655,19 @@ while (*s != 0) char * cp; char tok[3]; tok[0] = sep; tok[1] = ':'; tok[2] = 0; - while ((cp= strpbrk((const char *)item, tok))) + while ((cp= strpbrk(CCS item, tok))) { - yield = string_catn(yield, &size, &ptr, item, cp-(char *)item); + yield = string_catn(yield, &size, &ptr, item, cp-CS item); if (*cp++ == ':') /* colon in a non-colon-sep list item, needs doubling */ { yield = string_catn(yield, &size, &ptr, US"::", 2); - item = (uschar *)cp; + item = US cp; } else /* sep in item; should already be doubled; emit once */ { - yield = string_catn(yield, &size, &ptr, (uschar *)tok, 1); + yield = string_catn(yield, &size, &ptr, US tok, 1); if (*cp == sep) cp++; - item = (uschar *)cp; + item = US cp; } } } diff --git a/src/src/filter.c b/src/src/filter.c index a5c3b5dfa..24753a607 100644 --- a/src/src/filter.c +++ b/src/src/filter.c @@ -91,7 +91,7 @@ static const char *mailargs[] = { /* "to" must be first, and */ /* The count of string arguments */ -#define MAILARGS_STRING_COUNT (sizeof(mailargs)/sizeof(uschar *)) +#define MAILARGS_STRING_COUNT (nelem(mailargs)) /* The count of string arguments that are actually passed over as strings (once_repeat is converted to an int). */ @@ -185,7 +185,7 @@ static const char *cond_words[] = { "match", "matches"}; -static int cond_word_count = (sizeof(cond_words)/sizeof(uschar *)); +static int cond_word_count = nelem(cond_words); static int cond_types[] = { cond_BEGINS, cond_BEGINS, cond_CONTAINS, cond_CONTAINS, cond_ENDS, cond_ENDS, cond_IS, cond_MATCHES, cond_MATCHES, @@ -207,7 +207,7 @@ static const char *command_list[] = { "noerror", "pipe", "save", "seen", "testprint", "unseen", "vacation" }; -static int command_list_count = sizeof(command_list)/sizeof(uschar *); +static int command_list_count = nelem(command_list); /* This table contains the number of expanded arguments in the bottom 4 bits. If the top bit is set, it means that the default for the command is "seen". */ diff --git a/src/src/hash.c b/src/src/hash.c index bde22b26a..f49add29c 100644 --- a/src/src/hash.c +++ b/src/src/hash.c @@ -776,7 +776,7 @@ int main(void) sha1 base; int j; int i = 0x01020304; -uschar *ctest = (uschar *)(&i); +uschar *ctest = US (&i); uschar buffer[256]; uschar digest[20]; uschar s[41]; diff --git a/src/src/host.c b/src/src/host.c index 07d9491d4..ec262805e 100644 --- a/src/src/host.c +++ b/src/src/host.c @@ -919,21 +919,21 @@ if (type < 0) if (family == AF_INET6) { struct sockaddr_in6 *sk = (struct sockaddr_in6 *)arg; - yield = (uschar *)inet_ntop(family, &(sk->sin6_addr), CS addr_buffer, + yield = US inet_ntop(family, &(sk->sin6_addr), CS addr_buffer, sizeof(addr_buffer)); if (portptr != NULL) *portptr = ntohs(sk->sin6_port); } else { struct sockaddr_in *sk = (struct sockaddr_in *)arg; - yield = (uschar *)inet_ntop(family, &(sk->sin_addr), CS addr_buffer, + yield = US inet_ntop(family, &(sk->sin_addr), CS addr_buffer, sizeof(addr_buffer)); if (portptr != NULL) *portptr = ntohs(sk->sin_port); } } else { - yield = (uschar *)inet_ntop(type, arg, CS addr_buffer, sizeof(addr_buffer)); + yield = US inet_ntop(type, arg, CS addr_buffer, sizeof(addr_buffer)); } /* If the result is a mapped IPv4 address, show it in V4 format. */ @@ -1584,7 +1584,7 @@ if (hosts->h_name == NULL || hosts->h_name[0] == 0 || hosts->h_name[0] == '.') /* Copy and lowercase the name, which is in static storage in many systems. Put it in permanent memory. */ -s = (uschar *)hosts->h_name; +s = US hosts->h_name; len = Ustrlen(s) + 1; t = sender_host_name = store_get_perm(len); while (*s != 0) *t++ = tolower(*s++); @@ -1739,7 +1739,7 @@ while ((ordername = string_nextinlist(&list, &sep, buffer, sizeof(buffer)))) truncated and dn_expand may fail. */ if (dn_expand(dnsa.answer, dnsa.answer + dnsa.answerlen, - (uschar *)(rr->data), (DN_EXPAND_ARG4_TYPE)(s), ssize) < 0) + US (rr->data), (DN_EXPAND_ARG4_TYPE)(s), ssize) < 0) { log_write(0, LOG_MAIN, "host name alias list truncated for %s", sender_host_address); @@ -2096,7 +2096,7 @@ for (i = 1; i <= times; if (hostdata->h_name[0] != 0 && Ustrcmp(host->name, hostdata->h_name) != 0) - host->name = string_copy_dnsdomain((uschar *)hostdata->h_name); + host->name = string_copy_dnsdomain(US hostdata->h_name); if (fully_qualified_name != NULL) *fully_qualified_name = host->name; /* Get the list of addresses. IPv4 and IPv6 addresses can be distinguished diff --git a/src/src/ip.c b/src/src/ip.c index 18a60d5f8..09b4c439e 100644 --- a/src/src/ip.c +++ b/src/src/ip.c @@ -457,7 +457,7 @@ ip_keepalive(int sock, const uschar *address, BOOL torf) { int fodder = 1; if (setsockopt(sock, SOL_SOCKET, SO_KEEPALIVE, - (uschar *)(&fodder), sizeof(fodder)) != 0) + US (&fodder), sizeof(fodder)) != 0) log_write(0, LOG_MAIN, "setsockopt(SO_KEEPALIVE) on connection %s %s " "failed: %s", torf? "to":"from", address, strerror(errno)); } diff --git a/src/src/lookups/dnsdb.c b/src/src/lookups/dnsdb.c index c4b5b53ec..bf3acd6ef 100644 --- a/src/src/lookups/dnsdb.c +++ b/src/src/lookups/dnsdb.c @@ -410,7 +410,7 @@ while ((domain = string_nextinlist(&keystring, &sep, NULL, 0))) if (outsep2 == NULL) { /* output only the first item of data */ - yield = string_catn(yield, &size, &ptr, (uschar *)(rr->data+1), + yield = string_catn(yield, &size, &ptr, US (rr->data+1), (rr->data)[0]); } else diff --git a/src/src/lookups/ibase.c b/src/src/lookups/ibase.c index b29fccca7..7f1775c1f 100644 --- a/src/src/lookups/ibase.c +++ b/src/src/lookups/ibase.c @@ -291,35 +291,35 @@ has the password removed. This copy is also used for debugging output. */ (char *) store_get(sizeof(char) * var->sqllen); break; case SQL_SHORT: - var->sqldata = (char *) store_get(sizeof(short)); + var->sqldata = CS store_get(sizeof(short)); break; case SQL_LONG: - var->sqldata = (char *) store_get(sizeof(ISC_LONG)); + var->sqldata = CS store_get(sizeof(ISC_LONG)); break; #ifdef SQL_INT64 case SQL_INT64: - var->sqldata = (char *) store_get(sizeof(ISC_INT64)); + var->sqldata = CS store_get(sizeof(ISC_INT64)); break; #endif case SQL_FLOAT: - var->sqldata = (char *) store_get(sizeof(float)); + var->sqldata = CS store_get(sizeof(float)); break; case SQL_DOUBLE: - var->sqldata = (char *) store_get(sizeof(double)); + var->sqldata = CS store_get(sizeof(double)); break; #ifdef SQL_TIMESTAMP case SQL_DATE: - var->sqldata = (char *) store_get(sizeof(ISC_QUAD)); + var->sqldata = CS store_get(sizeof(ISC_QUAD)); break; #else case SQL_TIMESTAMP: - var->sqldata = (char *) store_get(sizeof(ISC_TIMESTAMP)); + var->sqldata = CS store_get(sizeof(ISC_TIMESTAMP)); break; case SQL_TYPE_DATE: - var->sqldata = (char *) store_get(sizeof(ISC_DATE)); + var->sqldata = CS store_get(sizeof(ISC_DATE)); break; case SQL_TYPE_TIME: - var->sqldata = (char *) store_get(sizeof(ISC_TIME)); + var->sqldata = CS store_get(sizeof(ISC_TIME)); break; #endif } diff --git a/src/src/lookups/lmdb.c b/src/src/lookups/lmdb.c index a6888d5a9..55f273fd9 100644 --- a/src/src/lookups/lmdb.c +++ b/src/src/lookups/lmdb.c @@ -85,7 +85,7 @@ Lmdbstrct * lmdb_p = handle; dbkey.mv_data = CS keystring; dbkey.mv_size = length; -DEBUG(D_lookup) debug_printf("LMDB: lookup key: %s\n", (char *)keystring); +DEBUG(D_lookup) debug_printf("LMDB: lookup key: %s\n", CS keystring); if ((ret = mdb_get(lmdb_p->txn, lmdb_p->db_dbi, &dbkey, &data)) == 0) { diff --git a/src/src/lookups/sqlite.c b/src/src/lookups/sqlite.c index 6e7b015bc..0b01fdbce 100644 --- a/src/src/lookups/sqlite.c +++ b/src/src/lookups/sqlite.c @@ -23,7 +23,7 @@ sqlite_open(uschar *filename, uschar **errmsg) sqlite3 *db = NULL; int ret; -ret = sqlite3_open((char *)filename, &db); +ret = sqlite3_open(CS filename, &db); if (ret != 0) { *errmsg = (void *)sqlite3_errmsg(db); @@ -86,7 +86,7 @@ sqlite_find(void *handle, uschar *filename, const uschar *query, int length, int ret; struct strbuf res = { NULL, 0, 0 }; -ret = sqlite3_exec(handle, (char *)query, sqlite_callback, &res, (char **)errmsg); +ret = sqlite3_exec(handle, CS query, sqlite_callback, &res, (char **)errmsg); if (ret != SQLITE_OK) { debug_printf("sqlite3_exec failed: %s\n", *errmsg); diff --git a/src/src/malware.c b/src/src/malware.c index d7be4edbb..b626b18a8 100644 --- a/src/src/malware.c +++ b/src/src/malware.c @@ -104,7 +104,7 @@ static inline int test_byte_order() { short int word = 0x0001; - char *byte = (char *) &word; + char *byte = CS &word; return(byte[0] ? LITTLE_MY_ENDIAN : BIG_MY_ENDIAN); } @@ -790,7 +790,7 @@ badseek: err = errno; if (buf[0] != '2') /* aveserver is having problems */ return m_errlog_defer_3(scanent, CUS callout_address, string_sprintf("unavailable (Responded: %s).", - ((buf[0] != 0) ? buf : (uschar *)"nothing") ), + ((buf[0] != 0) ? buf : US "nothing") ), sock); /* prepare our command */ @@ -835,7 +835,7 @@ badseek: err = errno; if (buf[0] != '2') /* aveserver is having problems */ return m_errlog_defer_3(scanent, CUS callout_address, string_sprintf("unable to quit dialogue (Responded: %s).", - ((buf[0] != 0) ? buf : (uschar *)"nothing") ), + ((buf[0] != 0) ? buf : US "nothing") ), sock); if (result == DEFER) diff --git a/src/src/os.c b/src/src/os.c index ca24e8dd2..d300c3f68 100644 --- a/src/src/os.c +++ b/src/src/os.c @@ -413,7 +413,7 @@ if (avg_kd < 0) } if (lseek (avg_kd, avg_offset, 0) == -1L - || read (avg_kd, (char *)(&avg), sizeof (avg)) != sizeof(avg)) + || read (avg_kd, CS (&avg), sizeof (avg)) != sizeof(avg)) return -1; return (int)(((double)avg/FSCALE)*1000.0); @@ -645,7 +645,7 @@ ifc.V_ifc_family = V_FAMILY_QUERY; ifc.V_ifc_flags = 0; #endif -if (ioctl(vs, V_GIFCONF, (char *)&ifc) < 0) +if (ioctl(vs, V_GIFCONF, CS &ifc) < 0) log_write(0, LOG_PANIC_DIE, "Unable to get interface configuration: %d %s", errno, strerror(errno)); @@ -680,7 +680,7 @@ find its length, and then recopy the correct length. */ for (cp = buf; cp < buf + ifc.V_ifc_len; cp += len) { - memcpy((char *)&ifreq, cp, sizeof(ifreq)); + memcpy(CS &ifreq, cp, sizeof(ifreq)); #ifndef HAVE_SA_LEN len = sizeof(struct V_ifreq); @@ -710,7 +710,7 @@ for (cp = buf; cp < buf + ifc.V_ifc_len; cp += len) interface hasn't been "plumbed" to any protocol (IPv4 or IPv6). Therefore, we now just treat this case as "down" as well. */ - if (ioctl(vs, V_GIFFLAGS, (char *)&ifreq) < 0) + if (ioctl(vs, V_GIFFLAGS, CS &ifreq) < 0) { continue; /************* @@ -726,7 +726,7 @@ for (cp = buf; cp < buf + ifc.V_ifc_len; cp += len) GIFFLAGS may have wrecked the data. */ #ifndef SIOCGIFCONF_GIVES_ADDR - if (ioctl(vs, V_GIFADDR, (char *)&ifreq) < 0) + if (ioctl(vs, V_GIFADDR, CS &ifreq) < 0) log_write(0, LOG_PANIC_DIE, "Unable to get IP address for %s interface: " "%d %s", ifreq.V_ifr_name, errno, strerror(errno)); addrp = &ifreq.V_ifr_addr; @@ -846,7 +846,7 @@ os_get_dns_resolver_res(void) int os_unsetenv(const unsigned char * name) { -return unsetenv((char *)name); +return unsetenv(CS name); } #endif @@ -865,7 +865,7 @@ this, for all other systems we provide our own getcwd() */ unsigned char * os_getcwd(unsigned char * buffer, size_t size) { -return (unsigned char *) getcwd((char *)buffer, size); +return US getcwd(CS buffer, size); } #else #ifndef PATH_MAX @@ -874,7 +874,7 @@ return (unsigned char *) getcwd((char *)buffer, size); unsigned char * os_getcwd(unsigned char * buffer, size_t size) { -char * b = (char *)buffer; +char * b = CS buffer; if (!size) size = PATH_MAX; if (!b && !(b = malloc(size))) return NULL; diff --git a/src/src/parse.c b/src/src/parse.c index a7231f39b..68a83b0e8 100644 --- a/src/src/parse.c +++ b/src/src/parse.c @@ -620,8 +620,8 @@ parse_extract_address(uschar *mailbox, uschar **errorptr, int *start, int *end, { uschar *yield = store_get(Ustrlen(mailbox) + 1); uschar *startptr, *endptr; -uschar *s = (uschar *)mailbox; -uschar *t = (uschar *)yield; +uschar *s = US mailbox; +uschar *t = US yield; *domain = 0; @@ -745,7 +745,7 @@ if (*s == '<') *errorptr = s[-1] == 0 ? US"'>' missing at end of address" : string_sprintf("malformed address: %.32s may not follow %.*s", - s-1, s - (uschar *)mailbox - 1, mailbox); + s-1, s - US mailbox - 1, mailbox); goto PARSE_FAILED; } @@ -798,13 +798,13 @@ if (*s != 0) else { *errorptr = string_sprintf("malformed address: %.32s may not follow %.*s", - s, s - (uschar *)mailbox, mailbox); + s, s - US mailbox, mailbox); goto PARSE_FAILED; } } -*start = startptr - (uschar *)mailbox; /* Return offsets */ +*start = startptr - US mailbox; /* Return offsets */ while (isspace(endptr[-1])) endptr--; -*end = endptr - (uschar *)mailbox; +*end = endptr - US mailbox; /* Although this code has no limitation on the length of address extracted, other parts of Exim may have limits, and in any case, RFC 2821 limits local diff --git a/src/src/perl.c b/src/src/perl.c index 92218a6ef..5f4f0d98d 100644 --- a/src/src/perl.c +++ b/src/src/perl.c @@ -60,7 +60,7 @@ XS(xs_expand_string) str = expand_string(US SvPV(ST(0), len)); ST(0) = sv_newmortal(); if (str != NULL) - sv_setpv(ST(0), (const char *) str); + sv_setpv(ST(0), CCS str); else if (!expand_string_forcedfail) croak("syntax error in Exim::expand_string argument: %s", expand_string_message); diff --git a/src/src/readconf.c b/src/src/readconf.c index c3c74e277..f831f866a 100644 --- a/src/src/readconf.c +++ b/src/src/readconf.c @@ -565,7 +565,7 @@ for (r = routers; r; r = r->next) for (i = 0; i < *ri->options_count; i++) { if ((ri->options[i].type & opt_mask) != opt_stringptr) continue; - if (p == (char *)(r->options_block) + (long int)(ri->options[i].value)) + if (p == CS (r->options_block) + (long int)(ri->options[i].value)) return US ri->options[i].name; } } @@ -578,8 +578,8 @@ for (t = transports; t; t = t->next) optionlist * op = &ti->options[i]; if ((op->type & opt_mask) != opt_stringptr) continue; if (p == ( op->type & opt_public - ? (char *)t - : (char *)t->options_block + ? CS t + : CS t->options_block ) + (long int)op->value) return US op->name; @@ -1274,7 +1274,7 @@ ol = find_option(name2, oltop, last); if (ol == NULL) log_write(0, LOG_MAIN|LOG_PANIC_DIE, "Exim internal error: missing set flag for %s", name); return (data_block == NULL)? (BOOL *)(ol->value) : - (BOOL *)((uschar *)data_block + (long int)(ol->value)); + (BOOL *)(US data_block + (long int)(ol->value)); } @@ -1747,8 +1747,8 @@ switch (type) } else { - chain = (rewrite_rule **)((uschar *)data_block + (long int)(ol2->value)); - flagptr = (int *)((uschar *)data_block + (long int)(ol3->value)); + chain = (rewrite_rule **)(US data_block + (long int)(ol2->value)); + flagptr = (int *)(US data_block + (long int)(ol3->value)); } while ((p = string_nextinlist(CUSS &sptr, &sep, big_buffer, BIG_BUFFER_SIZE))) @@ -1780,7 +1780,7 @@ switch (type) if (data_block == NULL) *((uschar **)(ol2->value)) = ss; else - *((uschar **)((uschar *)data_block + (long int)(ol2->value))) = ss; + *((uschar **)(US data_block + (long int)(ol2->value))) = ss; if (ss != NULL) { @@ -1799,7 +1799,7 @@ switch (type) if (data_block == NULL) *((uid_t *)(ol->value)) = uid; else - *((uid_t *)((uschar *)data_block + (long int)(ol->value))) = uid; + *((uid_t *)(US data_block + (long int)(ol->value))) = uid; /* Set the flag indicating a fixed value is set */ @@ -1821,7 +1821,7 @@ switch (type) if (data_block == NULL) *((gid_t *)(ol2->value)) = pw->pw_gid; else - *((gid_t *)((uschar *)data_block + (long int)(ol2->value))) = pw->pw_gid; + *((gid_t *)(US data_block + (long int)(ol2->value))) = pw->pw_gid; *set_flag = TRUE; } } @@ -1843,7 +1843,7 @@ switch (type) if (data_block == NULL) *((uschar **)(ol2->value)) = ss; else - *((uschar **)((uschar *)data_block + (long int)(ol2->value))) = ss; + *((uschar **)(US data_block + (long int)(ol2->value))) = ss; if (ss != NULL) { @@ -1861,7 +1861,7 @@ switch (type) if (data_block == NULL) *((gid_t *)(ol->value)) = gid; else - *((gid_t *)((uschar *)data_block + (long int)(ol->value))) = gid; + *((gid_t *)(US data_block + (long int)(ol->value))) = gid; *(get_set_flag(name, oltop, last, data_block)) = TRUE; break; @@ -1891,7 +1891,7 @@ switch (type) if (data_block == NULL) *((uid_t **)(ol->value)) = list; else - *((uid_t **)((uschar *)data_block + (long int)(ol->value))) = list; + *((uid_t **)(US data_block + (long int)(ol->value))) = list; p = op; while (count-- > 1) @@ -1932,7 +1932,7 @@ switch (type) if (data_block == NULL) *((gid_t **)(ol->value)) = list; else - *((gid_t **)((uschar *)data_block + (long int)(ol->value))) = list; + *((gid_t **)(US data_block + (long int)(ol->value))) = list; p = op; while (count-- > 1) @@ -1968,7 +1968,7 @@ switch (type) if (data_block == NULL) *((uschar **)(ol2->value)) = sptr; else - *((uschar **)((uschar *)data_block + (long int)(ol2->value))) = sptr; + *((uschar **)(US data_block + (long int)(ol2->value))) = sptr; freesptr = FALSE; break; } @@ -2006,7 +2006,7 @@ switch (type) int bit = 1 << ((ol->type >> 16) & 31); int *ptr = (data_block == NULL)? (int *)(ol->value) : - (int *)((uschar *)data_block + (long int)ol->value); + (int *)(US data_block + (long int)ol->value); if (boolvalue) *ptr |= bit; else *ptr &= ~bit; break; } @@ -2016,7 +2016,7 @@ switch (type) if (data_block == NULL) *((BOOL *)(ol->value)) = boolvalue; else - *((BOOL *)((uschar *)data_block + (long int)(ol->value))) = boolvalue; + *((BOOL *)(US data_block + (long int)(ol->value))) = boolvalue; /* Verify fudge */ @@ -2029,7 +2029,7 @@ switch (type) if (data_block == NULL) *((BOOL *)(ol2->value)) = boolvalue; else - *((BOOL *)((uschar *)data_block + (long int)(ol2->value))) = boolvalue; + *((BOOL *)(US data_block + (long int)(ol2->value))) = boolvalue; } } @@ -2044,7 +2044,7 @@ switch (type) if (data_block == NULL) *((BOOL *)(ol2->value)) = TRUE; else - *((BOOL *)((uschar *)data_block + (long int)(ol2->value))) = TRUE; + *((BOOL *)(US data_block + (long int)(ol2->value))) = TRUE; } } break; @@ -2107,7 +2107,7 @@ switch (type) if (data_block == NULL) *((int *)(ol->value)) = value; else - *((int *)((uschar *)data_block + (long int)(ol->value))) = value; + *((int *)(US data_block + (long int)(ol->value))) = value; break; /* Integer held in K: again, allow octal and hex formats, and suffixes K, M @@ -2157,7 +2157,7 @@ switch (type) if (data_block == NULL) *((int *)(ol->value)) = value; else - *((int *)((uschar *)data_block + (long int)(ol->value))) = value; + *((int *)(US data_block + (long int)(ol->value))) = value; break; /* Fixed-point number: held to 3 decimal places. */ @@ -2198,7 +2198,7 @@ switch (type) if (data_block == NULL) *((int *)(ol->value)) = value; else - *((int *)((uschar *)data_block + (long int)(ol->value))) = value; + *((int *)(US data_block + (long int)(ol->value))) = value; break; /* There's a special routine to read time values. */ @@ -2211,7 +2211,7 @@ switch (type) if (data_block == NULL) *((int *)(ol->value)) = value; else - *((int *)((uschar *)data_block + (long int)(ol->value))) = value; + *((int *)(US data_block + (long int)(ol->value))) = value; break; /* A time list is a list of colon-separated times, with the first @@ -2223,7 +2223,7 @@ switch (type) int count = 0; int *list = (data_block == NULL)? (int *)(ol->value) : - (int *)((uschar *)data_block + (long int)(ol->value)); + (int *)(US data_block + (long int)(ol->value)); if (*s != 0) for (count = 1; count <= list[0] - 2; count++) { @@ -2373,7 +2373,7 @@ if (options_block != NULL) { if ((ol->type & opt_public) == 0) options_block = (void *)(((driver_instance *)options_block)->options_block); - value = (void *)((uschar *)options_block + (long int)value); + value = (void *)(US options_block + (long int)value); } switch(ol->type & opt_mask) @@ -2462,7 +2462,7 @@ switch(ol->type & opt_mask) { void *value2 = ol2->value; if (options_block != NULL) - value2 = (void *)((uschar *)options_block + (long int)value2); + value2 = (void *)(US options_block + (long int)value2); s = *((uschar **)value2); if (!no_labels) printf("%s = ", name); printf("%s\n", (s == NULL)? US"" : string_printing(s)); @@ -2496,7 +2496,7 @@ switch(ol->type & opt_mask) { void *value2 = ol2->value; if (options_block != NULL) - value2 = (void *)((uschar *)options_block + (long int)value2); + value2 = (void *)(US options_block + (long int)value2); s = *((uschar **)value2); if (!no_labels) printf("%s = ", name); printf("%s\n", (s == NULL)? US"" : string_printing(s)); @@ -2591,7 +2591,7 @@ switch(ol->type & opt_mask) { void *value2 = ol2->value; if (options_block != NULL) - value2 = (void *)((uschar *)options_block + (long int)value2); + value2 = (void *)(US options_block + (long int)value2); s = *((uschar **)value2); if (s != NULL) { @@ -3644,7 +3644,7 @@ init_driver(driver_instance *d, driver_info *drivers_available, driver_info *dd; for (dd = drivers_available; dd->driver_name[0] != 0; - dd = (driver_info *)(((uschar *)dd) + size_of_info)) + dd = (driver_info *)((US dd) + size_of_info)) { if (Ustrcmp(d->driver_name, dd->driver_name) == 0) { @@ -3857,7 +3857,7 @@ for (ol = d->info->options; ol < d->info->options + count; ol++) int type = ol->type & opt_mask; if (type != opt_stringptr) continue; options_block = ((ol->type & opt_public) == 0)? d->options_block : (void *)d; - value = *(uschar **)((uschar *)options_block + (long int)(ol->value)); + value = *(uschar **)(US options_block + (long int)(ol->value)); if (value != NULL && (ss = Ustrstr(value, s)) != NULL) { if (ss <= value || (ss[-1] != '$' && ss[-1] != '{') || @@ -3933,14 +3933,14 @@ else if (len == 7 && strncmpic(pp, US"timeout", len) == 0) static int values[] = { 'A', 'M', RTEF_CTOUT, RTEF_CTOUT|'A', RTEF_CTOUT|'M' }; - for (i = 0; i < sizeof(extras)/sizeof(uschar *); i++) + for (i = 0; i < nelem(extras); i++) if (strncmpic(x, extras[i], xlen) == 0) { *more_errno = values[i]; break; } - if (i >= sizeof(extras)/sizeof(uschar *)) + if (i >= nelem(extras)) if (strncmpic(x, US"DNS", xlen) == 0) log_write(0, LOG_MAIN|LOG_PANIC, "\"timeout_dns\" is no longer " "available in retry rules (it has never worked) - treated as " @@ -4336,7 +4336,7 @@ while(next_section[0] != 0) { int bit; int first = 0; - int last = sizeof(section_list) / sizeof(uschar *); + int last = nelem(section_list); int mid = last/2; int n = Ustrlen(next_section); diff --git a/src/src/smtp_in.c b/src/src/smtp_in.c index d62a3cf99..9721fb7d6 100644 --- a/src/src/smtp_in.c +++ b/src/src/smtp_in.c @@ -2420,7 +2420,7 @@ else /* Set up the buffer for inputting using direct read() calls, and arrange to call the local functions instead of the standard C ones. */ -if (!(smtp_inbuffer = (uschar *)malloc(IN_BUFFER_SIZE))) +if (!(smtp_inbuffer = US malloc(IN_BUFFER_SIZE))) log_write(0, LOG_MAIN|LOG_PANIC_DIE, "malloc() failed for SMTP input buffer"); receive_getc = smtp_getc; @@ -2526,7 +2526,7 @@ if (!sender_host_unknown) DEBUG(D_receive) debug_printf("checking for IP options\n"); - if (getsockopt(fileno(smtp_out), IPPROTO_IP, IP_OPTIONS, (uschar *)(ipopt), + if (getsockopt(fileno(smtp_out), IPPROTO_IP, IP_OPTIONS, US (ipopt), &optlen) < 0) { if (errno != ENOPROTOOPT) @@ -2552,11 +2552,11 @@ if (!sender_host_unknown) struct in_addr addr; #if OPTSTYLE == 1 - uschar *optstart = (uschar *)(ipopt->__data); + uschar *optstart = US (ipopt->__data); #elif OPTSTYLE == 2 - uschar *optstart = (uschar *)(ipopt->ip_opts); + uschar *optstart = US (ipopt->ip_opts); #else - uschar *optstart = (uschar *)(ipopt->ipopt_list); + uschar *optstart = US (ipopt->ipopt_list); #endif DEBUG(D_receive) debug_printf("IP options exist\n"); @@ -2565,7 +2565,7 @@ if (!sender_host_unknown) p += Ustrlen(p); for (opt = optstart; opt != NULL && - opt < (uschar *)(ipopt) + optlen;) + opt < US (ipopt) + optlen;) { switch (*opt) { diff --git a/src/src/spf.c b/src/src/spf.c index 7b2b832b2..2741c7baf 100644 --- a/src/src/spf.c +++ b/src/src/spf.c @@ -103,10 +103,10 @@ int spf_process(const uschar **listptr, uschar *spf_envelope_sender, int action) SPF_request_query_mailfrom(spf_request, &spf_response); /* set up expansion items */ - spf_header_comment = (uschar *)SPF_response_get_header_comment(spf_response); - spf_received = (uschar *)SPF_response_get_received_spf(spf_response); - spf_result = (uschar *)SPF_strresult(SPF_response_result(spf_response)); - spf_smtp_comment = (uschar *)SPF_response_get_smtp_comment(spf_response); + spf_header_comment = US SPF_response_get_header_comment(spf_response); + spf_received = US SPF_response_get_received_spf(spf_response); + spf_result = US SPF_strresult(SPF_response_result(spf_response)); + spf_smtp_comment = US SPF_response_get_smtp_comment(spf_response); rc = SPF_response_result(spf_response); diff --git a/src/src/store.c b/src/src/store.c index 8628954b5..12db584ce 100644 --- a/src/src/store.c +++ b/src/src/store.c @@ -205,7 +205,7 @@ DEBUG(D_memory) (void) VALGRIND_MAKE_MEM_UNDEFINED(store_last_get[store_pool], size); /* Update next pointer and number of bytes left in the current block. */ -next_yield[store_pool] = (void *)((char *)next_yield[store_pool] + size); +next_yield[store_pool] = (void *)(CS next_yield[store_pool] + size); yield_length[store_pool] -= size; return store_last_get[store_pool]; @@ -273,7 +273,7 @@ int rounded_oldsize = oldsize; if (rounded_oldsize % alignment != 0) rounded_oldsize += alignment - (rounded_oldsize % alignment); -if ((char *)ptr + rounded_oldsize != (char *)(next_yield[store_pool]) || +if (CS ptr + rounded_oldsize != CS (next_yield[store_pool]) || inc > yield_length[store_pool] + rounded_oldsize - oldsize) return FALSE; @@ -295,7 +295,7 @@ DEBUG(D_memory) #endif /* COMPILE_UTILITY */ if (newsize % alignment != 0) newsize += alignment - (newsize % alignment); -next_yield[store_pool] = (char *)ptr + newsize; +next_yield[store_pool] = CS ptr + newsize; yield_length[store_pool] -= newsize - rounded_oldsize; (void) VALGRIND_MAKE_MEM_UNDEFINED(ptr + oldsize, inc); return TRUE; @@ -455,7 +455,7 @@ storeblock *b; for (b = chainbase[store_pool]; b != NULL; b = b->next) { storeblock *bb = b->next; - if (bb != NULL && (char *)block == (char *)bb + ALIGNED_SIZEOF_STOREBLOCK) + if (bb != NULL && CS block == CS bb + ALIGNED_SIZEOF_STOREBLOCK) { b->next = bb->next; pool_malloc -= bb->length + ALIGNED_SIZEOF_STOREBLOCK; diff --git a/src/src/tls-gnu.c b/src/src/tls-gnu.c index 8d8108640..d54c560f7 100644 --- a/src/src/tls-gnu.c +++ b/src/src/tls-gnu.c @@ -1680,7 +1680,7 @@ int ret; if ((ret = gnutls_load_file(ptr, ocsp_response)) < 0) { DEBUG(D_tls) debug_printf("Failed to load ocsp stapling file %s\n", - (char *)ptr); + CS ptr); tls_in.ocsp = OCSP_NOT_RESP; return GNUTLS_E_NO_CERTIFICATE_STATUS; } diff --git a/src/src/tls-openssl.c b/src/src/tls-openssl.c index 5aebfd4fe..c0ed6f992 100644 --- a/src/src/tls-openssl.c +++ b/src/src/tls-openssl.c @@ -1499,9 +1499,9 @@ if (!RAND_status()) gettimeofday(&r.tv, NULL); r.p = getpid(); - RAND_seed((uschar *)(&r), sizeof(r)); - RAND_seed((uschar *)big_buffer, big_buffer_size); - if (addr != NULL) RAND_seed((uschar *)addr, sizeof(addr)); + RAND_seed(US (&r), sizeof(r)); + RAND_seed(US big_buffer, big_buffer_size); + if (addr != NULL) RAND_seed(US addr, sizeof(addr)); if (!RAND_status()) return tls_error(US"RAND_status", host, @@ -2819,7 +2819,7 @@ if (!RAND_status()) gettimeofday(&r.tv, NULL); r.p = getpid(); - RAND_seed((uschar *)(&r), sizeof(r)); + RAND_seed(US (&r), sizeof(r)); } /* We're after pseudo-random, not random; if we still don't have enough data in the internal PRNG then our options are limited. We could sleep and hope diff --git a/src/src/transport.c b/src/src/transport.c index 65d84e353..5d4102ef8 100644 --- a/src/src/transport.c +++ b/src/src/transport.c @@ -2051,7 +2051,7 @@ while (*s != 0 && argcount < max_args) while (isspace(*s)) s++; } -argv[argcount] = (uschar *)0; +argv[argcount] = US 0; /* If *s != 0 we have run out of argument slots. */ @@ -2087,7 +2087,7 @@ $recipients. */ DEBUG(D_transport) { debug_printf("direct command:\n"); - for (i = 0; argv[i] != (uschar *)0; i++) + for (i = 0; argv[i] != US 0; i++) debug_printf(" argv[%d] = %s\n", i, string_printing(argv[i])); } @@ -2097,7 +2097,7 @@ if (expand_arguments) addr->parent != NULL && Ustrcmp(addr->parent->address, "system-filter") == 0; - for (i = 0; argv[i] != (uschar *)0; i++) + for (i = 0; argv[i] != US 0; i++) { /* Handle special fudge for passing an address list */ @@ -2181,7 +2181,7 @@ if (expand_arguments) while (isspace(*s)) s++; /* strip space after arg */ } - address_pipe_argv[address_pipe_argcount] = (uschar *)0; + address_pipe_argv[address_pipe_argcount] = US 0; /* If *s != 0 we have run out of argument slots. */ if (*s != 0) @@ -2229,7 +2229,7 @@ if (expand_arguments) * [argv 0][argv 1][argv 2=pipeargv[0]][argv 3=pipeargv[1]][old argv 3][0] */ for (address_pipe_i = 0; - address_pipe_argv[address_pipe_i] != (uschar *)0; + address_pipe_argv[address_pipe_i] != US 0; address_pipe_i++) { argv[i++] = address_pipe_argv[address_pipe_i]; @@ -2270,7 +2270,7 @@ if (expand_arguments) DEBUG(D_transport) { debug_printf("direct command after expansion:\n"); - for (i = 0; argv[i] != (uschar *)0; i++) + for (i = 0; argv[i] != US 0; i++) debug_printf(" argv[%d] = %s\n", i, string_printing(argv[i])); } } diff --git a/src/src/transports/autoreply.c b/src/src/transports/autoreply.c index 7b3ff0228..9f6e2acaf 100644 --- a/src/src/transports/autoreply.c +++ b/src/src/transports/autoreply.c @@ -630,7 +630,7 @@ if (h || message_id) parse_allow_group = FALSE; while (*s != 0 && (s = parse_message_id(s, &id, &error)) != NULL) { - if (reference_count == sizeof(referenced_ids)/sizeof(uschar *)) + if (reference_count == nelem(referenced_ids)) { memmove(referenced_ids + 1, referenced_ids + 2, sizeof(referenced_ids) - 2*sizeof(uschar *)); diff --git a/src/src/transports/lmtp.c b/src/src/transports/lmtp.c index 002365ae7..f26050fdc 100644 --- a/src/src/transports/lmtp.c +++ b/src/src/transports/lmtp.c @@ -675,7 +675,7 @@ if (send_data) { const uschar *s = string_printing(buffer); /* de-const safe here as string_printing known to have alloc'n'copied */ - addr->message = (s == buffer)? (uschar *)string_copy(s) : US s; + addr->message = (s == buffer)? US string_copy(s) : US s; } } /* If the response has failed badly, use it for all the remaining pending diff --git a/src/src/transports/pipe.c b/src/src/transports/pipe.c index 3f06b1dd6..be0256061 100644 --- a/src/src/transports/pipe.c +++ b/src/src/transports/pipe.c @@ -527,7 +527,7 @@ if (expand_arguments) } else argv[2] = cmd; -argv[3] = (uschar *)0; +argv[3] = US 0; return TRUE; } @@ -696,10 +696,9 @@ if (envlist) } } -while ((ss = string_nextinlist(&envlist, &envsep, big_buffer, big_buffer_size)) - != NULL) +while ((ss = string_nextinlist(&envlist, &envsep, big_buffer, big_buffer_size))) { - if (envcount > sizeof(envp)/sizeof(uschar *) - 2) + if (envcount > nelem(envp) - 2) { addr->transport_return = DEFER; addr->message = string_sprintf("too many environment settings for " diff --git a/src/src/transports/smtp.c b/src/src/transports/smtp.c index 1524972ce..965ef79e4 100644 --- a/src/src/transports/smtp.c +++ b/src/src/transports/smtp.c @@ -3055,7 +3055,7 @@ else { const uschar *s = string_printing(sx.buffer); /* deconst cast ok here as string_printing was checked to have alloc'n'copied */ - conf = (s == sx.buffer)? (uschar *)string_copy(s) : US s; + conf = (s == sx.buffer)? US string_copy(s) : US s; } /* Process all transported addresses - for LMTP or PRDR, read a status for