chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] udev_volume_id: fix endianess macros
[elogind.git]
/
udev_config.c
diff --git
a/udev_config.c
b/udev_config.c
index 54eedb980a19b1db017954529511247ce1e8a8fc..6bc070d63aeceef99ad7344fc5ac9001179eb1fa 100644
(file)
--- a/
udev_config.c
+++ b/
udev_config.c
@@
-44,6
+44,7
@@
char udev_db_path[PATH_SIZE];
char udev_config_filename[PATH_SIZE];
char udev_rules_filename[PATH_SIZE];
int udev_log_priority;
char udev_config_filename[PATH_SIZE];
char udev_rules_filename[PATH_SIZE];
int udev_log_priority;
+int udev_run;
int udev_dev_d;
int udev_hotplug_d;
int udev_dev_d;
int udev_hotplug_d;
@@
-171,7
+172,7
@@
static int parse_config_file(void)
if (bufline[0] == COMMENT_CHARACTER)
continue;
if (bufline[0] == COMMENT_CHARACTER)
continue;
- strlcpy(line, bufline, count);
+ strlcpy(line, bufline, count
+1
);
linepos = line;
retval = get_key(&linepos, &variable, &value);
linepos = line;
retval = get_key(&linepos, &variable, &value);
@@
-182,19
+183,19
@@
static int parse_config_file(void)
if (strcasecmp(variable, "udev_root") == 0) {
strlcpy(udev_root, value, sizeof(udev_root));
if (strcasecmp(variable, "udev_root") == 0) {
strlcpy(udev_root, value, sizeof(udev_root));
-
no_trailing_slash(udev_root
);
+
remove_trailing_char(udev_root, '/'
);
continue;
}
if (strcasecmp(variable, "udev_db") == 0) {
strlcpy(udev_db_path, value, sizeof(udev_db_path));
continue;
}
if (strcasecmp(variable, "udev_db") == 0) {
strlcpy(udev_db_path, value, sizeof(udev_db_path));
-
no_trailing_slash(udev_db_path
);
+
remove_trailing_char(udev_db_path, '/'
);
continue;
}
if (strcasecmp(variable, "udev_rules") == 0) {
strlcpy(udev_rules_filename, value, sizeof(udev_rules_filename));
continue;
}
if (strcasecmp(variable, "udev_rules") == 0) {
strlcpy(udev_rules_filename, value, sizeof(udev_rules_filename));
-
no_trailing_slash(udev_rules_filename
);
+
remove_trailing_char(udev_rules_filename, '/'
);
continue;
}
continue;
}
@@
-217,10
+218,16
@@
void udev_init_config(void)
strcpy(udev_config_filename, UDEV_CONFIG_FILE);
strcpy(udev_rules_filename, UDEV_RULES_FILE);
udev_log_priority = LOG_ERR;
strcpy(udev_config_filename, UDEV_CONFIG_FILE);
strcpy(udev_rules_filename, UDEV_RULES_FILE);
udev_log_priority = LOG_ERR;
+ udev_run = 1;
udev_dev_d = 1;
udev_hotplug_d = 1;
sysfs_get_mnt_path(sysfs_path, sizeof(sysfs_path));
udev_dev_d = 1;
udev_hotplug_d = 1;
sysfs_get_mnt_path(sysfs_path, sizeof(sysfs_path));
+ /* disable RUN key execution */
+ env = getenv("UDEV_RUN");
+ if (env && !string_is_true(env))
+ udev_run = 0;
+
env = getenv("UDEV_NO_DEVD");
if (env && string_is_true(env))
udev_dev_d = 0;
env = getenv("UDEV_NO_DEVD");
if (env && string_is_true(env))
udev_dev_d = 0;
@@
-232,7
+239,7
@@
void udev_init_config(void)
env = getenv("UDEV_CONFIG_FILE");
if (env) {
strlcpy(udev_config_filename, env, sizeof(udev_config_filename));
env = getenv("UDEV_CONFIG_FILE");
if (env) {
strlcpy(udev_config_filename, env, sizeof(udev_config_filename));
-
no_trailing_slash(udev_config_filename
);
+
remove_trailing_char(udev_config_filename, '/'
);
}
parse_config_file();
}
parse_config_file();