X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udevstart.c;h=90b87b8377465667de28de085dc003aa2f47eda1;hb=8f6919e6390d79a2765e1dc9b0057412e987dce2;hp=5f3ba711f0303deffaa1a5dc160ecdbd9d114597;hpb=d455b0085d65cd25915a34d84f894a4950d313a2;p=elogind.git diff --git a/udevstart.c b/udevstart.c index 5f3ba711f..90b87b837 100644 --- a/udevstart.c +++ b/udevstart.c @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -164,7 +165,7 @@ run: if (strncmp(name_loop->name, "socket:", strlen("socket:")) == 0) pass_env_to_socket(&name_loop->name[strlen("socket:")], devpath, "add"); else - execute_program(name_loop->name, udev.subsystem, NULL, 0, NULL); + run_program(name_loop->name, udev.subsystem, NULL, 0, NULL, (udev_log_priority >= LOG_DEBUG)); } } exit: @@ -315,10 +316,7 @@ static void udev_scan_class(void) snprintf(dirname2, sizeof(dirname2), "%s/%s", dirname, dent2->d_name); dirname2[sizeof(dirname2)-1] = '\0'; - /* pass the net class as it is */ - if (strcmp(dent->d_name, "net") == 0) - device_list_insert(dirname2, "net", &device_list); - else if (has_devt(dirname2)) + if (has_devt(dirname2) || strcmp(dent->d_name, "net") == 0) device_list_insert(dirname2, dent->d_name, &device_list); } closedir(dir2); @@ -367,7 +365,7 @@ int main(int argc, char *argv[], char *envp[]) /* trigger timeout to prevent hanging processes */ alarm(UDEV_ALARM_TIMEOUT); - udev_rules_init(&rules, 1); + udev_rules_init(&rules, 0, 1); udev_scan_block(); udev_scan_class();