extra-tests: Include valgrind suppressions file.
[libguestfs.git] / fish / rc.c
index 2d2f227..31f5c64 100644 (file)
--- a/fish/rc.c
+++ b/fish/rc.c
@@ -13,7 +13,7 @@
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
 #include <config.h>
@@ -71,6 +71,7 @@ receive_stdout (int s)
   }
 
   /* Don't specify a source */
+  memset (&msg, 0, sizeof msg);
   msg.msg_name = NULL;
   msg.msg_namelen = 0;
 
@@ -118,6 +119,7 @@ send_stdout (int s)
   char buf[1];
 
   /* Don't specify a destination */
+  memset (&msg, 0, sizeof msg);
   msg.msg_name    = NULL;
   msg.msg_namelen = 0;
 
@@ -198,7 +200,12 @@ rc_listen (void)
 
   if (pid > 0) {
     /* Parent process. */
-    printf ("GUESTFISH_PID=%d; export GUESTFISH_PID\n", pid);
+
+    if (!remote_control_csh)
+      printf ("GUESTFISH_PID=%d; export GUESTFISH_PID\n", pid);
+    else
+      printf ("setenv GUESTFISH_PID %d\n", pid);
+
     fflush (stdout);
     _exit (0);
   }
@@ -279,7 +286,7 @@ rc_listen (void)
         }
 
         /* Run the command. */
-        reply.r = issue_command (call.cmd, argv, NULL);
+        reply.r = issue_command (call.cmd, argv, NULL, 0);
 
         xdr_free ((xdrproc_t) xdr_guestfish_call, (char *) &call);