From: "Richard W.M. Jones" <rjones(a)redhat.com>
This is just code motion.
---
src/launch-libvirt.c | 24 +++++++++++++++---------
1 file changed, 15 insertions(+), 9 deletions(-)
diff --git a/src/launch-libvirt.c b/src/launch-libvirt.c
index 6ad19de..7db2ce5 100644
--- a/src/launch-libvirt.c
+++ b/src/launch-libvirt.c
@@ -138,6 +138,7 @@ static int make_qcow2_overlay_for_drive (guestfs_h *g, struct drive
*drv);
static void drive_free_priv (void *);
static void set_socket_create_context (guestfs_h *g);
static void clear_socket_create_context (guestfs_h *g);
+static void selinux_warning (guestfs_h *g, const char *func, const char *selinux_op,
const char *data);
static int
launch_libvirt (guestfs_h *g, const char *libvirt_uri)
@@ -588,30 +589,27 @@ set_socket_create_context (guestfs_h *g)
context_t con;
if (getcon (&scon) == -1) {
- debug (g, "%s: getcon failed: %m", __func__);
+ selinux_warning (g, __func__, "getcon", NULL);
return;
}
con = context_new (scon);
if (!con) {
- debug (g, "%s: context_new failed: %m", __func__);
+ selinux_warning (g, __func__, "context_new", scon);
goto out1;
}
if (context_type_set (con, SOCKET_CONTEXT) == -1) {
- debug (g, "%s: context_type_set failed: %m", __func__);
+ selinux_warning (g, __func__, "context_type_set", scon);
goto out2;
}
-#define SETSOCKCREATECON_WARNING_NOTICE "[you can ignore this UNLESS using SELinux +
sVirt]"
-
/* Note that setsockcreatecon sets the per-thread socket creation
* context (/proc/self/task/<tid>/attr/sockcreate) so this is
* thread-safe.
*/
if (setsockcreatecon (context_str (con)) == -1) {
- debug (g, "%s: setsockcreatecon (%s) failed: %m %s",
- __func__, context_str (con), SETSOCKCREATECON_WARNING_NOTICE);
+ selinux_warning (g, __func__, "setsockcreatecon", context_str (con));
goto out2;
}
@@ -625,8 +623,7 @@ static void
clear_socket_create_context (guestfs_h *g)
{
if (setsockcreatecon (NULL) == -1)
- debug (g, "%s: setsockcreatecon (NULL) failed: %m %s", __func__,
- SETSOCKCREATECON_WARNING_NOTICE);
+ selinux_warning (g, __func__, "setsockcreatecon", "NULL");
}
#else /* !HAVE_LIBSELINUX */
@@ -1454,6 +1451,15 @@ libvirt_error (guestfs_h *g, const char *fs, ...)
free (msg);
}
+static void
+selinux_warning (guestfs_h *g, const char *func,
+ const char *selinux_op, const char *data)
+{
+ debug (g, "%s: %s failed: %s: %m"
+ " [you can ignore this UNLESS using SELinux + sVirt]",
+ func, selinux_op, data ? data : "(none)");
+}
+
/* This backend assumes virtio-scsi is available. */
static int
max_disks_libvirt (guestfs_h *g)
--
1.8.1.2