diff --git a/ChangeLog b/ChangeLog index b4bed6c19..a80a85ed1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -19,6 +19,7 @@ Bugfix Changes * Add SSL_MIN_DHM_BYTES configuration parameter in config.h to choose the minimum size of Diffie-Hellman parameters accepted by the client. + * The PEM parser now accepts a trailing space at end of lines (#226). = Version 1.2.14 released 2015-06-26 diff --git a/library/pem.c b/library/pem.c index 4f853b56c..5c973ac25 100644 --- a/library/pem.c +++ b/library/pem.c @@ -208,12 +208,14 @@ int pem_read_buffer( pem_context *ctx, char *header, char *footer, const unsigne return( POLARSSL_ERR_PEM_NO_HEADER_FOOTER_PRESENT ); s1 += strlen( header ); + if( *s1 == ' ' ) s1++; if( *s1 == '\r' ) s1++; if( *s1 == '\n' ) s1++; else return( POLARSSL_ERR_PEM_NO_HEADER_FOOTER_PRESENT ); end = s2; end += strlen( footer ); + if( *end == ' ' ) end++; if( *end == '\r' ) end++; if( *end == '\n' ) end++; *use_len = end - data;