#include <lib-lib/ascii.h>
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
-#include <lib-lib/debug.h>
#include <lib-lib/url.h>
#include <lib-mime/mime.h>
+#include <lib-mime/rfc3676.h>
#include <lib-ui/curses.h>
#include <lib-ui/enter.h>
#include "mutt.h"
-#include "rfc3676.h"
+#include "alias.h"
#include "keymap.h"
#include "copy.h"
#include "mx.h"
if (prev) {
prev->next = b->next;
b->next = NULL;
- address_delete (&b);
+ address_list_wipe(&b);
b = prev;
}
else {
top = top->next;
b->next = NULL;
- address_delete (&b);
+ address_list_wipe(&b);
b = top;
}
}
a = a->next;
if (!leave_only || a || last) {
tmp->next = NULL;
- address_delete (&tmp);
+ address_list_wipe(&tmp);
}
else
last = top = tmp;
static int edit_address (address_t ** a, const char *field)
{
char buf[HUGE_STRING];
- char *err = NULL;
+ const char *err = NULL;
int idna_ok = 0;
do {
rfc822_write_address (buf, sizeof (buf), *a, 0);
if (mutt_get_field (field, buf, sizeof (buf), M_ALIAS) != 0)
return (-1);
- address_delete (a);
+ address_list_wipe(a);
*a = mutt_expand_aliases (mutt_parse_adrlist (NULL, buf));
if ((idna_ok = mutt_addrlist_to_idna (*a, &err)) != 0) {
mutt_error (_("Error: '%s' is a bad IDN."), err);
static int edit_envelope (ENVELOPE * en, int flags)
{
char buf[HUGE_STRING];
- LIST *uh = UserHeader;
+ string_list_t *uh = UserHeader;
regmatch_t pat_match[1];
#ifdef USE_NNTP
static void process_user_recips (ENVELOPE * env)
{
- LIST *uh = UserHeader;
+ string_list_t *uh = UserHeader;
for (; uh; uh = uh->next) {
if (ascii_strncasecmp ("to:", uh->data, 3) == 0)
static void process_user_header (ENVELOPE * env)
{
- LIST *uh = UserHeader;
- LIST *last = env->userhdrs;
+ string_list_t *uh = UserHeader;
+ string_list_t *last = env->userhdrs;
if (last)
while (last->next)
for (; uh; uh = uh->next) {
if (ascii_strncasecmp ("from:", uh->data, 5) == 0) {
/* User has specified a default From: address. Remove default address */
- address_delete (&env->from);
+ address_list_wipe(&env->from);
env->from = rfc822_parse_adrlist (env->from, uh->data + 5);
}
else if (ascii_strncasecmp ("reply-to:", uh->data, 9) == 0) {
- address_delete (&env->reply_to);
+ address_list_wipe(&env->reply_to);
env->reply_to = rfc822_parse_adrlist (env->reply_to, uh->data + 9);
}
else if (ascii_strncasecmp ("message-id:", uh->data, 11) == 0)
ascii_strncasecmp ("supersedes:", uh->data, 11) != 0 &&
ascii_strncasecmp ("subject:", uh->data, 8) != 0) {
if (last) {
- last->next = mutt_new_list ();
+ last->next = string_item_new();
last = last->next;
}
else
- last = env->userhdrs = mutt_new_list ();
+ last = env->userhdrs = string_item_new();
last->data = m_strdup(uh->data);
}
}
return 0;
}
-LIST *mutt_make_references (ENVELOPE * e)
+string_list_t *mutt_make_references (ENVELOPE * e)
{
- LIST *t = NULL, *l = NULL;
+ string_list_t *t = NULL, *l = NULL;
if (e->references)
- l = mutt_copy_list (e->references);
+ l = string_list_dup(e->references);
else
- l = mutt_copy_list (e->in_reply_to);
+ l = string_list_dup(e->in_reply_to);
if (e->message_id) {
- t = mutt_new_list ();
+ t = string_item_new();
t->data = m_strdup(e->message_id);
t->next = l;
l = t;
}
void mutt_add_to_reference_headers (ENVELOPE * env, ENVELOPE * curenv,
- LIST *** pp, LIST *** qq)
+ string_list_t *** pp, string_list_t *** qq)
{
- LIST **p = NULL, **q = NULL;
+ string_list_t **p = NULL, **q = NULL;
if (pp)
p = *pp;
*p = mutt_make_references (curenv);
if (curenv->message_id) {
- *q = mutt_new_list ();
+ *q = string_item_new();
(*q)->data = m_strdup(curenv->message_id);
}
if (!curenv) {
HEADER *h;
- LIST **p = NULL, **q = NULL;
+ string_list_t **p = NULL, **q = NULL;
int i;
for (i = 0; i < ctx->vcount; i++) {
char *pgpkeylist = NULL;
/* save current value of "pgp_sign_as" */
- char *signas = NULL, *err = NULL;
- const char *tag = NULL;
+ char *signas = NULL;
+ const char *tag = NULL, *err = NULL;
char *ctype;
int rv = -1;
/* Use any list-post header as a template */
url_parse_mailto (msg->env, NULL, cur->env->list_post);
/* We don't let them set the sender's address. */
- address_delete (&msg->env->from);
+ address_list_wipe(&msg->env->from);
}
if (!(flags & (SENDKEY | SENDPOSTPONED | SENDRESEND))) {
}
if (!tempfp) {
- debug_print (1, ("can't create tempfile %s (errno=%d)\n",
- msg->content->filename, errno));
mutt_perror (msg->content->filename);
goto cleanup;
}
msg->replied = 0;
if (killfrom) {
- address_delete (&msg->env->from);
+ address_list_wipe(&msg->env->from);
killfrom = 0;
}
}
mutt_select_fcc (fcc, sizeof (fcc), msg);
if (killfrom) {
- address_delete (&msg->env->from);
+ address_list_wipe(&msg->env->from);
killfrom = 0;
}
}