X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=remailer.c;h=ffa19a3b2d9c917f9e046a8aefe4e154b4b49cfc;hp=70b31ace20f2bfa186126043ba2e18c8ef6c415d;hb=238b70e39b78f585c586bd51aef41988b3cc73d1;hpb=9c35e6b2c6568130f29a4dfeeca73862bed015fe diff --git a/remailer.c b/remailer.c index 70b31ac..ffa19a3 100644 --- a/remailer.c +++ b/remailer.c @@ -15,6 +15,11 @@ # include "config.h" #endif +#include +#include +#include +#include + #include "mutt.h" #include "recvattach.h" #include "mutt_curses.h" @@ -23,9 +28,6 @@ #include "remailer.h" -#include "lib/mem.h" -#include "lib/intl.h" -#include "lib/str.h" #include "lib/rx.h" #include @@ -36,6 +38,8 @@ #include #include +#define SW (option(OPTMBOXPANE)?SidebarWidth:0) + #ifdef MIXMASTER struct coord { @@ -101,7 +105,7 @@ static void mix_add_entry (REMAILER *** type2_list, REMAILER * entry, { if (*used == *slots) { *slots += 5; - mem_realloc (type2_list, sizeof (REMAILER *) * (*slots)); + p_realloc(type2_list, *slots); } (*type2_list)[(*used)++] = entry; @@ -111,16 +115,16 @@ static void mix_add_entry (REMAILER *** type2_list, REMAILER * entry, static REMAILER *mix_new_remailer (void) { - return mem_calloc (1, sizeof (REMAILER)); + return p_new(REMAILER, 1); } static void mix_free_remailer (REMAILER ** r) { - mem_free (&(*r)->shortname); - mem_free (&(*r)->addr); - mem_free (&(*r)->ver); + p_delete(&(*r)->shortname); + p_delete(&(*r)->addr); + p_delete(&(*r)->ver); - mem_free (r); + p_delete(r); } /* parse the type2.list as given by mixmaster -T */ @@ -156,7 +160,7 @@ static REMAILER **mix_type2_list (size_t * l) /* first, generate the "random" remailer */ p = mix_new_remailer (); - p->shortname = str_dup (""); + p->shortname = m_strdup(""); mix_add_entry (&type2_list, p, &slots, &used); while (fgets (line, sizeof (line), fp)) { @@ -165,12 +169,12 @@ static REMAILER **mix_type2_list (size_t * l) if (!(t = strtok (line, " \t\n"))) goto problem; - p->shortname = str_dup (t); + p->shortname = m_strdup(t); if (!(t = strtok (NULL, " \t\n"))) goto problem; - p->addr = str_dup (t); + p->addr = m_strdup(t); if (!(t = strtok (NULL, " \t\n"))) goto problem; @@ -178,7 +182,7 @@ static REMAILER **mix_type2_list (size_t * l) if (!(t = strtok (NULL, " \t\n"))) goto problem; - p->ver = str_dup (t); + p->ver = m_strdup(t); if (!(t = strtok (NULL, " \t\n"))) goto problem; @@ -210,7 +214,7 @@ static void mix_free_type2_list (REMAILER *** ttlp) for (i = 0; type2_list[i]; i++) mix_free_remailer (&type2_list[i]); - mem_free (type2_list); + p_delete(type2_list); } @@ -229,13 +233,13 @@ static void mix_screen_coordinates (REMAILER ** type2_list, if (!chain->cl) return; - mem_realloc (coordsp, sizeof (struct coord) * chain->cl); + p_realloc(coordsp, chain->cl); coords = *coordsp; if (i) { c = - coords[i - 1].c + str_len (type2_list[chain->ch[i - 1]]->shortname) + 2; + coords[i - 1].c + m_strlen(type2_list[chain->ch[i - 1]]->shortname) + 2; r = coords[i - 1].r; } else { @@ -246,7 +250,7 @@ static void mix_screen_coordinates (REMAILER ** type2_list, for (; i < chain->cl; i++) { oc = c; - c += str_len (type2_list[chain->ch[i]]->shortname) + 2; + c += m_strlen(type2_list[chain->ch[i]]->shortname) + 2; if (c >= COLS) { oc = c = MIX_HOFFSET; @@ -419,8 +423,9 @@ static const char *mix_entry_fmt (char *dest, static void mix_entry (char *b, size_t blen, MUTTMENU * menu, int num) { REMAILER **type2_list = (REMAILER **) menu->data; + int w=(COLS-SW)>blen?blen:(COLS-SW); - mutt_FormatString (b, blen, NONULL (MixEntryFormat), mix_entry_fmt, + mutt_FormatString (b, w, NONULL (MixEntryFormat), mix_entry_fmt, (unsigned long) type2_list[num], M_FORMAT_ARROWCURSOR); } @@ -432,7 +437,7 @@ static int mix_chain_add (MIXCHAIN * chain, const char *s, if (chain->cl >= MAXMIXES) return -1; - if (!str_cmp (s, "0") || !ascii_strcasecmp (s, "")) { + if (!m_strcmp(s, "0") || !ascii_strcasecmp (s, "")) { chain->ch[chain->cl++] = 0; return 0; } @@ -481,7 +486,7 @@ void mix_make_chain (LIST ** chainp, int *redraw) int op; int i, j; - char *t; + const char *t; if (!(type2_list = mix_type2_list (&ttll))) { mutt_error _("Can't get mixmaster's type2.list!"); @@ -491,7 +496,7 @@ void mix_make_chain (LIST ** chainp, int *redraw) *redraw = REDRAW_FULL; - chain = mem_calloc (sizeof (MIXCHAIN), 1); + chain = p_new(MIXCHAIN, 1); for (p = *chainp; p; p = p->next) mix_chain_add (chain, (char *) p->data, type2_list); @@ -658,8 +663,8 @@ void mix_make_chain (LIST ** chainp, int *redraw) } mix_free_type2_list (&type2_list); - mem_free (&coords); - mem_free (&chain); + p_delete(&coords); + p_delete(&chain); } /* some safety checks before piping the message to mixmaster */ @@ -717,7 +722,7 @@ int mix_send_message (LIST * chain, const char *tempfile) snprintf (cmd, sizeof (cmd), "cat %s | %s -m ", tempfile, Mixmaster); for (i = 0; chain; chain = chain->next, i = 1) { - strfcpy (tmp, cmd, sizeof (tmp)); + m_strcpy(tmp, sizeof(tmp), cmd); mutt_quote_filename (cd_quoted, sizeof (cd_quoted), (char *) chain->data); snprintf (cmd, sizeof (cmd), "%s%s%s", tmp, i ? "," : " -l ", cd_quoted); }