X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=url.c;h=67a94cdbe84fb129193c409ec09c2e1ca857e378;hp=25976468c7482650884dc29993ea3e7998580e2f;hb=53186676acf2c3b5509a614433eb00a2087cd4ec;hpb=bbc4fd52516a8afefbd14c77e34f8389d6f0a6ed diff --git a/url.c b/url.c index 2597646..67a94cd 100644 --- a/url.c +++ b/url.c @@ -15,15 +15,15 @@ # include "config.h" #endif +#include +#include +#include + #include "mutt.h" -#include "ascii.h" -#include "mapping.h" #include "url.h" #include "mime.h" -#include "lib/mem.h" - #include static struct mapping_t UrlMap[] = { @@ -33,6 +33,7 @@ static struct mapping_t UrlMap[] = { {"pop", U_POP}, {"pops", U_POPS}, {"nntp", U_NNTP}, + {"news", U_NNTP}, {"nntps", U_NNTPS}, {"snews", U_NNTPS}, {"mailto", U_MAILTO}, @@ -72,7 +73,7 @@ url_scheme_t url_check_scheme (const char *s) if ((t - s) + 1 >= sizeof (sbuf)) return U_UNKNOWN; - strfcpy (sbuf, s, t - s + 1); + m_strcpy(sbuf, t - s + 1, s); for (t = sbuf; *t; t++) *t = ascii_tolower (*t); @@ -89,7 +90,7 @@ int url_parse_file (char *d, const char *src, size_t dl) else if (!ascii_strncasecmp (src, "file://", 7)) /* we don't support remote files */ return -1; else - strfcpy (d, src + 5, dl); + m_strcpy(d, dl, src + 5); url_pct_decode (d); return 0; @@ -172,8 +173,8 @@ int url_ciss_tostring (ciss_url_t * ciss, char *dest, size_t len, int flags) snprintf (dest, len, "%s:", mutt_getnamebyvalue (ciss->scheme, UrlMap)); if (ciss->host) { - str_cat (dest, len, "//"); - len -= (l = str_len (dest)); + m_strcat(dest, len, "//"); + len -= (l = m_strlen(dest)); dest += l; if (ciss->user) { @@ -182,7 +183,7 @@ int url_ciss_tostring (ciss_url_t * ciss, char *dest, size_t len, int flags) else snprintf (dest, len, "%s@", ciss->user); - len -= (l = str_len (dest)); + len -= (l = m_strlen(dest)); dest += l; } @@ -193,7 +194,7 @@ int url_ciss_tostring (ciss_url_t * ciss, char *dest, size_t len, int flags) } if (ciss->path) - str_cat (dest, len, ciss->path); + m_strcat(dest, len, ciss->path); return 0; } @@ -213,7 +214,7 @@ int url_parse_mailto (ENVELOPE * e, char **body, const char *src) if (!(t = strchr (src, ':'))) return -1; - if ((tmp = str_dup (t + 1)) == NULL) + if ((tmp = m_strdup(t + 1)) == NULL) return -1; if ((headers = strchr (tmp, '?'))) @@ -239,21 +240,22 @@ int url_parse_mailto (ENVELOPE * e, char **body, const char *src) } else { #define SAFEPFX (option (OPTSTRICTMAILTO) ? "" : "X-Mailto-") - taglen = str_len (tag) + str_len (SAFEPFX); + taglen = m_strlen(tag) + m_strlen(SAFEPFX); /* mutt_parse_rfc822_line makes some assumptions */ snprintf (scratch, sizeof (scratch), "%s%s: %s", SAFEPFX, tag, value); #undef SAVEPFX scratch[taglen] = '\0'; - value = &scratch[taglen + 1]; - SKIPWS (value); + value = vskipspaces(&scratch[taglen + 1]); mutt_parse_rfc822_line (e, NULL, scratch, value, 1, 0, 0, &last); /* if $strict_mailto is set, force editing headers to let * users have a look at what we got */ - if (!option (OPTSTRICTMAILTO)) + if (!option (OPTSTRICTMAILTO)) { + set_option (OPTXMAILTO); set_option (OPTEDITHDRS); + } } } - mem_free (&tmp); + p_delete(&tmp); return 0; }