diff --git a/usr/local/www/diag_packet_capture.php b/usr/local/www/diag_packet_capture.php index f3f5453a1b..579f12541d 100644 --- a/usr/local/www/diag_packet_capture.php +++ b/usr/local/www/diag_packet_capture.php @@ -70,7 +70,19 @@ if ($_POST) { elseif ($_POST['stopbtn']!= "") { $action = "Stop"; - stop_service(tcpdump); + $processes_running = trim(shell_exec("ps axw -O pid= | grep tcpdump | grep $fn")); + + //explode processes into an array, (delimiter is new line) + $processes_running_array = explode("\n", $processes_running); + + //kill each of the packetcapture processes + foreach ($processes_running_array as $process) + { + $process_id_pos = strpos($process, ' '); + $process_id = substr($process, 0, $process_id_pos); + exec("kill $process_id"); + } + } else //download file { @@ -91,6 +103,8 @@ include("head.inc"); ?>
include("fbegin.inc"); ?> + +=$pgtitle?>
|
";
else
@@ -210,6 +232,7 @@ include("head.inc"); ?>
}
else //action = stop
{
+
echo("Packet Capture stopped. Packets Captured: "); ?> |