Merge pull request #574 from pbrunschwig/master

Fix for issue 573: Don't throw with unknown Armor Headers
This commit is contained in:
Bart Butler 2017-08-20 16:38:29 -07:00 committed by GitHub
commit 199cad031f
2 changed files with 5 additions and 2 deletions

View File

@ -224,9 +224,12 @@ function splitHeaders(text) {
*/
function verifyHeaders(headers) {
for (var i = 0; i < headers.length; i++) {
if (!/^(Version|Comment|MessageID|Hash|Charset): .+$/.test(headers[i])) {
if (!/^[^:\s]+: .+$/.test(headers[i])) {
throw new Error('Improperly formatted armor header: ' + headers[i]);
}
if (config.debug && !/^(Version|Comment|MessageID|Hash|Charset): .+$/.test(headers[i])) {
console.log('Unknown header: ' + headers[i]);
}
}
}

View File

@ -104,7 +104,7 @@ describe("ASCII armor", function() {
var msg = getArmor(['Hash:SHA256']);
msg = openpgp.cleartext.readArmored.bind(null, msg);
expect(msg).to.throw(Error, /Improperly formatted armor header/);
msg = getArmor(['<script>: SHA256']);
msg = getArmor(['Ha sh: SHA256']);
msg = openpgp.cleartext.readArmored.bind(null, msg);
expect(msg).to.throw(Error, /Improperly formatted armor header/);
msg = getArmor(['Hash SHA256']);