aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--g10/ChangeLog9
-rw-r--r--g10/armor.c25
-rw-r--r--g10/g10.c4
3 files changed, 27 insertions, 11 deletions
diff --git a/g10/ChangeLog b/g10/ChangeLog
index 11639c94b..8493bdad0 100644
--- a/g10/ChangeLog
+++ b/g10/ChangeLog
@@ -1,3 +1,12 @@
+2005-01-05 David Shaw <[email protected]>
+
+ * g10.c (main): Typo.
+
+ * armor.c (is_armor_header): Allow CR and LF (not just actual
+ spaces) in an armor header line (-----BEGIN etc). This is needed
+ due to CRLF issues on win32. As before, --openpgp makes it
+ strict.
+
2005-01-03 David Shaw <[email protected]>
* Makefile.am: Use @LIBUSB@ instead of @LIBUSB_LIBS@
diff --git a/g10/armor.c b/g10/armor.c
index 1fe73f2ed..ca63f45f6 100644
--- a/g10/armor.c
+++ b/g10/armor.c
@@ -291,17 +291,24 @@ is_armor_header( byte *line, unsigned len )
save_p = p;
p += 5;
- /* Some mail programs on Windows seem to add spaces to the end of
- the line. This becomes strict if --openpgp is set. */
-
- if(!RFC2440)
- while(*p==' ')
+ /* Some Windows environments seem to add whitespace to the end of
+ the line, so we strip it here. This becomes strict if
+ --rfc2440 is set since 2440 reads "The header lines, therefore,
+ MUST start at the beginning of a line, and MUST NOT have text
+ following them on the same line." It is unclear whether "text"
+ refers to all text or just non-whitespace text. */
+
+ if(RFC2440)
+ {
+ if( *p == '\r' )
+ p++;
+ if( *p == '\n' )
+ p++;
+ }
+ else
+ while(*p==' ' || *p=='\r' || *p=='\n')
p++;
- if( *p == '\r' )
- p++;
- if( *p == '\n' )
- p++;
if( *p )
return -1; /* garbage after dashes */
save_c = *save_p; *save_p = 0;
diff --git a/g10/g10.c b/g10/g10.c
index 3919f6850..3e773dc59 100644
--- a/g10/g10.c
+++ b/g10/g10.c
@@ -2607,8 +2607,8 @@ main( int argc, char **argv )
if(require_secmem && !got_secmem)
{
- log_info(_("will not run with insecure memory due to %s"),
- "--require-secmem\n");
+ log_info(_("will not run with insecure memory due to %s\n"),
+ "--require-secmem");
g10_exit(2);
}