From 40a1b7af9051e7d8bb9525f4a64ea966a97e3ef1 Mon Sep 17 00:00:00 2001 From: Scott Ullrich Date: Mon, 30 Apr 2007 00:51:48 +0000 Subject: Add multiline support for multi-line mini programs/scripts. --- usr/local/sbin/pfSsh.php | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) (limited to 'usr/local/sbin/pfSsh.php') 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); + } } -- cgit v1.1