X-Git-Url: https://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=discover%2Fpb-discover.c;h=6d62e14db2b931e20afdeb55f82cebb0a8b9e31b;hp=007e66f2dcd671ae83058b257d9b4a72a43e785a;hb=d28b706489cfd2c11e281ff3eaeb136ca154a1ee;hpb=e5f5a2e91e89af08925b6dae3680fc9ef62190ff diff --git a/discover/pb-discover.c b/discover/pb-discover.c index 007e66f..6d62e14 100644 --- a/discover/pb-discover.c +++ b/discover/pb-discover.c @@ -12,6 +12,7 @@ #include #include #include +#include #include "udev.h" #include "user-event.h" @@ -118,6 +119,7 @@ int main(int argc, char *argv[]) struct discover_server *server; struct network *network; struct waitset *waitset; + struct procset *procset; struct opts opts; struct pb_udev *udev; struct user_event *uev; @@ -157,12 +159,19 @@ int main(int argc, char *argv[]) config_init(NULL); + if (opts.no_autoboot == opt_yes) + config_set_autoboot(false); + waitset = waitset_create(NULL); server = discover_server_init(waitset); if (!server) return EXIT_FAILURE; + procset = process_init(server, waitset, opts.dry_run == opt_yes); + if (!procset) + return EXIT_FAILURE; + network = network_init(server, waitset, opts.dry_run == opt_yes); if (!network) return EXIT_FAILURE; @@ -181,15 +190,12 @@ int main(int argc, char *argv[]) if (!uev) return EXIT_FAILURE; - user_event_trigger(uev); - for (running = 1; running;) { if (waiter_poll(waitset)) break; } device_handler_destroy(handler); - waitset_destroy(waitset); udev_destroy(udev); config_fini();