Skip to content
Snippets Groups Projects
Commit 95f7778a authored by Niels Möller's avatar Niels Möller
Browse files

Ignore trailing white-space (in particular, \r-characters) in boundary

lines.

Rev: lib/modules/Tools.pmod/_PEM.pmod:1.2
parent db25e659
No related branches found
No related tags found
No related merge requests found
...@@ -10,9 +10,13 @@ object rfc822_start_re = Regexp("^([-a-zA-Z][a-zA-Z0-9]*[ \t]*:|[ \t]*\n\n)"); ...@@ -10,9 +10,13 @@ object rfc822_start_re = Regexp("^([-a-zA-Z][a-zA-Z0-9]*[ \t]*:|[ \t]*\n\n)");
/* Regexp used to extract the interesting part of an encapsulation /* Regexp used to extract the interesting part of an encapsulation
* boundary. Also strips spaces, and requires that the string in the * boundary. Also strips spaces, and requires that the string in the
* middle between ---foo --- is at least two characters long. */ * middle between ---foo --- is at least two characters long. Also
* allow a trailing \r or other white space characters. */
object rfc934_eb_re = Regexp("^-*[ \t]*([^- \t].*[^- \t])[ \t]*-*$"); object rfc934_eb_re = Regexp(
"^-*[ \r\t]*([^- \r\t]" /* First non dash-or-space character */
".*[^- \r\t])" /* Last non dash-or-space character */
"[ \r\t]*-*[ \r\t]*$"); /* Trailing space, dashes and space */
/* Start and end markers for PEM */ /* Start and end markers for PEM */
...@@ -44,6 +48,15 @@ string dash_stuff(string msg) ...@@ -44,6 +48,15 @@ string dash_stuff(string msg)
return parts * "- -"; return parts * "- -";
} }
#if 0
string chop_cr(string s)
{
return (strlen(s) && (s[-1] == '\r'))
? s[..strlen(s) - 2]
: s;
}
#endif
/* Strip dashes */ /* Strip dashes */
string extract_boundary(string s) string extract_boundary(string s)
{ {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment