svn commit: r210254 - in head/etc: defaults periodic/security

Gabor Kovesdan gabor at FreeBSD.org
Mon Jul 19 20:19:16 UTC 2010


Author: gabor
Date: Mon Jul 19 20:19:14 2010
New Revision: 210254
URL: http://svn.freebsd.org/changeset/base/210254

Log:
  - Add a periodic script, which can be used to find installed ports' files with
    mismatched checksum
  
  PR:		conf/124641
  Submitted by:	Alex Kozlov <spam at rm-rf.kiev.ua>
  Approved by:	delphij (mentor)

Added:
  head/etc/periodic/security/460.chkportsum   (contents, props changed)
Modified:
  head/etc/defaults/periodic.conf
  head/etc/periodic/security/Makefile

Modified: head/etc/defaults/periodic.conf
==============================================================================
--- head/etc/defaults/periodic.conf	Mon Jul 19 19:54:37 2010	(r210253)
+++ head/etc/defaults/periodic.conf	Mon Jul 19 20:19:14 2010	(r210254)
@@ -171,6 +171,9 @@ daily_status_security_passwdless_enable=
 # 410.logincheck
 daily_status_security_logincheck_enable="YES"
 
+# 460.chkportsum
+daily_status_security_chkportsum_enable="NO"	# Check ports w/ wrong checksum
+
 # 500.ipfwdenied
 daily_status_security_ipfwdenied_enable="YES"
 

Added: head/etc/periodic/security/460.chkportsum
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/etc/periodic/security/460.chkportsum	Mon Jul 19 20:19:14 2010	(r210254)
@@ -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

Modified: head/etc/periodic/security/Makefile
==============================================================================
--- head/etc/periodic/security/Makefile	Mon Jul 19 19:54:37 2010	(r210253)
+++ head/etc/periodic/security/Makefile	Mon Jul 19 20:19:14 2010	(r210254)
@@ -7,6 +7,7 @@ FILES=	100.chksetuid \
 	300.chkuid0 \
 	400.passwdless \
 	410.logincheck \
+	460.chkportsum \
 	700.kernelmsg \
 	800.loginfail \
 	900.tcpwrap \


More information about the svn-src-all mailing list