#include "udev.h"
#include "udev_rules.h"
+#include "udev_selinux.h"
void udev_rules_iter_init(struct udev_rules *rules)
}
if (strncasecmp(key, "TEST", sizeof("TEST")-1) == 0) {
+ if (operation != KEY_OP_MATCH &&
+ operation != KEY_OP_NOMATCH) {
+ err("invalid TEST operation");
+ goto invalid;
+ }
attr = get_key_attribute(key + sizeof("TEST")-1);
if (attr != NULL)
rule->test_mode_mask = strtol(attr, NULL, 8);
strlcat(filename, "/"RULES_DYN_DIR, sizeof(filename));
if (stat(filename, &statbuf) != 0) {
create_path(filename);
+ selinux_setfscreatecon(filename, NULL, S_IFDIR|0755);
mkdir(filename, 0755);
+ selinux_resetfscreatecon();
}
add_matching_files(&dyn_list, filename, RULESFILE_SUFFIX);