Lines Matching defs:ud

176 	struct sndstat_userdev *ud;
180 while ((ud = TAILQ_FIRST(&pf->userdev_list)) != NULL) {
181 TAILQ_REMOVE(&pf->userdev_list, ud, link);
182 free(ud->provider, M_DEVBUF);
183 free(ud->desc, M_DEVBUF);
184 free(ud->devnode, M_DEVBUF);
185 free(ud->nameunit, M_DEVBUF);
186 nvlist_destroy(ud->provider_nvl);
187 free(ud, M_DEVBUF);
301 struct sndstat_userdev *ud;
303 ud = sndstat_line2userdev(pf, line, strlen(line));
304 if (ud == NULL)
308 TAILQ_INSERT_TAIL(&pf->userdev_list, ud, link);
600 sndstat_build_userland_nvlist(struct sndstat_userdev *ud, nvlist_t **dip)
612 nvlist_add_number(di, SNDST_DSPS_PCHAN, ud->pchan);
613 nvlist_add_number(di, SNDST_DSPS_RCHAN, ud->rchan);
614 nvlist_add_string(di, SNDST_DSPS_NAMEUNIT, ud->nameunit);
616 di, SNDST_DSPS_DEVNODE, ud->devnode);
617 nvlist_add_string(di, SNDST_DSPS_DESC, ud->desc);
618 if (ud->pchan != 0) {
620 ud->info_play.min_rate);
622 ud->info_play.max_rate);
624 ud->info_play.formats);
625 diinfo = sndstat_create_diinfo_nv(ud->info_play.min_rate,
626 ud->info_play.max_rate, ud->info_play.formats,
627 ud->info_play.min_chn, ud->info_play.max_chn);
633 if (ud->rchan != 0) {
635 ud->info_rec.min_rate);
637 ud->info_rec.max_rate);
639 ud->info_rec.formats);
640 diinfo = sndstat_create_diinfo_nv(ud->info_rec.min_rate,
641 ud->info_rec.max_rate, ud->info_rec.formats,
642 ud->info_rec.min_chn, ud->info_rec.max_chn);
649 (ud->provider != NULL) ? ud->provider : "");
650 if (ud->provider_nvl != NULL)
652 di, SNDST_DSPS_PROVIDER_INFO, ud->provider_nvl);
702 struct sndstat_userdev *ud;
706 TAILQ_FOREACH(ud, &pf->userdev_list, link) {
709 err = sndstat_build_userland_nvlist(ud, &di);
896 sndstat_dsp_unpack_nvlist(const nvlist_t *nvlist, struct sndstat_userdev *ud)
954 ud->provider = (provider != NULL) ? strdup(provider, M_DEVBUF) : NULL;
955 ud->devnode = strdup(devnode, M_DEVBUF);
956 ud->nameunit = strdup(nameunit, M_DEVBUF);
957 ud->desc = strdup(desc, M_DEVBUF);
958 ud->pchan = pchan;
959 ud->rchan = rchan;
960 ud->info_play.min_rate = pminrate;
961 ud->info_play.max_rate = pmaxrate;
962 ud->info_play.formats = pfmts;
963 ud->info_play.min_chn = pminchn;
964 ud->info_play.max_chn = pmaxchn;
965 ud->info_rec.min_rate = rminrate;
966 ud->info_rec.max_rate = rmaxrate;
967 ud->info_rec.formats = rfmts;
968 ud->info_rec.min_chn = rminchn;
969 ud->info_rec.max_chn = rmaxchn;
970 ud->provider_nvl = provider_nvl;
1009 struct sndstat_userdev *ud =
1010 malloc(sizeof(*ud), M_DEVBUF, M_WAITOK);
1011 err = sndstat_dsp_unpack_nvlist(dsps[i], ud);
1016 TAILQ_INSERT_TAIL(&pf->userdev_list, ud, link);
1098 struct sndstat_userdev *ud;
1101 ud = malloc(sizeof(*ud), M_DEVBUF, M_WAITOK|M_ZERO);
1103 ud->provider = NULL;
1104 ud->provider_nvl = NULL;
1108 ud->nameunit = strndup(line, e - line, M_DEVBUF);
1109 ud->devnode = malloc(e - line + 1, M_DEVBUF, M_WAITOK | M_ZERO);
1110 strlcat(ud->devnode, ud->nameunit, e - line + 1);
1120 ud->desc = strndup(line, e - line, M_DEVBUF);
1132 ud->pchan = 1;
1135 ud->rchan = 1;
1137 return (ud);
1140 free(ud->nameunit, M_DEVBUF);
1141 free(ud->devnode, M_DEVBUF);
1142 free(ud->desc, M_DEVBUF);
1143 free(ud, M_DEVBUF);
1407 struct sndstat_userdev *ud;
1418 TAILQ_FOREACH(ud, &pf->userdev_list, link) {
1419 const char *caps = (ud->pchan && ud->rchan) ?
1421 (ud->pchan ? "play" : (ud->rchan ? "rec" : ""));
1422 sbuf_printf(s, "%s: <%s>", ud->nameunit, ud->desc);