From c525c0097e9927dafa2578b51e30ed2a5ec76759 Mon Sep 17 00:00:00 2001 From: Leah Neukirchen Date: Tue, 22 Dec 2020 13:42:22 +0100 Subject: mmime: allow # in include lines, used to override the content-disposition --- mmime.c | 2 +- t/1000-mmime.t | 29 ++++++++++++++++++++++++++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/mmime.c b/mmime.c index 77be4c8..4f06826 100644 --- a/mmime.c +++ b/mmime.c @@ -367,7 +367,7 @@ valid_content_type(char *s) if (*s == '/') slash++; else if (isalnum(*s) || *s == '-' || *s == '+' || *s == '.' || - *s == ';' || *s == '=') + *s == ';' || *s == '=' || *s == '#') ; /* ok */ else return 0; diff --git a/t/1000-mmime.t b/t/1000-mmime.t index ab52aa1..b0b0dc5 100755 --- a/t/1000-mmime.t +++ b/t/1000-mmime.t @@ -1,7 +1,7 @@ #!/bin/sh -e cd ${0%/*} . ./lib.sh -plan 4 +plan 8 cat <tmp References: @@ -15,3 +15,30 @@ check 'mime -r runs' 'mmime -r tmp2' check 'no overlong lines' 'awk "{if(length(\$0)>=80)exit 1}" tmp2 +Subject: inclusion test + +#message/rfc822 $PWD/tmp +EOF + +check 'include works' 'mmime tmp2 +Subject: inclusion test no filename + +#message/rfc822 $PWD/tmp> +EOF + +check 'include works, overriding filename' 'mmime tmp2 +Subject: inclusion test with other disposition + +#message/rfc822#inline $PWD/tmp> +EOF + +check 'include works, overriding filename' 'mmime