Lines Matching refs:handle
39 semanage_handle_t *handle,
45 switch (semanage_msg_get_level(handle)) {
65 static void sss_semanage_close(semanage_handle_t *handle)
67 if (handle == NULL) {
71 if (semanage_is_connected(handle)) {
72 semanage_disconnect(handle);
74 semanage_handle_destroy(handle);
77 static int sss_is_selinux_managed(semanage_handle_t *handle)
81 if (handle == NULL) {
85 ret = semanage_is_managed(handle);
100 semanage_handle_t *handle = NULL;
102 handle = semanage_handle_create();
103 if (!handle) {
104 DEBUG(SSSDBG_CRIT_FAILURE, "Cannot create SELinux management handle\n");
109 semanage_msg_set_callback(handle,
113 ret = sss_is_selinux_managed(handle);
118 ret = semanage_access_check(handle);
125 ret = semanage_connect(handle);
137 sss_semanage_close(handle);
139 *_handle = handle;
145 static int sss_semanage_user_add(semanage_handle_t *handle,
154 ret = semanage_seuser_create(handle, &seuser);
162 ret = semanage_seuser_set_name(handle, seuser, login_name);
169 ret = semanage_seuser_set_mlsrange(handle, seuser,
178 ret = semanage_seuser_set_sename(handle, seuser, seuser_name);
186 ret = semanage_seuser_modify_local(handle, key, seuser);
200 static int sss_semanage_user_mod(semanage_handle_t *handle,
209 semanage_seuser_query(handle, key, &seuser);
217 ret = semanage_seuser_set_mlsrange(handle, seuser,
226 ret = semanage_seuser_set_sename(handle, seuser, seuser_name);
233 ret = semanage_seuser_modify_local(handle, key, seuser);
252 semanage_handle_t *handle;
254 handle = semanage_handle_create();
255 if (handle == NULL) {
256 DEBUG(SSSDBG_CRIT_FAILURE, "Cannot create SELinux management handle\n");
260 semanage_msg_set_callback(handle,
264 /* We only needed the handle for this call. Close the handle right
266 ret = sss_is_selinux_managed(handle);
267 sss_semanage_close(handle);
278 semanage_handle_t *handle = NULL;
288 ret = sss_semanage_init(&handle);
292 DEBUG(SSSDBG_CRIT_FAILURE, "Cannot create SELinux handle\n");
296 ret = semanage_begin_transaction(handle);
303 ret = semanage_seuser_key_create(handle, login_name, &key);
310 ret = semanage_seuser_exists(handle, key, &seuser_exists);
318 ret = sss_semanage_user_mod(handle, key, login_name, seuser_name,
326 ret = sss_semanage_user_add(handle, key, login_name, seuser_name,
335 ret = semanage_commit(handle);
345 sss_semanage_close(handle);
351 semanage_handle_t *handle = NULL;
356 ret = sss_semanage_init(&handle);
360 DEBUG(SSSDBG_CRIT_FAILURE, "Cannot create SELinux handle\n");
364 ret = semanage_begin_transaction(handle);
371 ret = semanage_seuser_key_create(handle, login_name, &key);
378 ret = semanage_seuser_exists(handle, key, &exists);
393 ret = semanage_seuser_exists_local(handle, key, &exists);
408 ret = semanage_seuser_del_local(handle, key);
416 ret = semanage_commit(handle);
425 sss_semanage_close(handle);