diff options
author | Ermal <eri@pfsense.org> | 2012-11-26 23:59:33 +0100 |
---|---|---|
committer | Ermal <eri@pfsense.org> | 2012-11-26 23:59:33 +0100 |
commit | 2b561e0abff20b33dd1e94c2809e4cb1caae488e (patch) | |
tree | 03a10459f7b1615587e9aa939f5d176864a54db0 | |
parent | 762e1f4919c433e0b14f2a653ebfdb96d4ad960e (diff) | |
download | pfsense-packages-2b561e0abff20b33dd1e94c2809e4cb1caae488e.tar.gz pfsense-packages-2b561e0abff20b33dd1e94c2809e4cb1caae488e.tar.bz2 pfsense-packages-2b561e0abff20b33dd1e94c2809e4cb1caae488e.zip |
Use popen here to not reach php memory limits
-rw-r--r-- | config/openbgpd/openbgpd_status.php | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/config/openbgpd/openbgpd_status.php b/config/openbgpd/openbgpd_status.php index b493236f..4547018a 100644 --- a/config/openbgpd/openbgpd_status.php +++ b/config/openbgpd/openbgpd_status.php @@ -59,14 +59,9 @@ function doCmdT($title, $command) { } fclose($fd); } else { - $execOutput = ""; - $execStatus = ""; - exec ($command . " 2>&1", $execOutput, $execStatus); - for ($i = 0; isset($execOutput[$i]); $i++) { - if ($i > 0) { - echo "\n"; - } - echo htmlspecialchars($execOutput[$i],ENT_NOQUOTES); + $fd = popen("{$command} 2>&1", "r"); + while (($line = fgets($fd)) !== FALSE) { + echo htmlspecialchars($line, ENT_NOQUOTES); } } echo "</pre></tr>\n"; |