[Libguestfs] [PATCH] v2v: Fix invalid regexp in file_contexts file (RHBZ#1374232).
Richard W.M. Jones
rjones at redhat.com
Mon Mar 6 15:11:13 UTC 2017
On Mon, Mar 06, 2017 at 03:48:06PM +0100, Pino Toscano wrote:
> On Monday, 6 March 2017 11:43:14 CET Richard W.M. Jones wrote:
> > Instead of just documenting this bug, fix it in the file_contexts
> > file.
> >
> > Replaces commit ad3c8fe7f49c4991e1aa536856a1a408f55d5409.
> > ---
> > customize/SELinux_relabel.ml | 19 +++++++++++++++++++
> > v2v/virt-v2v.pod | 11 -----------
> > 2 files changed, 19 insertions(+), 11 deletions(-)
> >
> > diff --git a/customize/SELinux_relabel.ml b/customize/SELinux_relabel.ml
> > index fa9603c..69a4779 100644
> > --- a/customize/SELinux_relabel.ml
> > +++ b/customize/SELinux_relabel.ml
> > @@ -44,6 +44,25 @@ let relabel (g : G.guestfs) =
> > let specfile =
> > sprintf "/etc/selinux/%s/contexts/files/file_contexts" policy in
> >
> > + (* RHEL 6.2 - 6.5 had a malformed specfile that contained the
> > + * invalid regular expression "/var/run/spice-vdagentd.\pid"
> > + * (instead of "\.p"). This stops setfiles from working on
> > + * the guest.
> > + *
> > + * Because an SELinux relabel writes all over the filesystem,
> > + * it seems reasonable to fix this problem in the specfile
> > + * at the same time. (RHBZ#1374232)
> > + *)
> > + if g#grep ~fixed:true ".\\p" specfile <> [||] then (
>
> Should the search&replace be restricted to e.g. "spice-vdagentd.\pid",
> to avoid possible breaks with other versions of the contexts file?
Assuming it's a list of regular expressions (ie. the format doesn't
change radically) then \p would never be valid. However yes I can
tighten up the test.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
libguestfs lets you edit virtual machines. Supports shell scripting,
bindings from many languages. http://libguestfs.org
More information about the Libguestfs
mailing list