projects
/
apps
/
madmutt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
small touchups
[apps/madmutt.git]
/
lib-mime
/
rfc822parse.c
diff --git
a/lib-mime/rfc822parse.c
b/lib-mime/rfc822parse.c
index
b03a17a
..
3e77c57
100644
(file)
--- a/
lib-mime/rfc822parse.c
+++ b/
lib-mime/rfc822parse.c
@@
-29,7
+29,6
@@
#include <lib-lib/lib-lib.h>
#include "recvattach.h"
#include <lib-lib/lib-lib.h>
#include "recvattach.h"
-
#include "charset.h"
#include "mime.h"
#include "charset.h"
#include "mime.h"
@@
-117,8
+116,8
@@
string_list_t *mutt_parse_references(char *s, int in_reply_to)
o = NULL;
} else {
new = p_new(char, n + m + 1);
o = NULL;
} else {
new = p_new(char, n + m + 1);
-
strcpy(new
, o);
-
strcpy(new + n
, s);
+
m_strcpy(new, n + m + 1
, o);
+
m_strcpy(new + n, m + 1
, s);
}
}
}
}
@@
-228,12
+227,10
@@
static parameter_t *parse_parameters(const char *s)
s++;
for (i = 0; *s && i < ssizeof(buffer) - 1; i++, s++) {
s++;
for (i = 0; *s && i < ssizeof(buffer) - 1; i++, s++) {
- if (!option(OPTSTRICTMIME)) {
- /* As iso-2022-* has a characer of '"' with non-ascii state,
- * ignore it. */
- if (*s == 0x1b && i < ssizeof(buffer) - 2) {
- state_ascii = s[1] == '(' && (s[2] == 'B' || s[2] == 'J');
- }
+ /* As iso-2022-* has a characer of '"' with non-ascii state,
+ * ignore it. */
+ if (*s == 0x1b && i < ssizeof(buffer) - 2) {
+ state_ascii = s[1] == '(' && (s[2] == 'B' || s[2] == 'J');
}
if (state_ascii && *s == '"')
break;
}
if (state_ascii && *s == '"')
break;
@@
-303,7
+300,7
@@
void mutt_parse_content_type(char *s, BODY *ct)
* field, so we can attempt to convert the type to BODY here.
*/
switch (ct->type) {
* field, so we can attempt to convert the type to BODY here.
*/
switch (ct->type) {
- char buffer[S
HORT_S
TRING];
+ char buffer[STRING];
case TYPETEXT:
ct->subtype = m_strdup("plain");
case TYPETEXT:
ct->subtype = m_strdup("plain");
@@
-334,9
+331,7
@@
void mutt_parse_content_type(char *s, BODY *ct)
pc = parameter_getval(ct->parameter, "charset");
if (!pc) {
parameter_setval(&ct->parameter, "charset",
pc = parameter_getval(ct->parameter, "charset");
if (!pc) {
parameter_setval(&ct->parameter, "charset",
- option(OPTSTRICTMIME)
- ? "us-ascii"
- : charset_getfirst(AssumedCharset));
+ charset_getfirst(MCharset.assumed_charset));
}
}
}
}
}
}
@@
-443,7
+438,7
@@
void mutt_parse_part(FILE *fp, BODY *b)
if (b->subtype) {
fseeko(fp, b->offset, SEEK_SET);
if (b->subtype) {
fseeko(fp, b->offset, SEEK_SET);
- if (mutt_is_message_type(b
->type, b->subtype
)) {
+ if (mutt_is_message_type(b)) {
b->parts = mutt_parse_messageRFC822(fp, b);
} else
if (mime_which_token(b->subtype, -1) == MIME_EXTERNAL_BODY) {
b->parts = mutt_parse_messageRFC822(fp, b);
} else
if (mime_which_token(b->subtype, -1) == MIME_EXTERNAL_BODY) {
@@
-613,7
+608,7
@@
uncomment_timezone(char *buf, size_t buflen, const char *tz)
time_t mutt_parse_date(const char *s, HEADER *h)
{
int zhours = 0, zminutes = 0, zoccident = 0;
time_t mutt_parse_date(const char *s, HEADER *h)
{
int zhours = 0, zminutes = 0, zoccident = 0;
- char scratch[S
HORT_S
TRING];
+ char scratch[STRING];
struct tm tm;
int count = 0;
char *p;
struct tm tm;
int count = 0;
char *p;
@@
-630,7
+625,7
@@
time_t mutt_parse_date(const char *s, HEADER *h)
p_clear(&tm, 1);
while ((p = strtok (p, " \t")) != NULL) {
p_clear(&tm, 1);
while ((p = strtok (p, " \t")) != NULL) {
- char tzstr[S
HORT_S
TRING];
+ char tzstr[STRING];
const char *ptz;
switch (count) {
const char *ptz;
switch (count) {
@@
-800,7
+795,7
@@
string_list_t **mutt_parse_rfc822_line(ENVELOPE *e, HEADER *hdr, char *line, cha
case MIME_LIST_POST:
/* RFC 2369. FIXME: We should ignore whitespace, but don't. */
case MIME_LIST_POST:
/* RFC 2369. FIXME: We should ignore whitespace, but don't. */
- if (strncmp(p, "NO", 2)) {
+ if (
m_
strncmp(p, "NO", 2)) {
char *beg, *end;
for (beg = strchr (p, '<'); beg; beg = strchr (end, ',')) {
char *beg, *end;
for (beg = strchr (p, '<'); beg; beg = strchr (end, ',')) {
@@
-962,8
+957,8
@@
string_list_t **mutt_parse_rfc822_line(ENVELOPE *e, HEADER *hdr, char *line, cha
/* restore the original line */
line[m_strlen(line)] = ':';
/* restore the original line */
line[m_strlen(line)] = ':';
- if (weed &&
option(OPTWEED) && mutt_matches_ignore(line, Ignore
)
- && !
mutt_matches_ignore(line, UnIgnore
)) {
+ if (weed &&
string_list_contains(Ignore, line, "*"
)
+ && !
string_list_contains(UnIgnore, line, "*"
)) {
break;
}
break;
}
@@
-1026,20
+1021,10
@@
mutt_read_rfc822_header(FILE *f, HEADER *hdr, short user_hdrs, short weed)
p = strpbrk(line, ": \t");
if (!p || *p != ':') {
p = strpbrk(line, ": \t");
if (!p || *p != ':') {
- char return_path[LONG_STRING];
- time_t t;
-
/* some bogus MTAs will quote the original "From " line */
/* some bogus MTAs will quote the original "From " line */
- if (!m_strncmp(">From ", line, 6))
+ if (!m_strncmp(">From ", line, 6)
|| !m_strncmp("From ", line, 5)
)
continue; /* just ignore */
continue; /* just ignore */
- if (is_from(line, return_path, sizeof(return_path), &t)) {
- /* MH somtimes has the From_ line in the middle of the header! */
- if (hdr && !hdr->received)
- hdr->received = t - mutt_local_tz(t);
- continue;
- }
-
fseeko(f, loc, 0);
break; /* end of header */
}
fseeko(f, loc, 0);
break; /* end of header */
}
@@
-1162,9
+1147,6
@@
static int count_body_parts (BODY *body, int flags)
int mutt_count_body_parts(HEADER *hdr, int flags)
{
int mutt_count_body_parts(HEADER *hdr, int flags)
{
- if (!option(OPTCOUNTATTACH))
- return 0;
-
if (hdr->attach_valid && !(flags & M_PARTS_RECOUNT))
return hdr->attach_total;
if (hdr->attach_valid && !(flags & M_PARTS_RECOUNT))
return hdr->attach_total;