| /* SPDX-License-Identifier: GPL-2.0-only */ | |
| /* | |
| * AppArmor security module | |
| * | |
| * This file contains AppArmor inet/inet6 fine grained mediation | |
| * | |
| * Copyright 2024 Canonical Ltd. | |
| * | |
| * This program is free software; you can redistribute it and/or | |
| * modify it under the terms of the GNU General Public License as | |
| * published by the Free Software Foundation, version 2 of the | |
| * License. | |
| */ | |
| #ifndef __AA_AF_INET_H | |
| #define __AA_AF_INET_H | |
| #include "label.h" | |
| int aa_inet_sock_perm(const char *op, u32 request, struct socket *sock); | |
| int aa_inet_create_perm(struct aa_label *label, int family, int type, | |
| int protocol); | |
| int aa_inet_bind_perm(struct socket *sock, struct sockaddr *address, | |
| int addrlen); | |
| int aa_inet_connect_perm(struct socket *sock, struct sockaddr *address, | |
| int addrlen); | |
| int aa_inet_listen_perm(struct socket *sock, int backlog); | |
| int aa_inet_accept_perm(struct socket *sock, struct socket *newsock); | |
| int aa_inet_msg_perm(const char *op, u32 request, struct socket *sock, | |
| struct msghdr *msg, int size); | |
| int aa_inet_opt_perm(const char *op, u32 request, struct socket *sock, int level, | |
| int optname); | |
| int aa_inet_file_perm(const struct cred *subj_cred, | |
| struct aa_label *label, const char *op, u32 request, | |
| struct socket *sock); | |
| #endif /* __AA_AF_INET_H */ |