projects/linux·blob master · refs

34 lines · 839 B

1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Landlock LSM - Network management and hooks
4 *
5 * Copyright © 2022-2023 Huawei Tech. Co., Ltd.
6 */
7
8#ifndef _SECURITY_LANDLOCK_NET_H
9#define _SECURITY_LANDLOCK_NET_H
10
11#include "common.h"
12#include "ruleset.h"
13#include "setup.h"
14
15#if IS_ENABLED(CONFIG_INET)
16__init void landlock_add_net_hooks(void);
17
18int landlock_append_net_rule(struct landlock_ruleset *const ruleset,
19 const u16 port, access_mask_t access_rights,
20 const u32 flags);
21#else /* IS_ENABLED(CONFIG_INET) */
22static inline void landlock_add_net_hooks(void)
23{
24}
25
26static inline int
27landlock_append_net_rule(struct landlock_ruleset *const ruleset, const u16 port,
28 access_mask_t access_rights, const u32 flags)
29{
30 return -EAFNOSUPPORT;
31}
32#endif /* IS_ENABLED(CONFIG_INET) */
33
34#endif /* _SECURITY_LANDLOCK_NET_H */