rpms/chntpw/devel chntpw-080526-correct-test-for-failing-open-syscall.patch, NONE, 1.1 chntpw-080526-detect-failure-to-write-key.patch, NONE, 1.1 chntpw.spec, 1.8, 1.9

Richard W.M. Jones rjones at fedoraproject.org
Wed Jul 22 09:45:47 UTC 2009


Author: rjones

Update of /cvs/pkgs/rpms/chntpw/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv2203

Modified Files:
	chntpw.spec 
Added Files:
	chntpw-080526-correct-test-for-failing-open-syscall.patch 
	chntpw-080526-detect-failure-to-write-key.patch 
Log Message:
Two more patches.

chntpw-080526-correct-test-for-failing-open-syscall.patch:
 ntreg.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

--- NEW FILE chntpw-080526-correct-test-for-failing-open-syscall.patch ---
>From jim at meyering.net  Mon Jul 20 20:05:55 2009
Return-Path: jim at meyering.net
X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on amd.home.annexia.org
X-Spam-Level: 
X-Spam-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,
	UNPARSEABLE_RELAY autolearn=ham version=3.2.5
Received: from mail.corp.redhat.com [10.5.5.51]
	by amd.home.annexia.org with IMAP (fetchmail-6.3.8)
	for <rjones at localhost> (single-drop); Mon, 20 Jul 2009 20:05:55 +0100 (BST)
Received: from zmta03.collab.prod.int.phx2.redhat.com (LHLO
 zmta03.collab.prod.int.phx2.redhat.com) (10.5.5.33) by
 mail06.corp.redhat.com with LMTP; Mon, 20 Jul 2009 15:05:47 -0400 (EDT)
Received: from localhost (localhost.localdomain [127.0.0.1])
	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 2C1134E4EB
	for <rjones at redhat.com>; Mon, 20 Jul 2009 15:05:47 -0400 (EDT)
Received: from zmta03.collab.prod.int.phx2.redhat.com ([127.0.0.1])
	by localhost (zmta03.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
	with ESMTP id a7N9dvNRkYQB for <rjones at redhat.com>;
	Mon, 20 Jul 2009 15:05:47 -0400 (EDT)
Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 034384E4D6
	for <rjones at mail.corp.redhat.com>; Mon, 20 Jul 2009 15:05:46 -0400 (EDT)
Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n6KJ5kIt032703
	for <rjones at int-mx2.corp.redhat.com>; Mon, 20 Jul 2009 15:05:46 -0400
Received: from mx.meyering.net (sebastian-int.corp.redhat.com [172.16.52.221])
	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n6KJ5jf3021050
	for <rjones at redhat.com>; Mon, 20 Jul 2009 15:05:45 -0400
Received: by rho.meyering.net (Acme Bit-Twister, from userid 1000)
	id D674638154; Mon, 20 Jul 2009 21:05:44 +0200 (CEST)
From: Jim Meyering <jim at meyering.net>
To: "Richard W. M. Jones" <rjones at redhat.com>
Subject: chntpw [PATCH] correct test for failing "open" syscall
Date: Mon, 20 Jul 2009 21:05:44 +0200
Message-ID: <878wij899z.fsf at meyering.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
Status: RO
Content-Length: 1103
Lines: 33

This one is weird.
It must be code that is never exercised,
since the existing code is totally bogus.
The condition, !open(...), will almost always be true.
(sole exception is when starting a program with stdin
initially closed)

>From bc4cddb06cf13c189fbdc93e6962cad072779097 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering at redhat.com>
Date: Mon, 20 Jul 2009 14:59:19 -0400
Subject: [PATCH] correct test for failing "open" syscall

* ntreg.c (writeHive): Test open() < 0, not !open().
---
 ntreg.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ntreg.c b/ntreg.c
index be6b680..21cd3e3 100644
--- a/ntreg.c
+++ b/ntreg.c
@@ -2765,7 +2765,7 @@ int writeHive(struct hive *hdesc)
   if ( !(hdesc->state & HMODE_DIRTY)) return(0);

   if ( !(hdesc->state & HMODE_OPEN)) { /* File has been closed */
-    if (!(hdesc->filedesc = open(hdesc->filename,O_RDWR))) {
+    if ((hdesc->filedesc = open(hdesc->filename,O_RDWR)) < 0) {
       fprintf(stderr,"writeHive: open(%s) failed: %s, FILE NOT WRITTEN!\n",hdesc->filename,strerror(errno));
       return(1);
     }
-- 
1.6.2.5


chntpw-080526-detect-failure-to-write-key.patch:
 ntreg.c |   10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

--- NEW FILE chntpw-080526-detect-failure-to-write-key.patch ---
>From jim at meyering.net  Mon Jul 20 20:12:31 2009
Return-Path: jim at meyering.net
X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on amd.home.annexia.org
X-Spam-Level: 
X-Spam-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,
	UNPARSEABLE_RELAY autolearn=ham version=3.2.5
Received: from mail.corp.redhat.com [10.5.5.51]
	by amd.home.annexia.org with IMAP (fetchmail-6.3.8)
	for <rjones at localhost> (single-drop); Mon, 20 Jul 2009 20:12:31 +0100 (BST)
Received: from zmta03.collab.prod.int.phx2.redhat.com (LHLO
 zmta03.collab.prod.int.phx2.redhat.com) (10.5.5.33) by
 mail06.corp.redhat.com with LMTP; Mon, 20 Jul 2009 15:12:17 -0400 (EDT)
Received: from localhost (localhost.localdomain [127.0.0.1])
	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 3C1A04E4EC
	for <rjones at redhat.com>; Mon, 20 Jul 2009 15:12:17 -0400 (EDT)
Received: from zmta03.collab.prod.int.phx2.redhat.com ([127.0.0.1])
	by localhost (zmta03.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
	with ESMTP id a+PpYwgPRjqW for <rjones at redhat.com>;
	Mon, 20 Jul 2009 15:12:17 -0400 (EDT)
Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 130A44E4D6
	for <rjones at mail.corp.redhat.com>; Mon, 20 Jul 2009 15:12:17 -0400 (EDT)
Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n6KJCGMZ001977
	for <rjones at int-mx2.corp.redhat.com>; Mon, 20 Jul 2009 15:12:16 -0400
Received: from mx.meyering.net (sebastian-int.corp.redhat.com [172.16.52.221])
	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n6KJCF82022169
	for <rjones at redhat.com>; Mon, 20 Jul 2009 15:12:15 -0400
Received: by rho.meyering.net (Acme Bit-Twister, from userid 1000)
	id 36C5D38154; Mon, 20 Jul 2009 21:12:15 +0200 (CEST)
From: Jim Meyering <jim at meyering.net>
To: "Richard W. M. Jones" <rjones at redhat.com>
Subject: chntpw [PATCH] detect/diagnose failure to write key
Date: Mon, 20 Jul 2009 21:12:15 +0200
Message-ID: <873a8r88z4.fsf at meyering.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
Status: RO
Content-Length: 938
Lines: 34

Hi Rich, here's another.

>From 057c832cf924cabf887e59d1c1f2127cd4619572 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering at redhat.com>
Date: Mon, 20 Jul 2009 15:09:26 -0400
Subject: [PATCH] detect/diagnose failure to write key

* ntreg.c (export_key): Detect stream write failure.
---
 ntreg.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/ntreg.c b/ntreg.c
index 21cd3e3..cdb6503 100644
--- a/ntreg.c
+++ b/ntreg.c
@@ -2735,7 +2735,14 @@ void export_key(struct hive *hdesc, int nkofs, char *name, char *filename, char
         fprintf(file, "Windows Registry Editor Version 5.00\r\n\r\n");
     export_subkey(hdesc, nkofs, name, prefix, file);

-    fclose(file);
+    if (ferror (file)) {
+	printf("failed to write file '%s'\n", filename);
+	fclose (file);
+	return;
+    }
+    if (fclose(file))
+      printf("failed to write file '%s': %s\n", filename,
+	     strerror(errno));
 }


--
1.6.2.5



Index: chntpw.spec
===================================================================
RCS file: /cvs/pkgs/rpms/chntpw/devel/chntpw.spec,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -p -r1.8 -r1.9
--- chntpw.spec	20 Jul 2009 16:07:18 -0000	1.8
+++ chntpw.spec	22 Jul 2009 09:45:17 -0000	1.9
@@ -1,7 +1,7 @@
 Name:           chntpw
 # Version is taken from HISTORY.txt
 Version:        0.99.6
-Release:        10%{?dist}
+Release:        11%{?dist}
 Summary:        Change passwords in Windows SAM files
 Group:          Applications/Engineering
 License:        GPLv2
@@ -24,6 +24,8 @@ Patch3:         chntpw-080526-port-to-gc
 
 # Patches from Jim Meyering to improve robustness of the code.
 Patch4:         chntpw-080526-robustness.patch
+Patch5:         chntpw-080526-correct-test-for-failing-open-syscall.patch
+Patch6:         chntpw-080526-detect-failure-to-write-key.patch
 
 
 %description
@@ -49,6 +51,8 @@ mv WinReg.txt.eol WinReg.txt
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
+%patch5 -p1
+%patch6 -p1
 
 
 %build
@@ -80,6 +84,9 @@ rm -rf $RPM_BUILD_ROOT
 
 
 %changelog
+* Wed Jul 22 2009 Richard W.M. Jones <rjones at redhat.com> - 0.99.6-11
+- Two more patches from Jim Meyering to improve general code quality.
+
 * Mon Jul 20 2009 Richard W.M. Jones <rjones at redhat.com> - 0.99.6-10
 - Three patches from Jim Meyering aiming to improve the general
   robustness of the code.




More information about the fedora-extras-commits mailing list