rd_helper
rd_helper_t rd_helper; /* private to helper */
rap->rd_helper.rh_dlhandle = dlopen(brandlib,
if (rap->rd_helper.rh_dlhandle == NULL) {
rap->rd_helper.rh_ops = dlsym(rap->rd_helper.rh_dlhandle,
if (rap->rd_helper.rh_ops == NULL) {
(void) dlclose(rap->rd_helper.rh_dlhandle);
rap->rd_helper.rh_dlhandle = NULL;
rap->rd_helper.rh_data = rap->rd_helper.rh_ops->rho_init(rap,
if (rap->rd_helper.rh_data == NULL) {
(void) dlclose(rap->rd_helper.rh_dlhandle);
rap->rd_helper.rh_dlhandle = NULL;
rap->rd_helper.rh_ops = NULL;
if ((rap->rd_helper.rh_ops != NULL) &&
(rap->rd_helper.rh_ops->rho_lmid != LM_ID_NONE))
rap->rd_helper.rh_ops->rho_lmid;
if ((rap->rd_helper.rh_ops != NULL) &&
(rap->rd_helper.rh_ops->rho_loadobj_iter != NULL))
rc_brand = rap->rd_helper.rh_ops->rho_loadobj_iter(
rap->rd_helper.rh_data, cb, client_data);
if (rap->rd_helper.rh_ops != NULL)
return (rap->rd_helper.rh_ops->rho_get_dyns(
rap->rd_helper.rh_data, addr, dynpp, dynpp_sz));
if (rap->rd_helper.rh_dlhandle != NULL) {
rap->rd_helper.rh_ops->rho_fini(rap->rd_helper.rh_data);
(void) dlclose(rap->rd_helper.rh_dlhandle);
if (rap->rd_helper.rh_dlhandle != NULL) {
rap->rd_helper.rh_ops->rho_fini(rap->rd_helper.rh_data);
(void) dlclose(rap->rd_helper.rh_dlhandle);
rap_new->rd_helper.rh_ops = &dummy_ldb32;