Commit Graph

29 Commits

Author SHA1 Message Date
Leah Neukirchen
f95439a988 rfc2045: blaze822_multipart: parse rest when boundary is missing
Either the mail got truncated or was wrongly generated, try to go on
by taking the remains of the buffer as part.
2020-12-09 23:22:05 +01:00
Leah Neukirchen
6a8543e321 rfc2045: mymemmemnl: make more check idiomatic 2020-11-12 16:42:36 +01:00
Leah Neukirchen
c43538fae9 rfc2045: fix overread in blaze822_mime_parameter
This triggered an invalid read in strchr on 'Content-Type: text/html; '
2020-11-12 15:55:40 +01:00
Leah Neukirchen
5167bbfe39 rfc2045: ensure mime boundaries end with a newline or - 2020-11-12 15:28:49 +01:00
Leah Neukirchen
41c8fefb73 blaze822_walk_mime: limit recursion depth 2020-05-09 23:09:48 +02:00
Leah Neukirchen
501b301ed4 rfc2045: blaze822_multipart: avoid buffer overflow on empty MIME part 2018-02-12 22:32:49 +01:00
Leah Neukirchen
5f45b7d533 use appropriate integer types
Mainly found with clang -Wconversion -Wshorten-64-to-32.
2017-10-06 13:15:28 +02:00
Leah Neukirchen
66d0eff12f style 2017-08-31 17:30:17 +02:00
Leah Neukirchen
2b4e3aa66d clean up whitespace 2017-01-26 20:27:26 +01:00
Christian Neukirchen
40b19264c5 rfc2047: only decode _ as spaces when decoding headers 2016-11-08 16:19:26 +01:00
Christian Neukirchen
758351abc5 rfc2045: the (CR)LF before the boundary belongs to the boundary 2016-08-06 19:09:49 +02:00
Christian Neukirchen
27b21d7e20 rfc2045: import walk_mime 2016-08-02 16:13:25 +02:00
Christian Neukirchen
01e4e942dd rfc2045: relax MIME check
Some mails don't have MIME-Version: 1.0, having
Content-Transfer-Encoding shall be good enough either
2016-07-29 16:41:45 +02:00
Christian Neukirchen
12eba94327 rfc2045: put default content type into writable section 2016-07-29 13:51:22 +02:00
Christian Neukirchen
9336bc9939 rfc2045: downcase mime type 2016-07-29 12:54:03 +02:00
Christian Neukirchen
3d0c2f8b47 cleanups 2016-07-26 22:15:30 +02:00
Christian Neukirchen
2885988c5a str*casecmp is in <strings.h> 2016-07-26 18:18:37 +02:00
Christian Neukirchen
6592bdb912 import musl memmem 2016-07-26 18:10:39 +02:00
Christian Neukirchen
ec6bee84f6 mshow: extract file name logic 2016-07-20 23:11:13 +02:00
Christian Neukirchen
22f456a2a0 clean up header includes 2016-07-18 17:06:41 +02:00
Christian Neukirchen
61f3ae7d3c rfc2045: blaze822_multipart: use blaze822_mime_parameter 2016-07-16 22:27:13 +02:00
Christian Neukirchen
248ed48727 rfc2045: add blaze822_mime_parameter 2016-07-16 22:18:46 +02:00
Christian Neukirchen
9853ddb91a rfc2045: fix parsing of unquoted boundaries 2016-07-16 19:43:43 +02:00
Christian Neukirchen
13eefbba72 rfc2045: return 0 when no body is found in blaze822_mime_body 2016-07-14 15:20:59 +02:00
Christian Neukirchen
e57d1b3192 rfc2045: new parameter for blaze822_mime_body to allow freeing of new chunk 2016-07-13 21:56:16 +02:00
Christian Neukirchen
f122c3c7d2 rfc2045: blaze822_mime_body: zero output fields when no body is there 2016-07-13 21:34:46 +02:00
Christian Neukirchen
42677a0586 rfc2045: blaze822_multipart: \0 also terminates boundary 2016-07-13 20:50:48 +02:00
Christian Neukirchen
435d5a5a89 rfc2045: fix crlf after boundary 2016-07-13 16:05:31 +02:00
Christian Neukirchen
01c1c0d970 add rfc2045 and multipart decoding 2016-07-13 15:53:27 +02:00