Lines Matching defs:dd
77 static void devinfo_free_dev(struct devinfo_i_dev *dd);
171 struct devinfo_i_dev *dd;
227 if ((dd = calloc(1, sizeof(*dd))) == NULL)
229 dd->dd_dev.dd_handle = udev.dv_handle;
230 dd->dd_dev.dd_parent = udev.dv_parent;
231 dd->dd_dev.dd_devflags = udev.dv_devflags;
232 dd->dd_dev.dd_flags = udev.dv_flags;
233 dd->dd_dev.dd_state = udev.dv_state;
237 dd->dd_name = NULL;
238 dd->dd_desc = NULL;
239 dd->dd_drivername = NULL;
240 dd->dd_pnpinfo = NULL;
241 dd->dd_location = NULL;
243 dd->dd_dev.x = dd->x = strdup(walker); \
244 if (dd->x == NULL) { \
245 devinfo_free_dev(dd); \
249 devinfo_free_dev(dd); \
260 TAILQ_INSERT_TAIL(&devinfo_dev, dd, dd_link);
374 devinfo_free_dev(struct devinfo_i_dev *dd)
376 free(dd->dd_name);
377 free(dd->dd_desc);
378 free(dd->dd_drivername);
379 free(dd->dd_pnpinfo);
380 free(dd->dd_location);
381 free(dd);
390 struct devinfo_i_dev *dd;
394 while ((dd = TAILQ_FIRST(&devinfo_dev)) != NULL) {
395 TAILQ_REMOVE(&devinfo_dev, dd, dd_link);
396 devinfo_free_dev(dd);
416 struct devinfo_i_dev *dd;
422 TAILQ_FOREACH(dd, &devinfo_dev, dd_link)
423 if (dd->dd_dev.dd_parent == 0)
424 return(&dd->dd_dev);
431 TAILQ_FOREACH(dd, &devinfo_dev, dd_link)
432 if (dd->dd_dev.dd_handle == handle)
433 return(&dd->dd_dev);
474 struct devinfo_i_dev *dd;
477 TAILQ_FOREACH(dd, &devinfo_dev, dd_link)
478 if (dd->dd_dev.dd_parent == parent->dd_handle)
479 if ((error = fn(&dd->dd_dev, arg)) != 0)