From 31a2f897cfd72618879f348b9c6c63b6f317d2c5 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Sun, 3 Feb 2008 22:09:07 +0000 Subject: Rewrite to use common localshowlogentries. --- localshowuserfromip | 54 +++++++++++------------------------------------------ 1 file changed, 11 insertions(+), 43 deletions(-) (limited to 'localshowuserfromip') diff --git a/localshowuserfromip b/localshowuserfromip index 69e9122..cfd5d05 100755 --- a/localshowuserfromip +++ b/localshowuserfromip @@ -1,53 +1,21 @@ #!/bin/sh # # /usr/local/sbin/localshowuserfromip -# Copyright 2007 Jonas Smedegaard +# Copyright 2007-2008 Jonas Smedegaard # -# $Id: localshowuserfromip,v 1.3 2007-11-14 13:31:37 jonas Exp $ +# $Id: localshowuserfromip,v 1.4 2008-02-03 22:09:07 jonas Exp $ # # List recent identifiable users from some IP address # -input="${input:-user}" -output="${output:-shortline}" -logfilecount="${logfilecount:-1}" -pattern="${pattern:-user_dovecot}" +set -e -sed_longline='s/^\(.\{15\}\) [^:]*: /\1 /' -sed_time='s/^\(.\{15\}\) .*$/\1 /' +localshowlogentries "$1" \ + 'dovecot: .*: Login: .*, rip=(' \ + '), lip=' \ + 's/^\(.\{15\}\) [^:]*: \([^-]*\)-login: Login: user=, .*$//' \ + '' \ + '' \ + 's/^.* user=, .*$//' -case $pattern in - user_dovecot) - # Dovecot "deliver" - egrep_before='dovecot: .*: Login: .*, rip=(' - egrep_after='), lip=' - sed_shortline='s/^\(.\{15\}\) [^:]*: \([^-]*\)-login: Login: user=, .*$//' - sed_username='s/^.* user=, .*$//' - ;; - *) - echo >&2 "ERROR: unknwon pattern \"$pattern\"" - exit 1 - ;; -esac - -case $output in - shortline) - sedstring="$sed_shortline" - ;; - longline) - sedstring="$sed_longline" - ;; - username) - sedstring="$sed_msgid" - ;; - *) - echo >&2 "ERROR: unknwon output \"$output\"" - exit 1 - ;; -esac - -ip="$1" - -find /var/log -name 'syslog*' | sort -nr -t. -k3 | tail -n "$logfilecount" | xargs zcat -f \ - | egrep -- "$egrep_before$ip$egrep_after" \ - | sed "$sedstring" +exit 0 -- cgit v1.2.3