Module Name:    src
Committed By:   agc
Date:           Tue Feb 23 01:24:45 UTC 2010

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

Log Message:
fix a bug in verifying memory.

add two examples to the netpgp(1) manual page outlining how to sign
and encrypt via a pipeline, and how to decrypt and verify/cat using a
pipeline.


To generate a diff of this commit:
cvs rdiff -u -r1.39 -r1.40 \
    src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
cvs rdiff -u -r1.29 -r1.30 \
    src/crypto/external/bsd/netpgp/dist/src/lib/validate.c
cvs rdiff -u -r1.7 -r1.8 \
    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/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.39 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.40
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.39	Fri Feb 12 03:38:48 2010
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Tue Feb 23 01:24:44 2010
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.39 2010/02/12 03:38:48 agc Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.40 2010/02/23 01:24:44 agc Exp $");
 #endif
 
 #include <sys/types.h>
@@ -1014,6 +1014,9 @@
 	}
 	signedmem = __ops_memory_new();
 	__ops_memory_add(signedmem, in, size);
+	if (out) {
+		cat = __ops_memory_new();
+	}
 	ret = __ops_validate_mem(io, &result, signedmem,
 				(out) ? &cat : NULL,
 				armored, netpgp->pubring);

Index: src/crypto/external/bsd/netpgp/dist/src/lib/validate.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/validate.c:1.29 src/crypto/external/bsd/netpgp/dist/src/lib/validate.c:1.30
--- src/crypto/external/bsd/netpgp/dist/src/lib/validate.c:1.29	Fri Feb 12 03:38:48 2010
+++ src/crypto/external/bsd/netpgp/dist/src/lib/validate.c	Tue Feb 23 01:24:44 2010
@@ -54,7 +54,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: validate.c,v 1.29 2010/02/12 03:38:48 agc Exp $");
+__RCSID("$NetBSD: validate.c,v 1.30 2010/02/23 01:24:44 agc Exp $");
 #endif
 
 #include <sys/types.h>
@@ -949,7 +949,7 @@
 	__ops_teardown_memory_read(stream, mem);
 
 	/* this is triggered only for --cat output */
-	if (*cat) {
+	if (cat) {
 		/* need to send validated output somewhere */
 		*cat = validation.mem;
 	} else {

Index: src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1
diff -u src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.7 src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.8
--- src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1:1.7	Sat Feb  6 02:24:34 2010
+++ src/crypto/external/bsd/netpgp/dist/src/netpgp/netpgp.1	Tue Feb 23 01:24:45 2010
@@ -1,4 +1,4 @@
-.\" $NetBSD: netpgp.1,v 1.7 2010/02/06 02:24:34 agc Exp $
+.\" $NetBSD: netpgp.1,v 1.8 2010/02/23 01:24:45 agc Exp $
 .\"
 .\" Copyright (c) 2009 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -406,6 +406,10 @@
 netpgp passphrase:
 %
 .Ed
+.Pp
+This simple (and contrived) example shows that
+.Nm
+commands can be used together in a pipeline to produce the desired effect.
 .Bd -literal
 % netpgp --sign \*[Lt] a | netpgp --cat \*[Gt] b 
 netpgp: default key set to "C0596823"
@@ -428,6 +432,43 @@
 uid              Alistair Crooks (Yahoo!) \*[lt]agcro...@yahoo-inc.com\*[gt]
 %
 .Ed
+.Pp
+For operations like signing and encrypting a file at the same time,
+the best way is to make use of pipelines:
+.Bd -literal
+% netpgp --sign \*[Lt] example | netpgp --encrypt --userid=c0596823 \*[Gt] example.gpg
+netpgp: default key set to "C0596823"
+pub 2048/RSA (Encrypt or Sign) 1b68dcfcc0596823 2004-01-12
+Key fingerprint: d415 9deb 336d e4cc cdfa 00cd 1b68 dcfc c059 6823
+uid              Alistair Crooks \*[lt]alist...@hockley-crooks.com\*[gt]
+uid              Alistair Crooks \*[lt]...@pkgsrc.org\*[gt]
+uid              Alistair Crooks \*[lt]...@netbsd.org\*[gt]
+uid              Alistair Crooks \*[lt]...@alistaircrooks.com\*[gt]
+uid              Alistair Crooks (Yahoo!) \*[lt]agcro...@yahoo-inc.com\*[gt]
+netpgp passphrase:
+% netpgp --decrypt \*[Lt] example.gpg | netpgp --cat
+netpgp: default key set to "C0596823"
+netpgp: default key set to "C0596823"
+pub 2048/RSA (Encrypt or Sign) 1b68dcfcc0596823 2004-01-12
+Key fingerprint: d415 9deb 336d e4cc cdfa 00cd 1b68 dcfc c059 6823
+uid              Alistair Crooks \*[lt]alist...@hockley-crooks.com\*[gt]
+uid              Alistair Crooks \*[lt]...@pkgsrc.org\*[gt]
+uid              Alistair Crooks \*[lt]...@netbsd.org\*[gt]
+uid              Alistair Crooks \*[lt]...@alistaircrooks.com\*[gt]
+uid              Alistair Crooks (Yahoo!) \*[lt]agcro...@yahoo-inc.com\*[gt]
+netpgp passphrase:
+Good signature for \*[Lt]stdin\*[Gt] made Mon Feb 22 07:21:19 2010
+using RSA (Encrypt or Sign) key 1b68dcfcc0596823
+pub 2048/RSA (Encrypt or Sign) 1b68dcfcc0596823 2004-01-12
+Key fingerprint: d415 9deb 336d e4cc cdfa 00cd 1b68 dcfc c059 6823
+uid              Alistair Crooks \*[lt]alist...@hockley-crooks.com\*[gt]
+uid              Alistair Crooks \*[lt]...@pkgsrc.org\*[gt]
+uid              Alistair Crooks \*[lt]...@netbsd.org\*[gt]
+uid              Alistair Crooks \*[lt]...@alistaircrooks.com\*[gt]
+uid              Alistair Crooks (Yahoo!) \*[lt]agcro...@yahoo-inc.com\*[gt]
+...contents of original file...
+%
+.Ed
 .Sh RETURN VALUES
 The
 .Nm

Reply via email to