X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev_config.c;h=de83ef9c4c770160ae52645695fe09bec2379686;hb=84d282a9d29f9c1191fca8e58246e9fc912ab2e9;hp=34ef82b8812c24220819c9ff9f85ab923fa0fa22;hpb=51a8bb2f361d86013e7579570faba446eed9c66d;p=elogind.git diff --git a/udev_config.c b/udev_config.c index 34ef82b88..de83ef9c4 100644 --- a/udev_config.c +++ b/udev_config.c @@ -32,11 +32,11 @@ #include #include +#include "libsysfs/sysfs/libsysfs.h" #include "udev.h" #include "udev_version.h" #include "logging.h" #include "namedev.h" -#include "libsysfs/libsysfs.h" /* global variables */ char sysfs_path[SYSFS_PATH_MAX]; @@ -49,6 +49,7 @@ char default_mode_str[MODE_SIZE]; char default_owner_str[OWNER_SIZE]; char default_group_str[GROUP_SIZE]; int udev_log; +int udev_sleep; static int string_is_true(char *str) @@ -71,12 +72,16 @@ static void init_variables(void) strfieldcpy(udev_rules_filename, UDEV_RULES_FILE); strfieldcpy(udev_permissions_filename, UDEV_PERMISSION_FILE); udev_log = string_is_true(UDEV_LOG_DEFAULT); + + udev_sleep = 1; + if (getenv("UDEV_NO_SLEEP") != NULL) + udev_sleep = 0; } #define set_var(_name, _var) \ if (strcasecmp(variable, _name) == 0) { \ dbg_parse("%s = '%s'", _name, value); \ - strncpy(_var, value, sizeof(_var)); \ + strnfieldcpy(_var, value, sizeof(_var));\ } #define set_bool(_name, _var) \