#include <pwd.h>
#include <grp.h>
-#include "../../udev/udev.h"
+#include "libudev.h"
+#include "libudev-private.h"
static char *table[] = {
"", "d360", "h1200", "u360", "u720", "h360", "h720",
if (udev == NULL)
goto exit;
- logging_init("create_floppy_devices");
+ udev_log_init("create_floppy_devices");
udev_set_log_fn(udev, log_fn);
udev_selinux_init(udev);
return 1;
}
if (fdnum > 3)
- fdnum += 128;
+ fdnum += 124;
if (major < 1) {
fprintf(stderr,"Invalid major number %d\n", major);
return 1;
}
- if (type < 0 || type > (int) sizeof(table)) {
+ if (type < 0 || type >= (int) ARRAY_SIZE(table_sup)) {
fprintf(stderr,"Invalid CMOS type %d\n", type);
return 1;
}
sprintf(node, "%s%s", dev, table[table_sup[type][i]]);
minor = (table_sup[type][i] << 2) + fdnum;
if (print_nodes)
- printf("%s b %d %d %d\n", node, mode, major, minor);
+ printf("%s b %.4o %d %d\n", node, mode, major, minor);
if (create_nodes) {
unlink(node);
udev_selinux_setfscreatecon(udev, node, S_IFBLK | mode);
udev_selinux_exit(udev);
udev_unref(udev);
+ udev_log_close();
exit:
return 0;
}