Lines Matching refs:data

128 	DAT_SR_ENTRY 		*data;  in dat_sr_insert()  local
135 if (NULL == (data = dat_os_alloc(sizeof (DAT_SR_ENTRY)))) { in dat_sr_insert()
144 if (NULL == (data->lib_path = dat_os_alloc(lib_path_size))) { in dat_sr_insert()
150 (void) dat_os_strncpy(data->lib_path, entry->lib_path, lib_path_len); in dat_sr_insert()
151 data->lib_path[lib_path_len] = '\0'; in dat_sr_insert()
156 if (NULL == (data->ia_params = dat_os_alloc(ia_params_size))) { in dat_sr_insert()
162 (void) dat_os_strncpy(data->ia_params, entry->ia_params, ia_params_len); in dat_sr_insert()
163 data->ia_params[ia_params_len] = '\0'; in dat_sr_insert()
165 data->info = entry->info; in dat_sr_insert()
166 data->lib_handle = entry->lib_handle; in dat_sr_insert()
167 data->ref_count = entry->ref_count; in dat_sr_insert()
180 (DAT_DICTIONARY_DATA *)data); in dat_sr_insert()
185 if (NULL != data) { in dat_sr_insert()
186 if (NULL != data->lib_path) { in dat_sr_insert()
187 dat_os_free(data->lib_path, lib_path_size); in dat_sr_insert()
190 if (NULL != data->ia_params) { in dat_sr_insert()
191 dat_os_free(data->ia_params, ia_params_size); in dat_sr_insert()
194 dat_os_free(data, sizeof (DAT_SR_ENTRY)); in dat_sr_insert()
309 DAT_SR_ENTRY *data; in dat_sr_provider_open() local
315 (DAT_DICTIONARY_DATA *) &data); in dat_sr_provider_open()
318 if (0 == data->ref_count) { in dat_sr_provider_open()
319 status = dat_os_library_load(data->lib_path, in dat_sr_provider_open()
320 &data->lib_handle); in dat_sr_provider_open()
322 data->ref_count++; in dat_sr_provider_open()
326 "load library %s\n", data->lib_path); in dat_sr_provider_open()
329 data->init_func = (DAT_PROVIDER_INIT_FUNC) in dat_sr_provider_open()
330 dat_os_library_sym(data->lib_handle, in dat_sr_provider_open()
332 data->fini_func = (DAT_PROVIDER_FINI_FUNC) in dat_sr_provider_open()
333 dat_os_library_sym(data->lib_handle, in dat_sr_provider_open()
336 if (NULL != data->init_func) { in dat_sr_provider_open()
337 (*data->init_func)(&data->info, in dat_sr_provider_open()
338 data->ia_params); in dat_sr_provider_open()
341 data->ref_count++; in dat_sr_provider_open()
361 DAT_SR_ENTRY *data; in dat_sr_provider_close() local
367 (DAT_DICTIONARY_DATA *)&data); in dat_sr_provider_close()
370 if (1 == data->ref_count) { in dat_sr_provider_close()
371 if (NULL != data->fini_func) { in dat_sr_provider_close()
372 (*data->fini_func)(&data->info); in dat_sr_provider_close()
375 status = dat_os_library_unload(data->lib_handle); in dat_sr_provider_close()
377 data->ref_count--; in dat_sr_provider_close()
380 data->ref_count--; in dat_sr_provider_close()