Module Name: src
Committed By: agc
Date: Wed Jun 15 03:37:50 UTC 2016
Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c
verify.h
Log Message:
netpgpverify: bring over changes in 20160615 from pkgsrc
+ perform check for start of ascii-armoured signature in a more efficient
way
To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c
cvs rdiff -u -r1.6 -r1.7 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.8 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.9
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.8 Tue Jun 14 20:47:08 2016
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c Wed Jun 15 03:37:50 2016
@@ -2021,18 +2021,14 @@ read_ascii_armor(pgpv_cursor_t *cursor,
return 0;
}
litdata.u.litdata.len = litdata.s.size = (size_t)(p - datastart);
- p += strlen(SIGSTART);
- /* Work out whther there's a version line */
- if (memcmp(p, "Version:", 8) == 0) {
- if ((p = find_bin_string(p, mem->size, "\n\n", 2)) == NULL) {
- snprintf(cursor->why, sizeof(cursor->why),
- "malformed armed signature at %zu", (size_t)(p - mem->mem));
- return 0;
- }
- p += 2;
- } else {
- p += 1;
+ /* this puts p at the newline character, so it will find \n\n if no version */
+ p += strlen(SIGSTART) - 1;
+ if ((p = find_bin_string(p, mem->size, "\n\n", 2)) == NULL) {
+ snprintf(cursor->why, sizeof(cursor->why),
+ "malformed armed signature at %zu", (size_t)(p - mem->mem));
+ return 0;
}
+ p += 2;
sigend = find_bin_string(p, mem->size, SIGEND, strlen(SIGEND));
binsigsize = b64decode((char *)p, (size_t)(sigend - p), binsig, sizeof(binsig));
Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h:1.6 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h:1.7
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h:1.6 Tue Jun 14 20:47:08 2016
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h Wed Jun 15 03:37:50 2016
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2012,2013,2014,2015 Alistair Crooks <[email protected]>
+ * Copyright (c) 2012,2013,2014,2015,2016 Alistair Crooks <[email protected]>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -23,9 +23,9 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef NETPGP_VERIFY_H_
-#define NETPGP_VERIFY_H_ 20160614
+#define NETPGP_VERIFY_H_ 20160615
-#define NETPGPVERIFY_VERSION "netpgpverify portable 20160614"
+#define NETPGPVERIFY_VERSION "netpgpverify portable 20160615"
#include <sys/types.h>