summaryrefslogtreecommitdiffstats
path: root/usr/local/sbin
diff options
context:
space:
mode:
authorScott Ullrich <sullrich@pfsense.org>2007-04-30 00:51:42 +0000
committerScott Ullrich <sullrich@pfsense.org>2007-04-30 00:51:42 +0000
commit05a85e29afb23c2e3491f038a2784a7ecd0dec35 (patch)
treefac0e4524016999ad091d8df2a5443d36df68334 /usr/local/sbin
parent5a7e9d2dc02ad33bead65f2a15ba83a0122ce619 (diff)
downloadpfsense-05a85e29afb23c2e3491f038a2784a7ecd0dec35.zip
pfsense-05a85e29afb23c2e3491f038a2784a7ecd0dec35.tar.gz
Add multiline support for multi-line mini programs/scripts.
Diffstat (limited to 'usr/local/sbin')
-rwxr-xr-xusr/local/sbin/pfSsh.php24
1 files changed, 22 insertions, 2 deletions
diff --git a/usr/local/sbin/pfSsh.php b/usr/local/sbin/pfSsh.php
index 105c4d9..885e38e 100755
--- a/usr/local/sbin/pfSsh.php
+++ b/usr/local/sbin/pfSsh.php
@@ -23,7 +23,8 @@ echo "Example commands:\n\n";
echo " print_r(\$config);\n";
echo " \$config['interfaces']['lan']['ipaddr'] = \"192.168.1.1\";\n";
echo " write_config();\n";
-echo " exit\n";
+echo " multiline\n";
+echo " exit";
while($shell_active == true) {
echo "\n\npfSense shell> ";
@@ -33,5 +34,24 @@ while($shell_active == true) {
echo "\n";
break;
}
- eval($command);
+ if($command == "multiline" or $command == "ml") {
+ echo "\nmultiline mode enabled. enter EOF on a blank line to execute.\n\n";
+ $command = "";
+ $mlcommand = "";
+ $xxxyzyz = 0;
+ while($command <> "EOF") {
+ echo "pfSense multiline shell[$xxxyzyz]> ";
+ $command = chop(fgets($fp));
+ if($command == "exit")
+ die;
+ if($command <> "EOF")
+ $mlcommand .= $command;
+ $xxxyzyz++;
+ }
+ $command = $mlcommand;
+ }
+ if($command) {
+ echo "\n";
+ eval($command);
+ }
}
OpenPOWER on IntegriCloud