xref: /third_party/eudev/src/shared/udev-util.h (revision 99ca880a)
1/***
2  This file is part of eudev, forked from systemd.
3
4  Copyright 2013 Zbigniew Jędrzejewski-Szmek
5
6  systemd is free software; you can redistribute it and/or modify it
7  under the terms of the GNU Lesser General Public License as published by
8  the Free Software Foundation; either version 2.1 of the License, or
9  (at your option) any later version.
10
11  systemd is distributed in the hope that it will be useful, but
12  WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  Lesser General Public License for more details.
15
16  You should have received a copy of the GNU Lesser General Public License
17  along with systemd; If not, see <http://www.gnu.org/licenses/>.
18***/
19
20#pragma once
21
22#include "udev.h"
23#include "util.h"
24
25DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev*, udev_unref);
26DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_device*, udev_device_unref);
27DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_enumerate*, udev_enumerate_unref);
28DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_event*, udev_event_unref);
29DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_rules*, udev_rules_unref);
30DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_ctrl*, udev_ctrl_unref);
31DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_ctrl_connection*, udev_ctrl_connection_unref);
32DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_ctrl_msg*, udev_ctrl_msg_unref);
33DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_monitor*, udev_monitor_unref);
34
35#define _cleanup_udev_unref_ _cleanup_(udev_unrefp)
36#define _cleanup_udev_device_unref_ _cleanup_(udev_device_unrefp)
37#define _cleanup_udev_enumerate_unref_ _cleanup_(udev_enumerate_unrefp)
38#define _cleanup_udev_event_unref_ _cleanup_(udev_event_unrefp)
39#define _cleanup_udev_rules_unref_ _cleanup_(udev_rules_unrefp)
40#define _cleanup_udev_ctrl_unref_ _cleanup_(udev_ctrl_unrefp)
41#define _cleanup_udev_ctrl_connection_unref_ _cleanup_(udev_ctrl_connection_unrefp)
42#define _cleanup_udev_ctrl_msg_unref_ _cleanup_(udev_ctrl_msg_unrefp)
43#define _cleanup_udev_monitor_unref_ _cleanup_(udev_monitor_unrefp)
44#define _cleanup_udev_list_cleanup_ _cleanup_(udev_list_cleanup)
45