* freeramdisk implementation for busybox
*
* Copyright (C) 2000 and written by Emanuele Caratti <wiz@iol.it>
- * Adjusted a bit by Erik Andersen <andersee@debian.org>
+ * Adjusted a bit by Erik Andersen <andersen@codepoet.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#include <sys/types.h>
#include <fcntl.h>
#include <sys/ioctl.h>
-#include <errno.h>
#include <stdlib.h>
+#include <unistd.h>
#include "busybox.h"
freeramdisk_main(int argc, char **argv)
{
int result;
- FILE *f;
+ int fd;
if (argc != 2) {
- show_usage();
+ bb_show_usage();
}
- f = xfopen(argv[1], "r+");
-
- result = ioctl(fileno(f), BLKFLSBUF);
+ fd = bb_xopen(argv[1], O_RDWR);
+
+ result = ioctl(fd, BLKFLSBUF);
#ifdef CONFIG_FEATURE_CLEAN_UP
- fclose(f);
+ close(fd);
#endif
if (result < 0) {
- perror_msg_and_die("failed ioctl on %s", argv[1]);
+ bb_perror_msg_and_die("failed ioctl on %s", argv[1]);
}
/* Don't bother closing. Exit does