X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=alias.c;h=d28427a06e989f80a0b2e42b82f8324829587772;hp=e66478463be2bb1b39f166c33c718806f1ca834a;hb=865e330e5b0c6cc1d5800417bdef165547b3624d;hpb=df70e07e24add1869bcc9b7af2277d9d0c09a281 diff --git a/alias.c b/alias.c index e664784..d28427a 100644 --- a/alias.c +++ b/alias.c @@ -1,19 +1,10 @@ /* + * Copyright notice from original mutt: * Copyright (C) 1996-2002 Michael R. Elkins - * - * 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 @@ -21,10 +12,15 @@ #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 #include @@ -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 */ } @@ -53,11 +49,8 @@ static ADDRESS *mutt_expand_aliases_r (ADDRESS * a, LIST ** expn) if (t) { 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)); + if (safe_strcmp (a->mailbox, u->data) == 0) { /* alias already found */ + debug_print(1, ("loop in alias found for '%s'\n", a->mailbox)); i = 1; break; } @@ -90,7 +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); + str_replace (&a->personal, namebuf); #ifdef EXACT_ADDRESS FREE (&a->val); @@ -403,7 +396,7 @@ int mutt_alias_complete (char *s, size_t buflen) if (a->name && strstr (a->name, s) == a->name) { if (!bestname[0]) /* init */ strfcpy (bestname, a->name, - min (mutt_strlen (a->name) + 1, sizeof (bestname))); + min (safe_strlen (a->name) + 1, sizeof (bestname))); else { for (i = 0; a->name[i] && a->name[i] == bestname[i]; i++); bestname[i] = 0; @@ -413,9 +406,9 @@ int mutt_alias_complete (char *s, size_t buflen) } if (bestname[0] != 0) { - if (mutt_strcmp (bestname, s) != 0) { + if (safe_strcmp (bestname, s) != 0) { /* we are adding something to the completion */ - strfcpy (s, bestname, mutt_strlen (bestname) + 1); + strfcpy (s, bestname, safe_strlen (bestname) + 1); return 1; } @@ -492,59 +485,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; }