Lines Matching defs:dsp

80 static void ds_free_dslibentry(dslibentry_t *dsp, int force_unreg);
82 static void ds_string_arg(vlds_string_t *dsp, char *str);
89 dslibentry_t *dsp;
91 for (i = 0, dsp = dslibtab; i < ndslib; i++, dsp++) {
92 if (hdl == dsp->dsl_hdl)
93 return (dsp);
102 dslibentry_t *dsp;
104 if ((dsp = ds_hdl_to_dslibentry(NULL)) != NULL)
105 return (dsp);
112 dsp = &dslibtab[ndslib];
113 (void) memset(dsp, 0, (newndslib - ndslib) * sizeof (dslibentry_t));
115 return (dsp);
122 dslibentry_t *dsp;
126 for (i = 0, dsp = dslibtab; i < ndslib; i++, dsp++) {
127 if (dsp->dsl_hdl != NULL &&
128 strcmp(dsp->dsl_service, service) == 0 &&
129 (dsp->dsl_flags & VLDS_REG_CLIENT) == is_client_flag) {
140 dslibentry_t *dsp;
143 for (i = 0, dsp = dslibtab; i < ndslib; i++, dsp++) {
144 if (dsp->dsl_hdl != NULL &&
145 strcmp(dsp->dsl_service, service) == 0 &&
146 (dsp->dsl_flags & VLDS_REG_CLIENT) == is_client_flag) {
147 return (dsp);
156 dslibentry_t *dsp, *orig_dsp, saved_orig;
158 if ((dsp = ds_hdl_to_dslibentry(hdl)) != NULL) {
159 dsp->dsl_tflags |= DSL_ENTRY_INUSE;
160 return (dsp);
182 if ((dsp = ds_new_dslibentry()) == NULL)
185 *dsp = saved_orig;
186 dsp->dsl_service = strdup(saved_orig.dsl_service);
187 dsp->dsl_hdl = hdl;
188 return (dsp);
196 ds_free_dslibentry(dslibentry_t *dsp, int force_unreg)
206 nhdls = ds_service_count(dsp->dsl_service,
207 (dsp->dsl_flags & VLDS_REG_CLIENT) != 0);
210 dsp->dsl_hdl = NULL;
211 if (dsp->dsl_service) {
212 free(dsp->dsl_service);
214 (void) memset(dsp, 0, sizeof (dslibentry_t));
216 dsp->dsl_tflags &= ~DSL_ENTRY_INUSE;
233 dslibentry_t *dsp;
251 if ((dsp = ds_register_dslibentry(hdl,
253 reg_cb = dsp->dsl_ops.ds_reg_cb;
254 cb_arg = dsp->dsl_ops.cb_arg;
272 if ((dsp = ds_hdl_to_dslibentry(hdl)) != NULL) {
273 unreg_cb = dsp->dsl_ops.ds_unreg_cb;
274 cb_arg = dsp->dsl_ops.cb_arg;
275 ds_free_dslibentry(dsp, 0);
286 if ((dsp = ds_hdl_to_dslibentry(hdl)) != NULL) {
287 data_cb = dsp->dsl_ops.ds_data_cb;
288 cb_arg = dsp->dsl_ops.cb_arg;
303 ds_string_arg(vlds_string_t *dsp, char *str)
306 dsp->vlds_strp = NULL;
307 dsp->vlds_strlen = 0;
309 dsp->vlds_strp = PTRTOUINT64(str);
310 dsp->vlds_strlen = strlen(str) + 1;
356 dslibentry_t *dsp;
384 if ((dsp = ds_new_dslibentry()) == NULL) {
440 dsp->dsl_hdl = hdl;
441 dsp->dsl_flags = flags;
442 dsp->dsl_tflags = 0;
443 dsp->dsl_service = strdup(cap->svc_id);
444 dsp->dsl_ops = *ops;
541 dslibentry_t *dsp;
545 if ((dsp = ds_hdl_to_dslibentry(hdl)) != NULL) {
546 ds_free_dslibentry(dsp, 1);
709 dslibentry_t *dsp;
722 for (i = 0, dsp = dslibtab; i < ndslib; i++, dsp++) {
723 if (dsp->dsl_hdl == NULL)
725 if (dsp->dsl_service) {
726 free(dsp->dsl_service);