qemu-ga patch queue for 2.5

* fixes for guest-exec gspawn() usage:
   - inherit default lookup path by default instead of
     explicitly defining it as being empty.
   - don't inherit default PATH when PATH/ENV are explicit
 
 v2:
 
 * added fix for w32 'make install' target
 * added version check for new g_spawn() flag
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJWS6sfAAoJEDNTyc7xCLWETyAH/R0gd9nJVJt4EXT5vX+7mp/Q
 n+Uw056wT7TnnFhvCkdYniO45F4K5JCrNw1ocrYmWSKRAUBuuCEZTut2X5fJZjRd
 8FWnidA3KawewDatCIRArHtdcaX1vKt5KMOpEXGmKof+R5Sqdp4y8Pj+EpJTZDdi
 Nha9dZOgwq/8OedeVXyeEjaMWCIMQxH7nN1r3uf7KVWCJ3b4fdXy13Y3MU7ynvx6
 WQry1zW3Ll/5O6wEBfX+0PAZEGQKFc5xG+gmTeUssvfhu8S+lI4Y2zF+Ko9lEQyq
 /9318f41EFLl8/hsmzhAgaQ6JX5tfgPrqOtPSZKEo0gfbTm3bjRsScwcNorD2Sw=
 =+qcv
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/mdroth/tags/qga-pull-2015-11-13-v2-tag' into staging

qemu-ga patch queue for 2.5

* fixes for guest-exec gspawn() usage:
  - inherit default lookup path by default instead of
    explicitly defining it as being empty.
  - don't inherit default PATH when PATH/ENV are explicit

v2:

* added fix for w32 'make install' target
* added version check for new g_spawn() flag

# gpg: Signature made Tue 17 Nov 2015 22:33:03 GMT using RSA key ID F108B584
# gpg: Good signature from "Michael Roth <flukshun@gmail.com>"
# gpg:                 aka "Michael Roth <mdroth@utexas.edu>"
# gpg:                 aka "Michael Roth <mdroth@linux.vnet.ibm.com>"

* remotes/mdroth/tags/qga-pull-2015-11-13-v2-tag:
  makefile: fix w32 install target for qemu-ga
  qga: allow to lookup in PATH from the passed envp for guest-exec
  qga: fix for default env processing for guest-exec

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Peter Maydell 2015-11-18 12:47:29 +00:00
commit ab9b872ab3
2 changed files with 8 additions and 2 deletions

View file

@ -440,7 +440,10 @@ endif
install: all $(if $(BUILD_DOCS),install-doc) \
install-datadir install-localstatedir
ifneq ($(TOOLS),)
$(call install-prog,$(TOOLS),$(DESTDIR)$(bindir))
$(call install-prog,$(filter-out qemu-ga,$(TOOLS)),$(DESTDIR)$(bindir))
ifneq (,$(findstring qemu-ga,$(TOOLS)))
$(call install-prog,qemu-ga$(EXESUF),$(DESTDIR)$(bindir))
endif
endif
ifneq ($(CONFIG_MODULES),)
$(INSTALL_DIR) "$(DESTDIR)$(qemu_moddir)"

View file

@ -398,9 +398,12 @@ GuestExec *qmp_guest_exec(const char *path,
arglist.next = has_arg ? arg : NULL;
argv = guest_exec_get_args(&arglist, true);
envp = guest_exec_get_args(has_env ? env : NULL, false);
envp = has_env ? guest_exec_get_args(env, false) : NULL;
flags = G_SPAWN_SEARCH_PATH | G_SPAWN_DO_NOT_REAP_CHILD;
#if GLIB_CHECK_VERSION(2, 33, 2)
flags |= G_SPAWN_SEARCH_PATH_FROM_ENVP;
#endif
if (!has_output) {
flags |= G_SPAWN_STDOUT_TO_DEV_NULL | G_SPAWN_STDERR_TO_DEV_NULL;
}