Lines Matching refs:data

130 	DAT_SR_ENTRY 		*data;  in dat_sr_insert()  local
137 if (NULL == (data = dat_os_alloc(sizeof (DAT_SR_ENTRY)))) { in dat_sr_insert()
146 if (NULL == (data->lib_path = dat_os_alloc(lib_path_size))) { in dat_sr_insert()
152 (void) dat_os_strncpy(data->lib_path, entry->lib_path, lib_path_len); in dat_sr_insert()
153 data->lib_path[lib_path_len] = '\0'; in dat_sr_insert()
158 if (NULL == (data->ia_params = dat_os_alloc(ia_params_size))) { in dat_sr_insert()
164 (void) dat_os_strncpy(data->ia_params, entry->ia_params, ia_params_len); in dat_sr_insert()
165 data->ia_params[ia_params_len] = '\0'; in dat_sr_insert()
167 data->info = entry->info; in dat_sr_insert()
168 data->lib_handle = entry->lib_handle; in dat_sr_insert()
169 data->ref_count = entry->ref_count; in dat_sr_insert()
182 (DAT_DICTIONARY_DATA *)data); in dat_sr_insert()
187 if (NULL != data) { in dat_sr_insert()
188 if (NULL != data->lib_path) { in dat_sr_insert()
189 dat_os_free(data->lib_path, lib_path_size); in dat_sr_insert()
192 if (NULL != data->ia_params) { in dat_sr_insert()
193 dat_os_free(data->ia_params, ia_params_size); in dat_sr_insert()
196 dat_os_free(data, sizeof (DAT_SR_ENTRY)); in dat_sr_insert()
311 DAT_SR_ENTRY *data; in dat_sr_provider_open() local
317 (DAT_DICTIONARY_DATA *) &data); in dat_sr_provider_open()
320 if (0 == data->ref_count) { in dat_sr_provider_open()
321 status = dat_os_library_load(data->lib_path, in dat_sr_provider_open()
322 &data->lib_handle); in dat_sr_provider_open()
324 data->ref_count++; in dat_sr_provider_open()
328 "load library %s\n", data->lib_path); in dat_sr_provider_open()
331 data->init_func = (DAT_PROVIDER_INIT_FUNC) in dat_sr_provider_open()
332 dat_os_library_sym(data->lib_handle, in dat_sr_provider_open()
334 data->fini_func = (DAT_PROVIDER_FINI_FUNC) in dat_sr_provider_open()
335 dat_os_library_sym(data->lib_handle, in dat_sr_provider_open()
338 if (NULL != data->init_func) { in dat_sr_provider_open()
339 (*data->init_func)(&data->info, in dat_sr_provider_open()
340 data->ia_params); in dat_sr_provider_open()
343 data->ref_count++; in dat_sr_provider_open()
363 DAT_SR_ENTRY *data; in dat_sr_provider_close() local
369 (DAT_DICTIONARY_DATA *)&data); in dat_sr_provider_close()
372 if (1 == data->ref_count) { in dat_sr_provider_close()
373 if (NULL != data->fini_func) { in dat_sr_provider_close()
374 (*data->fini_func)(&data->info); in dat_sr_provider_close()
377 status = dat_os_library_unload(data->lib_handle); in dat_sr_provider_close()
379 data->ref_count--; in dat_sr_provider_close()
382 data->ref_count--; in dat_sr_provider_close()