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