From jim@meyering.net Mon Jul 20 20:12:31 2009
Return-Path: jim@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@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@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@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@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@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@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@meyering.net>
To: "Richard W. M. Jones" <rjones@redhat.com>
Subject: chntpw [PATCH] detect/diagnose failure to write key
Date: Mon, 20 Jul 2009 21:12:15 +0200
Message-ID: <873a8r88z4.fsf@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@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