Pino Toscano
2014-Sep-22 08:49 UTC
[Libguestfs] [PATCH] daemon: augeas: filter out AUG_NO_STDINC from aug-init (RHBZ#1144927)
The lenses in our custom path need the system lens for base definitions. Disabling the system path was worthless anyway, since our API does not allow user-specified custom paths. The only possible use for AUG_NO_STDINC to aug-init could have been to not load the lenses right at init time loading them later; however, this is what the AUG_NO_LOAD flag (= 32) does already. --- daemon/augeas.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/daemon/augeas.c b/daemon/augeas.c index ce49726..4f1d9a8 100644 --- a/daemon/augeas.c +++ b/daemon/augeas.c @@ -133,6 +133,11 @@ do_aug_init (const char *root, int flags) return -1; } + /* Filter out AUG_NO_STDINC, since the lenses in our custom path + * need the lenses from the system path. + */ + flags &= ~AUG_NO_STDINC; + /* Pass AUG_NO_ERR_CLOSE so we can display detailed errors. */ aug = aug_init (buf, "/usr/share/guestfs/", flags | AUG_NO_ERR_CLOSE); -- 1.9.3
Richard W.M. Jones
2014-Sep-22 12:50 UTC
Re: [Libguestfs] [PATCH] daemon: augeas: filter out AUG_NO_STDINC from aug-init (RHBZ#1144927)
On Mon, Sep 22, 2014 at 10:49:42AM +0200, Pino Toscano wrote:> The lenses in our custom path need the system lens for base > definitions. Disabling the system path was worthless anyway, since our > API does not allow user-specified custom paths. > > The only possible use for AUG_NO_STDINC to aug-init could have been to > not load the lenses right at init time loading them later; however, this > is what the AUG_NO_LOAD flag (= 32) does already. > --- > daemon/augeas.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/daemon/augeas.c b/daemon/augeas.c > index ce49726..4f1d9a8 100644 > --- a/daemon/augeas.c > +++ b/daemon/augeas.c > @@ -133,6 +133,11 @@ do_aug_init (const char *root, int flags) > return -1; > } > > + /* Filter out AUG_NO_STDINC, since the lenses in our custom path > + * need the lenses from the system path. > + */ > + flags &= ~AUG_NO_STDINC;This is wrong. It should be possible to specify this, plus it is specified in the API. The right solution is to get all the required Augeas lenses into Fedora & RHEL 7.1 (backporting the upstream patches if necessary), then remove the hacks from libguestfs. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-builder quickly builds VMs from scratch http://libguestfs.org/virt-builder.1.html
Pino Toscano
2014-Sep-22 12:56 UTC
Re: [Libguestfs] [PATCH] daemon: augeas: filter out AUG_NO_STDINC from aug-init (RHBZ#1144927)
On Monday 22 September 2014 13:50:18 Richard W.M. Jones wrote:> On Mon, Sep 22, 2014 at 10:49:42AM +0200, Pino Toscano wrote: > > The lenses in our custom path need the system lens for base > > definitions. Disabling the system path was worthless anyway, since > > our API does not allow user-specified custom paths. > > > > The only possible use for AUG_NO_STDINC to aug-init could have been > > to not load the lenses right at init time loading them later; > > however, this is what the AUG_NO_LOAD flag (= 32) does already. > > --- > > > > daemon/augeas.c | 5 +++++ > > 1 file changed, 5 insertions(+) > > > > diff --git a/daemon/augeas.c b/daemon/augeas.c > > index ce49726..4f1d9a8 100644 > > --- a/daemon/augeas.c > > +++ b/daemon/augeas.c > > @@ -133,6 +133,11 @@ do_aug_init (const char *root, int flags) > > > > return -1; > > > > } > > > > + /* Filter out AUG_NO_STDINC, since the lenses in our custom path > > + * need the lenses from the system path. > > + */ > > + flags &= ~AUG_NO_STDINC; > > This is wrong. It should be possible to specify this, plus it is > specified in the API.As I wrote it above, specifying that flag serves no purpose at all. I don't see how describing it in API means it will actually be useful, especially with the current aug_* API.> The right solution is to get all the required Augeas lenses into > Fedora & RHEL 7.1 (backporting the upstream patches if necessary), > then remove the hacks from libguestfs.That would imply being incompatible with upstream Augeas, since at least the local LVM lens has changes which are not even accepted upstream (they have been sent though, nobody looked at them yet). -- Pino Toscano
Apparently Analagous Threads
- Re: [PATCH] daemon: augeas: filter out AUG_NO_STDINC from aug-init (RHBZ#1144927)
- Re: [PATCH] daemon: augeas: filter out AUG_NO_STDINC from aug-init (RHBZ#1144927)
- Re: [PATCH] daemon: augeas: filter out AUG_NO_STDINC from aug-init (RHBZ#1144927)
- [PATCH] daemon: Remove custom Augeas lenses.
- [PATCH v3] daemon: Remove custom Augeas lenses.