summaryrefslogtreecommitdiffstats
path: root/etc/periodic
diff options
context:
space:
mode:
authorgabor <gabor@FreeBSD.org>2010-07-19 20:19:14 +0000
committergabor <gabor@FreeBSD.org>2010-07-19 20:19:14 +0000
commit6a3f80a589850f5aabb5ca59cb002b4650ff78ea (patch)
tree8d9fc39b7bcf25c5b21e48064eb3a46345802402 /etc/periodic
parent38ed317cdb7029de69bac81c9a5f8ea9bc43e4b3 (diff)
downloadFreeBSD-src-6a3f80a589850f5aabb5ca59cb002b4650ff78ea.zip
FreeBSD-src-6a3f80a589850f5aabb5ca59cb002b4650ff78ea.tar.gz
- Add a periodic script, which can be used to find installed ports' files with
mismatched checksum PR: conf/124641 Submitted by: Alex Kozlov <spam@rm-rf.kiev.ua> Approved by: delphij (mentor)
Diffstat (limited to 'etc/periodic')
-rw-r--r--etc/periodic/security/460.chkportsum68
-rw-r--r--etc/periodic/security/Makefile1
2 files changed, 69 insertions, 0 deletions
diff --git a/etc/periodic/security/460.chkportsum b/etc/periodic/security/460.chkportsum
new file mode 100644
index 0000000..be11684
--- /dev/null
+++ b/etc/periodic/security/460.chkportsum
@@ -0,0 +1,68 @@
+#!/bin/sh -
+#
+# Copyright (c) 2010 The FreeBSD Project
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+# $FreeBSD$
+#
+
+if [ -r /etc/defaults/periodic.conf ]
+then
+ . /etc/defaults/periodic.conf
+ source_periodic_confs
+fi
+
+. /etc/periodic/security/security.functions
+
+rc=0
+
+echo ""
+echo 'Checking for ports with mismatched checksums:'
+
+case "${daily_status_security_chkportsum_enable}" in
+ [Yy][Ee][Ss])
+ pkg_info -ga 2>/dev/null | \
+ while read one two three; do
+ case ${one} in
+ Information)
+ case ${two} in
+ for) name=${three%%:} ;;
+ *) name='??' ;;
+ esac
+ ;;
+ Mismatched|'') ;;
+ *)
+ if [ -n ${name} ]; then
+ echo ${name}: ${one}
+ fi
+ ;;
+ esac
+ done
+ ;;
+ *)
+ rc=0
+ ;;
+esac
+
+exit $rc
diff --git a/etc/periodic/security/Makefile b/etc/periodic/security/Makefile
index e1d6dfd..02f8b76 100644
--- a/etc/periodic/security/Makefile
+++ b/etc/periodic/security/Makefile
@@ -7,6 +7,7 @@ FILES= 100.chksetuid \
300.chkuid0 \
400.passwdless \
410.logincheck \
+ 460.chkportsum \
700.kernelmsg \
800.loginfail \
900.tcpwrap \
OpenPOWER on IntegriCloud