]> code.citadel.org Git - citadel.git/blobdiff - citadel/internet_addressing.c
When comparing the sender, compare both the name and address.
[citadel.git] / citadel / internet_addressing.c
index b517871620a14f8967aa5ad5464c6283db7e0d88..9f24a46ee390c4afa291baabb2858d9014378f03 100644 (file)
@@ -1104,10 +1104,12 @@ int convert_field(struct CtdlMessage *msg, const char *beg, const char *end) {
                process_rfc822_addr(value, user, node, name);
                syslog(LOG_DEBUG, "internet_addressing: converted to <%s@%s> (%s)", user, node, name);
                snprintf(addr, sizeof(addr), "%s@%s", user, node);
-               if (CM_IsEmpty(msg, eAuthor) && !IsEmptyStr(name))
-                       CM_SetField(msg, eAuthor, name, strlen(name));
-               if (CM_IsEmpty(msg, erFc822Addr) && !IsEmptyStr(addr))
-                       CM_SetField(msg, erFc822Addr, addr, strlen(addr));
+               if (CM_IsEmpty(msg, eAuthor) && !IsEmptyStr(name)) {
+                       CM_SetField(msg, eAuthor, name, -1);
+               }
+               if (CM_IsEmpty(msg, erFc822Addr) && !IsEmptyStr(addr)) {
+                       CM_SetField(msg, erFc822Addr, addr, -1);
+               }
                processed = 1;
        }
 
@@ -1668,6 +1670,7 @@ void AutoGenerateEmailAddressForUser(struct ctdluser *user)
                        snprintf(synthetic_email_addr, sizeof synthetic_email_addr, "ctdl%08x@%s", i, CtdlGetConfigStr("c_fqdn"));
                }
                u = CtdlDirectoryLookup(NULL, synthetic_email_addr, 0);
+               syslog(LOG_DEBUG, "\033[33mAddress <%s> lookup <%d>\033[0m", synthetic_email_addr, u);
        }
 
        CtdlSetEmailAddressesForUser(user->fullname, synthetic_email_addr);