CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-10-02 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Mon Oct  3 05:34:31 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
netpgp: fix build with Clang (since 2022-10-01)

error: passing 'char [1]' to parameter of type 'const uint8_t *'
(aka 'const unsigned char *') converts between pointers to integer
types where one is of the unique plain 'char' type and the other is
not [-Werror,-Wpointer-sign]


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-10-02 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Mon Oct  3 05:34:31 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
netpgp: fix build with Clang (since 2022-10-01)

error: passing 'char [1]' to parameter of type 'const uint8_t *'
(aka 'const unsigned char *') converts between pointers to integer
types where one is of the unique plain 'char' type and the other is
not [-Werror,-Wpointer-sign]


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.59 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.60
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.59	Sat Oct  1 22:21:31 2022
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Mon Oct  3 05:34:31 2022
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.59 2022/10/01 22:21:31 rillig Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.60 2022/10/03 05:34:31 rillig Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -1159,7 +1159,7 @@ pgp_export_key(pgp_io_t *io, const pgp_k
 		pgp_write_xfer_seckey(output, keydata, passphrase,
 	strlen((char *)passphrase), 1);
 	}
-	pgp_memory_add(mem, "", 1);
+	pgp_memory_add(mem, (uint8_t[]){0}, 1);
 	cp = netpgp_strdup(pgp_mem_data(mem));
 	pgp_teardown_memory_write(output, mem);
 	return cp;



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-10-01 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Sat Oct  1 22:21:31 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
netpgpkeys: properly terminate string before calling strdup

$ MALLOC_CONF=junk:true netpgpkeys \
--export-key \
--keyring=/usr/pkg/etc/gnupg/pkgsrc.gpg \
b5952cabdd765a20

The above command printed "-END PGP PUBLIC KEY BLOCK-\r\n"
followed by "\xA5\xA5\xA5...".


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.59 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.58 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.59
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.58	Sat Aug 27 08:58:32 2022
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Sat Oct  1 22:21:31 2022
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.58 2022/08/27 08:58:32 rillig Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.59 2022/10/01 22:21:31 rillig Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -1159,6 +1159,7 @@ pgp_export_key(pgp_io_t *io, const pgp_k
 		pgp_write_xfer_seckey(output, keydata, passphrase,
 	strlen((char *)passphrase), 1);
 	}
+	pgp_memory_add(mem, "", 1);
 	cp = netpgp_strdup(pgp_mem_data(mem));
 	pgp_teardown_memory_write(output, mem);
 	return cp;



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-10-01 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Sat Oct  1 22:21:31 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
netpgpkeys: properly terminate string before calling strdup

$ MALLOC_CONF=junk:true netpgpkeys \
--export-key \
--keyring=/usr/pkg/etc/gnupg/pkgsrc.gpg \
b5952cabdd765a20

The above command printed "-END PGP PUBLIC KEY BLOCK-\r\n"
followed by "\xA5\xA5\xA5...".


To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.59 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-08-27 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Sat Aug 27 08:35:01 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c

Log Message:
netpgp: fix use after free when writing keyring

Same pattern as in the previous commit.


To generate a diff of this commit:
cvs rdiff -u -r1.104 -r1.105 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

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/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.104 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.105
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.104	Sat Aug 27 08:30:06 2022
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Sat Aug 27 08:35:01 2022
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.104 2022/08/27 08:30:06 rillig Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.105 2022/08/27 08:35:01 rillig Exp $");
 #endif
 
 #include 
@@ -317,8 +317,8 @@ writekeyring(netpgp_t *netpgp, const cha
 
 	filename = keyringfile(netpgp, name);
 	if (!pgp_keyring_filewrite(keyring, noarmor, filename, passphrase)) {
-		free(filename);
 		(void) fprintf(stderr, "Can't write %s %s\n", name, filename);
+		free(filename);
 		return 0;
 	}
 	netpgp_setvar(netpgp, name, filename);



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-08-27 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Sat Aug 27 08:35:01 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c

Log Message:
netpgp: fix use after free when writing keyring

Same pattern as in the previous commit.


To generate a diff of this commit:
cvs rdiff -u -r1.104 -r1.105 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-08-27 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Sat Aug 27 08:30:06 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c

Log Message:
netpgp: fix use after free when reading pubkey

To reproduce:
srcdir=...
objdir=...
cd "$srcdir"/crypto/external/bsd/netpgp/dist/bindings/lua
cp "$objdir"/crypto/external/bsd/netpgp/bindings/lua/netpgp.so \
./libluanetpgp.so
LD_LIBRARY_PATH="." MALLOC_CONF=junk:true lua netpgp.lua

> $HOME/.gnupg/pubring.gpg: No such file or directory
> Can't read pubring 


To generate a diff of this commit:
cvs rdiff -u -r1.103 -r1.104 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

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/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.103 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.104
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.103	Sat Mar 21 01:07:21 2020
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Sat Aug 27 08:30:06 2022
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.103 2020/03/21 01:07:21 jhigh Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.104 2022/08/27 08:30:06 rillig Exp $");
 #endif
 
 #include 
@@ -297,9 +297,9 @@ readkeyring(netpgp_t *netpgp, const char
 
 	filename = keyringfile(netpgp, name);
 	if (!pgp_keyring_fileread(keyring, noarmor, filename)) {
+		(void) fprintf(stderr, "Can't read %s %s\n", name, filename);
 		free(filename);
 		free(keyring);
-		(void) fprintf(stderr, "Can't read %s %s\n", name, filename);
 		return NULL;
 	}
 	netpgp_setvar(netpgp, name, filename);



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-08-27 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Sat Aug 27 08:30:06 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c

Log Message:
netpgp: fix use after free when reading pubkey

To reproduce:
srcdir=...
objdir=...
cd "$srcdir"/crypto/external/bsd/netpgp/dist/bindings/lua
cp "$objdir"/crypto/external/bsd/netpgp/bindings/lua/netpgp.so \
./libluanetpgp.so
LD_LIBRARY_PATH="." MALLOC_CONF=junk:true lua netpgp.lua

> $HOME/.gnupg/pubring.gpg: No such file or directory
> Can't read pubring 


To generate a diff of this commit:
cvs rdiff -u -r1.103 -r1.104 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-08-26 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Fri Aug 26 19:18:38 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: create.c crypto.h misc.c
netpgpsdk.h openssl_crypto.c packet-parse.c packet-print.c
packet-show.c packet.h signature.c version.h

Log Message:
adding initial support for ECDSA (19) to netpgp. tested using p256/sha256, 
p384/sha384, and p521/sha512


To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 \
src/crypto/external/bsd/netpgp/dist/src/lib/create.c \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c
cvs rdiff -u -r1.30 -r1.31 \
src/crypto/external/bsd/netpgp/dist/src/lib/crypto.h
cvs rdiff -u -r1.43 -r1.44 src/crypto/external/bsd/netpgp/dist/src/lib/misc.c \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-print.c
cvs rdiff -u -r1.12 -r1.13 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgpsdk.h
cvs rdiff -u -r1.34 -r1.35 \
src/crypto/external/bsd/netpgp/dist/src/lib/openssl_crypto.c
cvs rdiff -u -r1.53 -r1.54 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c
cvs rdiff -u -r1.22 -r1.23 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c
cvs rdiff -u -r1.32 -r1.33 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet.h
cvs rdiff -u -r1.47 -r1.48 \
src/crypto/external/bsd/netpgp/dist/src/lib/version.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/lib/create.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/create.c:1.38 src/crypto/external/bsd/netpgp/dist/src/lib/create.c:1.39
--- src/crypto/external/bsd/netpgp/dist/src/lib/create.c:1.38	Mon Nov 15 08:03:39 2010
+++ src/crypto/external/bsd/netpgp/dist/src/lib/create.c	Fri Aug 26 19:18:38 2022
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: create.c,v 1.38 2010/11/15 08:03:39 agc Exp $");
+__RCSID("$NetBSD: create.c,v 1.39 2022/08/26 19:18:38 jhigh Exp $");
 #endif
 
 #include 
@@ -250,6 +250,11 @@ write_pubkey_body(const pgp_pubkey_t *ke
 			pgp_write_mpi(output, key->key.dsa.g) &&
 			pgp_write_mpi(output, key->key.dsa.y);
 
+	case PGP_PKA_ECDSA:
+		return pgp_write(output, >key.ecdsa.len, 1) && 
+			pgp_write(output, key->key.ecdsa.oid, key->key.ecdsa.len) &&
+			pgp_write_mpi(output, key->key.ecdsa.p);
+
 	case PGP_PKA_RSA:
 	case PGP_PKA_RSA_ENCRYPT_ONLY:
 	case PGP_PKA_RSA_SIGN_ONLY:
Index: src/crypto/external/bsd/netpgp/dist/src/lib/signature.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.38 src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.39
--- src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.38	Mon Feb  5 23:56:01 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/signature.c	Fri Aug 26 19:18:38 2022
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: signature.c,v 1.38 2018/02/05 23:56:01 christos Exp $");
+__RCSID("$NetBSD: signature.c,v 1.39 2022/08/26 19:18:38 jhigh Exp $");
 #endif
 
 #include 
@@ -265,6 +265,56 @@ dsa_sign(pgp_hash_t *hash,
 	return 1;
 }
 
+static int
+ecdsa_sign(pgp_hash_t *hash,
+	   const pgp_ecdsa_pubkey_t *ecdsa,
+	   const pgp_ecdsa_seckey_t *secdsa,
+	   pgp_output_t *output)
+{
+	unsignedhashsize;
+	unsignedt;
+	uint8_t hashbuf[NETPGP_BUFSIZ];
+	ECDSA_SIG*ecdsasig;
+	const BIGNUM   *r, *s;
+ 
+	hashsize = ecdsa_hashsize(ecdsa); 
+ 
+	if (hashsize == -1) {
+		return 0;
+	}
+
+	t = hash->finish(hash, [0]);
+
+	if (t != hashsize) {
+		(void) fprintf(stderr, "ecdsa_sign: hashfinish %d not %d\n", t, hashsize);
+		return 0;
+	}
+
+	pgp_write(output, [0], 2);
+
+	/* write signature to buf */
+	ecdsasig = pgp_ecdsa_sign(hashbuf, hashsize, secdsa, ecdsa);
+
+	if (ecdsasig == NULL) {
+		(void) fprintf(stderr, "ecdsa_sign: invalid ecdsa sig\n");
+		return 0;
+	}
+
+	/* convert and write the sig out to memory */
+#if OPENSSL_VERSION_NUMBER >= 0x1010
+	ECDSA_SIG_get0(ecdsasig, , );
+#else
+	r = ecdsasig->r;
+	s = ecdsasig->s;
+#endif
+	pgp_write_mpi(output, r);
+	pgp_write_mpi(output, s);
+	
+	ECDSA_SIG_free(ecdsasig);
+
+	return 1;
+}
+
 static unsigned 
 rsa_verify(pgp_hash_alg_t type,
 	   const uint8_t *hash,
@@ -430,6 +480,12 @@ pgp_check_sig(const uint8_t *hash, unsig
 >key.dsa);
 		break;
 
+	case PGP_PKA_ECDSA:
+		ret = pgp_ecdsa_verify(hash, length,
+>info.sig.ecdsa,
+>key.ecdsa);
+		break;
+
 	case PGP_PKA_RSA:
 		ret = rsa_verify(sig->info.hash_alg, hash, length,
 >info.sig.rsa,
@@ -764,6 +820,14 @@ pgp_write_sig(pgp_output_t *output, 
 		}
 		break;
 
+	case PGP_PKA_ECDSA:
+		if (seckey->key.ecdsa.x == NULL) {
+			(void) fprintf(stderr, "pgp_write_sig: null ecdsa.x\n");
+			return 0;
+		}
+
+		break;
+
 	default:
 		(void) 

CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2022-08-26 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Fri Aug 26 19:18:38 UTC 2022

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: create.c crypto.h misc.c
netpgpsdk.h openssl_crypto.c packet-parse.c packet-print.c
packet-show.c packet.h signature.c version.h

Log Message:
adding initial support for ECDSA (19) to netpgp. tested using p256/sha256, 
p384/sha384, and p521/sha512


To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 \
src/crypto/external/bsd/netpgp/dist/src/lib/create.c \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c
cvs rdiff -u -r1.30 -r1.31 \
src/crypto/external/bsd/netpgp/dist/src/lib/crypto.h
cvs rdiff -u -r1.43 -r1.44 src/crypto/external/bsd/netpgp/dist/src/lib/misc.c \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-print.c
cvs rdiff -u -r1.12 -r1.13 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgpsdk.h
cvs rdiff -u -r1.34 -r1.35 \
src/crypto/external/bsd/netpgp/dist/src/lib/openssl_crypto.c
cvs rdiff -u -r1.53 -r1.54 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c
cvs rdiff -u -r1.22 -r1.23 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c
cvs rdiff -u -r1.32 -r1.33 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet.h
cvs rdiff -u -r1.47 -r1.48 \
src/crypto/external/bsd/netpgp/dist/src/lib/version.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2021-07-28 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Wed Jul 28 22:31:45 UTC 2021

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: packet-print.c
packet-show.c

Log Message:
print Issuer Fingerprint subpacket 33 (rfc4880bis-08:5.2.3.28) rather than 
Unknown


To generate a diff of this commit:
cvs rdiff -u -r1.42 -r1.43 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-print.c
cvs rdiff -u -r1.21 -r1.22 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2021-07-28 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Wed Jul 28 22:31:45 UTC 2021

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: packet-print.c
packet-show.c

Log Message:
print Issuer Fingerprint subpacket 33 (rfc4880bis-08:5.2.3.28) rather than 
Unknown


To generate a diff of this commit:
cvs rdiff -u -r1.42 -r1.43 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-print.c
cvs rdiff -u -r1.21 -r1.22 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c

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/lib/packet-print.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/packet-print.c:1.42 src/crypto/external/bsd/netpgp/dist/src/lib/packet-print.c:1.43
--- src/crypto/external/bsd/netpgp/dist/src/lib/packet-print.c:1.42	Wed Feb 22 06:29:40 2012
+++ src/crypto/external/bsd/netpgp/dist/src/lib/packet-print.c	Wed Jul 28 22:31:45 2021
@@ -58,7 +58,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: packet-print.c,v 1.42 2012/02/22 06:29:40 agc Exp $");
+__RCSID("$NetBSD: packet-print.c,v 1.43 2021/07/28 22:31:45 jhigh Exp $");
 #endif
 
 #include 
@@ -1090,6 +1090,14 @@ pgp_print_packet(pgp_printstate_t *print
 		end_subpacket(>indent);
 		break;
 
+	case PGP_PTAG_SS_ISSUER_FINGERPRINT:
+		start_subpacket(>indent, pkt->tag);
+		print_hexdump(print->indent, "Issuer Fingerprint",
+			  content->ss_issuer_fingerprint.fingerprint, 
+			  content->ss_issuer_fingerprint.len);
+		end_subpacket(>indent);
+		break;
+
 	case PGP_PTAG_SS_PREFERRED_SKA:
 		start_subpacket(>indent, pkt->tag);
 		print_data(print->indent, "Preferred Symmetric Algorithms",

Index: src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c:1.21 src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c:1.22
--- src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c:1.21	Sun Aug 14 11:19:51 2011
+++ src/crypto/external/bsd/netpgp/dist/src/lib/packet-show.c	Wed Jul 28 22:31:45 2021
@@ -60,7 +60,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: packet-show.c,v 1.21 2011/08/14 11:19:51 christos Exp $");
+__RCSID("$NetBSD: packet-show.c,v 1.22 2021/07/28 22:31:45 jhigh Exp $");
 #endif
 
 #include 
@@ -115,6 +115,7 @@ static pgp_map_t packet_tag_map[] =
 	{PGP_PTAG_SS_PREFERRED_SKA, "SS: Preferred Secret Key Algorithm"},
 	{PGP_PTAG_SS_REVOCATION_KEY, "SS: Revocation Key"},
 	{PGP_PTAG_SS_ISSUER_KEY_ID, "SS: Issuer Key Id"},
+	{PGP_PTAG_SS_ISSUER_FINGERPRINT, "SS: Issuer Fingerprint"},
 	{PGP_PTAG_SS_NOTATION_DATA, "SS: Notation Data"},
 	{PGP_PTAG_SS_PREFERRED_HASH, "SS: Preferred Hash Algorithm"},
 	{PGP_PTAG_SS_PREF_COMPRESS, "SS: Preferred Compression Algorithm"},
@@ -164,6 +165,7 @@ static pgp_map_t ss_type_map[] =
 	{PGP_PTAG_SS_PREFERRED_SKA, "Preferred Symmetric Algorithms"},
 	{PGP_PTAG_SS_REVOCATION_KEY, "Revocation Key"},
 	{PGP_PTAG_SS_ISSUER_KEY_ID, "Issuer key ID"},
+	{PGP_PTAG_SS_ISSUER_FINGERPRINT, "Issuer Fingerprint"},
 	{PGP_PTAG_SS_NOTATION_DATA, "Notation Data"},
 	{PGP_PTAG_SS_PREFERRED_HASH, "Preferred Hash Algorithms"},
 	{PGP_PTAG_SS_PREF_COMPRESS, "Preferred Compression Algorithms"},



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2020-11-01 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Sun Nov  1 11:29:17 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: Makefile.in
bzlib_private.h libverify.c verify.h
Added Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: HOWTO
dash-escaped-text dash-escaped-text.asc netpgpv-bzlib.h verify.map
Removed Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: bzlib.h

Log Message:
Sync with netpgpverify-20201101 from pkgsrc (the master for this).

No effective change except for version bump.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/HOWTO \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/dash-escaped-text \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/dash-escaped-text.asc \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpv-bzlib.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.map
cvs rdiff -u -r1.11 -r1.12 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.in \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h
cvs rdiff -u -r1.2 -r0 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib.h
cvs rdiff -u -r1.4 -r1.5 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h
cvs rdiff -u -r1.16 -r1.17 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

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/Makefile.in
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.in:1.11 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.in:1.12
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.in:1.11	Mon Apr 17 19:50:28 2017
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.in	Sun Nov  1 11:29:17 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.in,v 1.11 2017/04/17 19:50:28 agc Exp $
+# $NetBSD: Makefile.in,v 1.12 2020/11/01 11:29:17 wiz Exp $
 
 PROG=netpgpverify
 
@@ -16,7 +16,7 @@ MANDIR=@MANDIR@
 all: ${PROG}
 
 ${PROG}: ${OBJS}
-	${CC} ${OBJS} -o ${PROG}
+	${CC} ${LDFLAGS} ${CFLAGS} ${OBJS} -o ${PROG}
 
 install:
 	install -c -s ${PROG} ${DESTDIR}${PREFIX}/bin
Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h:1.11 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h:1.12
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h:1.11	Mon May  4 00:18:34 2020
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h	Sun Nov  1 11:29:17 2020
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #ifndef NETPGP_VERIFY_H_
-#define NETPGP_VERIFY_H_	20200503
+#define NETPGP_VERIFY_H_	20201101
 
-#define NETPGPVERIFY_VERSION	"netpgpverify portable 20200503"
+#define NETPGPVERIFY_VERSION	"netpgpverify portable 20201101"
 
 #include 
 

Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h:1.4 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h:1.5
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h:1.4	Mon May  4 00:18:34 2020
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h	Sun Nov  1 11:29:17 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: bzlib_private.h,v 1.4 2020/05/04 00:18:34 agc Exp $	*/
+/*	$NetBSD: bzlib_private.h,v 1.5 2020/11/01 11:29:17 wiz Exp $	*/
 
 
 /*-*/
@@ -32,7 +32,7 @@
 #include 
 #endif
 
-#include "bzlib.h"
+#include "netpgpv-bzlib.h"
 
 
 

Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.16 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.17
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.16	Sat Oct 17 23:08:57 2020
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c	Sun Nov  1 11:29:17 2020
@@ -40,7 +40,7 @@
 #include 
 #include 
 
-#include "bzlib.h"
+#include "netpgpv-bzlib.h"
 #include "zlib.h"
 
 #include "array.h"

Added files:

Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/HOWTO
diff -u /dev/null src/crypto/external/bsd/netpgp/dist/src/netpgpverify/HOWTO:1.1
--- /dev/null	Sun Nov  1 11:29:17 2020
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/HOWTO	Sun Nov  1 11:29:17 2020
@@ -0,0 +1,55 @@
+How to use ssh keys in PGP signatures
+=
+
+1. generate a new ssh key pair
+
+	% ssh-keygen -t rsa -b 4096 -f sshtest-20140202
+	Generating public/private rsa key pair.
+	Enter passphrase (empty for no passphrase):
+	Enter same passphrase again:
+	

CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2020-11-01 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Sun Nov  1 11:29:17 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: Makefile.in
bzlib_private.h libverify.c verify.h
Added Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: HOWTO
dash-escaped-text dash-escaped-text.asc netpgpv-bzlib.h verify.map
Removed Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: bzlib.h

Log Message:
Sync with netpgpverify-20201101 from pkgsrc (the master for this).

No effective change except for version bump.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/HOWTO \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/dash-escaped-text \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/dash-escaped-text.asc \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpv-bzlib.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.map
cvs rdiff -u -r1.11 -r1.12 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.in \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/verify.h
cvs rdiff -u -r1.2 -r0 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib.h
cvs rdiff -u -r1.4 -r1.5 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h
cvs rdiff -u -r1.16 -r1.17 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2020-10-17 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Sat Oct 17 23:08:57 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c

Log Message:
absorb issuer fingerprint (RFC4880bis 5.2.3.28) in libverify.c


To generate a diff of this commit:
cvs rdiff -u -r1.15 -r1.16 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

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.15 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.16
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.15	Mon May  4 00:18:34 2020
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c	Sat Oct 17 23:08:57 2020
@@ -151,6 +151,8 @@ typedef struct pgpv_signature_t {
 	char			*features;
 	char			*why_revoked;
 	uint8_t			*revoke_fingerprint;
+	uint8_t			*issuer_fingerprint;
+	uint8_t			 ifver;
 	uint8_t			 revoke_alg;
 	uint8_t			 revoke_sensitive;
 	uint8_t			 trustsig;
@@ -925,6 +927,7 @@ str_to_keyid(const char *s, uint8_t *key
 #define SUBPKT_FEATURES			30
 #define SUBPKT_SIGNATURE_TARGET		31
 #define SUBPKT_EMBEDDED_SIGNATURE	32
+#define SUBPKT_ISSUER_FINGERPRINT	33
 
 #define UNCOMPRESSED			0
 #define ZIP_COMPRESSION			1
@@ -1180,6 +1183,10 @@ read_sig_subpackets(pgpv_t *pgp, pgpv_si
 			sigpkt->sig.revoked = *p++ + 1;
 			sigpkt->sig.why_revoked = (char *)(void *)p;
 			break;
+		case SUBPKT_ISSUER_FINGERPRINT:
+			sigpkt->sig.ifver = *p;
+			sigpkt->sig.issuer_fingerprint = [1];
+			break;
 		default:
 			printf("Ignoring unusual/reserved signature subpacket %d\n", subpkt.tag);
 			break;



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2020-10-17 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Sat Oct 17 23:08:57 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c

Log Message:
absorb issuer fingerprint (RFC4880bis 5.2.3.28) in libverify.c


To generate a diff of this commit:
cvs rdiff -u -r1.15 -r1.16 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2020-10-13 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Wed Oct 14 05:19:41 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c packet-parse.c
packet.h

Log Message:
allow netpgp to absorb gpg2 subpkt 33 for list/enc/decrypt rsa keys


To generate a diff of this commit:
cvs rdiff -u -r1.56 -r1.57 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c
cvs rdiff -u -r1.52 -r1.53 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c
cvs rdiff -u -r1.31 -r1.32 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet.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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.56 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.57
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.56	Tue Nov 13 14:52:30 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Wed Oct 14 05:19:41 2020
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.56 2018/11/13 14:52:30 mlelstv Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.57 2020/10/14 05:19:41 jhigh Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -620,8 +620,12 @@ cb_keyring_read(const pgp_packet_t *pkt,
 		key->subsigc += 1;
 		break;
 	case PGP_PTAG_CT_TRUST:
-		key->subsigs[key->subsigc - 1].trustlevel = pkt->u.ss_trust.level;
-		key->subsigs[key->subsigc - 1].trustamount = pkt->u.ss_trust.amount;
+		EXPAND_ARRAY(key, subsig);
+		key->subsigs[key->subsigc].trustlevel = pkt->u.ss_trust.level;
+		key->subsigs[key->subsigc].trustamount = pkt->u.ss_trust.amount;
+
+		key->subsigc += 1;
+
 		break;
 	case PGP_PTAG_SS_KEY_EXPIRY:
 		EXPAND_ARRAY(keyring, key);
@@ -667,7 +671,6 @@ cb_keyring_read(const pgp_packet_t *pkt,
 	default:
 		break;
 	}
-
 	return PGP_RELEASE_MEMORY;
 }
 

Index: src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c:1.52 src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c:1.53
--- src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c:1.52	Tue Nov 13 14:52:30 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c	Wed Oct 14 05:19:41 2020
@@ -58,7 +58,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: packet-parse.c,v 1.52 2018/11/13 14:52:30 mlelstv Exp $");
+__RCSID("$NetBSD: packet-parse.c,v 1.53 2020/10/14 05:19:41 jhigh Exp $");
 #endif
 
 #include 
@@ -984,6 +984,7 @@ pgp_parser_content_free(pgp_packet_t *c)
 	case PGP_PTAG_SS_PRIMARY_USER_ID:
 	case PGP_PTAG_SS_REVOCABLE:
 	case PGP_PTAG_SS_REVOCATION_KEY:
+	case PGP_PTAG_SS_ISSUER_FINGERPRINT:
 	case PGP_PTAG_CT_LITDATA_HEADER:
 	case PGP_PTAG_CT_LITDATA_BODY:
 	case PGP_PTAG_CT_SIGNED_CLEARTEXT_BODY:
@@ -1554,6 +1555,7 @@ parse_one_sig_subpacket(pgp_sig_t *sig,
 	pgp_packet_t	pkt;
 	uint8_t		bools = 0x0;
 	uint8_t		c = 0x0;
+	uint8_t		temp = 0x0;
 	unsigned	doread = 1;
 	unsignedt8;
 	unsignedt7;
@@ -1764,6 +1766,26 @@ parse_one_sig_subpacket(pgp_sig_t *sig,
 		}
 		break;
 
+	case PGP_PTAG_SS_ISSUER_FINGERPRINT:
+		/* octet 0: version */
+		/* 	0x04:20 bytes, 0x05:32 bytes */
+		if (!limread(, 1, , stream)) {
+			return 0;
+		}
+
+		switch (temp) {
+			case 0x04: pkt.u.ss_issuer_fingerprint.len = 20; break;
+			case 0x05: pkt.u.ss_issuer_fingerprint.len = 32; break;
+			default:
+return 0;
+		}
+
+		if (!limread(pkt.u.ss_issuer_fingerprint.fingerprint, 
+			pkt.u.ss_issuer_fingerprint.len, , stream)) {
+			return 0;
+		}
+		break;
+
 	case PGP_PTAG_SS_REVOCATION_KEY:
 		/* octet 0 = class. Bit 0x80 must be set */
 		if (!limread(_revocation_key.class, 1,

Index: src/crypto/external/bsd/netpgp/dist/src/lib/packet.h
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/packet.h:1.31 src/crypto/external/bsd/netpgp/dist/src/lib/packet.h:1.32
--- src/crypto/external/bsd/netpgp/dist/src/lib/packet.h:1.31	Tue Nov 13 14:52:30 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/packet.h	Wed Oct 14 05:19:41 2020
@@ -251,7 +251,7 @@ typedef enum {
 	PGP_PTAG_SS_FEATURES = 0x200 + 30,	/* features */
 	PGP_PTAG_SS_SIGNATURE_TARGET = 0x200 + 31,	/* signature target */
 	PGP_PTAG_SS_EMBEDDED_SIGNATURE = 0x200 + 32,	/* embedded signature */
-
+	PGP_PTAG_SS_ISSUER_FINGERPRINT = 0x200 + 33,	/* issuer fingerprint */
 	PGP_PTAG_SS_USERDEFINED00 = 0x200 + 100,	/* internal or
 			 * user-defined */
 	PGP_PTAG_SS_USERDEFINED01 = 0x200 + 101,
@@ -659,6 +659,11 @@ typedef struct pgp_ss_trust_t {
 	uint8_t			 amount;	/* Amount */
 } pgp_ss_trust_t;
 
+typedef struct pgp_ss_issuer_fingerprint {
+	uint8_t			len; /* 20 or 32 */
+	uint8_t			fingerprint[32]; /* max 32 */
+} pgp_ss_issuer_fingerprint;
+
 /** Signature Subpacket : 

CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2020-10-13 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Wed Oct 14 05:19:41 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c packet-parse.c
packet.h

Log Message:
allow netpgp to absorb gpg2 subpkt 33 for list/enc/decrypt rsa keys


To generate a diff of this commit:
cvs rdiff -u -r1.56 -r1.57 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c
cvs rdiff -u -r1.52 -r1.53 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c
cvs rdiff -u -r1.31 -r1.32 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2020-05-03 Thread Alistair G. Crooks
Module Name:src
Committed By:   agc
Date:   Mon May  4 00:18:34 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: Makefile.bsd
b64.c b64.h bignum.c bn.h bzlib.c bzlib.h bzlib_private.h
libverify.c rsa.c rsa.h verify.h zlib.c zlib.h

Log Message:
Bring over changes from source of truth in pkgsrc - bump version to 20200503

Update netpgpverify and libnetpgpverify to version 20200503

ensure all exported functions use a unique prfix, so that they don't
conflict with symbols (both data and text) in libcrypto. this works for
statically linked binaries and libraries, rather then the version map 
which
only works for dynalically-linked.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.bsd
cvs rdiff -u -r1.1 -r1.2 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.c \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/zlib.h
cvs rdiff -u -r1.5 -r1.6 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bignum.c
cvs rdiff -u -r1.3 -r1.4 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bn.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/rsa.c
cvs rdiff -u -r1.4 -r1.5 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib.c
cvs rdiff -u -r1.14 -r1.15 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c
cvs rdiff -u -r1.2 -r1.3 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/rsa.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/zlib.c
cvs rdiff -u -r1.10 -r1.11 \
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/Makefile.bsd
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.bsd:1.7 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.bsd:1.8
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.bsd:1.7	Mon Apr 17 19:50:28 2017
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.bsd	Mon May  4 00:18:34 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.bsd,v 1.7 2017/04/17 19:50:28 agc Exp $
+# $NetBSD: Makefile.bsd,v 1.8 2020/05/04 00:18:34 agc Exp $
 
 PROG=netpgpverify
 
@@ -12,6 +12,11 @@ SRCS+= md5c.c rmd160.c sha1.c sha2.c
 
 CPPFLAGS+=-I.
 
+CPPFLAGS.bzlib.c+=	-Wno-error=implicit-fallthrough
+CPPFLAGS.zlib.c+=	-Wno-error=implicit-fallthrough
+
+LDFLAGS+=-Wl,--version-script=${.CURDIR}/verify.map
+
 .ifndef PRODUCTION
 CPPFLAGS+=-g -O0
 LDFLAGS+=-g -O0

Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.c
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.c:1.1 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.c:1.2
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.c:1.1	Sun Mar  9 00:15:45 2014
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.c	Mon May  4 00:18:34 2020
@@ -235,7 +235,7 @@ encodeblock(uint8_t *wordin, uint8_t *wo
 ** base64 encode a stream adding padding and line breaks as per spec.
 */
 int 
-b64encode(const char *in, const size_t insize, void *vp, size_t outsize, int linesize)
+netpgpv_b64encode(const char *in, const size_t insize, void *vp, size_t outsize, int linesize)
 {
 	const char	*inp;
 	unsigned	 i;
@@ -299,7 +299,7 @@ decodeblock(uint8_t wordin[4], uint8_t w
 ** decode a base64 encoded stream discarding padding, line breaks and noise
 */
 int
-b64decode(const char *in, const size_t insize, void *vp, size_t outsize)
+netpgpv_b64decode(const char *in, const size_t insize, void *vp, size_t outsize)
 {
 	const char	*inp;
 	unsigned	 wordlen;
@@ -349,7 +349,7 @@ b64decode(const char *in, const size_t i
 
 /* return the encoded size for n bytes input */
 int
-b64_encsize(unsigned n)
+netpgpv_b64_encsize(unsigned n)
 {
 	return ((4 * n) / 3) + 4;
 }
Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.h
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.h:1.1 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.h:1.2
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.h:1.1	Sun Mar  9 00:15:45 2014
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.h	Mon May  4 00:18:34 2020
@@ -25,8 +25,8 @@
 #ifndef B64_H_
 #define B64_H_	20091223
 
-int b64encode(const char */*in*/, const size_t /*insize*/, void */*vp*/, size_t /*outsize*/, int /*linesize*/);
-int b64decode(const char */*in*/, const size_t /*insize*/, void */*vp*/, size_t /*outsize*/);
-int b64_encsize(unsigned /*n*/);
+int netpgpv_b64encode(const char */*in*/, const size_t /*insize*/, void */*vp*/, 

CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2020-05-03 Thread Alistair G. Crooks
Module Name:src
Committed By:   agc
Date:   Mon May  4 00:18:34 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: Makefile.bsd
b64.c b64.h bignum.c bn.h bzlib.c bzlib.h bzlib_private.h
libverify.c rsa.c rsa.h verify.h zlib.c zlib.h

Log Message:
Bring over changes from source of truth in pkgsrc - bump version to 20200503

Update netpgpverify and libnetpgpverify to version 20200503

ensure all exported functions use a unique prfix, so that they don't
conflict with symbols (both data and text) in libcrypto. this works for
statically linked binaries and libraries, rather then the version map 
which
only works for dynalically-linked.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/Makefile.bsd
cvs rdiff -u -r1.1 -r1.2 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.c \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/b64.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/zlib.h
cvs rdiff -u -r1.5 -r1.6 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bignum.c
cvs rdiff -u -r1.3 -r1.4 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bn.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib_private.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/rsa.c
cvs rdiff -u -r1.4 -r1.5 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/bzlib.c
cvs rdiff -u -r1.14 -r1.15 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c
cvs rdiff -u -r1.2 -r1.3 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/rsa.h \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/zlib.c
cvs rdiff -u -r1.10 -r1.11 \
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.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2020-03-20 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Sat Mar 21 01:07:21 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c

Log Message:
cleanly fail initialization on empty keyring


To generate a diff of this commit:
cvs rdiff -u -r1.102 -r1.103 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

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/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.102 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.103
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.102	Tue Nov 13 14:52:30 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Sat Mar 21 01:07:21 2020
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.102 2018/11/13 14:52:30 mlelstv Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.103 2020/03/21 01:07:21 jhigh Exp $");
 #endif
 
 #include 
@@ -429,7 +429,7 @@ get_first_ring(pgp_keyring_t *ring, char
 	int	 i;
 	int	 n;
 
-	if (ring == NULL) {
+	if (ring == NULL || ring->keyc == 0) {
 		return 0;
 	}
 	(void) memset(id, 0x0, len);



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2020-03-20 Thread Jason High
Module Name:src
Committed By:   jhigh
Date:   Sat Mar 21 01:07:21 UTC 2020

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c

Log Message:
cleanly fail initialization on empty keyring


To generate a diff of this commit:
cvs rdiff -u -r1.102 -r1.103 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2019-10-08 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Tue Oct  8 18:47:11 UTC 2019

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c

Log Message:
grow the buffer a little.


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2019-10-08 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Tue Oct  8 18:47:11 UTC 2019

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c

Log Message:
grow the buffer a little.


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

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.13 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.14
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.13	Mon Apr 17 15:50:28 2017
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c	Tue Oct  8 14:47:10 2019
@@ -2622,7 +2622,7 @@ read_ssh_file(pgpv_t *pgp, pgpv_primaryk
 	int64_t			 off;
 	va_list			 args;
 	char			 hostname[256];
-	char			 owner[256];
+	char			 owner[2 * 256];
 	char			*space;
 	char		 	*buf;
 	char		 	*bin;



CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-11-13 Thread Michael van Elst
Module Name:src
Committed By:   mlelstv
Date:   Tue Nov 13 14:52:31 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c keyring.h misc.c
netpgp.c packet-parse.c packet.h
src/crypto/external/bsd/netpgp/dist/src/libmj: libmj.3 mj.c
src/crypto/external/bsd/netpgp/dist/src/netpgpkeys: netpgpkeys.c

Log Message:
Fix some error handling, json support, keyring handling.


To generate a diff of this commit:
cvs rdiff -u -r1.55 -r1.56 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c
cvs rdiff -u -r1.34 -r1.35 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h
cvs rdiff -u -r1.41 -r1.42 src/crypto/external/bsd/netpgp/dist/src/lib/misc.c
cvs rdiff -u -r1.101 -r1.102 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
cvs rdiff -u -r1.51 -r1.52 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c
cvs rdiff -u -r1.30 -r1.31 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet.h
cvs rdiff -u -r1.9 -r1.10 \
src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3
cvs rdiff -u -r1.5 -r1.6 src/crypto/external/bsd/netpgp/dist/src/libmj/mj.c
cvs rdiff -u -r1.26 -r1.27 \
src/crypto/external/bsd/netpgp/dist/src/netpgpkeys/netpgpkeys.c

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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.55 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.56
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.55	Mon Mar 27 21:19:12 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Tue Nov 13 14:52:30 2018
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.55 2017/03/27 21:19:12 khorben Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.56 2018/11/13 14:52:30 mlelstv Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -456,10 +456,12 @@ copy_packet(pgp_subpacket_t *dst, const 
 	}
 	if ((dst->raw = calloc(1, src->length)) == NULL) {
 		(void) fprintf(stderr, "copy_packet: bad alloc\n");
+		dst->length = 0;
 	} else {
 		dst->length = src->length;
 		(void) memcpy(dst->raw, src->raw, src->length);
 	}
+	dst->tag = src->tag;
 	return dst;
 }
 
@@ -500,7 +502,6 @@ pgp_add_subpacket(pgp_key_t *keydata, co
 	EXPAND_ARRAY(keydata, packet);
 	/* initialise new entry in array */
 	subpktp = >packets[keydata->packetc++];
-	subpktp->length = 0;
 	subpktp->raw = NULL;
 	/* now copy it */
 	return copy_packet(subpktp, packet);
@@ -545,6 +546,7 @@ pgp_add_selfsigned_userid(pgp_key_t *key
 	/* add this packet to key */
 	sigpacket.length = pgp_mem_len(mem_sig);
 	sigpacket.raw = pgp_mem_data(mem_sig);
+	sigpacket.tag = PGP_PTAG_CT_SIGNATURE;
 
 	/* add userid to key */
 	(void) pgp_add_userid(key, userid);
@@ -596,13 +598,14 @@ cb_keyring_read(const pgp_packet_t *pkt,
 
 	cb = pgp_callback_arg(cbinfo);
 	keyring = cb->keyring;
+	key = keyring->keyc > 0 ? >keys[keyring->keyc - 1] : NULL;
+
 	switch (pkt->tag) {
 	case PGP_PARSER_PTAG:
 	case PGP_PTAG_CT_ENCRYPTED_SECRET_KEY:
 		/* we get these because we didn't prompt */
 		break;
 	case PGP_PTAG_CT_SIGNATURE_HEADER:
-		key = >keys[keyring->keyc - 1];
 		EXPAND_ARRAY(key, subsig);
 		key->subsigs[key->subsigc].uid = key->uidc - 1;
 		(void) memcpy(>subsigs[key->subsigc].sig, >u.sig,
@@ -610,7 +613,6 @@ cb_keyring_read(const pgp_packet_t *pkt,
 		key->subsigc += 1;
 		break;
 	case PGP_PTAG_CT_SIGNATURE:
-		key = >keys[keyring->keyc - 1];
 		EXPAND_ARRAY(key, subsig);
 		key->subsigs[key->subsigc].uid = key->uidc - 1;
 		(void) memcpy(>subsigs[key->subsigc].sig, >u.sig,
@@ -618,7 +620,6 @@ cb_keyring_read(const pgp_packet_t *pkt,
 		key->subsigc += 1;
 		break;
 	case PGP_PTAG_CT_TRUST:
-		key = >keys[keyring->keyc - 1];
 		key->subsigs[key->subsigc - 1].trustlevel = pkt->u.ss_trust.level;
 		key->subsigs[key->subsigc - 1].trustamount = pkt->u.ss_trust.amount;
 		break;
@@ -629,28 +630,23 @@ cb_keyring_read(const pgp_packet_t *pkt,
 		}
 		break;
 	case PGP_PTAG_SS_ISSUER_KEY_ID:
-		key = >keys[keyring->keyc - 1];
 		(void) memcpy(>subsigs[key->subsigc - 1].sig.info.signer_id,
 			  pkt->u.ss_issuer,
 			  sizeof(pkt->u.ss_issuer));
 		key->subsigs[key->subsigc - 1].sig.info.signer_id_set = 1;
 		break;
 	case PGP_PTAG_SS_CREATION_TIME:
-		key = >keys[keyring->keyc - 1];
 		key->subsigs[key->subsigc - 1].sig.info.birthtime = pkt->u.ss_time;
 		key->subsigs[key->subsigc - 1].sig.info.birthtime_set = 1;
 		break;
 	case PGP_PTAG_SS_EXPIRATION_TIME:
-		key = >keys[keyring->keyc - 1];
 		key->subsigs[key->subsigc - 1].sig.info.duration = pkt->u.ss_time;
 		key->subsigs[key->subsigc - 1].sig.info.duration_set = 1;
 		break;
 	case PGP_PTAG_SS_PRIMARY_USER_ID:
-		key = >keys[keyring->keyc - 1];
 		key->uid0 = key->uidc - 1;
 		break;
 	case 

CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-11-13 Thread Michael van Elst
Module Name:src
Committed By:   mlelstv
Date:   Tue Nov 13 14:52:31 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c keyring.h misc.c
netpgp.c packet-parse.c packet.h
src/crypto/external/bsd/netpgp/dist/src/libmj: libmj.3 mj.c
src/crypto/external/bsd/netpgp/dist/src/netpgpkeys: netpgpkeys.c

Log Message:
Fix some error handling, json support, keyring handling.


To generate a diff of this commit:
cvs rdiff -u -r1.55 -r1.56 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c
cvs rdiff -u -r1.34 -r1.35 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h
cvs rdiff -u -r1.41 -r1.42 src/crypto/external/bsd/netpgp/dist/src/lib/misc.c
cvs rdiff -u -r1.101 -r1.102 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
cvs rdiff -u -r1.51 -r1.52 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet-parse.c
cvs rdiff -u -r1.30 -r1.31 \
src/crypto/external/bsd/netpgp/dist/src/lib/packet.h
cvs rdiff -u -r1.9 -r1.10 \
src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3
cvs rdiff -u -r1.5 -r1.6 src/crypto/external/bsd/netpgp/dist/src/libmj/mj.c
cvs rdiff -u -r1.26 -r1.27 \
src/crypto/external/bsd/netpgp/dist/src/netpgpkeys/netpgpkeys.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2018-08-13 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Mon Aug 13 09:54:19 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: sha2.c

Log Message:
avoid redefinition


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2018-08-13 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Mon Aug 13 09:54:19 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: sha2.c

Log Message:
avoid redefinition


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c

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/sha2.c
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c:1.3 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c:1.4
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c:1.3	Wed Jul 25 20:31:13 2018
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c	Mon Aug 13 05:54:19 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: sha2.c,v 1.3 2018/07/26 00:31:13 kamil Exp $ */
+/* $NetBSD: sha2.c,v 1.4 2018/08/13 09:54:19 christos Exp $ */
 /*	$KAME: sha2.c,v 1.9 2003/07/20 00:28:38 itojun Exp $	*/
 
 /*
@@ -48,7 +48,9 @@
 #   undef be32toh
 #   undef be64toh
 
+#ifndef __CAST
 #define __CAST(__dt, __st)  ((__dt)(__st)) /* srsly? */
+#endif
 
 static __inline void
 be32encode(void *buf, uint32_t u)



CVS commit: src/crypto/external/bsd/netpgp/dist/src/libbn

2018-08-13 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Mon Aug 13 09:53:51 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/libbn: bignum.c

Log Message:
sprinke const


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 \
src/crypto/external/bsd/netpgp/dist/src/libbn/bignum.c

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/libbn/bignum.c
diff -u src/crypto/external/bsd/netpgp/dist/src/libbn/bignum.c:1.5 src/crypto/external/bsd/netpgp/dist/src/libbn/bignum.c:1.6
--- src/crypto/external/bsd/netpgp/dist/src/libbn/bignum.c:1.5	Mon Mar 18 21:00:16 2013
+++ src/crypto/external/bsd/netpgp/dist/src/libbn/bignum.c	Mon Aug 13 05:53:51 2018
@@ -575,7 +575,7 @@ mp_init_size (mp_int * a, int size)
 }
 
 /* creates "a" then copies b into it */
-static int mp_init_copy (mp_int * a, mp_int * b)
+static int mp_init_copy (mp_int * a, const mp_int * b)
 {
   int res;
 
@@ -587,9 +587,9 @@ static int mp_init_copy (mp_int * a, mp_
 
 /* low level addition, based on HAC pp.594, Algorithm 14.7 */
 static int
-s_mp_add (mp_int * a, mp_int * b, mp_int * c)
+s_mp_add (const mp_int * a, const mp_int * b, mp_int * c)
 {
-  mp_int *x;
+  const mp_int *x;
   int olduse, res, min, max;
 
   /* find sizes, we let |a| <= |b| which means we have to sort
@@ -617,7 +617,8 @@ s_mp_add (mp_int * a, mp_int * b, mp_int
   c->used = max + 1;
 
   {
-mp_digit u, *tmpa, *tmpb, *tmpc;
+const mp_digit *tmpa, *tmpb;
+mp_digit u, *tmpc;
 int i;
 
 /* alias for digit pointers */
@@ -675,7 +676,7 @@ s_mp_add (mp_int * a, mp_int * b, mp_int
 
 /* low level subtraction (assumes |a| > |b|), HAC pp.595 Algorithm 14.9 */
 static int
-s_mp_sub (mp_int * a, mp_int * b, mp_int * c)
+s_mp_sub (const mp_int * a, const mp_int * b, mp_int * c)
 {
   int olduse, res, min, max;
 
@@ -693,7 +694,8 @@ s_mp_sub (mp_int * a, mp_int * b, mp_int
   c->used = max;
 
   {
-mp_digit u, *tmpa, *tmpb, *tmpc;
+const mp_digit *tmpa, *tmpb;
+mp_digit u, *tmpc;
 int i;
 
 /* alias for digit pointers */
@@ -742,7 +744,7 @@ s_mp_sub (mp_int * a, mp_int * b, mp_int
 
 /* high level subtraction (handles signs) */
 static int
-mp_sub (mp_int * a, mp_int * b, mp_int * c)
+mp_sub (const mp_int * a, const mp_int * b, mp_int * c)
 {
   int sa, sb, res;
 
@@ -831,9 +833,10 @@ static int mp_rshd (mp_int * a, int b)
 
 /* multiply by a digit */
 static int
-mp_mul_d (mp_int * a, mp_digit b, mp_int * c)
+mp_mul_d (const mp_int * a, mp_digit b, mp_int * c)
 {
-  mp_digit u, *tmpa, *tmpc;
+  const mp_digit *tmpa;
+  mp_digit u, *tmpc;
   mp_word  r;
   int  ix, res, olduse;
 
@@ -888,7 +891,7 @@ mp_mul_d (mp_int * a, mp_digit b, mp_int
 }
 
 /* high level addition (handles signs) */
-static int mp_add (mp_int * a, mp_int * b, mp_int * c)
+static int mp_add (const mp_int * a, const mp_int * b, mp_int * c)
 {
   int sa, sb, res;
 
@@ -933,7 +936,7 @@ mp_exch(mp_int *a, mp_int *b)
 
 /* calc a value mod 2**b */
 static int
-mp_mod_2d (mp_int * a, int b, mp_int * c)
+mp_mod_2d (const mp_int * a, int b, mp_int * c)
 {
   int x, res;
 
@@ -966,7 +969,7 @@ mp_mod_2d (mp_int * a, int b, mp_int * c
 }
 
 /* shift right by a certain bit count (store quotient in c, optional remainder in d) */
-static int mp_div_2d (mp_int * a, int b, mp_int * c, mp_int * d)
+static int mp_div_2d (const mp_int * a, int b, mp_int * c, mp_int * d)
 {
   mp_digit D, r, rr;
   int x, res;
@@ -1055,7 +1058,7 @@ static int mp_div_2d (mp_int * a, int b,
  * 14.20 from HAC but fixed to treat these cases.
 */
 static int
-mp_div(mp_int *c, mp_int *d, mp_int *a, mp_int *b)
+mp_div(mp_int *c, mp_int *d, const mp_int *a, const mp_int *b)
 {
   mp_int  q, x, y, t1, t2;
   int res, n, t, i, norm, neg;
@@ -1240,7 +1243,7 @@ LBL_Q:mp_clear ();
 
 /* c = a mod b, 0 <= c < b */
 static int
-mp_mod (mp_int * a, mp_int * b, mp_int * c)
+mp_mod (const mp_int * a, const mp_int * b, mp_int * c)
 {
   mp_int  t;
   int res;
@@ -1274,7 +1277,7 @@ static void mp_set (mp_int * a, mp_digit
 }
 
 /* b = a/2 */
-static int mp_div_2(mp_int * a, mp_int * b)
+static int mp_div_2(const mp_int * a, mp_int * b)
 {
   int x, res, oldused;
 
@@ -1321,7 +1324,7 @@ static int mp_div_2(mp_int * a, mp_int *
 }
 
 /* compare a digit */
-static int mp_cmp_d(mp_int * a, mp_digit b)
+static int mp_cmp_d(const mp_int * a, mp_digit b)
 {
   /* compare based on sign */
   if (a->sign == MP_NEG) {
@@ -1362,7 +1365,7 @@ static void mp_clear_multi(mp_int *mp, .
  * odd as per HAC Note 14.64 on pp. 610
  */
 static int
-fast_mp_invmod (mp_int * a, mp_int * b, mp_int * c)
+fast_mp_invmod (const mp_int * a, const mp_int * b, mp_int * c)
 {
   mp_int  x, y, u, v, B, D;
   int res, neg;
@@ -1485,7 +1488,7 @@ LBL_ERR:mp_clear_multi (, , , , 
 
 /* hac 14.61, pp608 */
 static int
-mp_invmod_slow (mp_int * a, mp_int * b, 

CVS commit: src/crypto/external/bsd/netpgp/dist/src/libbn

2018-08-13 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Mon Aug 13 09:53:51 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/libbn: bignum.c

Log Message:
sprinke const


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 \
src/crypto/external/bsd/netpgp/dist/src/libbn/bignum.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2018-07-25 Thread Kamil Rytarowski
Module Name:src
Committed By:   kamil
Date:   Thu Jul 26 00:31:13 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: sha2.c

Log Message:
Avoid undefined behavior in netpgpverify/sha2.c

Do not change the signedness bit with a left shift operation.
Cast to unsigned integer to prevent this.

sha2.c:79:16, left shift of 154 by 24 places cannot be represented in type 'int'

Detected with micro-UBSan in the user mode.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c

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/sha2.c
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c:1.2 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c:1.3
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c:1.2	Tue Jun 14 20:47:08 2016
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c	Thu Jul 26 00:31:13 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: sha2.c,v 1.2 2016/06/14 20:47:08 agc Exp $ */
+/* $NetBSD: sha2.c,v 1.3 2018/07/26 00:31:13 kamil Exp $ */
 /*	$KAME: sha2.c,v 1.9 2003/07/20 00:28:38 itojun Exp $	*/
 
 /*
@@ -76,7 +76,7 @@ htobe32(uint32_t x)
 	uint8_t p[4];
 	memcpy(p, , 4);
 
-	return ((p[0] << 24) | (p[1] << 16) | (p[2] << 8) | p[3]);
+	return (((uint32_t)p[0] << 24) | (p[1] << 16) | (p[2] << 8) | p[3]);
 }
 
 static uint64_t
@@ -86,8 +86,8 @@ htobe64(uint64_t x)
 	uint32_t u, v;
 	memcpy(p, , 8);
 
-	u = ((p[0] << 24) | (p[1] << 16) | (p[2] << 8) | p[3]);
-	v = ((p[4] << 24) | (p[5] << 16) | (p[6] << 8) | p[7]);
+	u = (((uint32_t)p[0] << 24) | (p[1] << 16) | (p[2] << 8) | p[3]);
+	v = (((uint32_t)p[4] << 24) | (p[5] << 16) | (p[6] << 8) | p[7]);
 
 	return uint64_t)u) << 32) | v);
 }



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2018-07-25 Thread Kamil Rytarowski
Module Name:src
Committed By:   kamil
Date:   Thu Jul 26 00:31:13 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: sha2.c

Log Message:
Avoid undefined behavior in netpgpverify/sha2.c

Do not change the signedness bit with a left shift operation.
Cast to unsigned integer to prevent this.

sha2.c:79:16, left shift of 154 by 24 places cannot be represented in type 'int'

Detected with micro-UBSan in the user mode.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/sha2.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2018-07-25 Thread Kamil Rytarowski
Module Name:src
Committed By:   kamil
Date:   Thu Jul 26 00:26:45 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: pgpsum.c

Log Message:
Avoid undefined behavior in netpgpverify

Do not change the signedness bit with a left shift operation.
Cast to unsigned integer to prevent this.

pgpsum.c:187:18, left shift of 130 by 24 places cannot be represented in type 
'int'

Detected with micro-UBSan in the user mode.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/pgpsum.c

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/pgpsum.c
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/pgpsum.c:1.3 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/pgpsum.c:1.4
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/pgpsum.c:1.3	Mon Apr 17 19:50:28 2017
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/pgpsum.c	Thu Jul 26 00:26:45 2018
@@ -175,7 +175,7 @@ swap16(uint16_t in)
 	u16	u;
 
 	u.i16 = in;
-	return (u.i8[0] << 8) | u.i8[1];
+	return ((uint16_t)u.i8[0] << 8) | u.i8[1];
 }
 
 static inline uint32_t
@@ -184,7 +184,7 @@ swap32(uint32_t in)
 	u32	u;
 
 	u.i32 = in;
-	return (u.i8[0] << 24) | (u.i8[1] << 16) | (u.i8[2] << 8) | u.i8[3];
+	return ((uint32_t)u.i8[0] << 24) | (u.i8[1] << 16) | (u.i8[2] << 8) | u.i8[3];
 }
 
 static inline int



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2018-07-25 Thread Kamil Rytarowski
Module Name:src
Committed By:   kamil
Date:   Thu Jul 26 00:26:45 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: pgpsum.c

Log Message:
Avoid undefined behavior in netpgpverify

Do not change the signedness bit with a left shift operation.
Cast to unsigned integer to prevent this.

pgpsum.c:187:18, left shift of 130 by 24 places cannot be represented in type 
'int'

Detected with micro-UBSan in the user mode.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/pgpsum.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-05-10 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Thu May 10 15:00:36 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Add descriptions for
netpgp_match_keys()
netpgp_match_keys_json()
netpgp_match_pubkeys()
netpgp_validate_sigs()
netpgp_format_json()


To generate a diff of this commit:
cvs rdiff -u -r1.26 -r1.27 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.26 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.27
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.26	Wed May  9 23:34:25 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Thu May 10 15:00:36 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.26 2018/05/09 23:34:25 sevan Exp $
+.\" $NetBSD: libnetpgp.3,v 1.27 2018/05/10 15:00:36 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -233,6 +233,17 @@ function is used.
 To list all the keys in a keyring as a JSON encoded string, the
 .Fn netpgp_list_keys_json
 function is used.
+To find and list keys in a keyring, the
+.Fn netpgp_match_keys
+function is used.
+To find and list keys in a keyring, output as a JSON encoded string,
+the
+.Fn netpgp_match_keys_json
+function is used.
+To find and list keys in a better suited machine-readble format, such as for
+redirection to other parsing engines, the
+.Fn netpgp_match_pubkeys
+function is used.
 The signature subkey fields can also be displayed
 using this function.
 .Pp
@@ -246,6 +257,14 @@ If the subdirectory argument is provided
 is appended to the home directory in order to search for
 the keyrings.
 .Pp
+To print key information from a JSON encoded string, stored in a file, the
+.Fn netpgp_format_json
+function is used.
+.Pp
+To validate the signature of keys in a public key keyring, the
+.Fn netpgp_validate_sigs
+function is used.
+.Pp
 To export a key, the
 .Fn netpgp_export_key
 function is used.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-05-10 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Thu May 10 15:00:36 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Add descriptions for
netpgp_match_keys()
netpgp_match_keys_json()
netpgp_match_pubkeys()
netpgp_validate_sigs()
netpgp_format_json()


To generate a diff of this commit:
cvs rdiff -u -r1.26 -r1.27 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-05-09 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Wed May  9 23:34:25 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Add a description of netpgp_unsetvar and netpgp_list_keys_json.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.25 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.26
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.25	Wed May  9 07:59:38 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Wed May  9 23:34:25 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.25 2018/05/09 07:59:38 wiz Exp $
+.\" $NetBSD: libnetpgp.3,v 1.26 2018/05/09 23:34:25 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd May 9, 2018
+.Dd May 10, 2018
 .Dt LIBNETPGP 3
 .Os
 .Sh NAME
@@ -204,6 +204,8 @@ member of the
 structure.
 These are set using the
 .Fn netpgp_setvar
+function and unset using the
+.Fn netpgp_unsetvar
 function.
 If no public key ring file is set, initial values will be taken from those
 in the
@@ -228,6 +230,9 @@ function returns 1 on success, 0 on fail
 To list all the keys in a keyring, the
 .Fn netpgp_list_keys
 function is used.
+To list all the keys in a keyring as a JSON encoded string, the
+.Fn netpgp_list_keys_json
+function is used.
 The signature subkey fields can also be displayed
 using this function.
 .Pp



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-05-09 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Wed May  9 23:34:25 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Add a description of netpgp_unsetvar and netpgp_list_keys_json.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-05-09 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Wed May  9 07:59:38 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Fix typo, add 'and' in list.


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.24 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.25
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.24	Wed May  9 00:24:50 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Wed May  9 07:59:38 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.24 2018/05/09 00:24:50 sevan Exp $
+.\" $NetBSD: libnetpgp.3,v 1.25 2018/05/09 07:59:38 wiz Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -342,8 +342,8 @@ At the present time, two types are defin
 .Dq version
 and
 .Dq maintainer .
-The mantainer information returned contains the name, email address, PGP short
-key id.
+The maintainer information returned contains the name, email address,
+and PGP short key id.
 A failure to present a known
 .Ar type
 argument to



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-05-09 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Wed May  9 07:59:38 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Fix typo, add 'and' in list.


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-05-08 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Wed May  9 00:24:50 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Add the type of information returned about maintainer.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-05-08 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Wed May  9 00:24:50 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Add the type of information returned about maintainer.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.23 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.24
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.23	Sun Apr 29 14:21:16 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Wed May  9 00:24:50 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.23 2018/04/29 14:21:16 sevan Exp $
+.\" $NetBSD: libnetpgp.3,v 1.24 2018/05/09 00:24:50 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd April 29, 2018
+.Dd May 9, 2018
 .Dt LIBNETPGP 3
 .Os
 .Sh NAME
@@ -342,6 +342,8 @@ At the present time, two types are defin
 .Dq version
 and
 .Dq maintainer .
+The mantainer information returned contains the name, email address, PGP short
+key id.
 A failure to present a known
 .Ar type
 argument to



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-29 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Sun Apr 29 14:21:16 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Add the following functions to the list (TODO - add descriptions)
netpgp_unsetvar
netpgp_list_keys_json
netpgp_match_keys
netpgp_match_keys_json
netpgp_match_pubkeys
netpgp_validate_sigs
netpgp_format_json

Remove netpgp_match_list_keys() as function does not exist

Add missing output file to netpgp_verify_file() argument list

Sprinkle const to arguments


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-29 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Sun Apr 29 14:21:16 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Add the following functions to the list (TODO - add descriptions)
netpgp_unsetvar
netpgp_list_keys_json
netpgp_match_keys
netpgp_match_keys_json
netpgp_match_pubkeys
netpgp_validate_sigs
netpgp_format_json

Remove netpgp_match_list_keys() as function does not exist

Add missing output file to netpgp_verify_file() argument list

Sprinkle const to arguments


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.22 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.23
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.22	Mon Apr 16 08:17:18 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Sun Apr 29 14:21:16 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.22 2018/04/16 08:17:18 wiz Exp $
+.\" $NetBSD: libnetpgp.3,v 1.23 2018/04/29 14:21:16 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd April 15, 2018
+.Dd April 29, 2018
 .Dt LIBNETPGP 3
 .Os
 .Sh NAME
@@ -79,6 +79,10 @@ The following functions are for variable
 .Fo netpgp_incvar
 .Fa "netpgp_t *netpgp" "const char *name" "const int delta"
 .Fc
+.Ft int
+.Fo netpgp_unsetvar
+.Fa "netpgp_t *netpgp" "const char *name"
+.Fc
 .Pp
 The following function sets the home directory:
 .Ft int
@@ -92,8 +96,20 @@ The following functions are used for key
 .Fa "netpgp_t *netpgp" "const int printsigs"
 .Fc
 .Ft int
-.Fo netpgp_match_list_keys
-.Fa "netpgp_t *netpgp" "char *pattern"
+.Fo netpgp_list_keys_json
+.Fa "netpgp_t *netpgp" "char **json" "const int psigs"
+.Fc
+.Ft int
+.Fo netpgp_match_keys
+.Fa "netpgp_t *netpgp" "char *name" "const char *fmt" "void *vp" "const int psigs"
+.Fc
+.Ft int
+.Fo netpgp_match_keys_json
+.Fa "netpgp_t *netpgp" "char **json" "char *name" "const char *fmt" "const int psigs"
+.Fc
+.Ft int
+.Fo netpgp_match_pubkeys
+.Fa "netpgp_t *netpgp" "char *name" "void *vp"
 .Fc
 .Ft int
 .Fo netpgp_find_key
@@ -101,7 +117,7 @@ The following functions are used for key
 .Fc
 .Ft char *
 .Fo netpgp_get_key
-.Fa "netpgp_t *netpgp" "const char *id"
+.Fa "netpgp_t *netpgp" "const char *name" "const char *fmt"
 .Fc
 .Ft int
 .Fo netpgp_export_key
@@ -115,31 +131,39 @@ The following functions are used for key
 .Fo netpgp_generate_key
 .Fa "netpgp_t *netpgp" "char *userid" "int numbits"
 .Fc
+.Ft int
+.Fo netpgp_validate_sigs
+.Fa "netpgp_t *netpgp"
+.Fc
+.Ft int
+.Fo netpgp_format_json
+.Fa "void *vp" "const char *json" "const int psigs"
+.Fc
 .Pp
 The following functions are used for file management:
 .Ft int
 .Fo netpgp_encrypt_file
-.Fa "netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
+.Fa "netpgp_t *netpgp" "const char *userid" "const char *filename" "char *out"
 .Fa "int armored"
 .Fc
 .Ft int
 .Fo netpgp_decrypt_file
-.Fa "netpgp_t *netpgp" "char *filename" "char *out" "int armored"
+.Fa "netpgp_t *netpgp" "const char *filename" "char *out" "int armored"
 .Fc
 .Ft int
 .Fo netpgp_sign_file
-.Fa "netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
+.Fa "netpgp_t *netpgp" "const char *userid" "const char *filename" "char *out"
 .Fa "int armored" "int cleartext" "int detached"
 .Fc
 .Ft int
 .Fo netpgp_verify_file
-.Fa "netpgp_t *netpgp" "char *f" "int armored"
+.Fa "netpgp_t *netpgp" "const char *in" "const char *out" "int armored"
 .Fc
 .Pp
 The following functions are used for memory signing and encryption:
 .Ft int
 .Fo netpgp_encrypt_memory
-.Fa "netpgp_t *netpgp" "char *userid" "void *in" "const size_t insize"
+.Fa "netpgp_t *netpgp" "const char *userid" "void *in" "const size_t insize"
 .Fa "char *out" "size_t outsize" "int armored"
 .Fc
 .Ft int
@@ -206,13 +230,6 @@ To list all the keys in a keyring, the
 function is used.
 The signature subkey fields can also be displayed
 using this function.
-The
-.Fn netpgp_match_list_keys
-function is used to match (via regular expression)
-a subset of the keys in the keyring.
-If the expression to match is NULL,
-the search will degenerate into a
-listing of all keys in the keyring.
 .Pp
 The home directory is specified as an internal variable,
 and its existence is checked using the



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-16 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Mon Apr 16 08:17:18 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Remove trailing whitespace.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-16 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Mon Apr 16 08:17:18 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Remove trailing whitespace.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.21 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.22
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.21	Sun Apr 15 23:00:36 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Mon Apr 16 08:17:18 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.21 2018/04/15 23:00:36 sevan Exp $
+.\" $NetBSD: libnetpgp.3,v 1.22 2018/04/16 08:17:18 wiz Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -173,7 +173,7 @@ Normal operation sees the
 process be initialised using the
 .Fn netpgp_init
 function, which will set up the public and private keyrings, as well as set the
-user identity in the 
+user identity in the
 .Ar userid
 member of the
 .Dv netpgp_t



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-15 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Sun Apr 15 23:00:36 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Break down explanation of netpgp_init to make it easier to extend.
Document how the userid is obtained.


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.20 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.21
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.20	Wed Apr  4 21:39:35 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Sun Apr 15 23:00:36 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.20 2018/04/04 21:39:35 sevan Exp $
+.\" $NetBSD: libnetpgp.3,v 1.21 2018/04/15 23:00:36 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd April 3, 2018
+.Dd April 15, 2018
 .Dt LIBNETPGP 3
 .Os
 .Sh NAME
@@ -172,12 +172,13 @@ Normal operation sees the
 .Nm
 process be initialised using the
 .Fn netpgp_init
-function, which will set up the public and private keyrings, and set the
-user identity to the
+function, which will set up the public and private keyrings, as well as set the
+user identity in the 
 .Ar userid
-argument passed stored in the
+member of the
 .Dv netpgp_t
-structure, and set using the
+structure.
+These are set using the
 .Fn netpgp_setvar
 function.
 If no public key ring file is set, initial values will be taken from those
@@ -189,6 +190,13 @@ initial values will be taken from those
 in the
 .Pa .gnupg/secring.gpg
 file in the user's home directory.
+The user identity is obtained from the
+.Ev userid
+environment variable, or failing that, the value of the
+.Dq default-key
+setting from
+.Pa .gnupg/gpg.conf
+file in the user's home directory is used.
 The
 .Fn netpgp_init
 function returns 1 on success, 0 on failure.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-15 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Sun Apr 15 23:00:36 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Break down explanation of netpgp_init to make it easier to extend.
Document how the userid is obtained.


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-04-04 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Wed Apr  4 21:39:35 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3
src/crypto/external/bsd/netpgp/dist/src/libbn: libnetpgpbn.3
src/crypto/external/bsd/netpgp/dist/src/libmj: libmj.3
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: netpgpverify.1

Log Message:
Drop superfluous zero prefix for single digit number days.

heads up by wiz


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3
cvs rdiff -u -r1.5 -r1.6 \
src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3
cvs rdiff -u -r1.8 -r1.9 \
src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3
cvs rdiff -u -r1.12 -r1.13 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-04-04 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Wed Apr  4 21:39:35 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3
src/crypto/external/bsd/netpgp/dist/src/libbn: libnetpgpbn.3
src/crypto/external/bsd/netpgp/dist/src/libmj: libmj.3
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: netpgpverify.1

Log Message:
Drop superfluous zero prefix for single digit number days.

heads up by wiz


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3
cvs rdiff -u -r1.5 -r1.6 \
src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3
cvs rdiff -u -r1.8 -r1.9 \
src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3
cvs rdiff -u -r1.12 -r1.13 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.19 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.20
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.19	Tue Apr  3 21:57:14 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Wed Apr  4 21:39:35 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.19 2018/04/03 21:57:14 sevan Exp $
+.\" $NetBSD: libnetpgp.3,v 1.20 2018/04/04 21:39:35 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd April 03, 2018
+.Dd April 3, 2018
 .Dt LIBNETPGP 3
 .Os
 .Sh NAME

Index: src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3
diff -u src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3:1.5 src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3:1.6
--- src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3:1.5	Tue Apr  3 21:57:14 2018
+++ src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3	Wed Apr  4 21:39:35 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgpbn.3,v 1.5 2018/04/03 21:57:14 sevan Exp $
+.\" $NetBSD: libnetpgpbn.3,v 1.6 2018/04/04 21:39:35 sevan Exp $
 .\"
 .\" Copyright (c) 2010 Alistair Crooks 
 .\" All rights reserved.
@@ -23,7 +23,7 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd April 03, 2018
+.Dd April 3, 2018
 .Dt LIBNETPGPBN 3
 .Os
 .Sh NAME

Index: src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3
diff -u src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3:1.8 src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3:1.9
--- src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3:1.8	Tue Apr  3 21:57:14 2018
+++ src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3	Wed Apr  4 21:39:35 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libmj.3,v 1.8 2018/04/03 21:57:14 sevan Exp $
+.\" $NetBSD: libmj.3,v 1.9 2018/04/04 21:39:35 sevan Exp $
 .\"
 .\" Copyright (c) 2010 Alistair Crooks 
 .\" All rights reserved.
@@ -23,7 +23,7 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd April 03, 2018
+.Dd April 3, 2018
 .Dt LIBMJ 3
 .Os
 .Sh NAME

Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.12 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.13
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.12	Tue Apr  3 21:57:14 2018
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1	Wed Apr  4 21:39:35 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: netpgpverify.1,v 1.12 2018/04/03 21:57:14 sevan Exp $
+.\" $NetBSD: netpgpverify.1,v 1.13 2018/04/04 21:39:35 sevan Exp $
 .\"
 .\" Copyright (c) 2013,2014,2015 Alistair Crooks 
 .\" All rights reserved.
@@ -23,7 +23,7 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd April 03, 2018
+.Dd April 3, 2018
 .Dt NETPGPVERIFY 1
 .Os
 .Sh NAME



Re: CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-04-03 Thread Christos Zoulas
In article <20180403220010.ga5...@britannica.bec.de>,
Joerg Sonnenberger   wrote:
>On Tue, Apr 03, 2018 at 09:57:15PM +, Sevan Janiyan wrote:
>> Module Name: src
>> Committed By:sevan
>> Date:Tue Apr  3 21:57:15 UTC 2018
>> 
>> Modified Files:
>>  src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3
>>  src/crypto/external/bsd/netpgp/dist/src/libbn: libnetpgpbn.3
>>  src/crypto/external/bsd/netpgp/dist/src/libmj: libmj.3
>>  src/crypto/external/bsd/netpgp/dist/src/netpgpverify: netpgpverify.1
>> 
>> Log Message:
>> Some further changes from PR bin/48395.
>
>This is not a very useful commit message...

I was typing the same thing :-)

christos



Re: CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-04-03 Thread Joerg Sonnenberger
On Tue, Apr 03, 2018 at 09:57:15PM +, Sevan Janiyan wrote:
> Module Name:  src
> Committed By: sevan
> Date: Tue Apr  3 21:57:15 UTC 2018
> 
> Modified Files:
>   src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3
>   src/crypto/external/bsd/netpgp/dist/src/libbn: libnetpgpbn.3
>   src/crypto/external/bsd/netpgp/dist/src/libmj: libmj.3
>   src/crypto/external/bsd/netpgp/dist/src/netpgpverify: netpgpverify.1
> 
> Log Message:
> Some further changes from PR bin/48395.

This is not a very useful commit message...

Joerg


CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-04-03 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Tue Apr  3 21:57:15 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3
src/crypto/external/bsd/netpgp/dist/src/libbn: libnetpgpbn.3
src/crypto/external/bsd/netpgp/dist/src/libmj: libmj.3
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: netpgpverify.1

Log Message:
Some further changes from PR bin/48395.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3
cvs rdiff -u -r1.4 -r1.5 \
src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3
cvs rdiff -u -r1.7 -r1.8 \
src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3
cvs rdiff -u -r1.11 -r1.12 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.18 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.19
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.18	Mon Apr  2 10:30:06 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Tue Apr  3 21:57:14 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.18 2018/04/02 10:30:06 sevan Exp $
+.\" $NetBSD: libnetpgp.3,v 1.19 2018/04/03 21:57:14 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd February 16, 2014
+.Dd April 03, 2018
 .Dt LIBNETPGP 3
 .Os
 .Sh NAME
@@ -223,13 +223,13 @@ Output is sent to the standard output.
 .Pp
 To import a key onto the public keyring, the
 .Fn netpgp_import_key
-is used.
+function is used.
 The name of the file containing the key to be imported is provided
 as the filename argument.
 .Pp
 To generate a key, the
 .Fn netpgp_generate_key
-is used.
+function is used.
 It takes an argument of the number of bits to use in the key.
 At the time that this manual page was created (April 2009),
 the recommendations are that the bare minimum key size

Index: src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3
diff -u src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3:1.4 src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3:1.5
--- src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3:1.4	Mon Feb 17 07:23:18 2014
+++ src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3	Tue Apr  3 21:57:14 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgpbn.3,v 1.4 2014/02/17 07:23:18 agc Exp $
+.\" $NetBSD: libnetpgpbn.3,v 1.5 2018/04/03 21:57:14 sevan Exp $
 .\"
 .\" Copyright (c) 2010 Alistair Crooks 
 .\" All rights reserved.
@@ -23,7 +23,7 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd February 16, 2014
+.Dd April 03, 2018
 .Dt LIBNETPGPBN 3
 .Os
 .Sh NAME
@@ -257,7 +257,7 @@ in the
 buffer called
 .Va buf
 where
-.Dq USERNAME
+.Dq USER
 is the name of the user taken from the runtime environment.
 The encoded text will be in an allocated buffer called
 .Va s .

Index: src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3
diff -u src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3:1.7 src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3:1.8
--- src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3:1.7	Mon Feb 17 07:23:18 2014
+++ src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3	Tue Apr  3 21:57:14 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libmj.3,v 1.7 2014/02/17 07:23:18 agc Exp $
+.\" $NetBSD: libmj.3,v 1.8 2018/04/03 21:57:14 sevan Exp $
 .\"
 .\" Copyright (c) 2010 Alistair Crooks 
 .\" All rights reserved.
@@ -23,7 +23,7 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd February 16, 2014
+.Dd April 03, 2018
 .Dt LIBMJ 3
 .Os
 .Sh NAME
@@ -227,10 +227,10 @@ in the
 buffer called
 .Va buf
 where
-.Dq USERNAME
+.Dq USER
 is the name of the user taken from the runtime environment.
 The encoded text will be in an allocated buffer called
-.Va s
+.Va s .
 .Bd -literal -offset indent
 mj_t atom;
 char buf[BUFSIZ];

Index: src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.11 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.12
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.11	Mon Apr 17 19:50:28 2017
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1	Tue Apr  3 21:57:14 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: netpgpverify.1,v 1.11 2017/04/17 19:50:28 agc Exp $
+.\" 

CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-04-03 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Tue Apr  3 21:57:15 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3
src/crypto/external/bsd/netpgp/dist/src/libbn: libnetpgpbn.3
src/crypto/external/bsd/netpgp/dist/src/libmj: libmj.3
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: netpgpverify.1

Log Message:
Some further changes from PR bin/48395.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3
cvs rdiff -u -r1.4 -r1.5 \
src/crypto/external/bsd/netpgp/dist/src/libbn/libnetpgpbn.3
cvs rdiff -u -r1.7 -r1.8 \
src/crypto/external/bsd/netpgp/dist/src/libmj/libmj.3
cvs rdiff -u -r1.11 -r1.12 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-02 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Mon Apr  2 10:30:07 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Revert previous change as the typedef should now work as intended.
Thanks christos, martin


To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.17 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.18
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.17	Sun Apr  1 23:25:27 2018
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Mon Apr  2 10:30:06 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.17 2018/04/01 23:25:27 sevan Exp $
+.\" $NetBSD: libnetpgp.3,v 1.18 2018/04/02 10:30:06 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd April 02, 2018
+.Dd February 16, 2014
 .Dt LIBNETPGP 3
 .Os
 .Sh NAME
@@ -41,11 +41,11 @@
 The following functions relate to initialisations and finalisations:
 .Ft int
 .Fo netpgp_init
-.Fa "struct netpgp_t *netpgp"
+.Fa "netpgp_t *netpgp"
 .Fc
 .Ft int
 .Fo netpgp_end
-.Fa "struct netpgp_t *netpgp"
+.Fa "netpgp_t *netpgp"
 .Fc
 .Pp
 The following functions are for debugging, reflection and information:
@@ -63,99 +63,99 @@ The following functions are for debuggin
 .Fc
 .Ft int
 .Fo netpgp_list_packets
-.Fa "struct netpgp_t *netpgp" "char *filename" "int armour" "char *pubringname"
+.Fa "netpgp_t *netpgp" "char *filename" "int armour" "char *pubringname"
 .Fc
 .Pp
 The following functions are for variable management:
 .Ft int
 .Fo netpgp_setvar
-.Fa "struct netpgp_t *netpgp" "const char *name" "const char *value"
+.Fa "netpgp_t *netpgp" "const char *name" "const char *value"
 .Fc
 .Ft char *
 .Fo netpgp_getvar
-.Fa "struct netpgp_t *netpgp" "const char *name"
+.Fa "netpgp_t *netpgp" "const char *name"
 .Fc
 .Ft int
 .Fo netpgp_incvar
-.Fa "struct netpgp_t *netpgp" "const char *name" "const int delta"
+.Fa "netpgp_t *netpgp" "const char *name" "const int delta"
 .Fc
 .Pp
 The following function sets the home directory:
 .Ft int
 .Fo netpgp_set_homedir
-.Fa "struct netpgp_t *netpgp" "char *homedir" "char *subdir" "const int quiet"
+.Fa "netpgp_t *netpgp" "char *homedir" "char *subdir" "const int quiet"
 .Fc
 .Pp
 The following functions are used for key management:
 .Ft int
 .Fo netpgp_list_keys
-.Fa "struct netpgp_t *netpgp" "const int printsigs"
+.Fa "netpgp_t *netpgp" "const int printsigs"
 .Fc
 .Ft int
 .Fo netpgp_match_list_keys
-.Fa "struct netpgp_t *netpgp" "char *pattern"
+.Fa "netpgp_t *netpgp" "char *pattern"
 .Fc
 .Ft int
 .Fo netpgp_find_key
-.Fa "struct netpgp_t *netpgp" "char *userid"
+.Fa "netpgp_t *netpgp" "char *userid"
 .Fc
 .Ft char *
 .Fo netpgp_get_key
-.Fa "struct netpgp_t *netpgp" "const char *id"
+.Fa "netpgp_t *netpgp" "const char *id"
 .Fc
 .Ft int
 .Fo netpgp_export_key
-.Fa "struct netpgp_t *netpgp" "char *userid"
+.Fa "netpgp_t *netpgp" "char *userid"
 .Fc
 .Ft int
 .Fo netpgp_import_key
-.Fa "struct netpgp_t *netpgp" "char *file"
+.Fa "netpgp_t *netpgp" "char *file"
 .Fc
 .Ft int
 .Fo netpgp_generate_key
-.Fa "struct netpgp_t *netpgp" "char *userid" "int numbits"
+.Fa "netpgp_t *netpgp" "char *userid" "int numbits"
 .Fc
 .Pp
 The following functions are used for file management:
 .Ft int
 .Fo netpgp_encrypt_file
-.Fa "struct netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
+.Fa "netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
 .Fa "int armored"
 .Fc
 .Ft int
 .Fo netpgp_decrypt_file
-.Fa "struct netpgp_t *netpgp" "char *filename" "char *out" "int armored"
+.Fa "netpgp_t *netpgp" "char *filename" "char *out" "int armored"
 .Fc
 .Ft int
 .Fo netpgp_sign_file
-.Fa "struct netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
+.Fa "netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
 .Fa "int armored" "int cleartext" "int detached"
 .Fc
 .Ft int
 .Fo netpgp_verify_file
-.Fa "struct netpgp_t *netpgp" "char *f" "int armored"
+.Fa "netpgp_t *netpgp" "char *f" "int armored"
 .Fc
 .Pp
 The following functions are used for memory signing and encryption:
 .Ft int
 .Fo netpgp_encrypt_memory
-.Fa "struct netpgp_t *netpgp" "char *userid" "void *in" "const size_t insize"
+.Fa "netpgp_t *netpgp" "char *userid" "void *in" "const size_t insize"
 .Fa "char *out" "size_t outsize" "int armored"
 .Fc
 .Ft int
 .Fo netpgp_decrypt_memory
-.Fa "struct netpgp_t *netpgp" "const void *input" "const size_t insize"
+.Fa "netpgp_t *netpgp" "const void *input" "const size_t insize"
 .Fa "char *out" "size_t outsize" 

CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-02 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Mon Apr  2 10:30:07 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
Revert previous change as the typedef should now work as intended.
Thanks christos, martin


To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Re: CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-01 Thread Christos Zoulas
In article <20180401232528.1e523f...@cvs.netbsd.org>,
Sevan Janiyan  wrote:
>-=-=-=-=-=-
>
>Module Name:   src
>Committed By:  sevan
>Date:  Sun Apr  1 23:25:28 UTC 2018
>
>Modified Files:
>   src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3
>
>Log Message:
>netpgp_t is a structure

Yes, it is a struct tag, but also a type as the _t indicates. So the man
page was correct before (and it is correct now, but this was not the
intention of the typedef). It should be backed out...

christos



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-01 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Sun Apr  1 23:25:28 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
netpgp_t is a structure


To generate a diff of this commit:
cvs rdiff -u -r1.16 -r1.17 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

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/lib/libnetpgp.3
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.16 src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.17
--- src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3:1.16	Mon Feb 17 07:23:18 2014
+++ src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3	Sun Apr  1 23:25:27 2018
@@ -1,4 +1,4 @@
-.\" $NetBSD: libnetpgp.3,v 1.16 2014/02/17 07:23:18 agc Exp $
+.\" $NetBSD: libnetpgp.3,v 1.17 2018/04/01 23:25:27 sevan Exp $
 .\"
 .\" Copyright (c) 2009,2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd February 16, 2014
+.Dd April 02, 2018
 .Dt LIBNETPGP 3
 .Os
 .Sh NAME
@@ -41,11 +41,11 @@
 The following functions relate to initialisations and finalisations:
 .Ft int
 .Fo netpgp_init
-.Fa "netpgp_t *netpgp"
+.Fa "struct netpgp_t *netpgp"
 .Fc
 .Ft int
 .Fo netpgp_end
-.Fa "netpgp_t *netpgp"
+.Fa "struct netpgp_t *netpgp"
 .Fc
 .Pp
 The following functions are for debugging, reflection and information:
@@ -63,99 +63,99 @@ The following functions are for debuggin
 .Fc
 .Ft int
 .Fo netpgp_list_packets
-.Fa "netpgp_t *netpgp" "char *filename" "int armour" "char *pubringname"
+.Fa "struct netpgp_t *netpgp" "char *filename" "int armour" "char *pubringname"
 .Fc
 .Pp
 The following functions are for variable management:
 .Ft int
 .Fo netpgp_setvar
-.Fa "netpgp_t *netpgp" "const char *name" "const char *value"
+.Fa "struct netpgp_t *netpgp" "const char *name" "const char *value"
 .Fc
 .Ft char *
 .Fo netpgp_getvar
-.Fa "netpgp_t *netpgp" "const char *name"
+.Fa "struct netpgp_t *netpgp" "const char *name"
 .Fc
 .Ft int
 .Fo netpgp_incvar
-.Fa "netpgp_t *netpgp" "const char *name" "const int delta"
+.Fa "struct netpgp_t *netpgp" "const char *name" "const int delta"
 .Fc
 .Pp
 The following function sets the home directory:
 .Ft int
 .Fo netpgp_set_homedir
-.Fa "netpgp_t *netpgp" "char *homedir" "char *subdir" "const int quiet"
+.Fa "struct netpgp_t *netpgp" "char *homedir" "char *subdir" "const int quiet"
 .Fc
 .Pp
 The following functions are used for key management:
 .Ft int
 .Fo netpgp_list_keys
-.Fa "netpgp_t *netpgp" "const int printsigs"
+.Fa "struct netpgp_t *netpgp" "const int printsigs"
 .Fc
 .Ft int
 .Fo netpgp_match_list_keys
-.Fa "netpgp_t *netpgp" "char *pattern"
+.Fa "struct netpgp_t *netpgp" "char *pattern"
 .Fc
 .Ft int
 .Fo netpgp_find_key
-.Fa "netpgp_t *netpgp" "char *userid"
+.Fa "struct netpgp_t *netpgp" "char *userid"
 .Fc
 .Ft char *
 .Fo netpgp_get_key
-.Fa "netpgp_t *netpgp" "const char *id"
+.Fa "struct netpgp_t *netpgp" "const char *id"
 .Fc
 .Ft int
 .Fo netpgp_export_key
-.Fa "netpgp_t *netpgp" "char *userid"
+.Fa "struct netpgp_t *netpgp" "char *userid"
 .Fc
 .Ft int
 .Fo netpgp_import_key
-.Fa "netpgp_t *netpgp" "char *file"
+.Fa "struct netpgp_t *netpgp" "char *file"
 .Fc
 .Ft int
 .Fo netpgp_generate_key
-.Fa "netpgp_t *netpgp" "char *userid" "int numbits"
+.Fa "struct netpgp_t *netpgp" "char *userid" "int numbits"
 .Fc
 .Pp
 The following functions are used for file management:
 .Ft int
 .Fo netpgp_encrypt_file
-.Fa "netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
+.Fa "struct netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
 .Fa "int armored"
 .Fc
 .Ft int
 .Fo netpgp_decrypt_file
-.Fa "netpgp_t *netpgp" "char *filename" "char *out" "int armored"
+.Fa "struct netpgp_t *netpgp" "char *filename" "char *out" "int armored"
 .Fc
 .Ft int
 .Fo netpgp_sign_file
-.Fa "netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
+.Fa "struct netpgp_t *netpgp" "char *userid" "char *filename" "char *out"
 .Fa "int armored" "int cleartext" "int detached"
 .Fc
 .Ft int
 .Fo netpgp_verify_file
-.Fa "netpgp_t *netpgp" "char *f" "int armored"
+.Fa "struct netpgp_t *netpgp" "char *f" "int armored"
 .Fc
 .Pp
 The following functions are used for memory signing and encryption:
 .Ft int
 .Fo netpgp_encrypt_memory
-.Fa "netpgp_t *netpgp" "char *userid" "void *in" "const size_t insize"
+.Fa "struct netpgp_t *netpgp" "char *userid" "void *in" "const size_t insize"
 .Fa "char *out" "size_t outsize" "int armored"
 .Fc
 .Ft int
 .Fo netpgp_decrypt_memory
-.Fa "netpgp_t *netpgp" "const void *input" "const size_t insize"
+.Fa "struct netpgp_t *netpgp" "const void *input" "const size_t insize"
 .Fa "char *out" "size_t outsize" "const int armored"
 .Fc
 .Ft int
 .Fo netpgp_sign_memory
-.Fa 

CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2018-04-01 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Sun Apr  1 23:25:28 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: libnetpgp.3

Log Message:
netpgp_t is a structure


To generate a diff of this commit:
cvs rdiff -u -r1.16 -r1.17 \
src/crypto/external/bsd/netpgp/dist/src/lib/libnetpgp.3

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-02-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Mon Feb  5 23:56:01 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: openssl_crypto.c
signature.c
src/crypto/external/bsd/netpgp/dist/src/netpgp: Makefile

Log Message:
centralize the conversion functions and make this work with both
openssl-1.0 and 1.1


To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 \
src/crypto/external/bsd/netpgp/dist/src/lib/openssl_crypto.c
cvs rdiff -u -r1.37 -r1.38 \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c
cvs rdiff -u -r1.19 -r1.20 \
src/crypto/external/bsd/netpgp/dist/src/netpgp/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src

2018-02-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Mon Feb  5 23:56:01 UTC 2018

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: openssl_crypto.c
signature.c
src/crypto/external/bsd/netpgp/dist/src/netpgp: Makefile

Log Message:
centralize the conversion functions and make this work with both
openssl-1.0 and 1.1


To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 \
src/crypto/external/bsd/netpgp/dist/src/lib/openssl_crypto.c
cvs rdiff -u -r1.37 -r1.38 \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c
cvs rdiff -u -r1.19 -r1.20 \
src/crypto/external/bsd/netpgp/dist/src/netpgp/Makefile

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/lib/openssl_crypto.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/openssl_crypto.c:1.33 src/crypto/external/bsd/netpgp/dist/src/lib/openssl_crypto.c:1.34
--- src/crypto/external/bsd/netpgp/dist/src/lib/openssl_crypto.c:1.33	Sun Nov  7 03:39:59 2010
+++ src/crypto/external/bsd/netpgp/dist/src/lib/openssl_crypto.c	Mon Feb  5 18:56:01 2018
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: openssl_crypto.c,v 1.33 2010/11/07 08:39:59 agc Exp $");
+__RCSID("$NetBSD: openssl_crypto.c,v 1.34 2018/02/05 23:56:01 christos Exp $");
 #endif
 
 #ifdef HAVE_OPENSSL_DSA_H
@@ -89,18 +89,144 @@ __RCSID("$NetBSD: openssl_crypto.c,v 1.3
 #include "netpgpdigest.h"
 #include "packet.h"
 
+static void
+takeRSA(const RSA *orsa, pgp_rsa_pubkey_t *pk, pgp_rsa_seckey_t *sk)
+{
+	const BIGNUM *n, *e, *d, *q, *p;
+#if OPENSSL_VERSION_NUMBER >= 0x1010L
+	RSA_get0_key(orsa, , , );
+	RSA_get0_factors(orsa, , );
+#else
+	n = orsa->n;
+	e = orsa->e;
+	d = orsa->d;
+	p = orsa->p;
+	q = orsa->q;
+#endif
+	if (sk) {
+		sk->d = BN_dup(d);
+		sk->p = BN_dup(p);
+		sk->q = BN_dup(q);
+	}
+	if (pk) {
+		pk->n = BN_dup(n);
+		pk->e = BN_dup(e);
+	}
+}
 
-static void 
-test_seckey(const pgp_seckey_t *seckey)
+static RSA *
+makeRSA(const pgp_rsa_pubkey_t *pubkey, const pgp_rsa_seckey_t *seckey)
+{
+	BIGNUM	*n, *e, *d, *p, *q;
+	RSA *orsa;
+
+	orsa = RSA_new();
+	n = BN_dup(pubkey->n);
+	e = BN_dup(pubkey->e);
+
+	if (seckey) {
+		d = BN_dup(seckey->d);
+		p = BN_dup(seckey->p);
+		q = BN_dup(seckey->q);
+	} else {
+		d = p = q = NULL;
+	}
+
+#if OPENSSL_VERSION_NUMBER >= 0x1010L
+	RSA_set0_key(orsa, n, e, d);
+	RSA_set0_factors(orsa, p, q);
+#else
+	BN_free(orsa->n);
+	BN_free(orsa->e);
+	orsa->n = n;
+	orsa->e = e;
+	if (d) {
+		BN_free(orsa->d);
+		orsa->d = d;
+	}
+	if (p) {
+		BN_free(orsa->p);
+		orsa->p = p;
+	}
+	if (q) {
+		BN_free(orsa->q);
+		orsa->q = q;
+	}
+#endif
+	return orsa;
+}
+
+static DSA_SIG *
+makeDSA_SIG(const pgp_dsa_sig_t *sig)
+{
+	DSA_SIG*osig;
+	BIGNUM	   *r, *s;
+
+	osig = DSA_SIG_new();
+	r = BN_dup(sig->r);
+	s = BN_dup(sig->s);
+
+#if OPENSSL_VERSION_NUMBER >= 0x1010L
+	DSA_SIG_set0(osig, r, s);
+#else
+	BN_free(osig->r);
+	BN_free(osig->s);
+	osig->r = r;
+	osig->s = s;
+#endif
+
+	return osig;
+}
+
+static DSA *
+makeDSA(const pgp_dsa_pubkey_t *dsa, const pgp_dsa_seckey_t *secdsa)
 {
-	RSA*test = RSA_new();
+	DSA*odsa;
+	BIGNUM	   *p, *q, *g, *y, *x;
 
-	test->n = BN_dup(seckey->pubkey.key.rsa.n);
-	test->e = BN_dup(seckey->pubkey.key.rsa.e);
+	odsa = DSA_new();
 
-	test->d = BN_dup(seckey->key.rsa.d);
-	test->p = BN_dup(seckey->key.rsa.p);
-	test->q = BN_dup(seckey->key.rsa.q);
+	p = BN_dup(dsa->p);
+	q = BN_dup(dsa->q);
+	g = BN_dup(dsa->g);
+	y = BN_dup(dsa->y);
+	x = secdsa ? secdsa->x : NULL;
+
+#if OPENSSL_VERSION_NUMBER >= 0x1010L
+	DSA_set0_key(odsa, y, x);
+#else
+	BN_free(odsa->p);
+	BN_free(odsa->q);
+	BN_free(odsa->g);
+	BN_free(odsa->pub_key);
+	odsa->p = p;
+	odsa->q = q;
+	odsa->g = g;
+	odsa->pub_key = y;
+	if (x) {
+		BN_free(odsa->priv_key);
+		odsa->priv_key = x;
+	}
+#endif
+	return odsa;
+}
+
+static void
+takeDSA(const DSA *odsa, pgp_dsa_seckey_t *sk)
+{
+	const BIGNUM *x;
+#if OPENSSL_VERSION_NUMBER >= 0x1010L
+	DSA_get0_key(odsa, NULL, );
+#else
+	x = odsa->priv_key;
+#endif
+	sk->x = BN_dup(x);
+}
+
+static void 
+test_seckey(const pgp_seckey_t *seckey)
+{
+	RSA *test = makeRSA(>pubkey.key.rsa, >key.rsa);
 
 	if (RSA_check_key(test) != 1) {
 		(void) fprintf(stderr,
@@ -435,25 +561,15 @@ pgp_dsa_verify(const uint8_t *hash, size
 	   const pgp_dsa_pubkey_t *dsa)
 {
 	unsigned	qlen;
-	DSA_SIG*osig;
-	DSA*odsa;
+	DSA_SIG*osig = makeDSA_SIG(sig);
+	DSA	   *odsa = makeDSA(dsa, NULL);
 	int ret;
 
-	osig = DSA_SIG_new();
-	osig->r = sig->r;
-	osig->s = sig->s;
-
-	odsa = DSA_new();
-	odsa->p = dsa->p;
-	odsa->q = dsa->q;
-	odsa->g = dsa->g;
-	odsa->pub_key = dsa->y;
-
 	if (pgp_get_debug_level(__FILE__)) {
 		hexdump(stderr, "input hash", hash, 

CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-04-09 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Sun Apr  9 23:03:51 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: signature.c

Log Message:
No longer hard-code the suffix length

This will avoid a buffer overflow if the suffix changes; it is currently
hard-coded as either "asc" or "sig".

Submitted on tech-pkg@ as:
[PATCH 10/11] No longer hard-code the suffix length


To generate a diff of this commit:
cvs rdiff -u -r1.36 -r1.37 \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c

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/lib/signature.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.36 src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.37
--- src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.36	Sun Apr  9 22:48:39 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/signature.c	Sun Apr  9 23:03:50 2017
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: signature.c,v 1.36 2017/04/09 22:48:39 khorben Exp $");
+__RCSID("$NetBSD: signature.c,v 1.37 2017/04/09 23:03:50 khorben Exp $");
 #endif
 
 #include 
@@ -909,7 +909,7 @@ open_output_file(pgp_output_t **output,
 			fd = pgp_setup_file_write(output, outname, overwrite);
 		}
 	} else {
-		size_t  flen = strlen(inname) + 4 + 1;
+		size_t  flen = strlen(inname) + 1 + strlen(suffix) + 1;
 		char   *f = NULL;
 
 		if ((f = calloc(1, flen)) == NULL) {



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-04-09 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Sun Apr  9 23:03:51 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: signature.c

Log Message:
No longer hard-code the suffix length

This will avoid a buffer overflow if the suffix changes; it is currently
hard-coded as either "asc" or "sig".

Submitted on tech-pkg@ as:
[PATCH 10/11] No longer hard-code the suffix length


To generate a diff of this commit:
cvs rdiff -u -r1.36 -r1.37 \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-04-09 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Sun Apr  9 22:48:39 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: signature.c

Log Message:
Output signatures to the standard output for "-"

This is to reflect the behaviour documented in netpgp(1).

Submitted on tech-pkg@ as:
[PATCH 09/11] Output signatures to the standard output for "-"

Only modified for consistency with the coding style.


To generate a diff of this commit:
cvs rdiff -u -r1.35 -r1.36 \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c

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/lib/signature.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.35 src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.36
--- src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.35	Sun Apr  9 22:44:34 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/signature.c	Sun Apr  9 22:48:39 2017
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: signature.c,v 1.35 2017/04/09 22:44:34 khorben Exp $");
+__RCSID("$NetBSD: signature.c,v 1.36 2017/04/09 22:48:39 khorben Exp $");
 #endif
 
 #include 
@@ -903,7 +903,11 @@ open_output_file(pgp_output_t **output,
 
 	/* setup output file */
 	if (outname) {
-		fd = pgp_setup_file_write(output, outname, overwrite);
+		if (strcmp(outname, "-") == 0) {
+			fd = pgp_setup_file_write(output, NULL, overwrite);
+		} else {
+			fd = pgp_setup_file_write(output, outname, overwrite);
+		}
 	} else {
 		size_t  flen = strlen(inname) + 4 + 1;
 		char   *f = NULL;



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-04-09 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Sun Apr  9 22:48:39 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: signature.c

Log Message:
Output signatures to the standard output for "-"

This is to reflect the behaviour documented in netpgp(1).

Submitted on tech-pkg@ as:
[PATCH 09/11] Output signatures to the standard output for "-"

Only modified for consistency with the coding style.


To generate a diff of this commit:
cvs rdiff -u -r1.35 -r1.36 \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-04-09 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Sun Apr  9 22:44:34 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: signature.c

Log Message:
Avoid a type cast

No functional change intended.


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c

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/lib/signature.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.34 src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.35
--- src/crypto/external/bsd/netpgp/dist/src/lib/signature.c:1.34	Mon Mar  5 02:20:18 2012
+++ src/crypto/external/bsd/netpgp/dist/src/lib/signature.c	Sun Apr  9 22:44:34 2017
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: signature.c,v 1.34 2012/03/05 02:20:18 christos Exp $");
+__RCSID("$NetBSD: signature.c,v 1.35 2017/04/09 22:44:34 khorben Exp $");
 #endif
 
 #include 
@@ -905,7 +905,7 @@ open_output_file(pgp_output_t **output,
 	if (outname) {
 		fd = pgp_setup_file_write(output, outname, overwrite);
 	} else {
-		unsignedflen = (unsigned)(strlen(inname) + 4 + 1);
+		size_t  flen = strlen(inname) + 4 + 1;
 		char   *f = NULL;
 
 		if ((f = calloc(1, flen)) == NULL) {



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-04-09 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Sun Apr  9 22:44:34 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: signature.c

Log Message:
Avoid a type cast

No functional change intended.


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 \
src/crypto/external/bsd/netpgp/dist/src/lib/signature.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgp

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:34:32 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgp: netpgp.1

Log Message:
Also document alternate option "--detach"

Submitted on tech-pkg@ as:
[PATCH 08/11] Also document alternate option "--detach"


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 \
src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1

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/netpgp/netpgp.1
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.20 src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.21
--- src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.20	Mon Mar 27 21:30:23 2017
+++ src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1	Mon Mar 27 21:34:32 2017
@@ -1,4 +1,4 @@
-.\" $NetBSD: netpgp.1,v 1.20 2017/03/27 21:30:23 khorben Exp $
+.\" $NetBSD: netpgp.1,v 1.21 2017/03/27 21:34:32 khorben Exp $
 .\"
 .\" Copyright (c) 2009 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -216,7 +216,7 @@ access to the cipher used.
 The default cipher algorithm is the
 .Dq CAST5
 algorithm.
-.It Fl Fl detached
+.It Fl Fl detach , Fl Fl detached
 When signing a file, place the resulting signature in a separate
 file from the one being signed.
 .It Fl Fl hash-alg Ar hash-algorithm



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgp

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:34:32 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgp: netpgp.1

Log Message:
Also document alternate option "--detach"

Submitted on tech-pkg@ as:
[PATCH 08/11] Also document alternate option "--detach"


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 \
src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgp

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:30:23 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgp: netpgp.1

Log Message:
Correct option "--armor"

Submitted on tech-pkg@ as:
[PATCH 07/11] Correct option "--armor"


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 \
src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgp

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:30:23 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgp: netpgp.1

Log Message:
Correct option "--armor"

Submitted on tech-pkg@ as:
[PATCH 07/11] Correct option "--armor"


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 \
src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1

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/netpgp/netpgp.1
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.19 src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.20
--- src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.19	Mon Feb 17 07:23:18 2014
+++ src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1	Mon Mar 27 21:30:23 2017
@@ -1,4 +1,4 @@
-.\" $NetBSD: netpgp.1,v 1.19 2014/02/17 07:23:18 agc Exp $
+.\" $NetBSD: netpgp.1,v 1.20 2017/03/27 21:30:23 khorben Exp $
 .\"
 .\" Copyright (c) 2009 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -203,7 +203,7 @@ library.
 In addition to one of the preceding commands, a number of qualifiers
 or options may be given.
 .Bl -tag -width Ar
-.It Fl Fl armour , Fl armor
+.It Fl Fl armour , Fl Fl armor
 This option, however it is spelled, wraps the signature as an
 ASCII-encoded piece of text, for ease of use.
 .It Fl Fl cipher Ar ciphername



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:19:12 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
Do not ask for a passphrase when empty

Submitted on tech-pkg@ as:
[PATCH 06/11] Do not ask for a passphrase when empty

Only modified for consistency with the coding style.


To generate a diff of this commit:
cvs rdiff -u -r1.54 -r1.55 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.54 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.55
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.54	Mon Mar 27 21:06:50 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Mon Mar 27 21:19:12 2017
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.54 2017/03/27 21:06:50 khorben Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.55 2017/03/27 21:19:12 khorben Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -226,7 +226,7 @@ typedef struct {
 	pgp_seckey_t		*seckey;
 } decrypt_t;
 
-static pgp_cb_ret_t 
+static pgp_cb_ret_t
 decrypt_cb(const pgp_packet_t *pkt, pgp_cbdata_t *cbinfo)
 {
 	const pgp_contents_t	*content = >u;
@@ -294,6 +294,20 @@ decrypt_cb(const pgp_packet_t *pkt, pgp_
 	return PGP_RELEASE_MEMORY;
 }
 
+static pgp_cb_ret_t
+decrypt_cb_empty(const pgp_packet_t *pkt, pgp_cbdata_t *cbinfo)
+{
+	const pgp_contents_t	*content = >u;
+
+	switch (pkt->tag) {
+	case PGP_GET_PASSPHRASE:
+		*content->skey_passphrase.passphrase = netpgp_strdup("");
+		return PGP_KEEP_MEMORY;
+	default:
+		return decrypt_cb(pkt, cbinfo);
+	}
+}
+
 /**
 \ingroup Core_Keys
 \brief Decrypts secret key from given keydata with given passphrase
@@ -308,8 +322,18 @@ pgp_decrypt_seckey(const pgp_key_t *key,
 	const int	 printerrors = 1;
 	decrypt_t	 decrypt;
 
+	/* XXX first try with an empty passphrase */
 	(void) memset(, 0x0, sizeof(decrypt));
 	decrypt.key = key;
+	stream = pgp_new(sizeof(*stream));
+	pgp_keydata_reader_set(stream, key);
+	pgp_set_callback(stream, decrypt_cb_empty, );
+	stream->readinfo.accumulate = 1;
+	pgp_parse(stream, !printerrors);
+	if (decrypt.seckey != NULL) {
+		return decrypt.seckey;
+	}
+	/* ask for a passphrase */
 	decrypt.passfp = passfp;
 	stream = pgp_new(sizeof(*stream));
 	pgp_keydata_reader_set(stream, key);



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:19:12 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
Do not ask for a passphrase when empty

Submitted on tech-pkg@ as:
[PATCH 06/11] Do not ask for a passphrase when empty

Only modified for consistency with the coding style.


To generate a diff of this commit:
cvs rdiff -u -r1.54 -r1.55 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:06:50 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c keyring.h

Log Message:
Expect a FILE * for pgp_decrypt_seckey()

Submitted on tech-pkg@ as:
[PATCH 05/11] Expect a FILE * for pgp_decrypt_seckey()

No functional change intended.


To generate a diff of this commit:
cvs rdiff -u -r1.53 -r1.54 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c
cvs rdiff -u -r1.33 -r1.34 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:06:50 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c keyring.h

Log Message:
Expect a FILE * for pgp_decrypt_seckey()

Submitted on tech-pkg@ as:
[PATCH 05/11] Expect a FILE * for pgp_decrypt_seckey()

No functional change intended.


To generate a diff of this commit:
cvs rdiff -u -r1.53 -r1.54 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c
cvs rdiff -u -r1.33 -r1.34 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.53 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.54
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.53	Mon Mar 27 21:00:43 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Mon Mar 27 21:06:50 2017
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.53 2017/03/27 21:00:43 khorben Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.54 2017/03/27 21:06:50 khorben Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -302,7 +302,7 @@ decrypt_cb(const pgp_packet_t *pkt, pgp_
 \return secret key
 */
 pgp_seckey_t *
-pgp_decrypt_seckey(const pgp_key_t *key, void *passfp)
+pgp_decrypt_seckey(const pgp_key_t *key, FILE *passfp)
 {
 	pgp_stream_t	*stream;
 	const int	 printerrors = 1;

Index: src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h:1.33 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h:1.34
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h:1.33	Mon Mar 27 20:55:13 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h	Mon Mar 27 21:06:50 2017
@@ -53,6 +53,7 @@
 #ifndef KEYRING_H_
 #define KEYRING_H_
 
+#include 
 #include "packet.h"
 #include "packet-parse.h"
 #include "mj.h"
@@ -91,7 +92,7 @@ const pgp_pubkey_t *pgp_get_pubkey(const
 unsigned   pgp_is_key_secret(const pgp_key_t *);
 const pgp_seckey_t *pgp_get_seckey(const pgp_key_t *);
 pgp_seckey_t *pgp_get_writable_seckey(pgp_key_t *);
-pgp_seckey_t *pgp_decrypt_seckey(const pgp_key_t *, void *);
+pgp_seckey_t *pgp_decrypt_seckey(const pgp_key_t *, FILE *);
 
 unsigned   pgp_keyring_fileread(pgp_keyring_t *, const unsigned,
 	const char *);



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:00:43 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
Do not use random data for pass-phrases on EOF

Submitted on tech-pkg@ as:
[PATCH 04/11] Do not use random data for pass-phrases on EOF

Only modified for consistency with the coding style.


To generate a diff of this commit:
cvs rdiff -u -r1.52 -r1.53 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.52 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.53
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.52	Mon Mar 27 20:55:13 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Mon Mar 27 21:00:43 2017
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.52 2017/03/27 20:55:13 khorben Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.53 2017/03/27 21:00:43 khorben Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -244,7 +244,9 @@ decrypt_cb(const pgp_packet_t *pkt, pgp_
 		break;
 
 	case PGP_GET_PASSPHRASE:
-		(void) pgp_getpassphrase(decrypt->passfp, pass, sizeof(pass));
+		if (pgp_getpassphrase(decrypt->passfp, pass, sizeof(pass)) == 0) {
+			pass[0] = '\0';
+		}
 		*content->skey_passphrase.passphrase = netpgp_strdup(pass);
 		pgp_forget(pass, sizeof(pass));
 		return PGP_KEEP_MEMORY;



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 21:00:43 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
Do not use random data for pass-phrases on EOF

Submitted on tech-pkg@ as:
[PATCH 04/11] Do not use random data for pass-phrases on EOF

Only modified for consistency with the coding style.


To generate a diff of this commit:
cvs rdiff -u -r1.52 -r1.53 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 20:55:13 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c keyring.h
netpgp.c

Log Message:
Avoid some type casts

Submitted on tech-pkg@ as:
[PATCH 03/11] Avoid some type casts

No functional change intended.


To generate a diff of this commit:
cvs rdiff -u -r1.51 -r1.52 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c
cvs rdiff -u -r1.32 -r1.33 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h
cvs rdiff -u -r1.100 -r1.101 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.51 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.52
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.51	Mon Feb 20 00:51:08 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Mon Mar 27 20:55:13 2017
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.51 2017/02/20 00:51:08 khorben Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.52 2017/03/27 20:55:13 khorben Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -214,7 +214,7 @@ pgp_get_writable_seckey(pgp_key_t *data)
 
 /* utility function to zero out memory */
 void
-pgp_forget(void *vp, unsigned size)
+pgp_forget(void *vp, size_t size)
 {
 	(void) memset(vp, 0x0, size);
 }
@@ -246,7 +246,7 @@ decrypt_cb(const pgp_packet_t *pkt, pgp_
 	case PGP_GET_PASSPHRASE:
 		(void) pgp_getpassphrase(decrypt->passfp, pass, sizeof(pass));
 		*content->skey_passphrase.passphrase = netpgp_strdup(pass);
-		pgp_forget(pass, (unsigned)sizeof(pass));
+		pgp_forget(pass, sizeof(pass));
 		return PGP_KEEP_MEMORY;
 
 	case PGP_PARSER_ERRCODE:

Index: src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h:1.32 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h:1.33
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h:1.32	Sun Nov  7 08:39:59 2010
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h	Mon Mar 27 20:55:13 2017
@@ -100,7 +100,7 @@ int pgp_keyring_list(pgp_io_t *, const p
 int pgp_keyring_json(pgp_io_t *, const pgp_keyring_t *, mj_t *, const int);
 
 void pgp_set_seckey(pgp_contents_t *, const pgp_key_t *);
-void pgp_forget(void *, unsigned);
+void pgp_forget(void *, size_t);
 
 const uint8_t *pgp_get_key_id(const pgp_key_t *);
 unsigned pgp_get_userid_count(const pgp_key_t *);

Index: src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.100 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.101
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.100	Fri Feb 24 01:26:17 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Mon Mar 27 20:55:13 2017
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.100 2017/02/24 01:26:17 khorben Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.101 2017/03/27 20:55:13 khorben Exp $");
 #endif
 
 #include 
@@ -1411,7 +1411,7 @@ netpgp_sign_file(netpgp_t *netpgp,
 (unsigned)armored, (unsigned)cleartext,
 overwrite);
 	}
-	pgp_forget(seckey, (unsigned)sizeof(*seckey));
+	pgp_forget(seckey, sizeof(*seckey));
 	return ret;
 }
 
@@ -1542,7 +1542,7 @@ netpgp_sign_memory(netpgp_t *netpgp,
 	} else {
 		ret = 0;
 	}
-	pgp_forget(seckey, (unsigned)sizeof(*seckey));
+	pgp_forget(seckey, sizeof(*seckey));
 	return ret;
 }
 



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 20:55:13 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c keyring.h
netpgp.c

Log Message:
Avoid some type casts

Submitted on tech-pkg@ as:
[PATCH 03/11] Avoid some type casts

No functional change intended.


To generate a diff of this commit:
cvs rdiff -u -r1.51 -r1.52 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c
cvs rdiff -u -r1.32 -r1.33 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.h
cvs rdiff -u -r1.100 -r1.101 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 20:50:19 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: reader.c

Log Message:
Do not truncate pass-phrases without a newline character

This also fixes a crash when the pass-phrase entered is empty.

Submitted on tech-pkg@ as:
[PATCH 02/11] Do not truncate pass-phrases without a newline character

Only modified for consistency with the coding style.


To generate a diff of this commit:
cvs rdiff -u -r1.51 -r1.52 \
src/crypto/external/bsd/netpgp/dist/src/lib/reader.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-03-27 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Mar 27 20:50:19 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: reader.c

Log Message:
Do not truncate pass-phrases without a newline character

This also fixes a crash when the pass-phrase entered is empty.

Submitted on tech-pkg@ as:
[PATCH 02/11] Do not truncate pass-phrases without a newline character

Only modified for consistency with the coding style.


To generate a diff of this commit:
cvs rdiff -u -r1.51 -r1.52 \
src/crypto/external/bsd/netpgp/dist/src/lib/reader.c

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/lib/reader.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.51 src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.52
--- src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.51	Fri Feb 24 01:27:14 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/reader.c	Mon Mar 27 20:50:19 2017
@@ -54,7 +54,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: reader.c,v 1.51 2017/02/24 01:27:14 khorben Exp $");
+__RCSID("$NetBSD: reader.c,v 1.52 2017/03/27 20:50:19 khorben Exp $");
 #endif
 
 #include 
@@ -160,6 +160,7 @@ int
 pgp_getpassphrase(void *in, char *phrase, size_t size)
 {
 	char	*p;
+	size_t	 len;
 
 	if (in == NULL) {
 		while ((p = getpass("netpgp passphrase: ")) == NULL) {
@@ -169,7 +170,10 @@ pgp_getpassphrase(void *in, char *phrase
 		if (fgets(phrase, (int)size, in) == NULL) {
 			return 0;
 		}
-		phrase[strlen(phrase) - 1] = 0x0;
+		len = strlen(phrase);
+		if (len >= 1 && phrase[len - 1] == '\n') {
+			phrase[len - 1] = '\0';
+		}
 	}
 	return 1;
 }



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-02-23 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Fri Feb 24 01:27:14 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: reader.c

Log Message:
Revert "Remove a useless loop around getpass()"

getpass(3) may return NULL upon failures on Linux, and netpgp should remain
portable to other systems.


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 \
src/crypto/external/bsd/netpgp/dist/src/lib/reader.c

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/lib/reader.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.50 src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.51
--- src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.50	Mon Feb 20 01:33:28 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/reader.c	Fri Feb 24 01:27:14 2017
@@ -54,7 +54,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: reader.c,v 1.50 2017/02/20 01:33:28 khorben Exp $");
+__RCSID("$NetBSD: reader.c,v 1.51 2017/02/24 01:27:14 khorben Exp $");
 #endif
 
 #include 
@@ -162,7 +162,8 @@ pgp_getpassphrase(void *in, char *phrase
 	char	*p;
 
 	if (in == NULL) {
-		p = getpass("netpgp passphrase: ");
+		while ((p = getpass("netpgp passphrase: ")) == NULL) {
+		}
 		(void) snprintf(phrase, size, "%s", p);
 	} else {
 		if (fgets(phrase, (int)size, in) == NULL) {



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-02-23 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Fri Feb 24 01:27:14 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: reader.c

Log Message:
Revert "Remove a useless loop around getpass()"

getpass(3) may return NULL upon failures on Linux, and netpgp should remain
portable to other systems.


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 \
src/crypto/external/bsd/netpgp/dist/src/lib/reader.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src

2017-02-23 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Fri Feb 24 01:26:17 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c
src/crypto/external/bsd/netpgp/dist/src/librsa: rsastubs.c

Log Message:
Revert "Remove a useless loop around getpass()"

getpass(3) may return NULL upon failures on Linux, and netpgp should remain
portable to other systems.


To generate a diff of this commit:
cvs rdiff -u -r1.99 -r1.100 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
cvs rdiff -u -r1.3 -r1.4 \
src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c

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/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.99 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.100
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.99	Mon Feb 20 01:38:28 2017
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Fri Feb 24 01:26:17 2017
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.99 2017/02/20 01:38:28 khorben Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.100 2017/02/24 01:26:17 khorben Exp $");
 #endif
 
 #include 
@@ -740,10 +740,14 @@ find_passphrase(FILE *passfp, const char
 	}
 	for (i = 0 ; i < attempts ; i++) {
 		(void) snprintf(prompt, sizeof(prompt), "Enter passphrase for %.16s: ", id);
-		cp = getpass(prompt);
+		if ((cp = getpass(prompt)) == NULL) {
+			break;
+		}
 		cc = snprintf(buf, sizeof(buf), "%s", cp);
 		(void) snprintf(prompt, sizeof(prompt), "Repeat passphrase for %.16s: ", id);
-		cp = getpass(prompt);
+		if ((cp = getpass(prompt)) == NULL) {
+			break;
+		}
 		cc = snprintf(passphrase, size, "%s", cp);
 		if (strcmp(buf, passphrase) == 0) {
 			(void) memset(buf, 0x0, sizeof(buf));

Index: src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c
diff -u src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c:1.3 src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c:1.4
--- src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c:1.3	Mon Feb 20 01:38:28 2017
+++ src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c	Fri Feb 24 01:26:17 2017
@@ -43,7 +43,9 @@ pass_cb(char *buf, int size, int rwflag,
 
 	USE_ARG(rwflag);
 	snprintf(prompt, sizeof(prompt), "\"%s\" passphrase: ", (char *)u);
-	passphrase = getpass(prompt);
+	if ((passphrase = getpass(prompt)) == NULL) {
+		return -1;
+	}
 	(void) memcpy(buf, passphrase, (size_t)size);
 	return (int)strlen(passphrase);
 }



CVS commit: src/crypto/external/bsd/netpgp/dist/src

2017-02-23 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Fri Feb 24 01:26:17 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c
src/crypto/external/bsd/netpgp/dist/src/librsa: rsastubs.c

Log Message:
Revert "Remove a useless loop around getpass()"

getpass(3) may return NULL upon failures on Linux, and netpgp should remain
portable to other systems.


To generate a diff of this commit:
cvs rdiff -u -r1.99 -r1.100 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
cvs rdiff -u -r1.3 -r1.4 \
src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Re: CVS commit: src/crypto/external/bsd/netpgp/dist/src

2017-02-19 Thread Alistair Crooks
Thanks, but I'd really like it if netpgp would work the same on all pkgsrc
platforms:

The linux man page for getpass(3) (https://linux.die.net/man/3/getpass)
says:

The function *getpass*() returns a pointer to a static buffer containing
(the first *PASS_MAX* bytes of) the password without the trailing newline,
terminated by a null byte ('\0'). This buffer may be overwritten by a
following call. On error, the terminal state is restored, *errno* is set
appropriately, and NULL is returned.


On 19 February 2017 at 17:38, Pierre Pronchery  wrote:

> Module Name:src
> Committed By:   khorben
> Date:   Mon Feb 20 01:38:28 UTC 2017
>
> Modified Files:
> src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c
> src/crypto/external/bsd/netpgp/dist/src/librsa: rsastubs.c
>
> Log Message:
> Remove a useless loop around getpass()
>
> According to getpass(3), this library function cannot return NULL.
> Verified with a source code inspection.
>
>
> To generate a diff of this commit:
> cvs rdiff -u -r1.98 -r1.99 \
> src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
> cvs rdiff -u -r1.2 -r1.3 \
> src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c
>
> Please note that diffs are not public domain; they are subject to the
> copyright notices on the relevant files.
>
>


CVS commit: src/crypto/external/bsd/netpgp/dist/src

2017-02-19 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Feb 20 01:38:28 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c
src/crypto/external/bsd/netpgp/dist/src/librsa: rsastubs.c

Log Message:
Remove a useless loop around getpass()

According to getpass(3), this library function cannot return NULL.
Verified with a source code inspection.


To generate a diff of this commit:
cvs rdiff -u -r1.98 -r1.99 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
cvs rdiff -u -r1.2 -r1.3 \
src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c

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/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.98 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.99
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.98	Tue Jun 28 16:34:40 2016
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Mon Feb 20 01:38:28 2017
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.98 2016/06/28 16:34:40 christos Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.99 2017/02/20 01:38:28 khorben Exp $");
 #endif
 
 #include 
@@ -740,14 +740,10 @@ find_passphrase(FILE *passfp, const char
 	}
 	for (i = 0 ; i < attempts ; i++) {
 		(void) snprintf(prompt, sizeof(prompt), "Enter passphrase for %.16s: ", id);
-		if ((cp = getpass(prompt)) == NULL) {
-			break;
-		}
+		cp = getpass(prompt);
 		cc = snprintf(buf, sizeof(buf), "%s", cp);
 		(void) snprintf(prompt, sizeof(prompt), "Repeat passphrase for %.16s: ", id);
-		if ((cp = getpass(prompt)) == NULL) {
-			break;
-		}
+		cp = getpass(prompt);
 		cc = snprintf(passphrase, size, "%s", cp);
 		if (strcmp(buf, passphrase) == 0) {
 			(void) memset(buf, 0x0, sizeof(buf));

Index: src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c
diff -u src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c:1.2 src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c:1.3
--- src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c:1.2	Tue Nov 20 05:26:25 2012
+++ src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c	Mon Feb 20 01:38:28 2017
@@ -43,9 +43,7 @@ pass_cb(char *buf, int size, int rwflag,
 
 	USE_ARG(rwflag);
 	snprintf(prompt, sizeof(prompt), "\"%s\" passphrase: ", (char *)u);
-	if ((passphrase = getpass(prompt)) == NULL) {
-		return -1;
-	}
+	passphrase = getpass(prompt);
 	(void) memcpy(buf, passphrase, (size_t)size);
 	return (int)strlen(passphrase);
 }



CVS commit: src/crypto/external/bsd/netpgp/dist/src

2017-02-19 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Feb 20 01:38:28 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c
src/crypto/external/bsd/netpgp/dist/src/librsa: rsastubs.c

Log Message:
Remove a useless loop around getpass()

According to getpass(3), this library function cannot return NULL.
Verified with a source code inspection.


To generate a diff of this commit:
cvs rdiff -u -r1.98 -r1.99 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
cvs rdiff -u -r1.2 -r1.3 \
src/crypto/external/bsd/netpgp/dist/src/librsa/rsastubs.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-02-19 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Feb 20 01:33:28 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: reader.c

Log Message:
Remove a useless loop around getpass()

According to getpass(3), this library function cannot return NULL.
Verified with a source code inspection.


To generate a diff of this commit:
cvs rdiff -u -r1.49 -r1.50 \
src/crypto/external/bsd/netpgp/dist/src/lib/reader.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-02-19 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Feb 20 01:33:28 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: reader.c

Log Message:
Remove a useless loop around getpass()

According to getpass(3), this library function cannot return NULL.
Verified with a source code inspection.


To generate a diff of this commit:
cvs rdiff -u -r1.49 -r1.50 \
src/crypto/external/bsd/netpgp/dist/src/lib/reader.c

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/lib/reader.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.49 src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.50
--- src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.49	Mon Mar  5 02:20:18 2012
+++ src/crypto/external/bsd/netpgp/dist/src/lib/reader.c	Mon Feb 20 01:33:28 2017
@@ -54,7 +54,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: reader.c,v 1.49 2012/03/05 02:20:18 christos Exp $");
+__RCSID("$NetBSD: reader.c,v 1.50 2017/02/20 01:33:28 khorben Exp $");
 #endif
 
 #include 
@@ -162,8 +162,7 @@ pgp_getpassphrase(void *in, char *phrase
 	char	*p;
 
 	if (in == NULL) {
-		while ((p = getpass("netpgp passphrase: ")) == NULL) {
-		}
+		p = getpass("netpgp passphrase: ");
 		(void) snprintf(phrase, size, "%s", p);
 	} else {
 		if (fgets(phrase, (int)size, in) == NULL) {



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-02-19 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Feb 20 00:51:08 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
Do not crash when listing keys without a keyring

To test: (with an empty ~/.gnupg)
$ netpgpkeys --import-key /dev/null

Submitted on tech-pkg@ as:
[PATCH 01/11] Do not crash when listing keys without a keyring

Different patch for the same issue.


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2017-02-19 Thread Pierre Pronchery
Module Name:src
Committed By:   khorben
Date:   Mon Feb 20 00:51:08 UTC 2017

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: keyring.c

Log Message:
Do not crash when listing keys without a keyring

To test: (with an empty ~/.gnupg)
$ netpgpkeys --import-key /dev/null

Submitted on tech-pkg@ as:
[PATCH 01/11] Do not crash when listing keys without a keyring

Different patch for the same issue.


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 \
src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c

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/lib/keyring.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.50 src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.51
--- src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c:1.50	Sat Jun 25 00:37:44 2011
+++ src/crypto/external/bsd/netpgp/dist/src/lib/keyring.c	Mon Feb 20 00:51:08 2017
@@ -57,7 +57,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: keyring.c,v 1.50 2011/06/25 00:37:44 agc Exp $");
+__RCSID("$NetBSD: keyring.c,v 1.51 2017/02/20 00:51:08 khorben Exp $");
 #endif
 
 #ifdef HAVE_FCNTL_H
@@ -993,9 +993,12 @@ pgp_keyring_list(pgp_io_t *io, const pgp
 {
 	pgp_key_t		*key;
 	unsigned		 n;
+	unsigned		 keyc = (keyring != NULL) ? keyring->keyc : 0;
 
-	(void) fprintf(io->res, "%u key%s\n", keyring->keyc,
-		(keyring->keyc == 1) ? "" : "s");
+	(void) fprintf(io->res, "%u key%s\n", keyc, (keyc == 1) ? "" : "s");
+	if (keyring == NULL) {
+		return 1;
+	}
 	for (n = 0, key = keyring->keys; n < keyring->keyc; ++n, ++key) {
 		if (pgp_is_key_secret(key)) {
 			pgp_print_keydata(io, keyring, key, "sec",



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2016-09-12 Thread Abhinav Upadhyay
Module Name:src
Committed By:   abhinav
Date:   Mon Sep 12 16:54:32 UTC 2016

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: netpgpverify.1

Log Message:
Add section number to the Xrefs
Remove a blank space at the end of the line 130 (makes mandoc -Tlint happy)


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1

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/netpgpverify.1
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.9 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.10
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1:1.9	Fri Jan 30 18:58:59 2015
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1	Mon Sep 12 16:54:31 2016
@@ -1,4 +1,4 @@
-.\" $NetBSD: netpgpverify.1,v 1.9 2015/01/30 18:58:59 agc Exp $
+.\" $NetBSD: netpgpverify.1,v 1.10 2016/09/12 16:54:31 abhinav Exp $
 .\"
 .\" Copyright (c) 2013,2014,2015 Alistair Crooks 
 .\" All rights reserved.
@@ -42,9 +42,9 @@ The
 implements digital signature verification.
 It is designed to be simple and standalone; no external libraries, except
 for
-.Xr libz
+.Xr libz 3
 and
-.Xr libbz2
+.Xr libbz2 3
 are used, in order to ensure maximum portability.
 .Pp
 It is completely rewritten from the version of the program that appeared in
@@ -128,7 +128,7 @@ Verification of a file's signature is be
 % netpgpverify -k pubring.gpg NetBSD-6.0_RC1_hashes.asc
 Good signature for NetBSD-6.0_RC1_hashes.asc made Thu Aug 23 11:47:50 2012
 signature 4096/RSA (Encrypt or Sign) 064973ac4c4a706e 2009-06-23
-fingerprint   ddee 2bdb 9c98 a0d1 d4fb dbf7 0649 73ac 4c4a 706e 
+fingerprint   ddee 2bdb 9c98 a0d1 d4fb dbf7 0649 73ac 4c4a 706e
 uid   NetBSD Security Officer 
 %
 .Ed



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2016-09-12 Thread Abhinav Upadhyay
Module Name:src
Committed By:   abhinav
Date:   Mon Sep 12 16:54:32 UTC 2016

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: netpgpverify.1

Log Message:
Add section number to the Xrefs
Remove a blank space at the end of the line 130 (makes mandoc -Tlint happy)


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/netpgpverify.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2016-09-03 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Sep  3 09:31:22 UTC 2016

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c

Log Message:
Fix the error handling so that we print the earliest error message.


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

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.11 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.12
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.11	Sun Aug 28 11:52:22 2016
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c	Sat Sep  3 05:31:22 2016
@@ -2085,8 +2085,10 @@ setup_data(pgpv_cursor_t *cursor, pgpv_t
 {
 	FILE		*fp;
 	char		 buf[BUFSIZ];
+	int		 rv;
 
 	if (cursor == NULL || pgp == NULL || p == NULL) {
+		snprintf(cursor->why, sizeof(cursor->why), "No input data");
 		return 0;
 	}
 	memset(cursor, 0x0, sizeof(*cursor));
@@ -2104,19 +2106,19 @@ setup_data(pgpv_cursor_t *cursor, pgpv_t
 			return 0;
 		}
 		if (is_armored(buf, sizeof(buf))) {
-			read_ascii_armor_file(cursor, p);
+			rv = read_ascii_armor_file(cursor, p);
 		} else {
-			read_binary_file(pgp, "signature", "%s", (const char *)p);
+			rv = read_binary_file(pgp, "signature", "%s", (const char *)p);
 		}
 		fclose(fp);
 	} else {
 		if (is_armored(p, (size_t)size)) {
-			read_ascii_armor_memory(cursor, p, (size_t)size);
+			rv = read_ascii_armor_memory(cursor, p, (size_t)size);
 		} else {
-			read_binary_memory(pgp, "signature", p, (size_t)size);
+			rv = read_binary_memory(pgp, "signature", p, (size_t)size);
 		}
 	}
-	return 1;
+	return rv;
 }
 
 /* get the data and size from litdata packet */
@@ -2780,7 +2782,6 @@ pgpv_verify(pgpv_cursor_t *cursor, pgpv_
 		return 0;
 	}
 	if (!setup_data(cursor, pgp, p, size)) {
-		snprintf(cursor->why, sizeof(cursor->why), "No input data");
 		return 0;
 	}
 	if (ARRAY_COUNT(cursor->pgp->pkts) == ARRAY_LAST(cursor->pgp->datastarts) + 1) {



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2016-09-03 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Sep  3 09:31:22 UTC 2016

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c

Log Message:
Fix the error handling so that we print the earliest error message.


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2016-08-28 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Aug 28 15:52:22 UTC 2016

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c

Log Message:
Avoid segv when the end signature is not found!


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

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.10 src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.11
--- src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c:1.10	Wed Jun 15 11:47:50 2016
+++ src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c	Sun Aug 28 11:52:22 2016
@@ -2016,7 +2016,7 @@ read_ascii_armor(pgpv_cursor_t *cursor, 
 	litdata.s.data = p;
 	litdata.u.litdata.offset = (size_t)(p - mem->mem);
 	litdata.u.litdata.filename = (uint8_t *)strdup(filename);
-	if ((p = find_bin_string(datastart = p, mem->size - litdata.offset, SIGSTART, strlen(SIGSTART))) == NULL) {
+	if ((p = find_bin_string(datastart = p, mem->size - litdata.offset, SIGSTART, sizeof(SIGSTART) - 1)) == NULL) {
 		snprintf(cursor->why, sizeof(cursor->why),
 			"malformed armor - no sig - at %zu", (size_t)(p - mem->mem));
 		return 0;
@@ -2030,7 +2030,13 @@ read_ascii_armor(pgpv_cursor_t *cursor, 
 		return 0;
 	}
 	p += 2;
-	sigend = find_bin_string(p, mem->size, SIGEND, strlen(SIGEND));
+	sigend = find_bin_string(p, mem->size, SIGEND, sizeof(SIGEND) - 1);
+	if (sigend == NULL) {
+		snprintf(cursor->why, sizeof(cursor->why),
+			"malformed armor - no end sig - at %zu",
+			(size_t)(p - mem->mem));
+		return 0;
+	}
 	binsigsize = b64decode((char *)p, (size_t)(sigend - p), binsig, sizeof(binsig));
 
 	read_binary_memory(cursor->pgp, "signature", cons_onepass, 15);



CVS commit: src/crypto/external/bsd/netpgp/dist/src/netpgpverify

2016-08-28 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Aug 28 15:52:22 UTC 2016

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/netpgpverify: libverify.c

Log Message:
Avoid segv when the end signature is not found!


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 \
src/crypto/external/bsd/netpgp/dist/src/netpgpverify/libverify.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2016-06-28 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Tue Jun 28 16:34:40 UTC 2016

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c

Log Message:
CID 977755: Resource leaks.


To generate a diff of this commit:
cvs rdiff -u -r1.97 -r1.98 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

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/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.97 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.98
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.97	Sun Feb  7 00:03:36 2016
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Tue Jun 28 12:34:40 2016
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.97 2016/02/07 05:03:36 agc Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.98 2016/06/28 16:34:40 christos Exp $");
 #endif
 
 #include 
@@ -1186,6 +1186,7 @@ netpgp_generate_key(netpgp_t *netpgp, ch
 	int 	 passc;
 	int 	 fd;
 	int 	 cc;
+	int			 rv = 0;
 
 	uid = NULL;
 	io = netpgp->io;
@@ -1212,13 +1213,13 @@ netpgp_generate_key(netpgp_t *netpgp, ch
 	netpgp_setvar(netpgp, "generated userid", [cc - 16]);
 	if (mkdir(dir, 0700) < 0) {
 		(void) fprintf(io->errs, "can't mkdir '%s'\n", dir);
-		return 0;
+		goto out;
 	}
 	(void) fprintf(io->errs, "netpgp: generated keys in directory %s\n", dir);
 	(void) snprintf(ringfile = filename, sizeof(filename), "%s/pubring.gpg", dir);
 	if (!appendkey(io, key, ringfile)) {
 		(void) fprintf(io->errs, "Cannot write pubkey to '%s'\n", ringfile);
-		return 0;
+		goto out;
 	}
 	if (netpgp->pubring != NULL) {
 		pgp_keyring_free(netpgp->pubring);
@@ -1230,7 +1231,7 @@ netpgp_generate_key(netpgp_t *netpgp, ch
 	}
 	if (fd < 0) {
 		(void) fprintf(io->errs, "can't append secring '%s'\n", ringfile);
-		return 0;
+		goto out;
 	}
 	/* get the passphrase */
 	if ((numtries = netpgp_getvar(netpgp, "numtries")) == NULL ||
@@ -1242,15 +1243,18 @@ netpgp_generate_key(netpgp_t *netpgp, ch
 	passc = find_passphrase(netpgp->passfp, [ID_OFFSET], passphrase, sizeof(passphrase), attempts);
 	if (!pgp_write_xfer_seckey(create, key, (uint8_t *)passphrase, (const unsigned)passc, noarmor)) {
 		(void) fprintf(io->errs, "Cannot write seckey\n");
-		return 0;
+		goto out1;
 	}
+	rv = 1;
+out1:
 	pgp_teardown_file_write(create, fd);
 	if (netpgp->secring != NULL) {
 		pgp_keyring_free(netpgp->secring);
 	}
+out:
 	pgp_keydata_free(key);
 	free(cp);
-	return 1;
+	return rv;
 }
 
 /* encrypt a file */



CVS commit: src/crypto/external/bsd/netpgp/dist/src/lib

2016-06-28 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Tue Jun 28 16:34:40 UTC 2016

Modified Files:
src/crypto/external/bsd/netpgp/dist/src/lib: netpgp.c

Log Message:
CID 977755: Resource leaks.


To generate a diff of this commit:
cvs rdiff -u -r1.97 -r1.98 \
src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



  1   2   3   4   5   6   >