diff options
author | Giorgos Keramidas <keramida@FreeBSD.org> | 2002-12-07 23:37:44 +0000 |
---|---|---|
committer | Giorgos Keramidas <keramida@FreeBSD.org> | 2002-12-07 23:37:44 +0000 |
commit | 0333ea509d98c356e1685d41085113d00ac10ea6 (patch) | |
tree | a36b369e264e058212f540a3688cf59e2b033527 /etc/periodic/daily | |
parent | f22dda7a29c03d6125ede1cf5698162b5bdea573 (diff) | |
download | src-0333ea509d98c356e1685d41085113d00ac10ea6.tar.gz src-0333ea509d98c356e1685d41085113d00ac10ea6.zip |
Avoid using perl in the periodic & security scripts. This brings the
base system one step closer to being totally perl-free.
Approved by: re (jhb)
Notes
Notes:
svn path=/head/; revision=107674
Diffstat (limited to 'etc/periodic/daily')
-rwxr-xr-x | etc/periodic/daily/440.status-mailq | 4 | ||||
-rwxr-xr-x | etc/periodic/daily/460.status-mail-rejects | 5 | ||||
-rwxr-xr-x | etc/periodic/daily/470.status-named | 48 |
3 files changed, 29 insertions, 28 deletions
diff --git a/etc/periodic/daily/440.status-mailq b/etc/periodic/daily/440.status-mailq index 90869d82245c..0aad05359ebf 100755 --- a/etc/periodic/daily/440.status-mailq +++ b/etc/periodic/daily/440.status-mailq @@ -25,7 +25,7 @@ case "$daily_status_mailq_enable" in rc=$(case "$daily_status_mailq_shorten" in [Yy][Ee][Ss]) mailq | - perl -ne 'print if /^\s+\S+@/' | + egrep -e '^[[:space:]]+[^[:space:]]+@' | sort | uniq -c | sort -nr | @@ -45,7 +45,7 @@ case "$daily_status_mailq_enable" in rc=$(case "$daily_status_mailq_shorten" in [Yy][Ee][Ss]) mailq -Ac | - perl -ne 'print if /^\s+\S+@/' | + egrep -e '^[[:space:]]+[^[:space:]]+@' | sort | uniq -c | sort -nr | diff --git a/etc/periodic/daily/460.status-mail-rejects b/etc/periodic/daily/460.status-mail-rejects index 1c7f071f4fbd..596af492cd6b 100755 --- a/etc/periodic/daily/460.status-mail-rejects +++ b/etc/periodic/daily/460.status-mail-rejects @@ -51,8 +51,9 @@ case "$daily_status_mail_rejects_enable" in done cat /var/log/maillog } | - perl -ne "print \"\$2\n\" - if (/reject=/ and /^$start.*ruleset=check_\S+,\s+arg1=(<[^@]+@)?([^>,]+).*reject=/o);" | + fgrep 'reject=' | + egrep -e "^$start.*ruleset=check_[^[:space:]]+,[[:space:]]+arg1=(<[^@]+@)?([^>,]+).*reject=.*" | + sed -e 's/.*arg1=//' -e 's/.*@//' -e 's/[>[:space:]].*$//' | sort -f | uniq -ic | sort -fnr | tee /dev/stderr | wc -l) [ $rc -gt 0 ] && rc=1 fi;; diff --git a/etc/periodic/daily/470.status-named b/etc/periodic/daily/470.status-named index 30507474b490..795c18c0f048 100755 --- a/etc/periodic/daily/470.status-named +++ b/etc/periodic/daily/470.status-named @@ -25,30 +25,30 @@ case "$daily_status_named_enable" in start=`date -v-1d '+%b %d' | sed 's/0\(.\)$/ \1/'` rc=$(catmsgs | - perl -ne 'print "$2 from $1\n" - if (/^'"$start"'.*named\[\d+\]: denied [AI]XFR from \[(.*)\]\.\d+ for "(.*)"/);' | - sort -f | uniq -ic | - perl -e ' - use Socket; - - while (<STDIN>) { - if (/^.*from (.*)$/) { - $ip_addr = $1; - chomp; - if ($ARGV[0] =~ /^yes$/i) { - ($host) = gethostbyaddr(inet_aton($ip_addr), AF_INET); - } else { - $host = ""; - } - - if ($host) { - print "$_ ($host)\n"; - } else { - print "$_\n"; - } - } - } - ' $daily_status_named_usedns | tee /dev/stderr | wc -l) + fgrep '^'"$start"'.*named\[[[:digit:]]\+\]: denied [AI]XFR from \[.*\]\.[[:digit:]]\+ for' | \ + sed -e 's/.*: denied [AI]XFR from \[\(.*\)\]\.[[:digit:]]* for "\(.*\)".*$/\2 from \1/' + sort -f | uniq -ic | ( + usedns=0 + if [ X"${daily_status_named_usedns}" != X"" ]; then + case $daily_status_named_usedns in + [yY][eE][sS]) usedns=1 ;; + esac + fi + + while read line ;do + ipaddr=`echo "$line" | sed -e 's/^.*from //'` + if [ $usedns -eq 1 ]; then + name=`host "${ipaddr}" 2>/dev/null | \ + grep 'domain name pointer' | \ + sed -e 's/^.* //'` + fi + if [ X"${name}" != X"" ]; then + echo "${line} (${name})" + else + echo "${line}" + fi + done ) | \ + tee /dev/stderr | wc -l) [ $rc -gt 0 ] && rc=1 ;; |