Lines Matching refs:value

110         GL_SPLIT,                       /* multi-value A|B */
111 GL_SPLIT_GLOB, /* multi-value with glob A*|B* */
328 const char *value = str(rules, token->key.value_off);
371 token_str(type), operation_str(op), value, string_glob_str(glob));
374 log_debug("%s %i '%s'", token_str(type), token->key.builtin_cmd, value);
384 token_str(type), operation_str(op), attr, value, string_glob_str(glob));
388 log_debug("%s %s '%s'", token_str(type), operation_str(op), value);
397 token_str(type), operation_str(op), value, string_glob_str(glob), token->key.mode);
415 log_debug("%s '%s'", token_str(type), value);
418 log_debug("%s %s '%s' '%s'", token_str(type), operation_str(op), attr, value);
421 log_debug("%s '%s' %u", token_str(type), value, token->key.rule_goto);
581 /* split key/value */
588 /* find value */
600 /* terminate value */
760 static int get_key(struct udev *udev, char **line, char **key, enum operation_type *op, char **value) {
830 /* get the value */
835 *value = linepos;
870 const char *value, const void *data) {
905 token->key.value_off = rules_add_string(rule_tmp->rules, value);
908 token->key.value_off = rules_add_string(rule_tmp->rules, value);
920 token->key.value_off = rules_add_string(rule_tmp->rules, value);
924 token->key.value_off = rules_add_string(rule_tmp->rules, value);
935 token->key.value_off = rules_add_string(rule_tmp->rules, value);
960 if (value != NULL && type < TK_M_MAX) {
966 has_split = (strchr(value, '|') != NULL);
967 has_glob = string_is_glob(value);
973 if (streq(value, "?*"))
983 if (value != NULL && type > TK_M_MAX) {
984 /* check if assigned value has substitution chars */
985 if (value[0] == '[')
987 else if (strchr(value, '%') != NULL || strchr(value, '$') != NULL)
1023 /* find smallest value */
1064 char *value;
1067 if (get_key(rules->udev, &linepos, &key, &op, &value) != 0) {
1081 log_error("invalid key/value pair in file %s on line %u, starting at character %tu ('%s')",
1094 rule_add_key(&rule_tmp, TK_M_ACTION, op, value, NULL);
1103 rule_add_key(&rule_tmp, TK_M_DEVPATH, op, value, NULL);
1112 rule_add_key(&rule_tmp, TK_M_KERNEL, op, value, NULL);
1122 if (streq(value, "subsystem") ||
1123 streq(value, "bus") ||
1124 streq(value, "class")) {
1125 if (streq(value, "bus") || streq(value, "class"))
1127 "please fix it in %s:%u", value, filename, lineno);
1130 rule_add_key(&rule_tmp, TK_M_SUBSYSTEM, op, value, NULL);
1139 rule_add_key(&rule_tmp, TK_M_DRIVER, op, value, NULL);
1154 rule_add_key(&rule_tmp, TK_M_ATTR, op, value, attr);
1156 rule_add_key(&rule_tmp, TK_A_ATTR, op, value, attr);
1171 rule_add_key(&rule_tmp, TK_M_SYSCTL, op, value, attr);
1173 rule_add_key(&rule_tmp, TK_A_SYSCTL, op, value, attr);
1188 rule_add_key(&rule_tmp, TK_A_SECLABEL, op, value, attr);
1197 rule_add_key(&rule_tmp, TK_M_KERNELS, op, value, NULL);
1206 rule_add_key(&rule_tmp, TK_M_SUBSYSTEMS, op, value, NULL);
1215 rule_add_key(&rule_tmp, TK_M_DRIVERS, op, value, NULL);
1235 rule_add_key(&rule_tmp, TK_M_ATTRS, op, value, attr);
1244 rule_add_key(&rule_tmp, TK_M_TAGS, op, value, NULL);
1259 if (rule_add_key(&rule_tmp, TK_M_ENV, op, value, attr) != 0)
1283 if (rule_add_key(&rule_tmp, TK_A_ENV, op, value, attr) != 0)
1291 rule_add_key(&rule_tmp, TK_M_TAG, op, value, NULL);
1293 rule_add_key(&rule_tmp, TK_A_TAG, op, value, NULL);
1302 rule_add_key(&rule_tmp, TK_M_PROGRAM, op, value, NULL);
1311 rule_add_key(&rule_tmp, TK_M_RESULT, op, value, NULL);
1327 if (value[0] != '/') {
1330 cmd = udev_builtin_lookup(value);
1333 value, filename, lineno);
1334 rule_add_key(&rule_tmp, TK_M_IMPORT_BUILTIN, op, value, &cmd);
1338 rule_add_key(&rule_tmp, TK_M_IMPORT_PROG, op, value, NULL);
1340 enum udev_builtin_cmd cmd = udev_builtin_lookup(value);
1343 rule_add_key(&rule_tmp, TK_M_IMPORT_BUILTIN, op, value, &cmd);
1345 log_error("IMPORT{builtin}: '%s' unknown %s:%u", value, filename, lineno);
1347 rule_add_key(&rule_tmp, TK_M_IMPORT_FILE, op, value, NULL);
1349 rule_add_key(&rule_tmp, TK_M_IMPORT_DB, op, value, NULL);
1351 rule_add_key(&rule_tmp, TK_M_IMPORT_CMDLINE, op, value, NULL);
1353 rule_add_key(&rule_tmp, TK_M_IMPORT_PARENT, op, value, NULL);
1369 rule_add_key(&rule_tmp, TK_M_TEST, op, value, &mode);
1371 rule_add_key(&rule_tmp, TK_M_TEST, op, value, NULL);
1386 enum udev_builtin_cmd cmd = udev_builtin_lookup(value);
1389 rule_add_key(&rule_tmp, TK_A_RUN_BUILTIN, op, value, &cmd);
1391 log_error("RUN{builtin}: '%s' unknown %s:%u", value, filename, lineno);
1395 rule_add_key(&rule_tmp, TK_A_RUN_PROGRAM, op, value, &cmd);
1408 rule_add_key(&rule_tmp, TK_M_WAITFOR, 0, value, NULL);
1417 rule_tmp.rule.rule.label_off = rules_add_string(rules, value);
1426 rule_add_key(&rule_tmp, TK_A_GOTO, 0, value, NULL);
1436 rule_add_key(&rule_tmp, TK_M_NAME, op, value, NULL);
1438 if (streq(value, "%k")) {
1443 if (value[0] == '\0') {
1448 rule_add_key(&rule_tmp, TK_A_NAME, op, value, NULL);
1460 rule_add_key(&rule_tmp, TK_M_DEVLINK, op, value, NULL);
1462 rule_add_key(&rule_tmp, TK_A_DEVLINK, op, value, NULL);
1476 uid = strtoul(value, &endptr, 10);
1479 } else if ((rules->resolve_names > 0) && strchr("$%", value[0]) == NULL) {
1480 uid = add_uid(rules, value);
1483 rule_add_key(&rule_tmp, TK_A_OWNER, op, value, NULL);
1498 gid = strtoul(value, &endptr, 10);
1501 } else if ((rules->resolve_names > 0) && strchr("$%", value[0]) == NULL) {
1502 gid = add_gid(rules, value);
1505 rule_add_key(&rule_tmp, TK_A_GROUP, op, value, NULL);
1520 mode = strtol(value, &endptr, 8);
1524 rule_add_key(&rule_tmp, TK_A_MODE, op, value, NULL);
1537 pos = strstr(value, "link_priority=");
1544 pos = strstr(value, "string_escape=");
1553 pos = strstr(value, "db_persist");
1557 pos = strstr(value, "nowatch");
1563 pos = strstr(value, "watch");
1571 pos = strstr(value, "static_node=");
1715 * The offset value in the rules strct is limited; add all
1812 char value[UTIL_PATH_SIZE];
1814 strscpy(value, sizeof(value), rules_str(rules, token->key.value_off));
1815 key_value = value;
1846 const char *value;
1857 value = udev_device_get_sysattr_value(dev, name);
1858 if (value == NULL)
1864 value = vbuf;
1871 len = strlen(value);
1872 if (len > 0 && isspace(value[len-1])) {
1879 if (value != vbuf) {
1880 strscpy(vbuf, sizeof(vbuf), value);
1881 value = vbuf;
1888 return match_key(rules, cur, value);
1964 const char *value;
1966 value = udev_device_get_property_value(event->dev, key_name);
1969 if (!value && properties_list) {
1975 value = udev_list_entry_get_value(list_entry);
1978 if (!value)
1979 value = "";
1980 if (match_key(rules, cur, value))
2022 _cleanup_free_ char *value = NULL;
2027 if (sysctl_read(filename, &value) < 0)
2030 len = strlen(value);
2031 while (len > 0 && isspace(value[--len]))
2032 value[len] = '\0';
2033 if (match_key(rules, cur, value) != 0)
2217 const char *value;
2219 value = udev_device_get_property_value(event->dev_db, key);
2220 if (value != NULL)
2221 udev_device_add_property(event->dev, key, value);
2248 const char *value;
2251 value = pos;
2255 udev_device_add_property(event->dev, key, value);
2425 char *value = rules_str(rules, cur->key.value_off);
2429 if (value[0] == '\0') {
2441 /* append value separated by space */
2442 udev_event_apply_format(event, value, temp, sizeof(temp), false);
2445 udev_event_apply_format(event, value, value_new, sizeof(value_new), false);
2552 char value[UTIL_NAME_SIZE];
2559 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), value, sizeof(value), false);
2560 log_debug("ATTR '%s' writing '%s' %s:%u", attr, value,
2565 if (fprintf(f, "%s", value) <= 0)
2575 char value[UTIL_NAME_SIZE];
2580 udev_event_apply_format(event, rules_str(rules, cur->key.value_off), value, sizeof(value), false);
2581 log_debug("SYSCTL '%s' writing '%s' %s:%u", filename, value,
2583 r = sysctl_write(filename, value);
2585 log_error("error writing SYSCTL{%s}='%s': %s", filename, value, strerror(-r));
2772 /* function to return the count of rules that assign NAME= to a value matching arg#2 - returns 0,1 */