Lines Matching full:fsi
85 struct selinux_fs_info *fsi; in selinux_fs_info_create() local
87 fsi = kzalloc(sizeof(*fsi), GFP_KERNEL); in selinux_fs_info_create()
88 if (!fsi) in selinux_fs_info_create()
91 fsi->last_ino = SEL_INO_NEXT - 1; in selinux_fs_info_create()
92 fsi->state = &selinux_state; in selinux_fs_info_create()
93 fsi->sb = sb; in selinux_fs_info_create()
94 sb->s_fs_info = fsi; in selinux_fs_info_create()
100 struct selinux_fs_info *fsi = sb->s_fs_info; in selinux_fs_info_free() local
103 if (fsi) { in selinux_fs_info_free()
104 for (i = 0; i < fsi->bool_num; i++) in selinux_fs_info_free()
105 kfree(fsi->bool_pending_names[i]); in selinux_fs_info_free()
106 kfree(fsi->bool_pending_names); in selinux_fs_info_free()
107 kfree(fsi->bool_pending_values); in selinux_fs_info_free()
127 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_enforce() local
132 enforcing_enabled(fsi->state)); in sel_read_enforce()
141 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_enforce() local
142 struct selinux_state *state = fsi->state; in sel_write_enforce()
204 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_handle_unknown() local
205 struct selinux_state *state = fsi->state; in sel_read_handle_unknown()
224 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_open_handle_status() local
225 struct page *status = selinux_kernel_status_page(fsi->state); in sel_open_handle_status()
281 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_disable() local
310 enforcing = enforcing_enabled(fsi->state); in sel_write_disable()
311 length = selinux_disable(fsi->state); in sel_write_disable()
373 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_mls() local
378 security_mls_enabled(fsi->state)); in sel_read_mls()
394 struct selinux_fs_info *fsi = inode->i_sb->s_fs_info; in sel_open_policy() local
395 struct selinux_state *state = fsi->state; in sel_open_policy()
401 mutex_lock(&fsi->state->policy_mutex); in sel_open_policy()
410 if (fsi->policy_opened) in sel_open_policy()
428 fsi->policy_opened = 1; in sel_open_policy()
432 mutex_unlock(&fsi->state->policy_mutex); in sel_open_policy()
436 mutex_unlock(&fsi->state->policy_mutex); in sel_open_policy()
446 struct selinux_fs_info *fsi = inode->i_sb->s_fs_info; in sel_release_policy() local
451 fsi->policy_opened = 0; in sel_release_policy()
536 static int sel_make_policy_nodes(struct selinux_fs_info *fsi, in sel_make_policy_nodes() argument
544 unsigned long tmp_ino = fsi->last_ino; /* Don't increment last_ino in this function */ in sel_make_policy_nodes()
546 tmp_parent = sel_make_disconnected_dir(fsi->sb, &tmp_ino); in sel_make_policy_nodes()
550 tmp_ino = fsi->bool_dir->d_inode->i_ino - 1; /* sel_make_dir will increment and set */ in sel_make_policy_nodes()
557 tmp_ino = fsi->class_dir->d_inode->i_ino - 1; /* sel_make_dir will increment and set */ in sel_make_policy_nodes()
572 &fsi->last_class_ino); in sel_make_policy_nodes()
579 old_dentry = fsi->bool_dir; in sel_make_policy_nodes()
581 d_exchange(tmp_bool_dir, fsi->bool_dir); in sel_make_policy_nodes()
583 old_bool_num = fsi->bool_num; in sel_make_policy_nodes()
584 old_bool_names = fsi->bool_pending_names; in sel_make_policy_nodes()
585 old_bool_values = fsi->bool_pending_values; in sel_make_policy_nodes()
587 fsi->bool_num = tmp_bool_num; in sel_make_policy_nodes()
588 fsi->bool_pending_names = tmp_bool_names; in sel_make_policy_nodes()
589 fsi->bool_pending_values = tmp_bool_values; in sel_make_policy_nodes()
593 fsi->bool_dir = tmp_bool_dir; in sel_make_policy_nodes()
597 old_dentry = fsi->class_dir; in sel_make_policy_nodes()
599 d_exchange(tmp_class_dir, fsi->class_dir); in sel_make_policy_nodes()
600 fsi->class_dir = tmp_class_dir; in sel_make_policy_nodes()
618 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_load() local
623 mutex_lock(&fsi->state->policy_mutex); in sel_write_load()
645 length = security_load_policy(fsi->state, data, count, &newpolicy); in sel_write_load()
651 length = sel_make_policy_nodes(fsi, newpolicy); in sel_write_load()
653 selinux_policy_cancel(fsi->state, newpolicy); in sel_write_load()
657 selinux_policy_commit(fsi->state, newpolicy); in sel_write_load()
667 mutex_unlock(&fsi->state->policy_mutex); in sel_write_load()
679 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_context() local
680 struct selinux_state *state = fsi->state; in sel_write_context()
716 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_checkreqprot() local
721 checkreqprot_get(fsi->state)); in sel_read_checkreqprot()
728 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_checkreqprot() local
763 checkreqprot_set(fsi->state, (new_value ? 1 : 0)); in sel_write_checkreqprot()
779 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_validatetrans() local
780 struct selinux_state *state = fsi->state; in sel_write_validatetrans()
908 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_access() local
909 struct selinux_state *state = fsi->state; in sel_write_access()
959 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_create() local
960 struct selinux_state *state = fsi->state; in sel_write_create()
1063 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_relabel() local
1064 struct selinux_state *state = fsi->state; in sel_write_relabel()
1124 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_user() local
1125 struct selinux_state *state = fsi->state; in sel_write_user()
1189 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_member() local
1190 struct selinux_state *state = fsi->state; in sel_write_member()
1265 struct selinux_fs_info *fsi = file_inode(filep)->i_sb->s_fs_info; in sel_read_bool() local
1273 mutex_lock(&fsi->state->policy_mutex); in sel_read_bool()
1276 if (index >= fsi->bool_num || strcmp(name, in sel_read_bool()
1277 fsi->bool_pending_names[index])) in sel_read_bool()
1285 cur_enforcing = security_get_bool_value(fsi->state, index); in sel_read_bool()
1291 fsi->bool_pending_values[index]); in sel_read_bool()
1292 mutex_unlock(&fsi->state->policy_mutex); in sel_read_bool()
1299 mutex_unlock(&fsi->state->policy_mutex); in sel_read_bool()
1306 struct selinux_fs_info *fsi = file_inode(filep)->i_sb->s_fs_info; in sel_write_bool() local
1324 mutex_lock(&fsi->state->policy_mutex); in sel_write_bool()
1334 if (index >= fsi->bool_num || strcmp(name, in sel_write_bool()
1335 fsi->bool_pending_names[index])) in sel_write_bool()
1345 fsi->bool_pending_values[index] = new_value; in sel_write_bool()
1349 mutex_unlock(&fsi->state->policy_mutex); in sel_write_bool()
1364 struct selinux_fs_info *fsi = file_inode(filep)->i_sb->s_fs_info; in sel_commit_bools_write() local
1380 mutex_lock(&fsi->state->policy_mutex); in sel_commit_bools_write()
1394 if (new_value && fsi->bool_pending_values) in sel_commit_bools_write()
1395 length = security_set_bools(fsi->state, fsi->bool_num, in sel_commit_bools_write()
1396 fsi->bool_pending_values); in sel_commit_bools_write()
1402 mutex_unlock(&fsi->state->policy_mutex); in sel_commit_bools_write()
1500 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_avc_cache_threshold() local
1501 struct selinux_state *state = fsi->state; in sel_read_avc_cache_threshold()
1515 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_write_avc_cache_threshold() local
1516 struct selinux_state *state = fsi->state; in sel_write_avc_cache_threshold()
1554 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_avc_hash_stats() local
1555 struct selinux_state *state = fsi->state; in sel_read_avc_hash_stats()
1574 struct selinux_fs_info *fsi = file_inode(filp)->i_sb->s_fs_info; in sel_read_sidtab_hash_stats() local
1575 struct selinux_state *state = fsi->state; in sel_read_sidtab_hash_stats()
1682 struct selinux_fs_info *fsi = sb->s_fs_info; in sel_make_avc_files() local
1708 inode->i_ino = ++fsi->last_ino; in sel_make_avc_files()
1718 struct selinux_fs_info *fsi = sb->s_fs_info; in sel_make_ss_files() local
1739 inode->i_ino = ++fsi->last_ino; in sel_make_ss_files()
1749 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_read_initcon() local
1755 ret = security_sid_to_context(fsi->state, sid, &con, &len); in sel_read_initcon()
1849 struct selinux_fs_info *fsi = file_inode(file)->i_sb->s_fs_info; in sel_read_policycap() local
1855 value = security_policycap_supported(fsi->state, i_ino & SEL_INO_MASK); in sel_read_policycap()
1911 struct selinux_fs_info *fsi = sb->s_fs_info; in sel_make_class_dir_entries() local
1930 dentry = sel_make_dir(dir, "perms", &fsi->last_class_ino); in sel_make_class_dir_entries()
1978 static int sel_make_policycap(struct selinux_fs_info *fsi) in sel_make_policycap() argument
1986 dentry = d_alloc_name(fsi->policycap_dir, in sel_make_policycap()
1989 dentry = d_alloc_name(fsi->policycap_dir, "unknown"); in sel_make_policycap()
1994 inode = sel_make_inode(fsi->sb, S_IFREG | 0444); in sel_make_policycap()
2055 struct selinux_fs_info *fsi; in sel_fill_super() local
2092 fsi = sb->s_fs_info; in sel_fill_super()
2093 fsi->bool_dir = sel_make_dir(sb->s_root, BOOL_DIR_NAME, &fsi->last_ino); in sel_fill_super()
2094 if (IS_ERR(fsi->bool_dir)) { in sel_fill_super()
2095 ret = PTR_ERR(fsi->bool_dir); in sel_fill_super()
2096 fsi->bool_dir = NULL; in sel_fill_super()
2112 inode->i_ino = ++fsi->last_ino; in sel_fill_super()
2121 dentry = sel_make_dir(sb->s_root, "avc", &fsi->last_ino); in sel_fill_super()
2129 dentry = sel_make_dir(sb->s_root, "ss", &fsi->last_ino); in sel_fill_super()
2139 dentry = sel_make_dir(sb->s_root, "initial_contexts", &fsi->last_ino); in sel_fill_super()
2149 fsi->class_dir = sel_make_dir(sb->s_root, CLASS_DIR_NAME, &fsi->last_ino); in sel_fill_super()
2150 if (IS_ERR(fsi->class_dir)) { in sel_fill_super()
2151 ret = PTR_ERR(fsi->class_dir); in sel_fill_super()
2152 fsi->class_dir = NULL; in sel_fill_super()
2156 fsi->policycap_dir = sel_make_dir(sb->s_root, POLICYCAP_DIR_NAME, in sel_fill_super()
2157 &fsi->last_ino); in sel_fill_super()
2158 if (IS_ERR(fsi->policycap_dir)) { in sel_fill_super()
2159 ret = PTR_ERR(fsi->policycap_dir); in sel_fill_super()
2160 fsi->policycap_dir = NULL; in sel_fill_super()
2164 ret = sel_make_policycap(fsi); in sel_fill_super()