Module Name:    src
Committed By:   agc
Date:           Tue Jul  7 01:13:08 UTC 2009

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

Log Message:
Move the null file checks for sign/verify/encrypt/decrypt down into the
library itself. Update the regression test script to add some tests.


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/crypto/external/bsd/netpgp/dist/tst
cvs rdiff -u -r1.26 -r1.27 \
    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/tst
diff -u src/crypto/external/bsd/netpgp/dist/tst:1.11 src/crypto/external/bsd/netpgp/dist/tst:1.12
--- src/crypto/external/bsd/netpgp/dist/tst:1.11	Wed Jun 10 16:38:21 2009
+++ src/crypto/external/bsd/netpgp/dist/tst	Tue Jul  7 01:13:07 2009
@@ -18,7 +18,7 @@
 	su root -c "make install"'
 
 passed=0
-total=14
+total=18
 echo "======> sign/verify 180938 file"
 cp configure a
 /usr/bin/netpgp --sign a
@@ -69,6 +69,14 @@
 diff a a3 && passed=$(expr $passed + 1)
 echo "======> list keys"
 /usr/bin/netpgpkeys --list-keys && passed=$(expr $passed + 1)
+echo "======> null file to verify"
+/usr/bin/netpgp --verify || passed=$(expr $passed + 1)
+echo "======> null file to sign"
+/usr/bin/netpgp --sign || passed=$(expr $passed + 1)
+echo "======> null file to encrypt"
+/usr/bin/netpgp --encrypt || passed=$(expr $passed + 1)
+echo "======> null file to decrypt"
+/usr/bin/netpgp --decrypt || passed=$(expr $passed + 1)
 echo "======> version information"
 /usr/bin/netpgpverify --version
 rm -f a a.gpg b b.gpg c c.gpg d d.gpg e f f.sig a2 a3

Index: src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.26 src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.27
--- src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c:1.26	Sat Jun 13 05:25:08 2009
+++ src/crypto/external/bsd/netpgp/dist/src/lib/netpgp.c	Tue Jul  7 01:13:07 2009
@@ -34,7 +34,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: netpgp.c,v 1.26 2009/06/13 05:25:08 agc Exp $");
+__RCSID("$NetBSD: netpgp.c,v 1.27 2009/07/07 01:13:07 agc Exp $");
 #endif
 
 #include <sys/types.h>
@@ -458,6 +458,11 @@
 	char			 outname[MAXPATHLEN];
 
 	io = netpgp->io;
+	if (f == NULL) {
+		(void) fprintf(io->errs,
+			"netpgp_encrypt_file: no filename specified\n");
+		return 0;
+	}
 	if (userid == NULL) {
 		userid = netpgp_getvar(netpgp, "userid");
 	}
@@ -481,7 +486,14 @@
 netpgp_decrypt_file(netpgp_t *netpgp, const char *f, char *out, int armored)
 {
 	const unsigned	overwrite = 1;
+	__ops_io_t		*io;
 
+	io = netpgp->io;
+	if (f == NULL) {
+		(void) fprintf(io->errs,
+			"netpgp_decrypt_file: no filename specified\n");
+		return 0;
+	}
 	return __ops_decrypt_file(netpgp->io, f, out, netpgp->secring,
 				(unsigned)armored, overwrite, netpgp->passfp,
 				get_passphrase_cb);
@@ -505,6 +517,11 @@
 	int			 ret;
 
 	io = netpgp->io;
+	if (f == NULL) {
+		(void) fprintf(io->errs,
+			"netpgp_sign_file: no filename specified\n");
+		return 0;
+	}
 	if (userid == NULL) {
 		userid = netpgp_getvar(netpgp, "userid");
 	}
@@ -549,6 +566,11 @@
 
 	(void) memset(&result, 0x0, sizeof(result));
 	io = netpgp->io;
+	if (in == NULL) {
+		(void) fprintf(io->errs,
+			"netpgp_verify_file: no filename specified\n");
+		return 0;
+	}
 	if (__ops_validate_file(io, &result, in, out, armored,
 						netpgp->pubring)) {
 		resultp(io, in, &result, netpgp->pubring);

Reply via email to