-static void
-procd_exec_upgraded(const char *prefix, char *path, char *command)
-{
- char *wdt_fd = watchdog_fd();
- char *argv[] = { "/sbin/upgraded", NULL, NULL, NULL};
-
- if (chroot(prefix)) {
- fprintf(stderr, "Failed to chroot for upgraded exec.\n");
- return;
- }
-
- argv[1] = path;
- argv[2] = command;
-
- DEBUG(2, "Exec to upgraded now\n");
- if (wdt_fd) {
- watchdog_set_cloexec(false);
- setenv("WDTFD", wdt_fd, 1);
- }
- execvp(argv[0], argv);
-
- /* Cleanup on failure */
- fprintf(stderr, "Failed to exec upgraded.\n");
- unsetenv("WDTFD");
- watchdog_set_cloexec(true);
- chroot(".");
-}
-