diff -Naur ssmtp-2.64/ssmtp.c ssmtp-2.64.patched/ssmtp.c --- ssmtp-2.64/ssmtp.c 2021-09-25 20:31:20.120006571 -0400 +++ ssmtp-2.64.patched/ssmtp.c 2021-09-25 20:42:51.453926150 -0400 @@ -55,21 +55,21 @@ #define ARPADATE_LENGTH 32 /* Current date in RFC format */ char arpadate[ARPADATE_LENGTH]; -char *auth_user = (char)NULL; -char *auth_pass = (char)NULL; -char *auth_method = (char)NULL; /* Mechanism for SMTP authentication */ -char *mail_domain = (char)NULL; -char *from = (char)NULL; /* Use this as the From: address */ +char *auth_user = (char *)NULL; +char *auth_pass = (char *)NULL; +char *auth_method = (char *)NULL; /* Mechanism for SMTP authentication */ +char *mail_domain = (char *)NULL; +char *from = (char *)NULL; /* Use this as the From: address */ char *hostname; char *mailhost = "mailhub"; -char *minus_f = (char)NULL; -char *minus_F = (char)NULL; +char *minus_f = (char *)NULL; +char *minus_F = (char *)NULL; char *gecos; -char *prog = (char)NULL; +char *prog = (char *)NULL; char *root = NULL; char *tls_cert = "/etc/ssl/certs/ssmtp.pem"; /* Default Certificate */ -char *uad = (char)NULL; -char *config_file = (char)NULL; /* alternate configuration file */ +char *uad = (char *)NULL; +char *config_file = (char *)NULL; /* alternate configuration file */ headers_t headers, *ht; @@ -261,7 +261,7 @@ p = (str + strlen(str)); while(isspace(*--p)) { - *p = (char)NULL; + *p = '\0'; } return(p); @@ -287,7 +287,7 @@ q++; if((p = strchr(q, '>'))) { - *p = (char)NULL; + *p = '\0'; } #if 0 @@ -310,7 +310,7 @@ q = strip_post_ws(p); if(*q == ')') { while((*--q != '(')); - *q = (char)NULL; + *q = '\0'; } (void)strip_post_ws(p); @@ -363,13 +363,13 @@ *linestart = False; if((p = strchr(str, '\n'))) { - *p = (char)NULL; + *p = '\0'; *linestart = True; /* If the line ended in "\r\n", then drop the '\r' too */ sl = strlen(str); if(sl >= 1 && str[sl - 1] == '\r') { - str[sl - 1] = (char)NULL; + str[sl - 1] = '\0'; } } return(leadingdot); @@ -390,7 +390,7 @@ while(fgets(buf, sizeof(buf), fp)) { /* Make comments invisible */ if((p = strchr(buf, '#'))) { - *p = (char)NULL; + *p = '\0'; } /* Ignore malformed lines and comments */ @@ -525,7 +525,7 @@ #endif /* Ignore missing usernames */ - if(*str == (char)NULL) { + if(*str == '\0') { return; } @@ -582,7 +582,7 @@ } /* End of string? */ - if(*(q + 1) == (char)NULL) { + if(*(q + 1) == '\0') { got_addr = True; } @@ -590,7 +590,7 @@ if((*q == ',') && (in_quotes == False)) { got_addr = True; - *q = (char)NULL; + *q = '\0'; } if(got_addr) { @@ -682,7 +682,7 @@ if(strncasecmp(ht->string, "From:", 5) == 0) { #if 1 /* Hack check for NULL From: line */ - if(*(p + 6) == (char)NULL) { + if(*(p + 6) == '\0') { return; } #endif @@ -747,7 +747,7 @@ size_t size = BUF_SZ, len = 0; char *p = (char *)NULL, *q; bool_t in_header = True; - char l = (char)NULL; + char l = '\0'; int c; while(in_header && ((c = fgetc(stream)) != EOF)) { @@ -790,9 +790,9 @@ in_header = False; default: - *q = (char)NULL; + *q = '\0'; if((q = strrchr(p, '\n'))) { - *q = (char)NULL; + *q = '\0'; } if(len > 0) { header_save(p); @@ -809,7 +809,7 @@ if(in_header && l == '\n') { /* Got EOF while reading the header */ if((q = strrchr(p, '\n'))) { - *q = (char)NULL; + *q = '\0'; } header_save(p); } @@ -869,7 +869,7 @@ char *rightside; /* Make comments invisible */ if((p = strchr(buf, '#'))) { - *p = (char)NULL; + *p = '\0'; } /* Ignore malformed lines and comments */ @@ -1113,7 +1113,7 @@ /* Init SSL stuff */ SSL_CTX *ctx; - SSL_METHOD *meth; + const SSL_METHOD *meth; X509 *server_cert; SSL_load_error_strings(); @@ -1307,7 +1307,7 @@ buf[i++] = c; } } - buf[i] = (char)NULL; + buf[i] = '\0'; return(buf); } @@ -1739,7 +1739,7 @@ j = 0; add = 1; - while(argv[i][++j] != (char)NULL) { + while(argv[i][++j] != '\0') { switch(argv[i][j]) { #ifdef INET6 case '6':