diff --git a/lib/gen_call_robot.py b/lib/gen_call_robot.py
index e336229..3944c79 100755
--- a/lib/gen_call_robot.py
+++ b/lib/gen_call_robot.py
@@ -50,7 +50,7 @@
         os.environ.get("TMP_ROBOT_DIR_PATH",
                        os.environ.get("STATUS_DIR_PATH",
                                       os.environ.get("HOME", ".")
-                                      + "/autoipl/status"))
+                                      + "/status"))
     outputdir = gm.add_trailing_slash(outputdir)
     seconds = time.time()
     loc_time = time.localtime(seconds)
@@ -259,7 +259,7 @@
 
     Would return a string something like this.
     robot -v OPENBMC_HOST:beye6 -v quiet:0 -v test_mode:1 -v debug:1
-    --outputdir=/gsa/ausgsa/projects/a/autoipl/status
+    --outputdir=/gsa/ausgsa/projects/a/status
     --output=beye6.OS_Console.output.xml --log=beye6.OS_Console.log.html
     --report=beye6.OS_Console.report.html tools/start_sol_console.robot
     """
@@ -370,7 +370,7 @@
     # to FFDC cleanup.
     target_dir_path = os.environ.get("FFDC_DIR_PATH",
                                      os.environ.get("HOME", ".")
-                                     + "/autoipl/ffdc")
+                                     + "/ffdc")
     target_dir_path = gm.add_trailing_slash(target_dir_path)
 
     targ_file_list = [re.sub(".*/", target_dir_path, x)
@@ -440,6 +440,10 @@
         PATH_LIST = os.environ.get("PATH", "").split(":")
         if python27_path in PATH_LIST:
             NEW_PATH_LIST.append(python27_path)
+        # Make sure robot can be found in robot jail.
+        robot_dir_path = os.path.dirname(gm.which('robot'))
+        if robot_dir_path in PATH_LIST:
+            NEW_PATH_LIST.append(robot_dir_path)
         NEW_PATH_LIST.extend(["/usr/local/sbin", "/usr/local/bin", "/usr/sbin",
                               "/usr/bin", "/sbin", "/bin"])
         PATH = ":".join(NEW_PATH_LIST)
diff --git a/lib/gen_robot_plug_in.py b/lib/gen_robot_plug_in.py
index a89e07c..31236c4 100755
--- a/lib/gen_robot_plug_in.py
+++ b/lib/gen_robot_plug_in.py
@@ -213,6 +213,8 @@
 
     if proc_plug_pkg_rc != 0:
         hex = 1
+        if quiet:
+            os.system("cat " + temp_file_path + " >&2")
         if grep_rc != 0:
             gp.print_varx("grep_rc", grep_rc, hex)
         gp.print_varx("proc_plug_pkg_rc", proc_plug_pkg_rc, hex)
diff --git a/lib/obmc_boot_test.py b/lib/obmc_boot_test.py
index 4aa63cd..f0b6ad3 100755
--- a/lib/obmc_boot_test.py
+++ b/lib/obmc_boot_test.py
@@ -242,7 +242,7 @@
     additional_values = ["program_pid", "master_pid", "ffdc_dir_path",
                          "status_dir_path", "base_tool_dir_path",
                          "ffdc_list_file_path", "ffdc_report_list_path",
-                         "ffdc_summary_list_path"]
+                         "ffdc_summary_list_path", "execdir"]
 
     plug_in_vars = parm_list + additional_values
 
@@ -417,6 +417,10 @@
     grv.rvalid_value("openbmc_host")
     grv.rvalid_value("openbmc_username")
     grv.rvalid_value("openbmc_password")
+    grv.rvalid_value("rest_username")
+    grv.rvalid_value("rest_password")
+    grv.rvalid_value("ipmi_username")
+    grv.rvalid_value("ipmi_password")
     if os_host != "":
         grv.rvalid_value("os_username")
         grv.rvalid_value("os_password")
@@ -677,7 +681,8 @@
         gp.qprintn(more_header_info)
     gp.qpvars(host_name, host_ip, openbmc_nickname, openbmc_host,
               openbmc_host_name, openbmc_ip, openbmc_username,
-              openbmc_password, os_host, os_host_name, os_ip, os_username,
+              openbmc_password, rest_username, rest_password, ipmi_username,
+              ipmi_password, os_host, os_host_name, os_ip, os_username,
               os_password, pdu_host, pdu_host_name, pdu_ip, pdu_username,
               pdu_password, pdu_slot_no, openbmc_serial_host,
               openbmc_serial_host_name, openbmc_serial_ip, openbmc_serial_port)
