Module Name:    src
Committed By:   agc
Date:           Thu Nov  4 16:13:35 UTC 2010

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

Log Message:
Apply patch from Peter Pentchev in PR 44040

The patch fixes two problems when verifying a clearsigned message:
- a copy/paste error - "litdata" should be "cleartext"
- a use of an uninitialized variable, resulting in freeing
  an uninitialized pointer on the stack... resulting in a segfault


To generate a diff of this commit:
cvs rdiff -u -r1.42 -r1.43 \
    src/crypto/external/bsd/netpgp/dist/src/lib/reader.c
cvs rdiff -u -r1.39 -r1.40 \
    src/crypto/external/bsd/netpgp/dist/src/lib/validate.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.42 src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.43
--- src/crypto/external/bsd/netpgp/dist/src/lib/reader.c:1.42	Sun Aug 15 16:36:24 2010
+++ src/crypto/external/bsd/netpgp/dist/src/lib/reader.c	Thu Nov  4 16:13:35 2010
@@ -54,7 +54,7 @@
 
 #if defined(__NetBSD__)
 __COPYRIGHT("@(#) Copyright (c) 2009 The NetBSD Foundation, Inc. All rights reserved.");
-__RCSID("$NetBSD: reader.c,v 1.42 2010/08/15 16:36:24 agc Exp $");
+__RCSID("$NetBSD: reader.c,v 1.43 2010/11/04 16:13:35 agc Exp $");
 #endif
 
 #include <sys/types.h>
@@ -681,8 +681,8 @@
 			"process_dash_escaped: bad body length\n");
 		return -1;
 	}
-
 	/* don't send that one character, because it's part of the trailer */
+	(void) memset(&content2, 0x0, sizeof(content2));
 	CALLBACK(OPS_PTAG_CT_SIGNED_CLEARTEXT_TRAILER, cbinfo, &content2);
 	return total;
 }

Index: src/crypto/external/bsd/netpgp/dist/src/lib/validate.c
diff -u src/crypto/external/bsd/netpgp/dist/src/lib/validate.c:1.39 src/crypto/external/bsd/netpgp/dist/src/lib/validate.c:1.40
--- src/crypto/external/bsd/netpgp/dist/src/lib/validate.c:1.39	Sun Aug 15 16:36:24 2010
+++ src/crypto/external/bsd/netpgp/dist/src/lib/validate.c	Thu Nov  4 16:13:35 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.39 2010/08/15 16:36:24 agc Exp $");
+__RCSID("$NetBSD: validate.c,v 1.40 2010/11/04 16:13:35 agc Exp $");
 #endif
 
 #include <sys/types.h>
@@ -461,8 +461,8 @@
 	case OPS_PTAG_CT_SIGNED_CLEARTEXT_BODY:
 		data->data.cleartext_body = content->cleartext_body;
 		data->type = SIGNED_CLEARTEXT;
-		__ops_memory_add(data->mem, data->data.litdata_body.data,
-			       data->data.litdata_body.length);
+		__ops_memory_add(data->mem, data->data.cleartext_body.data,
+			       data->data.cleartext_body.length);
 		return OPS_KEEP_MEMORY;
 
 	case OPS_PTAG_CT_SIGNED_CLEARTEXT_TRAILER:

Reply via email to