diff --git a/tools/check_seapp.c b/tools/check_seapp.c index 89fe2a8974b5673d36de110e1feda0476edb7c6b..4821ac8ba6b03292f006ff5fcff29e53b1c558a6 100644 --- a/tools/check_seapp.c +++ b/tools/check_seapp.c @@ -80,14 +80,6 @@ enum key_dir { dir_in, dir_out }; -/** - * The expected "type" of data the value in the key - * value pair should be. - */ -enum data_type { - dt_bool, dt_string -}; - struct list_element { list_element *next; }; @@ -110,7 +102,6 @@ struct key_map_regex { struct key_map { char *name; key_dir dir; - data_type type; char *data; key_map_regex regex; bool (*fn_validate)(char *value, char **errmsg); @@ -210,20 +201,20 @@ static bool validate_selinux_level(char *value, char **errmsg); */ key_map rules[] = { /*Inputs*/ - { .name = "isSystemServer", .type = dt_bool, .dir = dir_in, .data = NULL, .fn_validate = validate_bool }, - { .name = "isAutoPlayApp", .type = dt_bool, .dir = dir_in, .data = NULL, .fn_validate = validate_bool }, - { .name = "isOwner", .type = dt_bool, .dir = dir_in, .data = NULL, .fn_validate = validate_bool }, - { .name = "user", .type = dt_string, .dir = dir_in, .data = NULL }, - { .name = "seinfo", .type = dt_string, .dir = dir_in, .data = NULL }, - { .name = "name", .type = dt_string, .dir = dir_in, .data = NULL }, - { .name = "path", .type = dt_string, .dir = dir_in, .data = NULL }, - { .name = "isPrivApp", .type = dt_bool, .dir = dir_in, .data = NULL, .fn_validate = validate_bool }, + { .name = "isSystemServer", .dir = dir_in, .data = NULL, .fn_validate = validate_bool }, + { .name = "isAutoPlayApp", .dir = dir_in, .data = NULL, .fn_validate = validate_bool }, + { .name = "isOwner", .dir = dir_in, .data = NULL, .fn_validate = validate_bool }, + { .name = "user", .dir = dir_in, .data = NULL }, + { .name = "seinfo", .dir = dir_in, .data = NULL }, + { .name = "name", .dir = dir_in, .data = NULL }, + { .name = "path", .dir = dir_in, .data = NULL }, + { .name = "isPrivApp", .dir = dir_in, .data = NULL, .fn_validate = validate_bool }, /*Outputs*/ - { .name = "domain", .type = dt_string, .dir = dir_out, .data = NULL, .fn_validate = validate_selinux_type }, - { .name = "type", .type = dt_string, .dir = dir_out, .data = NULL, .fn_validate = validate_selinux_type }, - { .name = "levelFromUid", .type = dt_bool, .dir = dir_out, .data = NULL, .fn_validate = validate_bool }, - { .name = "levelFrom", .type = dt_string, .dir = dir_out, .data = NULL, .fn_validate = validate_levelFrom }, - { .name = "level", .type = dt_string, .dir = dir_out, .data = NULL, .fn_validate = validate_selinux_level }, + { .name = "domain", .dir = dir_out, .data = NULL, .fn_validate = validate_selinux_type }, + { .name = "type", .dir = dir_out, .data = NULL, .fn_validate = validate_selinux_type }, + { .name = "levelFromUid", .dir = dir_out, .data = NULL, .fn_validate = validate_bool }, + { .name = "levelFrom", .dir = dir_out, .data = NULL, .fn_validate = validate_levelFrom }, + { .name = "level", .dir = dir_out, .data = NULL, .fn_validate = validate_selinux_level }, }; /** @@ -519,9 +510,6 @@ static map_match rule_map_cmp(rule_map *rmA, rule_map *rmB) { mB = &(rmB->m[j]); input_mode = 0; - if (mA->type != mB->type) - continue; - if (strcmp(mA->name, mB->name)) continue;