Lines Matching refs:fsi

86 	struct selinux_fs_info *fsi;  in selinux_fs_info_create()  local
88 fsi = kzalloc(sizeof(*fsi), GFP_KERNEL); in selinux_fs_info_create()
89 if (!fsi) in selinux_fs_info_create()
92 fsi->last_ino = SEL_INO_NEXT - 1; in selinux_fs_info_create()
93 fsi->state = &selinux_state; in selinux_fs_info_create()
94 fsi->sb = sb; in selinux_fs_info_create()
95 sb->s_fs_info = fsi; in selinux_fs_info_create()
101 struct selinux_fs_info *fsi = sb->s_fs_info; in selinux_fs_info_free() local
104 if (fsi) { in selinux_fs_info_free()
105 for (i = 0; i < fsi->bool_num; i++) in selinux_fs_info_free()
106 kfree(fsi->bool_pending_names[i]); in selinux_fs_info_free()
107 kfree(fsi->bool_pending_names); in selinux_fs_info_free()
108 kfree(fsi->bool_pending_values); in selinux_fs_info_free()
128 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_enforce() local
133 enforcing_enabled(fsi->state)); in sel_read_enforce()
142 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_enforce() local
143 struct selinux_state *state = fsi->state; in sel_write_enforce()
207 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_handle_unknown() local
208 struct selinux_state *state = fsi->state; in sel_read_handle_unknown()
227 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_open_handle_status() local
228 struct page *status = selinux_kernel_status_page(fsi->state); in sel_open_handle_status()
284 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_disable() local
313 enforcing = enforcing_enabled(fsi->state); in sel_write_disable()
314 length = selinux_disable(fsi->state); in sel_write_disable()
376 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_mls() local
381 security_mls_enabled(fsi->state)); in sel_read_mls()
397 struct selinux_fs_info *fsi = inode->i_sb->s_fs_info; in sel_open_policy() local
398 struct selinux_state *state = fsi->state; in sel_open_policy()
404 mutex_lock(&fsi->state->policy_mutex); in sel_open_policy()
413 if (fsi->policy_opened) in sel_open_policy()
431 fsi->policy_opened = 1; in sel_open_policy()
435 mutex_unlock(&fsi->state->policy_mutex); in sel_open_policy()
439 mutex_unlock(&fsi->state->policy_mutex); in sel_open_policy()
449 struct selinux_fs_info *fsi = inode->i_sb->s_fs_info; in sel_release_policy() local
454 fsi->policy_opened = 0; in sel_release_policy()
539 static int sel_make_policy_nodes(struct selinux_fs_info *fsi, in sel_make_policy_nodes() argument
547 unsigned long tmp_ino = fsi->last_ino; /* Don't increment last_ino in this function */ in sel_make_policy_nodes()
549 tmp_parent = sel_make_disconnected_dir(fsi->sb, &tmp_ino); in sel_make_policy_nodes()
553 tmp_ino = fsi->bool_dir->d_inode->i_ino - 1; /* sel_make_dir will increment and set */ in sel_make_policy_nodes()
560 tmp_ino = fsi->class_dir->d_inode->i_ino - 1; /* sel_make_dir will increment and set */ in sel_make_policy_nodes()
573 &fsi->last_class_ino); in sel_make_policy_nodes()
578 old_dentry = fsi->bool_dir; in sel_make_policy_nodes()
580 d_exchange(tmp_bool_dir, fsi->bool_dir); in sel_make_policy_nodes()
582 old_bool_num = fsi->bool_num; in sel_make_policy_nodes()
583 old_bool_names = fsi->bool_pending_names; in sel_make_policy_nodes()
584 old_bool_values = fsi->bool_pending_values; in sel_make_policy_nodes()
586 fsi->bool_num = tmp_bool_num; in sel_make_policy_nodes()
587 fsi->bool_pending_names = tmp_bool_names; in sel_make_policy_nodes()
588 fsi->bool_pending_values = tmp_bool_values; in sel_make_policy_nodes()
592 fsi->bool_dir = tmp_bool_dir; in sel_make_policy_nodes()
596 old_dentry = fsi->class_dir; in sel_make_policy_nodes()
598 d_exchange(tmp_class_dir, fsi->class_dir); in sel_make_policy_nodes()
599 fsi->class_dir = tmp_class_dir; in sel_make_policy_nodes()
617 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_load() local
622 mutex_lock(&fsi->state->policy_mutex); in sel_write_load()
644 length = security_load_policy(fsi->state, data, count, &load_state); in sel_write_load()
650 length = sel_make_policy_nodes(fsi, load_state.policy); in sel_write_load()
653 selinux_policy_cancel(fsi->state, &load_state); in sel_write_load()
657 selinux_policy_commit(fsi->state, &load_state); in sel_write_load()
666 mutex_unlock(&fsi->state->policy_mutex); in sel_write_load()
678 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_context() local
679 struct selinux_state *state = fsi->state; in sel_write_context()
715 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_checkreqprot() local
720 checkreqprot_get(fsi->state)); in sel_read_checkreqprot()
727 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_checkreqprot() local
762 checkreqprot_set(fsi->state, (new_value ? 1 : 0)); in sel_write_checkreqprot()
765 selinux_ima_measure_state(fsi->state); in sel_write_checkreqprot()
781 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_validatetrans() local
782 struct selinux_state *state = fsi->state; in sel_write_validatetrans()
910 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_access() local
911 struct selinux_state *state = fsi->state; in sel_write_access()
961 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_create() local
962 struct selinux_state *state = fsi->state; in sel_write_create()
1065 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_relabel() local
1066 struct selinux_state *state = fsi->state; in sel_write_relabel()
1126 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_user() local
1127 struct selinux_state *state = fsi->state; in sel_write_user()
1191 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_member() local
1192 struct selinux_state *state = fsi->state; in sel_write_member()
1267 struct selinux_fs_info *fsi = file_inode(filep)->i_sb->s_fs_info; in sel_read_bool() local
1275 mutex_lock(&fsi->state->policy_mutex); in sel_read_bool()
1278 if (index >= fsi->bool_num || strcmp(name, in sel_read_bool()
1279 fsi->bool_pending_names[index])) in sel_read_bool()
1287 cur_enforcing = security_get_bool_value(fsi->state, index); in sel_read_bool()
1293 fsi->bool_pending_values[index]); in sel_read_bool()
1294 mutex_unlock(&fsi->state->policy_mutex); in sel_read_bool()
1301 mutex_unlock(&fsi->state->policy_mutex); in sel_read_bool()
1308 struct selinux_fs_info *fsi = file_inode(filep)->i_sb->s_fs_info; in sel_write_bool() local
1326 mutex_lock(&fsi->state->policy_mutex); in sel_write_bool()
1336 if (index >= fsi->bool_num || strcmp(name, in sel_write_bool()
1337 fsi->bool_pending_names[index])) in sel_write_bool()
1347 fsi->bool_pending_values[index] = new_value; in sel_write_bool()
1351 mutex_unlock(&fsi->state->policy_mutex); in sel_write_bool()
1366 struct selinux_fs_info *fsi = file_inode(filep)->i_sb->s_fs_info; in sel_commit_bools_write() local
1382 mutex_lock(&fsi->state->policy_mutex); in sel_commit_bools_write()
1396 if (new_value && fsi->bool_pending_values) in sel_commit_bools_write()
1397 length = security_set_bools(fsi->state, fsi->bool_num, in sel_commit_bools_write()
1398 fsi->bool_pending_values); in sel_commit_bools_write()
1404 mutex_unlock(&fsi->state->policy_mutex); in sel_commit_bools_write()
1502 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_avc_cache_threshold() local
1503 struct selinux_state *state = fsi->state; in sel_read_avc_cache_threshold()
1517 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_avc_cache_threshold() local
1518 struct selinux_state *state = fsi->state; in sel_write_avc_cache_threshold()
1556 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_avc_hash_stats() local
1557 struct selinux_state *state = fsi->state; in sel_read_avc_hash_stats()
1576 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_sidtab_hash_stats() local
1577 struct selinux_state *state = fsi->state; in sel_read_sidtab_hash_stats()
1684 struct selinux_fs_info *fsi = sb->s_fs_info; in sel_make_avc_files() local
1710 inode->i_ino = ++fsi->last_ino; in sel_make_avc_files()
1720 struct selinux_fs_info *fsi = sb->s_fs_info; in sel_make_ss_files() local
1741 inode->i_ino = ++fsi->last_ino; in sel_make_ss_files()
1751 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_read_initcon() local
1757 ret = security_sid_to_context(fsi->state, sid, &con, &len); in sel_read_initcon()
1851 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_read_policycap() local
1857 value = security_policycap_supported(fsi->state, i_ino & SEL_INO_MASK); in sel_read_policycap()
1913 struct selinux_fs_info *fsi = sb->s_fs_info; in sel_make_class_dir_entries() local
1932 dentry = sel_make_dir(dir, "perms", &fsi->last_class_ino); in sel_make_class_dir_entries()
1980 static int sel_make_policycap(struct selinux_fs_info *fsi) in sel_make_policycap() argument
1988 dentry = d_alloc_name(fsi->policycap_dir, in sel_make_policycap()
1991 dentry = d_alloc_name(fsi->policycap_dir, "unknown"); in sel_make_policycap()
1996 inode = sel_make_inode(fsi->sb, S_IFREG | 0444); in sel_make_policycap()
2057 struct selinux_fs_info *fsi; in sel_fill_super() local
2094 fsi = sb->s_fs_info; in sel_fill_super()
2095 fsi->bool_dir = sel_make_dir(sb->s_root, BOOL_DIR_NAME, &fsi->last_ino); in sel_fill_super()
2096 if (IS_ERR(fsi->bool_dir)) { in sel_fill_super()
2097 ret = PTR_ERR(fsi->bool_dir); in sel_fill_super()
2098 fsi->bool_dir = NULL; in sel_fill_super()
2114 inode->i_ino = ++fsi->last_ino; in sel_fill_super()
2123 dentry = sel_make_dir(sb->s_root, "avc", &fsi->last_ino); in sel_fill_super()
2131 dentry = sel_make_dir(sb->s_root, "ss", &fsi->last_ino); in sel_fill_super()
2141 dentry = sel_make_dir(sb->s_root, "initial_contexts", &fsi->last_ino); in sel_fill_super()
2151 fsi->class_dir = sel_make_dir(sb->s_root, CLASS_DIR_NAME, &fsi->last_ino); in sel_fill_super()
2152 if (IS_ERR(fsi->class_dir)) { in sel_fill_super()
2153 ret = PTR_ERR(fsi->class_dir); in sel_fill_super()
2154 fsi->class_dir = NULL; in sel_fill_super()
2158 fsi->policycap_dir = sel_make_dir(sb->s_root, POLICYCAP_DIR_NAME, in sel_fill_super()
2159 &fsi->last_ino); in sel_fill_super()
2160 if (IS_ERR(fsi->policycap_dir)) { in sel_fill_super()
2161 ret = PTR_ERR(fsi->policycap_dir); in sel_fill_super()
2162 fsi->policycap_dir = NULL; in sel_fill_super()
2166 ret = sel_make_policycap(fsi); in sel_fill_super()