From 5612efdef70dca2c8f02578cc1b119be4b794d08 Mon Sep 17 00:00:00 2001 From: Mohit Mehta <mohit.mehta@vyatta.com> Date: Thu, 3 Apr 2008 21:59:25 +0000 Subject: Fix Bug 1059 Feature Request: integrate 'tcpdump' and 'tethereal' into Vyatta CLI - 'show interfaces ethernet <> capture' captures traffic at specified interface - 'show interfaces ethernet <> capture port <>' captures traffic at specified interface port - 'show interfaces ethernet <> capture not port <>' captures traffic at specified interface excluding specified port --- scripts/vyatta-tshark-interface-port.pl | 62 +++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 scripts/vyatta-tshark-interface-port.pl (limited to 'scripts') diff --git a/scripts/vyatta-tshark-interface-port.pl b/scripts/vyatta-tshark-interface-port.pl new file mode 100644 index 0000000..4eff322 --- /dev/null +++ b/scripts/vyatta-tshark-interface-port.pl @@ -0,0 +1,62 @@ +#!/usr/bin/perl +# +# Module: vyatta-tshark-interface-port.pl +# +# **** License **** +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# This code was originally developed by Vyatta, Inc. +# Portions created by Vyatta are Copyright (C) 2006, 2007, 2008 Vyatta, Inc. +# All Rights Reserved. +# +# Author: Mohit Mehta +# Date: April 2008 +# Description: tshark on a given port for a given interface from vyatta cli +# +# **** End License **** +# + +use lib "/opt/vyatta/share/perl5/"; + +use strict; +use warnings; + +# +# main +# + +my $intf = $ARGV[0]; + +if ($#ARGV > 0){ + my $port = $ARGV[1]; + my $not_port = $ARGV[2]; + if ($port =~ /[a-zA-Z]/){ + print "Port number has to be numeric. Allowed values: <1-65535>\n"; + exit 1; + } else { + if (($port > 0) and ($port < 65536)){ + if ($not_port == 0){ + exec "sudo /usr/bin/tshark -n -i $intf port $port"; + } else { + exec "sudo /usr/bin/tshark -n -i $intf not port $port"; + } + } else { + print "Invalid port number. Allowed values: <1-65535>\n"; + exit 1; + } + + } +} else { + exec "sudo /usr/bin/tshark -n -i $intf"; +} + +exit 0; + +#end of file -- cgit v1.2.3