Auth: fix error check in CRAM-MD5
authorJeremy Harris <jgh146exb@wizmail.org>
Tue, 13 Sep 2016 22:41:55 +0000 (23:41 +0100)
committerJeremy Harris <jgh146exb@wizmail.org>
Tue, 13 Sep 2016 22:41:55 +0000 (23:41 +0100)
src/src/auths/cram_md5.c

index 28526a6329a659d67a05a773e77373b4ef1f6d0b..3be00082df2d27861898835bcdeb2eb3d9fdf8da 100644 (file)
@@ -263,7 +263,7 @@ uschar digest[16];
 /* If expansion of either the secret or the user name failed, return CANCELLED
 or ERROR, as approriate. */
 
 /* If expansion of either the secret or the user name failed, return CANCELLED
 or ERROR, as approriate. */
 
-if (secret == NULL || name == NULL)
+if (!secret || !name)
   {
   if (expand_string_forcedfail)
     {
   {
   if (expand_string_forcedfail)
     {
@@ -272,7 +272,7 @@ if (secret == NULL || name == NULL)
     }
   string_format(buffer, buffsize, "expansion of \"%s\" failed in "
     "%s authenticator: %s",
     }
   string_format(buffer, buffsize, "expansion of \"%s\" failed in "
     "%s authenticator: %s",
-    (secret == NULL)? ob->client_secret : ob->client_name,
+    !secret ? ob->client_secret : ob->client_name,
     ablock->name, expand_string_message);
   return ERROR;
   }
     ablock->name, expand_string_message);
   return ERROR;
   }
@@ -282,7 +282,7 @@ in base 64. */
 
 if (smtp_write_command(outblock, FALSE, "AUTH %s\r\n", ablock->public_name) < 0)
   return FAIL_SEND;
 
 if (smtp_write_command(outblock, FALSE, "AUTH %s\r\n", ablock->public_name) < 0)
   return FAIL_SEND;
-if (smtp_read_response(inblock, (uschar *)buffer, buffsize, '3', timeout) < 0)
+if (!smtp_read_response(inblock, buffer, buffsize, '3', timeout))
   return FAIL;
 
 if (b64decode(buffer + 4, &challenge) < 0)
   return FAIL;
 
 if (b64decode(buffer + 4, &challenge) < 0)
@@ -299,8 +299,7 @@ compute_cram_md5(secret, challenge, digest);
 /* Create the response from the user name plus the CRAM-MD5 digest */
 
 string_format(big_buffer, big_buffer_size - 36, "%s", name);
 /* Create the response from the user name plus the CRAM-MD5 digest */
 
 string_format(big_buffer, big_buffer_size - 36, "%s", name);
-p = big_buffer;
-while (*p != 0) p++;
+for (p = big_buffer; *p; ) p++;
 *p++ = ' ';
 
 for (i = 0; i < 16; i++)
 *p++ = ' ';
 
 for (i = 0; i < 16; i++)
@@ -317,8 +316,8 @@ buffer[0] = 0;
 if (smtp_write_command(outblock, FALSE, "%s\r\n", b64encode(big_buffer,
   p - big_buffer)) < 0) return FAIL_SEND;
 
 if (smtp_write_command(outblock, FALSE, "%s\r\n", b64encode(big_buffer,
   p - big_buffer)) < 0) return FAIL_SEND;
 
-return smtp_read_response(inblock, (uschar *)buffer, buffsize, '2', timeout)?
-  OK : FAIL;
+return smtp_read_response(inblock, (uschar *)buffer, buffsize, '2', timeout)
+  OK : FAIL;
 }
 #endif  /* STAND_ALONE */
 
 }
 #endif  /* STAND_ALONE */