]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/libsystemd/sd-device/device-util.h
tree-wide: drop license boilerplate
[thirdparty/systemd.git] / src / libsystemd / sd-device / device-util.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
2 #pragma once
3
4 /***
5 This file is part of systemd.
6
7 Copyright 2014-2015 Tom Gundersen <teg@jklm.no>
8 ***/
9
10 #include "util.h"
11
12 #define FOREACH_DEVICE_PROPERTY(device, key, value) \
13 for (key = sd_device_get_property_first(device, &(value)); \
14 key; \
15 key = sd_device_get_property_next(device, &(value)))
16
17 #define FOREACH_DEVICE_TAG(device, tag) \
18 for (tag = sd_device_get_tag_first(device); \
19 tag; \
20 tag = sd_device_get_tag_next(device))
21
22 #define FOREACH_DEVICE_SYSATTR(device, attr) \
23 for (attr = sd_device_get_sysattr_first(device); \
24 attr; \
25 attr = sd_device_get_sysattr_next(device))
26
27 #define FOREACH_DEVICE_DEVLINK(device, devlink) \
28 for (devlink = sd_device_get_devlink_first(device); \
29 devlink; \
30 devlink = sd_device_get_devlink_next(device))
31
32 #define FOREACH_DEVICE(enumerator, device) \
33 for (device = sd_device_enumerator_get_device_first(enumerator); \
34 device; \
35 device = sd_device_enumerator_get_device_next(enumerator))
36
37 #define FOREACH_SUBSYSTEM(enumerator, device) \
38 for (device = sd_device_enumerator_get_subsystem_first(enumerator); \
39 device; \
40 device = sd_device_enumerator_get_subsystem_next(enumerator))