]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/libsystemd/sd-device/device-util.h
tree-wide: drop license boilerplate
[thirdparty/systemd.git] / src / libsystemd / sd-device / device-util.h
CommitLineData
53e1b683 1/* SPDX-License-Identifier: LGPL-2.1+ */
57fa1d09
TG
2#pragma once
3
4/***
5 This file is part of systemd.
6
96df036f 7 Copyright 2014-2015 Tom Gundersen <teg@jklm.no>
57fa1d09
TG
8***/
9
10#include "util.h"
11
57fa1d09
TG
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))
96df036f
TG
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))