From 315d974f414c74456adbf60eb9912a8908421939 Mon Sep 17 00:00:00 2001
From: Evan Broder <broder@mit.edu>
Date: Thu, 5 Feb 2009 03:24:56 -0500
Subject: [PATCH 1/1] For now, revert r2093-2095, which were committed by
 accident; I'm not comfortable with them sitting on HEAD
 when I don't have time to test them.

svn path=/trunk/packages/invirt-remote/; revision=2097
---
 debian/changelog                    |    9 ---------
 host/usr/sbin/invirt-remote         |    4 ++--
 host/usr/sbin/invirt-vmcontrol      |    4 ----
 server/usr/sbin/invirt-remote-proxy |   14 +++++++-------
 4 files changed, 9 insertions(+), 22 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 92d081e..31aa76a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,12 +1,3 @@
-invirt-remote (0.3.2) unstable; urgency=low
-
-  * Don't pass untrusted arguments to xm info.
-  * Exit with a non-0 error code on the host if there's an error.
-  * Always exec instead of fork&exec on the remctl server so that return
-    codes get passed on.
-
- -- Evan Broder <broder@mit.edu>  Sat, 31 Jan 2009 03:51:54 -0500
-
 invirt-remote (0.3.1) unstable; urgency=low
 
   * invirt.remote.bcast: provide stderr text when remctl fails
diff --git a/host/usr/sbin/invirt-remote b/host/usr/sbin/invirt-remote
index dcac451..8511f60 100755
--- a/host/usr/sbin/invirt-remote
+++ b/host/usr/sbin/invirt-remote
@@ -21,7 +21,7 @@ case "$TYPE" in
                 COMMAND=/usr/sbin/invirt-listvms
 	        ;;
 	    info)
-		exec /usr/sbin/xm info
+		COMMAND=/usr/sbin/xm
 		;;
             vnccert)
                 COMMAND=/usr/bin/invirt-vnc-getcert
@@ -38,4 +38,4 @@ case "$TYPE" in
         ;;
 esac
 
-exec "$COMMAND" "$SERVICE" "$@"
+$COMMAND "$SERVICE" "$@"
diff --git a/host/usr/sbin/invirt-vmcontrol b/host/usr/sbin/invirt-vmcontrol
index 9080dfc..70bff12 100755
--- a/host/usr/sbin/invirt-vmcontrol
+++ b/host/usr/sbin/invirt-vmcontrol
@@ -12,10 +12,6 @@ ORIGMACHINE="$1"
 ACTION="$2"
 MACHINE="d_$ORIGMACHINE"
 
-xm () {
-    command xm "$@" || exit 35
-}
-
 case "$ACTION" in
     list|vcpu-list|uptime)
         xm "$ACTION" "$MACHINE"
diff --git a/server/usr/sbin/invirt-remote-proxy b/server/usr/sbin/invirt-remote-proxy
index d84fe81..f05fa65 100755
--- a/server/usr/sbin/invirt-remote-proxy
+++ b/server/usr/sbin/invirt-remote-proxy
@@ -13,18 +13,18 @@ esac
 
 case "$TYPE/$SERVICE" in
     web/listvms )
-	exec invirt-remote-listvms "$@" ;;
+	invirt-remote-listvms "$@" ;;
     web/vnccert )
-        exec invirt-remote-vnccert "$@" ;;
+        invirt-remote-vnccert "$@" ;;
     control/help )
-        exec invirt-remctl-help ;;
+        invirt-remctl-help ;;
     control/create|control/install )
-	exec invirt-remote-create "$SERVICE" "$MACHINE" "$@" ;;
+	invirt-remote-create "$SERVICE" "$MACHINE" "$@" ;;
     control/listhost|control/list-host )
-	exec invirt-remote-listhost "$MACHINE" "$@" ;;
+	invirt-remote-listhost "$MACHINE" "$@" ;;
     control/* )
 	# Everything but create must go where the VM is already running.
-	exec invirt-remote-control "$MACHINE" "$SERVICE" "$@" ;;
+	invirt-remote-control "$MACHINE" "$SERVICE" "$@" ;;
     * )
-	exec remctl "$(invirt-getconf hosts.0.hostname)" remote "$TYPE" "$SERVICE" "$@" ;;
+	remctl "$(invirt-getconf hosts.0.hostname)" remote "$TYPE" "$SERVICE" "$@" ;;
 esac
-- 
1.7.9.5