A safer version of the check for gecos expansion.
authorTony Finch <dot@dotat.at>
Fri, 7 Dec 2012 11:52:09 +0000 (11:52 +0000)
committerTony Finch <dot@dotat.at>
Fri, 7 Dec 2012 11:52:09 +0000 (11:52 +0000)
src/src/receive.c

index eef0531a8bc0b69b213b6c64540509b09d17ac9f..efd0766e77ff3ae157f4517808c05d2ddb73f9f1 100644 (file)
@@ -2039,8 +2039,8 @@ for (h = header_list->next; h != NULL; h = h->next)
         uschar *s = Ustrchr(h->text, ':') + 1;
         while (isspace(*s)) s++;
         len = h->slen - (s - h->text) - 1;
         uschar *s = Ustrchr(h->text, ':') + 1;
         while (isspace(*s)) s++;
         len = h->slen - (s - h->text) - 1;
-        if (strncmpic(s, originator_login, len) == 0
-            && Ustrlen(originator_login) == len)
+        if (Ustrlen(originator_login) == len &&
+           strncmpic(s, originator_login, len) == 0)
           {
           uschar *name = is_resent? US"Resent-From" : US"From";
           header_add(htype_from, "%s: %s <%s@%s>\n", name, originator_name,
           {
           uschar *name = is_resent? US"Resent-From" : US"From";
           header_add(htype_from, "%s: %s <%s@%s>\n", name, originator_name,