From 23df78054433b7a18a512c649a76e426d275c05a Mon Sep 17 00:00:00 2001 From: Zygmunt Krynicki Date: Thu, 23 Jan 2025 13:31:59 +0100 Subject: [PATCH] tests: add tool for observing the profile of a given command Using gdb in batch mode, put a breakpoint on _start and spawn the process. Then using the built-in python interpreter print the confinement label on the process and terminate everything. Signed-off-by: Zygmunt Krynicki --- .image-garden.mk | 3 +++ tests/bin/actual-profile-of | 9 +++++++++ 2 files changed, 12 insertions(+) create mode 100755 tests/bin/actual-profile-of diff --git a/.image-garden.mk b/.image-garden.mk index e46488143..04d12ab3f 100644 --- a/.image-garden.mk +++ b/.image-garden.mk @@ -19,6 +19,7 @@ packages: - dosfstools - flake8 - flex +- gdb - gettext - libdbus-1-dev - libpam0g-dev @@ -57,6 +58,7 @@ packages: - flex - gcc - gcc-c++ +- gdb - gettext - gobject-introspection - libtool @@ -88,6 +90,7 @@ packages: - dejagnu - dosfstools - flex +- gdb - gettext - libstdc++-static - libtool diff --git a/tests/bin/actual-profile-of b/tests/bin/actual-profile-of new file mode 100755 index 000000000..4c717072c --- /dev/null +++ b/tests/bin/actual-profile-of @@ -0,0 +1,9 @@ +#!/bin/sh +exec gdb \ + --quiet \ + --batch \ + --eval-command='set breakpoint pending on' \ + --eval-command='break _start' \ + --eval-command='run' \ + --eval-command='python import os; os.fdopen(3, "wt").write(open("/proc/{}/attr/current".format(gdb.selected_inferior().pid), "rt").read())' \ + "$@" 3>/dev/stdout 1>/dev/null 2>/dev/null