Rocco Rutte:
[apps/madmutt.git] / alias.c
diff --git a/alias.c b/alias.c
index e664784..8835fa9 100644 (file)
--- a/alias.c
+++ b/alias.c
@@ -1,19 +1,10 @@
 /*
+ * Copyright notice from original mutt:
  * Copyright (C) 1996-2002 Michael R. Elkins <me@mutt.org>
- * 
- *     This program is free software; you can redistribute it and/or modify
- *     it under the terms of the GNU General Public License as published by
- *     the Free Software Foundation; either version 2 of the License, or
- *     (at your option) any later version.
- * 
- *     This program is distributed in the hope that it will be useful,
- *     but WITHOUT ANY WARRANTY; without even the implied warranty of
- *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *     GNU General Public License for more details.
- * 
- *     You should have received a copy of the GNU General Public License
- *     along with this program; if not, write to the Free Software
- *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+ *
+ * This file is part of mutt-ng, see http://www.muttng.org/.
+ * It's licensed under the GNU General Public License,
+ * please see the file GPL in the top level source directory.
  */
 
 #if HAVE_CONFIG_H
 #endif
 
 #include "mutt.h"
-#include "mutt_regex.h"
 #include "mutt_curses.h"
 #include "mutt_idna.h"
 
+#include "lib/mem.h"
+#include "lib/intl.h"
+#include "lib/str.h"
+#include "lib/rx.h"
+#include "lib/debug.h"
+
 #include <string.h>
 #include <ctype.h>
 
@@ -33,7 +29,7 @@ ADDRESS *mutt_lookup_alias (const char *s)
   ALIAS *t = Aliases;
 
   for (; t; t = t->next)
-    if (!mutt_strcasecmp (s, t->name))
+    if (!safe_strcasecmp (s, t->name))
       return (t->addr);
   return (NULL);                /* no such alias */
 }
@@ -54,10 +50,7 @@ static ADDRESS *mutt_expand_aliases_r (ADDRESS * a, LIST ** expn)
         i = 0;
         for (u = *expn; u; u = u->next) {
           if (mutt_strcmp (a->mailbox, u->data) == 0) { /* alias already found */
-            dprint (1,
-                    (debugfile,
-                     "mutt_expand_aliases_r(): loop in alias found for '%s'\n",
-                     a->mailbox));
+            debug_print(1, ("loop in alias found for '%s'\n", a->mailbox));
             i = 1;
             break;
           }
@@ -90,11 +83,7 @@ static ADDRESS *mutt_expand_aliases_r (ADDRESS * a, LIST ** expn)
           char namebuf[STRING];
 
           mutt_gecos_name (namebuf, sizeof (namebuf), pw);
-          mutt_str_replace (&a->personal, namebuf);
-
-#ifdef EXACT_ADDRESS
-          FREE (&a->val);
-#endif
+          str_replace (&a->personal, namebuf);
         }
       }
     }
@@ -492,59 +481,44 @@ int mutt_addr_is_user (ADDRESS * addr)
 {
   /* NULL address is assumed to be the user. */
   if (!addr) {
-    dprint (5, (debugfile, "mail_addr_is_user: yes, NULL address\n"));
+    debug_print(5, ("yes, NULL address\n"));
     return 1;
   }
   if (!addr->mailbox) {
-    dprint (5, (debugfile, "mail_addr_is_user: no, no mailbox\n"));
+    debug_print(5, ("no, no mailbox\n"));
     return 0;
   }
 
   if (ascii_strcasecmp (addr->mailbox, Username) == 0) {
-    dprint (5,
-            (debugfile, "mail_addr_is_user: yes, %s = %s\n", addr->mailbox,
-             Username));
+    debug_print(5, ("yes, %s = %s\n", addr->mailbox, Username));
     return 1;
   }
   if (string_is_address (addr->mailbox, Username, Hostname)) {
-    dprint (5,
-            (debugfile, "mail_addr_is_user: yes, %s = %s @ %s \n",
-             addr->mailbox, Username, Hostname));
+    debug_print(5, ("yes, %s = %s @ %s \n", addr->mailbox, Username, Hostname));
     return 1;
   }
   if (string_is_address (addr->mailbox, Username, mutt_fqdn (0))) {
-    dprint (5,
-            (debugfile, "mail_addr_is_user: yes, %s = %s @ %s \n",
-             addr->mailbox, Username, mutt_fqdn (0)));
+    debug_print(5, ("yes, %s = %s @ %s \n", addr->mailbox, Username, mutt_fqdn (0)));
     return 1;
   }
   if (string_is_address (addr->mailbox, Username, mutt_fqdn (1))) {
-    dprint (5,
-            (debugfile, "mail_addr_is_user: yes, %s = %s @ %s \n",
-             addr->mailbox, Username, mutt_fqdn (1)));
+    debug_print(5, ("yes, %s = %s @ %s \n", addr->mailbox, Username, mutt_fqdn (1)));
     return 1;
   }
 
   if (From && !ascii_strcasecmp (From->mailbox, addr->mailbox)) {
-    dprint (5,
-            (debugfile, "mail_addr_is_user: yes, %s = %s\n", addr->mailbox,
-             From->mailbox));
+    debug_print(5, ("yes, %s = %s\n", addr->mailbox, From->mailbox));
     return 1;
   }
 
-  if (mutt_match_rx_list (addr->mailbox, Alternates)) {
-    dprint (5,
-            (debugfile, "mail_addr_is_user: yes, %s matched by alternates.\n",
-             addr->mailbox));
-    if (mutt_match_rx_list (addr->mailbox, UnAlternates))
-      dprint (5,
-              (debugfile,
-               "mail_addr_is_user: but, %s matched by unalternates.\n",
-               addr->mailbox));
+  if (rx_list_match (Alternates, addr->mailbox)) {
+    debug_print(5, ("yes, %s matched by alternates.\n", addr->mailbox));
+    if (rx_list_match (UnAlternates, addr->mailbox))
+      debug_print(5, ("but, %s matched by unalternates.\n", addr->mailbox));
     else
       return 1;
   }
 
-  dprint (5, (debugfile, "mail_addr_is_user: no, all failed.\n"));
+  debug_print(5, ("no, all failed.\n"));
   return 0;
 }