summaryrefslogtreecommitdiffstats
path: root/usr.bin/fsync/fsync.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.bin/fsync/fsync.c')
-rw-r--r--usr.bin/fsync/fsync.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/usr.bin/fsync/fsync.c b/usr.bin/fsync/fsync.c
index 95bacfb..764e79d 100644
--- a/usr.bin/fsync/fsync.c
+++ b/usr.bin/fsync/fsync.c
@@ -36,29 +36,36 @@ __FBSDID("$FreeBSD$");
#include <sysexits.h>
#include <unistd.h>
-void usage(void);
+static void usage(void);
int
main(int argc, char *argv[])
{
int fd;
int i;
+ int rval;
if (argc < 2)
usage();
+ rval = 0;
for (i = 1; i < argc; ++i) {
- if ((fd = open(argv[i], O_RDONLY)) < 0)
- err(1, "open %s", argv[i]);
+ if ((fd = open(argv[i], O_RDONLY)) < 0) {
+ warn("open %s", argv[i]);
+ rval = 1;
+ continue;
+ }
- if (fsync(fd) != 0)
- err(1, "fsync %s", argv[1]);
+ if (fsync(fd) != 0) {
+ warn("fsync %s", argv[i]);
+ rval = 1;
+ }
close(fd);
}
- return(0);
+ return (rval);
}
-void
+static void
usage()
{
fprintf(stderr, "usage: fsync file ...\n");
OpenPOWER on IntegriCloud