In data giovedì 25 giugno 2015 15:56:59, Richard W.M. Jones ha scritto:
This refines the previous commit by shutting down the daemon cleanly at the end of the test (assuming the test was successful). It repurposes the 'internal_exit' API for this, which was previously used by the now defunct --enable-valgrind-daemon functionality. --- daemon/internal.c | 7 +------ generator/actions.ml | 3 ++- tests/daemon/captive-daemon.pm.in | 12 +++++------- 3 files changed, 8 insertions(+), 14 deletions(-)
diff --git a/daemon/internal.c b/daemon/internal.c index 781366d..5fb3d54 100644 --- a/daemon/internal.c +++ b/daemon/internal.c @@ -46,14 +46,9 @@ do_internal_autosync (void) }
/* NB: Only called when valgrinding the daemon. */ -int +int __attribute__((noreturn)) do_internal_exit (void) { - if (!autosync_umount) { - reply_with_error ("guestfsd -r flag used, ignoring"); - return -1; - } - /* Send a reply before exiting so the protocol doesn't get confused. */ reply (NULL, NULL);
diff --git a/generator/actions.ml b/generator/actions.ml index 24e84b5..a48d8ce 100644 --- a/generator/actions.ml +++ b/generator/actions.ml @@ -11951,7 +11951,8 @@ This function is used internally when setting up the appliance." }; name = "internal_exit"; added = (1, 23, 30); style = RErr, [], []; proc_nr = Some 414; - visibility = VInternal; + (* Really VInternal, but we need to use it from the Perl bindings. XXX *) + visibility = VDebug; cancellable = true; shortdesc = "cause the daemon to exit (internal use only)"; longdesc = "\
An option here could be turning internal_exit from a daemon API into a debug subcommand. It would be undocumented as it should, not leaving it exposed more. Thanks, -- Pino Toscano