]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/core/selinux-access.h
man: improve wording of systemctl's --after/--before
[thirdparty/systemd.git] / src / core / selinux-access.h
CommitLineData
e2417e41
DW
1/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
2
cad45ba1 3#pragma once
e2417e41
DW
4
5/***
6 This file is part of systemd.
7
8 Copyright 2012 Dan Walsh
9
10 systemd is free software; you can redistribute it and/or modify it
03e22642
KS
11 under the terms of the GNU Lesser General Public License as published by
12 the Free Software Foundation; either version 2.1 of the License, or
e2417e41
DW
13 (at your option) any later version.
14
15 systemd is distributed in the hope that it will be useful, but
16 WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
03e22642 18 Lesser General Public License for more details.
e2417e41 19
03e22642 20 You should have received a copy of the GNU Lesser General Public License
e2417e41
DW
21 along with systemd; If not, see <http://www.gnu.org/licenses/>.
22***/
23
718db961
LP
24#include "sd-bus.h"
25#include "bus-error.h"
26#include "bus-util.h"
ffc227c9
LP
27
28void selinux_access_free(void);
29
ebcf1f97 30int selinux_generic_access_check(sd_bus *bus, sd_bus_message *message, const char *path, const char *permission, sd_bus_error *error);
cad45ba1
LP
31
32#ifdef HAVE_SELINUX
33
ebcf1f97
LP
34#define selinux_access_check(bus, message, permission, error) \
35 selinux_generic_access_check(bus, message, NULL, permission, error)
36#define selinux_unit_access_check(unit, bus, message, permission, error) \
37 ({ Unit *_unit = (unit); selinux_generic_access_check(bus, message, _unit->fragment_path ?: _unit->fragment_path, permission, error); })
cad45ba1
LP
38
39#else
40
ebcf1f97
LP
41#define selinux_access_check(bus, message, permission, error) 0
42#define selinux_unit_access_check(unit, bus, message, permission, error) 0
cad45ba1 43
e2417e41 44#endif