[PATCH v1] secontext: print context of Unix socket's sun_path field
Dmitry V. Levin
ldv at altlinux.org
Thu Jun 30 16:15:27 UTC 2022
On Tue, Jun 21, 2022 at 08:43:00AM +0200, Renaud Métrich wrote:
> Signed-off-by: Renaud Métrich <rmetrich at redhat.com>
> ---
> src/sockaddr.c | 3 +++
> tests/gen_tests.in | 4 ++++
> tests/secontext.c | 49 +++++++++++++++++++++++++++++++++++++++++
> tests/secontext.h | 12 +++++++++++
> tests/sockname.c | 54 ++++++++++++++++++++++++++++++----------------
> 5 files changed, 103 insertions(+), 19 deletions(-)
>
> diff --git a/src/sockaddr.c b/src/sockaddr.c
> index a6e698d4b..cf770a5e7 100644
> --- a/src/sockaddr.c
> +++ b/src/sockaddr.c
> @@ -63,6 +63,8 @@
> #include "xlat/mctp_addrs.h"
> #include "xlat/mctp_nets.h"
>
> +#include "secontext.h"
> +
> #define SIZEOF_SA_FAMILY sizeof_field(struct sockaddr, sa_family)
>
> struct sockaddr_rxrpc {
> @@ -115,6 +117,7 @@ print_sockaddr_data_un(struct tcb *tcp, const void *const buf, const int addrlen
> if (sa_un->sun_path[0]) {
> print_quoted_string(sa_un->sun_path, path_len + 1,
> QUOTE_0_TERMINATED);
> + selinux_printfilecon(tcp, sa_un->sun_path);
Interesting, selinux_printfilecon takes a NUL-terminated path, but
sa_un->sun_path is not necessarily NUL-terminated. Also, path_len
could potentially be less than sizeof(sa_un->sun_path) - 1,
I wonder what selinux_printfilecon would print in that case.
--
ldv
More information about the Strace-devel
mailing list