goto out;
}
}
+
command = argv[optind++];
if (command == NULL) {
fprintf(stderr, "command missing\n");
goto out;
}
+ udev_builtin_init(udev);
+
+ cmd = udev_builtin_lookup(command);
+ if (cmd >= UDEV_BUILTIN_MAX) {
+ fprintf(stderr, "unknown command '%s'\n", command);
+ help(udev);
+ rc = 5;
+ goto out;
+ }
+
/* add /sys if needed */
if (strncmp(syspath, udev_get_sys_path(udev), strlen(udev_get_sys_path(udev))) != 0)
util_strscpyl(filename, sizeof(filename), udev_get_sys_path(udev), syspath, NULL);
goto out;
}
- cmd = udev_builtin_lookup(command);
- if (cmd >= UDEV_BUILTIN_MAX) {
- fprintf(stderr, "unknown command '%s'\n", command);
- help(udev);
- rc = 5;
- goto out;
- }
-
- if (udev_builtin_run(dev, cmd, true) < 0) {
+ if (udev_builtin_run(dev, cmd, command, true) < 0) {
fprintf(stderr, "error executing '%s'\n\n", command);
rc = 6;
}
out:
udev_device_unref(dev);
+ udev_builtin_exit(udev);
return rc;
}
.name = "test-builtin",
.cmd = adm_builtin,
.help = "test a built-in command",
+ .debug = true,
};