Now that we have xopen3(), it's just plain unclean to have xopen() with
[oweals/busybox.git] / miscutils / eject.c
index 2643f36d571c2ac783575478d2379ae900c11c60..282090d38e9c6399ce5b0ceeba85395436674afa 100644 (file)
@@ -1,3 +1,4 @@
+/* vi: set sw=4 ts=4: */
 /*
  * eject implementation for busybox
  *
@@ -5,7 +6,6 @@
  * Copyright (C) 2005  Tito Ragusa <farmatito@tiscali.it>
  *
  * Licensed under the GPL v2 or later, see the file LICENSE in this tarball.
- *
  */
 
 /*
  * Most of the dirty work blatantly ripped off from cat.c =)
  */
 
-#include <fcntl.h>
-#include <sys/ioctl.h>
-#include <unistd.h>
-#include <sys/mount.h>
-#include <mntent.h>
 #include "busybox.h"
+#include <mntent.h>
 
 /* various defines swiped from linux/cdrom.h */
 #define CDROMCLOSETRAY            0x5319  /* pendant of CDROMEJECT  */
 #define CDROMEJECT                0x5309  /* Ejects the cdrom media */
 #define DEFAULT_CDROM             "/dev/cdrom"
 
-extern int eject_main(int argc, char **argv)
+int eject_main(int argc, char **argv)
 {
        unsigned long flags;
        char *device;
@@ -41,9 +37,9 @@ extern int eject_main(int argc, char **argv)
                        erase_mtab(m->mnt_fsname);
                }
        }
-       if (ioctl(bb_xopen(device, (O_RDONLY | O_NONBLOCK)),
+       if (ioctl(xopen(device, (O_RDONLY | O_NONBLOCK)),
                                (flags ? CDROMCLOSETRAY : CDROMEJECT))) {
-               bb_perror_msg_and_die(device);
+               bb_perror_msg_and_die("%s", device);
        }
        return (EXIT_SUCCESS);
 }