Re: [libvirt] [PATCH] libvirtd: diagnose explicitly requested but missing conf file

2011-07-12 Thread Daniel P. Berrange
On Fri, Jul 08, 2011 at 11:46:11AM -0600, Eric Blake wrote:
> Fixes test regression introduced in commit 8e2e4780.
> 
> * daemon/libvirtd.c (daemonConfigLoad): Add argument.
> (main): Update caller.
> ---
> 
> Pushing under the build-breaker rule, since it is detected by 'make check'.
> 
>  daemon/libvirtd.c |   19 ---
>  1 files changed, 12 insertions(+), 7 deletions(-)

ACK, this looks like the correct fix.

Regards,
Daniel
-- 
|: http://berrange.com  -o-http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org  -o- http://virt-manager.org :|
|: http://autobuild.org   -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org   -o-   http://live.gnome.org/gtk-vnc :|

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list


[libvirt] [PATCH] libvirtd: diagnose explicitly requested but missing conf file

2011-07-08 Thread Eric Blake
Fixes test regression introduced in commit 8e2e4780.

* daemon/libvirtd.c (daemonConfigLoad): Add argument.
(main): Update caller.
---

Pushing under the build-breaker rule, since it is detected by 'make check'.

 daemon/libvirtd.c |   19 ---
 1 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c
index fe0fa27..a4198d9 100644
--- a/daemon/libvirtd.c
+++ b/daemon/libvirtd.c
@@ -1024,11 +1024,13 @@ daemonConfigFree(struct daemonConfig *data)
  */
 static int
 daemonConfigLoad(struct daemonConfig *data,
- const char *filename)
+ const char *filename,
+ bool allow_missing)
 {
 virConfPtr conf;

-if (access(filename, R_OK) == -1 &&
+if (allow_missing &&
+access(filename, R_OK) == -1 &&
 errno == ENOENT)
 return 0;

@@ -1282,6 +1284,7 @@ int main(int argc, char **argv) {
 int ipsock = 0;
 struct daemonConfig *config;
 bool privileged = geteuid() == 0 ? true : false;
+bool implicit_conf = false;

 struct option opts[] = {
 { "verbose", no_argument, &verbose, 1},
@@ -1367,14 +1370,16 @@ int main(int argc, char **argv) {
 exit(EXIT_FAILURE);

 /* No explicit config, so try and find a default one */
-if (remote_config_file == NULL &&
-daemonConfigFilePath(privileged,
- &remote_config_file) < 0)
-exit(EXIT_FAILURE);
+if (remote_config_file == NULL) {
+implicit_conf = true;
+if (daemonConfigFilePath(privileged,
+ &remote_config_file) < 0)
+exit(EXIT_FAILURE);
+}

 /* Read the config file if it exists*/
 if (remote_config_file &&
-daemonConfigLoad(config, remote_config_file) < 0)
+daemonConfigLoad(config, remote_config_file, implicit_conf) < 0)
 exit(EXIT_FAILURE);

 if (config->host_uuid &&
-- 
1.7.4.4

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list