TLS: fix tls_verify_certificates handling of "system"
[exim.git] / src / src / acl.c
index 56d7468c1d29e1586562ac322ddbae1b30da8cf1..f47259ca08b6c5269f230d632af7afadd570db9e 100644 (file)
@@ -3235,13 +3235,15 @@ for (; cb; cb = cb->next)
 
        case CONTROL_FAKEREJECT:
          cancel_cutthrough_connection(TRUE, US"fakereject");
-         case CONTROL_FAKEDEFER:
+       case CONTROL_FAKEDEFER:
          fake_response = (control_type == CONTROL_FAKEDEFER) ? DEFER : FAIL;
          if (*p == '/')
            {
            const uschar *pp = p + 1;
            while (*pp) pp++;
-           fake_response_text = expand_string(string_copyn(p+1, pp-p-1));
+           /* The entire control= line was expanded at top so no need to expand
+           the part after the / */
+           fake_response_text = string_copyn(p+1, pp-p-1);
            p = pp;
            }
           else /* Explicitly reset to default string */
@@ -3538,7 +3540,7 @@ for (; cb; cb = cb->next)
       }
     break;
 
-    #ifndef DISABLE_DKIM
+#ifndef DISABLE_DKIM
     case ACLC_DKIM_SIGNER:
     if (dkim_cur_signer)
       rc = match_isinlist(dkim_cur_signer,
@@ -3551,7 +3553,7 @@ for (; cb; cb = cb->next)
     rc = match_isinlist(dkim_verify_status,
                         &arg, 0, NULL, NULL, MCL_STRING, TRUE, NULL);
     break;
-    #endif
+#endif
 
 #ifdef SUPPORT_DMARC
     case ACLC_DMARC_STATUS:
@@ -3704,7 +3706,7 @@ for (; cb; cb = cb->next)
     case ACLC_QUEUE:
       {
       uschar *m;
-      if (m = is_tainted2(arg, 0, "Tainted name '%s' for queue not permitted", arg))
+      if ((m = is_tainted2(arg, 0, "Tainted name '%s' for queue not permitted", arg)))
         {
         *log_msgptr = m;
         return ERROR;