aboutsummaryrefslogtreecommitdiffstats
path: root/hostapd/logwatch
diff options
context:
space:
mode:
authorJouni Malinen <j@w1.fi>2008-02-28 01:36:06 (GMT)
committerJouni Malinen <jm@jm.kir.nu>2008-02-28 01:36:06 (GMT)
commit3b46a31ec7a99da2e8df5cdd908ec772decb9c84 (patch)
tree02a922d7391401deeaaab7a60b0058eb1d098816 /hostapd/logwatch
parent6fc6879bd55a394f807cbbe927df736c190cb8ab (diff)
downloadhostap-3b46a31ec7a99da2e8df5cdd908ec772decb9c84.zip
hostap-3b46a31ec7a99da2e8df5cdd908ec772decb9c84.tar.gz
hostap-3b46a31ec7a99da2e8df5cdd908ec772decb9c84.tar.bz2
Added files that cg-init excludedhostap_0_6_3
Diffstat (limited to 'hostapd/logwatch')
-rwxr-xr-xhostapd/logwatch/hostapd65
1 files changed, 65 insertions, 0 deletions
diff --git a/hostapd/logwatch/hostapd b/hostapd/logwatch/hostapd
new file mode 100755
index 0000000..97b24ef
--- /dev/null
+++ b/hostapd/logwatch/hostapd
@@ -0,0 +1,65 @@
+#!/usr/bin/perl -w
+#
+# Logwatch script for hostapd
+#
+# Copyright 2005 Henrik Brix Andersen <brix@gentoo.org>
+# Distributed under the terms of the GNU General Public License v2
+# Alternatively, this file may be distributed under the terms of the BSD License
+
+use strict;
+
+my $debug = $ENV{'LOGWATCH_DEBUG'} || 0;
+my $detail = $ENV{'LOGWATCH_DETAIL_LEVEL'} || 0;
+my $debugcounter = 1;
+
+my %hostapd;
+my @unmatched;
+
+if ($debug >= 5) {
+ print STDERR "\n\nDEBUG: Inside HOSTAPD Filter\n\n";
+}
+
+while (defined(my $line = <STDIN>)) {
+ if ($debug >= 5) {
+ print STDERR "DEBUG($debugcounter): $line";
+ $debugcounter++;
+ }
+ chomp($line);
+
+ if (my ($iface,$mac,$layer,$details) = ($line =~ /(.*?): STA (.*?) (.*?): (.*?)$/i)) {
+ unless ($detail == 10) {
+ # collapse association events
+ $details =~ s/^(associated) .*$/$1/i;
+ }
+ $hostapd{$iface}->{$mac}->{$layer}->{$details}++;
+ } else {
+ push @unmatched, "$line\n";
+ }
+}
+
+if (keys %hostapd) {
+ foreach my $iface (sort keys %hostapd) {
+ print "Interface $iface:\n";
+ foreach my $mac (sort keys %{$hostapd{$iface}}) {
+ print " Client MAC Address $mac:\n";
+ foreach my $layer (sort keys %{$hostapd{$iface}->{$mac}}) {
+ print " $layer:\n";
+ foreach my $details (sort keys %{$hostapd{$iface}->{$mac}->{$layer}}) {
+ print " $details";
+ my $count = $hostapd{$iface}->{$mac}->{$layer}->{$details};
+ if ($count > 1) {
+ print ": " . $count . " Times";
+ }
+ print "\n";
+ }
+ }
+ }
+ }
+}
+
+if ($#unmatched >= 0) {
+ print "\n**Unmatched Entries**\n";
+ print @unmatched;
+}
+
+exit(0);