From: Sami Kerola <kerolasa@iki.fi>
To: util-linux@vger.kernel.org
Cc: kerolasa@iki.fi
Subject: [PATCH 21/33] sfdisk: check writing to a file descriptor was successful
Date: Sat, 13 Apr 2013 20:54:49 +0100 [thread overview]
Message-ID: <1365882901-11429-22-git-send-email-kerolasa@iki.fi> (raw)
In-Reply-To: <1365882901-11429-1-git-send-email-kerolasa@iki.fi>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
fdisks/sfdisk.c | 30 +++++++++++++++++++++++-------
1 file changed, 23 insertions(+), 7 deletions(-)
diff --git a/fdisks/sfdisk.c b/fdisks/sfdisk.c
index 3206a6b..27f62d8 100644
--- a/fdisks/sfdisk.c
+++ b/fdisks/sfdisk.c
@@ -284,12 +284,16 @@ save_sectors(char *dev, int fdin) {
}
}
- close(fdout);
+ if (close_fd(fdout) != 0) {
+ warn(_("write failed: %s"), save_sector_file);
+ return 0;
+ }
return 1;
err:
if (fdout >= 0)
- close(fdout);
+ if (close_fd(fdout) != 0)
+ warn(_("write failed: %s"), save_sector_file);
return 0;
}
@@ -355,7 +359,10 @@ restore_sectors(char *dev) {
if (!reread_disk_partition(dev, fdout)) /* closes fdout */
goto err;
close(fdin);
-
+ if (close_fd(fdout) != 0) {
+ error(_("write failed: %s"), dev);
+ return 0;
+ }
return 1;
err:
@@ -791,7 +798,7 @@ reread_disk_partition(char *dev, int fd) {
return 0;
}
- if (fsync(fd) || close(fd)) {
+ if (close_fd(fd) != 0) {
perror(dev);
warnx(_("Error closing %s\n"), dev);
return 0;
@@ -3026,7 +3033,10 @@ do_activate(char **av, int ac, char *arg) {
"but the DOS MBR will only boot a disk with 1 active partition.\n"),
i);
- close(fd);
+ if (close_fd(fd) != 0) {
+ my_warn(_("write failed"));
+ exit_status = 1;
+ }
}
static void
@@ -3074,7 +3084,10 @@ do_unhide(char **av, int ac, char *arg) {
else
exit_status = 1;
- close(fd);
+ if (close_fd(fd) != 0) {
+ my_warn(_("write failed"));
+ exit_status = 1;
+ }
}
static void
@@ -3108,7 +3121,10 @@ do_change_id(char *dev, char *pnam, char *id) {
exit_status = 1;
done:
- close(fd);
+ if (close_fd(fd) != 0) {
+ my_warn(_("write failed"));
+ exit_status = 1;
+ }
}
static void
--
1.8.2.1
next prev parent reply other threads:[~2013-04-13 19:56 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-13 19:54 [PATCH 00/33] pull: bash completions, help screens, and file writing Sami Kerola
2013-04-13 19:54 ` [PATCH 01/33] bash-completion: add mount and umount Sami Kerola
2013-04-13 19:54 ` [PATCH 02/33] blkid, hwclock, ldattach: use program_invocation_short_name Sami Kerola
2013-04-13 19:54 ` [PATCH 03/33] utmpdump: add option to write to a file Sami Kerola
2013-04-13 19:54 ` [PATCH 04/33] cfdisk: add long options to the command Sami Kerola
2013-04-26 11:30 ` Karel Zak
2013-04-13 19:54 ` [PATCH 05/33] bash-completion: prefer bash 3.x 'here string' syntax Sami Kerola
2013-04-13 21:59 ` Dave Reisner
2013-04-26 11:38 ` Karel Zak
2013-04-26 12:29 ` Sami Kerola
2013-04-13 19:54 ` [PATCH 06/33] setpriv: allow login and group name option arguments Sami Kerola
2013-04-13 19:54 ` [PATCH 07/33] build-sys: add --disable-setterm to ./configure Sami Kerola
2013-04-26 11:53 ` Karel Zak
2013-04-13 19:54 ` [PATCH 08/33] hexdump: add long options to the command Sami Kerola
2013-04-13 19:54 ` [PATCH 09/33] setsid: exit when control terminal cannot be set Sami Kerola
2013-04-13 19:54 ` [PATCH 10/33] cfdisk: check writing to a file was successful Sami Kerola
2013-04-13 19:54 ` [PATCH 11/33] setpriv: " Sami Kerola
2013-04-13 19:54 ` [PATCH 12/33] agetty: " Sami Kerola
2013-04-13 19:54 ` [PATCH 13/33] pg: " Sami Kerola
2013-04-13 19:54 ` [PATCH 14/33] libblkid: " Sami Kerola
2013-04-13 19:54 ` [PATCH 15/33] libmount: " Sami Kerola
2013-04-13 19:54 ` [PATCH 16/33] include: add close_fd() for noticing write errors before close() Sami Kerola
2013-04-13 19:54 ` [PATCH 17/33] fdformat: check writing to a file descriptor was successful Sami Kerola
2013-04-13 19:54 ` [PATCH 18/33] partx: " Sami Kerola
2013-04-13 19:54 ` [PATCH 19/33] resizepart: " Sami Kerola
2013-04-13 19:54 ` [PATCH 20/33] cfdisk: " Sami Kerola
2013-04-13 19:54 ` Sami Kerola [this message]
2013-04-13 19:54 ` [PATCH 22/33] wdctl: " Sami Kerola
2013-04-13 19:54 ` [PATCH 23/33] fsck.cramfs: " Sami Kerola
2013-04-13 19:54 ` [PATCH 24/33] fsck.minix: " Sami Kerola
2013-04-13 19:54 ` [PATCH 25/33] mkfs.bfs: " Sami Kerola
2013-04-13 19:54 ` [PATCH 26/33] mkfs.cramfs: unify write check to a file descriptor Sami Kerola
2013-04-13 19:54 ` [PATCH 27/33] mkfs.minix: check writing to a file descriptor was successful Sami Kerola
2013-04-13 19:54 ` [PATCH 28/33] mkswap: unify write check to a file descriptor Sami Kerola
2013-04-13 19:54 ` [PATCH 29/33] swaplabel: check writing to a file descriptor was successful Sami Kerola
2013-04-13 19:54 ` [PATCH 30/33] fallocate: " Sami Kerola
2013-04-13 19:54 ` [PATCH 31/33] setpriv: " Sami Kerola
2013-04-13 19:55 ` [PATCH 32/33] swapon: " Sami Kerola
2013-04-13 19:55 ` [PATCH 33/33] wall: " Sami Kerola
2013-04-17 13:31 ` [PATCH 00/33] pull: bash completions, help screens, and file writing Karel Zak
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1365882901-11429-22-git-send-email-kerolasa@iki.fi \
--to=kerolasa@iki.fi \
--cc=util-linux@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox