Lines Matching refs:handle

67 smb_smf_scf_fini(smb_scfhandle_t *handle)  in smb_smf_scf_fini()  argument
69 if (handle != NULL) { in smb_smf_scf_fini()
71 if (handle->scf_pg_iter != NULL) { in smb_smf_scf_fini()
72 scf_iter_destroy(handle->scf_pg_iter); in smb_smf_scf_fini()
73 handle->scf_pg_iter = NULL; in smb_smf_scf_fini()
75 if (handle->scf_inst_iter != NULL) { in smb_smf_scf_fini()
76 scf_iter_destroy(handle->scf_inst_iter); in smb_smf_scf_fini()
77 handle->scf_inst_iter = NULL; in smb_smf_scf_fini()
79 if (handle->scf_scope != NULL) { in smb_smf_scf_fini()
81 scf_scope_destroy(handle->scf_scope); in smb_smf_scf_fini()
82 handle->scf_scope = NULL; in smb_smf_scf_fini()
84 if (handle->scf_instance != NULL) { in smb_smf_scf_fini()
85 scf_instance_destroy(handle->scf_instance); in smb_smf_scf_fini()
86 handle->scf_instance = NULL; in smb_smf_scf_fini()
88 if (handle->scf_service != NULL) { in smb_smf_scf_fini()
89 scf_service_destroy(handle->scf_service); in smb_smf_scf_fini()
90 handle->scf_service = NULL; in smb_smf_scf_fini()
92 if (handle->scf_pg != NULL) { in smb_smf_scf_fini()
93 scf_pg_destroy(handle->scf_pg); in smb_smf_scf_fini()
94 handle->scf_pg = NULL; in smb_smf_scf_fini()
96 if (handle->scf_handle != NULL) { in smb_smf_scf_fini()
97 handle->scf_state = SCH_STATE_UNINIT; in smb_smf_scf_fini()
99 (void) scf_handle_unbind(handle->scf_handle); in smb_smf_scf_fini()
100 scf_handle_destroy(handle->scf_handle); in smb_smf_scf_fini()
101 handle->scf_handle = NULL; in smb_smf_scf_fini()
103 free(handle); in smb_smf_scf_fini()
113 smb_smf_instance_exists(smb_scfhandle_t *handle, char *inst_name) in smb_smf_instance_exists() argument
116 if (handle == NULL) { in smb_smf_instance_exists()
120 handle->scf_instance = scf_instance_create(handle->scf_handle); in smb_smf_instance_exists()
121 if (scf_service_get_instance(handle->scf_service, inst_name, in smb_smf_instance_exists()
122 handle->scf_instance) != SCF_SUCCESS) { in smb_smf_instance_exists()
125 scf_instance_destroy(handle->scf_instance); in smb_smf_instance_exists()
126 handle->scf_instance = NULL; in smb_smf_instance_exists()
135 smb_smf_instance_create(smb_scfhandle_t *handle, char *serv_prefix, in smb_smf_instance_create() argument
142 if (handle == NULL) { in smb_smf_instance_create()
155 handle->scf_instance = scf_instance_create(handle->scf_handle); in smb_smf_instance_create()
156 if (scf_service_get_instance(handle->scf_service, inst_name, in smb_smf_instance_create()
157 handle->scf_instance) != SCF_SUCCESS) { in smb_smf_instance_create()
158 if (scf_service_add_instance(handle->scf_service, in smb_smf_instance_create()
159 inst_name, handle->scf_instance) == SCF_SUCCESS) { in smb_smf_instance_create()
177 smb_smf_instance_delete(smb_scfhandle_t *handle, char *inst_name) in smb_smf_instance_delete() argument
181 if (handle == NULL) { in smb_smf_instance_delete()
185 handle->scf_instance = scf_instance_create(handle->scf_handle); in smb_smf_instance_delete()
186 if (scf_service_get_instance(handle->scf_service, inst_name, in smb_smf_instance_delete()
187 handle->scf_instance) == SCF_SUCCESS) { in smb_smf_instance_delete()
188 if (scf_instance_delete(handle->scf_instance) == SCF_SUCCESS) { in smb_smf_instance_delete()
209 smb_scfhandle_t *handle; in smb_smf_scf_init() local
211 handle = malloc(sizeof (smb_scfhandle_t)); in smb_smf_scf_init()
212 if (handle != NULL) { in smb_smf_scf_init()
213 bzero((char *)handle, sizeof (smb_scfhandle_t)); in smb_smf_scf_init()
214 handle->scf_state = SCH_STATE_INITIALIZING; in smb_smf_scf_init()
215 handle->scf_handle = scf_handle_create(SCF_VERSION); in smb_smf_scf_init()
216 if (handle->scf_handle != NULL) { in smb_smf_scf_init()
217 if (scf_handle_bind(handle->scf_handle) == 0) { in smb_smf_scf_init()
218 handle->scf_scope = in smb_smf_scf_init()
219 scf_scope_create(handle->scf_handle); in smb_smf_scf_init()
221 handle->scf_handle, handle->scf_scope) != 0) in smb_smf_scf_init()
224 handle->scf_service = in smb_smf_scf_init()
225 scf_service_create(handle->scf_handle); in smb_smf_scf_init()
227 if (scf_scope_get_service(handle->scf_scope, in smb_smf_scf_init()
228 svc_name, handle->scf_service) in smb_smf_scf_init()
232 handle->scf_pg = in smb_smf_scf_init()
233 scf_pg_create(handle->scf_handle); in smb_smf_scf_init()
234 handle->scf_state = SCH_STATE_INIT; in smb_smf_scf_init()
239 free(handle); in smb_smf_scf_init()
240 handle = NULL; in smb_smf_scf_init()
245 return (handle); in smb_smf_scf_init()
249 (void) smb_smf_scf_fini(handle); in smb_smf_scf_init()
261 smb_smf_create_service_pgroup(smb_scfhandle_t *handle, char *pgroup) in smb_smf_create_service_pgroup() argument
266 if (handle == NULL) { in smb_smf_create_service_pgroup()
274 if (handle->scf_pg == NULL) { in smb_smf_create_service_pgroup()
275 handle->scf_pg = scf_pg_create(handle->scf_handle); in smb_smf_create_service_pgroup()
281 if (scf_service_get_pg(handle->scf_service, in smb_smf_create_service_pgroup()
282 pgroup, handle->scf_pg) != 0) { in smb_smf_create_service_pgroup()
284 if (scf_service_add_pg(handle->scf_service, pgroup, in smb_smf_create_service_pgroup()
285 SCF_GROUP_FRAMEWORK, 0, handle->scf_pg) != 0) { in smb_smf_create_service_pgroup()
308 smb_smf_create_instance_pgroup(smb_scfhandle_t *handle, char *pgroup) in smb_smf_create_instance_pgroup() argument
313 if (handle == NULL) { in smb_smf_create_instance_pgroup()
321 if (handle->scf_pg == NULL) { in smb_smf_create_instance_pgroup()
322 handle->scf_pg = scf_pg_create(handle->scf_handle); in smb_smf_create_instance_pgroup()
329 if (scf_instance_get_pg(handle->scf_instance, in smb_smf_create_instance_pgroup()
330 pgroup, handle->scf_pg) != 0) { in smb_smf_create_instance_pgroup()
332 if (scf_instance_add_pg(handle->scf_instance, pgroup, in smb_smf_create_instance_pgroup()
333 SCF_GROUP_APPLICATION, 0, handle->scf_pg) != 0) { in smb_smf_create_instance_pgroup()
357 smb_smf_delete_service_pgroup(smb_scfhandle_t *handle, char *pgroup) in smb_smf_delete_service_pgroup() argument
362 if (handle == NULL) { in smb_smf_delete_service_pgroup()
370 if (handle->scf_pg == NULL) { in smb_smf_delete_service_pgroup()
371 handle->scf_pg = scf_pg_create(handle->scf_handle); in smb_smf_delete_service_pgroup()
377 if (scf_service_get_pg(handle->scf_service, in smb_smf_delete_service_pgroup()
378 pgroup, handle->scf_pg) == 0) { in smb_smf_delete_service_pgroup()
380 if (scf_pg_delete(handle->scf_pg) != 0) { in smb_smf_delete_service_pgroup()
407 smb_smf_delete_instance_pgroup(smb_scfhandle_t *handle, char *pgroup) in smb_smf_delete_instance_pgroup() argument
412 if (handle == NULL) { in smb_smf_delete_instance_pgroup()
420 if (handle->scf_pg == NULL) { in smb_smf_delete_instance_pgroup()
421 handle->scf_pg = scf_pg_create(handle->scf_handle); in smb_smf_delete_instance_pgroup()
427 if (scf_instance_get_pg(handle->scf_instance, in smb_smf_delete_instance_pgroup()
428 pgroup, handle->scf_pg) == 0) { in smb_smf_delete_instance_pgroup()
430 if (scf_pg_delete(handle->scf_pg) != 0) { in smb_smf_delete_instance_pgroup()
457 smb_smf_start_transaction(smb_scfhandle_t *handle) in smb_smf_start_transaction() argument
461 if (!handle || (!handle->scf_pg)) { in smb_smf_start_transaction()
468 if (handle->scf_state == SCH_STATE_INIT) { in smb_smf_start_transaction()
470 handle->scf_trans = in smb_smf_start_transaction()
471 scf_transaction_create(handle->scf_handle); in smb_smf_start_transaction()
472 if (handle->scf_trans != NULL) { in smb_smf_start_transaction()
473 if (scf_transaction_start(handle->scf_trans, in smb_smf_start_transaction()
474 handle->scf_pg) != 0) { in smb_smf_start_transaction()
477 handle->scf_trans); in smb_smf_start_transaction()
478 handle->scf_trans = NULL; in smb_smf_start_transaction()
499 smb_smf_end_transaction(smb_scfhandle_t *handle) in smb_smf_end_transaction() argument
503 if (handle == NULL) { in smb_smf_end_transaction()
507 if (handle->scf_trans == NULL) { in smb_smf_end_transaction()
510 if (scf_transaction_commit(handle->scf_trans) < 0) { in smb_smf_end_transaction()
514 scf_transaction_destroy_children(handle->scf_trans); in smb_smf_end_transaction()
515 scf_transaction_destroy(handle->scf_trans); in smb_smf_end_transaction()
516 handle->scf_trans = NULL; in smb_smf_end_transaction()
525 smb_smf_delete_property(smb_scfhandle_t *handle, char *propname) in smb_smf_delete_property() argument
530 if (handle == NULL) { in smb_smf_delete_property()
538 entry = scf_entry_create(handle->scf_handle); in smb_smf_delete_property()
540 if (scf_transaction_property_delete(handle->scf_trans, entry, in smb_smf_delete_property()
567 smb_smf_set_string_property(smb_scfhandle_t *handle, in smb_smf_set_string_property() argument
574 if (handle == NULL) { in smb_smf_set_string_property()
582 value = scf_value_create(handle->scf_handle); in smb_smf_set_string_property()
583 entry = scf_entry_create(handle->scf_handle); in smb_smf_set_string_property()
585 if (scf_transaction_property_change(handle->scf_trans, entry, in smb_smf_set_string_property()
587 scf_transaction_property_new(handle->scf_trans, entry, in smb_smf_set_string_property()
630 smb_smf_get_string_property(smb_scfhandle_t *handle, char *propname, in smb_smf_get_string_property() argument
637 if (handle == NULL) { in smb_smf_get_string_property()
641 value = scf_value_create(handle->scf_handle); in smb_smf_get_string_property()
642 prop = scf_property_create(handle->scf_handle); in smb_smf_get_string_property()
644 (scf_pg_get_property(handle->scf_pg, propname, prop) == 0)) { in smb_smf_get_string_property()
668 smb_smf_set_integer_property(smb_scfhandle_t *handle, char *propname, in smb_smf_set_integer_property() argument
675 if (handle == NULL) { in smb_smf_set_integer_property()
683 value = scf_value_create(handle->scf_handle); in smb_smf_set_integer_property()
684 entry = scf_entry_create(handle->scf_handle); in smb_smf_set_integer_property()
686 if (scf_transaction_property_change(handle->scf_trans, entry, in smb_smf_set_integer_property()
688 scf_transaction_property_new(handle->scf_trans, entry, in smb_smf_set_integer_property()
724 smb_smf_get_integer_property(smb_scfhandle_t *handle, char *propname, in smb_smf_get_integer_property() argument
731 if (handle == NULL) { in smb_smf_get_integer_property()
735 value = scf_value_create(handle->scf_handle); in smb_smf_get_integer_property()
736 prop = scf_property_create(handle->scf_handle); in smb_smf_get_integer_property()
738 (scf_pg_get_property(handle->scf_pg, propname, prop) == 0)) { in smb_smf_get_integer_property()
763 smb_smf_set_boolean_property(smb_scfhandle_t *handle, char *propname, in smb_smf_set_boolean_property() argument
770 if (handle == NULL) { in smb_smf_set_boolean_property()
778 value = scf_value_create(handle->scf_handle); in smb_smf_set_boolean_property()
779 entry = scf_entry_create(handle->scf_handle); in smb_smf_set_boolean_property()
781 if (scf_transaction_property_change(handle->scf_trans, entry, in smb_smf_set_boolean_property()
783 scf_transaction_property_new(handle->scf_trans, entry, in smb_smf_set_boolean_property()
819 smb_smf_get_boolean_property(smb_scfhandle_t *handle, char *propname, in smb_smf_get_boolean_property() argument
826 if (handle == NULL) { in smb_smf_get_boolean_property()
830 value = scf_value_create(handle->scf_handle); in smb_smf_get_boolean_property()
831 prop = scf_property_create(handle->scf_handle); in smb_smf_get_boolean_property()
833 (scf_pg_get_property(handle->scf_pg, propname, prop) == 0)) { in smb_smf_get_boolean_property()
856 smb_smf_set_opaque_property(smb_scfhandle_t *handle, char *propname, in smb_smf_set_opaque_property() argument
863 if (handle == NULL) { in smb_smf_set_opaque_property()
871 value = scf_value_create(handle->scf_handle); in smb_smf_set_opaque_property()
872 entry = scf_entry_create(handle->scf_handle); in smb_smf_set_opaque_property()
874 if (scf_transaction_property_change(handle->scf_trans, entry, in smb_smf_set_opaque_property()
876 scf_transaction_property_new(handle->scf_trans, entry, in smb_smf_set_opaque_property()
918 smb_smf_get_opaque_property(smb_scfhandle_t *handle, char *propname, in smb_smf_get_opaque_property() argument
925 if (handle == NULL) { in smb_smf_get_opaque_property()
929 value = scf_value_create(handle->scf_handle); in smb_smf_get_opaque_property()
930 prop = scf_property_create(handle->scf_handle); in smb_smf_get_opaque_property()
932 (scf_pg_get_property(handle->scf_pg, propname, prop) == 0)) { in smb_smf_get_opaque_property()
956 smb_scfhandle_t *handle = NULL; in smb_smf_get_iterator() local
958 handle = smb_smf_scf_init(svc_name); in smb_smf_get_iterator()
959 if (!handle) { in smb_smf_get_iterator()
963 handle->scf_inst_iter = scf_iter_create(handle->scf_handle); in smb_smf_get_iterator()
964 if (handle->scf_inst_iter) { in smb_smf_get_iterator()
965 if (scf_iter_service_instances(handle->scf_inst_iter, in smb_smf_get_iterator()
966 handle->scf_service) != 0) { in smb_smf_get_iterator()
967 smb_smf_scf_fini(handle); in smb_smf_get_iterator()
968 handle = NULL; in smb_smf_get_iterator()
970 handle->scf_instance = NULL; in smb_smf_get_iterator()
973 smb_smf_scf_fini(handle); in smb_smf_get_iterator()
974 handle = NULL; in smb_smf_get_iterator()
976 return (handle); in smb_smf_get_iterator()