From owner-svn-soc-all@FreeBSD.ORG Sat Sep 21 21:14:06 2013 Return-Path: Delivered-To: svn-soc-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 43410430 for ; Sat, 21 Sep 2013 21:14:06 +0000 (UTC) (envelope-from def@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 172B1290C for ; Sat, 21 Sep 2013 21:14:06 +0000 (UTC) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.14.7/8.14.7) with ESMTP id r8LLE5cW083091 for ; Sat, 21 Sep 2013 21:14:05 GMT (envelope-from def@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.14.7/8.14.6/Submit) id r8LLE5K2083085 for svn-soc-all@FreeBSD.org; Sat, 21 Sep 2013 21:14:05 GMT (envelope-from def@FreeBSD.org) Date: Sat, 21 Sep 2013 21:14:05 GMT Message-Id: <201309212114.r8LLE5K2083085@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to def@FreeBSD.org using -f From: def@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r257575 - in soc2013/def/crashdump-head/etc: defaults rc.d MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Sep 2013 21:14:06 -0000 Author: def Date: Sat Sep 21 21:14:05 2013 New Revision: 257575 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=257575 Log: rc.d script to generate RSA keys if they don't exist and run dumpkey. Added: soc2013/def/crashdump-head/etc/rc.d/dumpkey (contents, props changed) Modified: soc2013/def/crashdump-head/etc/defaults/rc.conf Modified: soc2013/def/crashdump-head/etc/defaults/rc.conf ============================================================================== --- soc2013/def/crashdump-head/etc/defaults/rc.conf Sat Sep 21 20:45:53 2013 (r257574) +++ soc2013/def/crashdump-head/etc/defaults/rc.conf Sat Sep 21 21:14:05 2013 (r257575) @@ -606,6 +606,10 @@ chkprintcap_flags="-d" # Create missing directories by default. dumpdev="AUTO" # Device to crashdump to (device name, AUTO, or NO). dumpdir="/var/crash" # Directory where crash dumps are to be stored +dumpkey_enable="YES" +dumpkey_pub="/var/crash/.public.key" +dumpkey_priv="/var/crash/.private.key" +dumpkey_bits="2048" savecore_flags="-m 10" # Used if dumpdev is enabled above, and present. # By default, only the 10 most recent kernel dumps # are saved. Added: soc2013/def/crashdump-head/etc/rc.d/dumpkey ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ soc2013/def/crashdump-head/etc/rc.d/dumpkey Sat Sep 21 21:14:05 2013 (r257575) @@ -0,0 +1,33 @@ +#!/bin/sh + +# PROVIDE: dumpkey +# REQUIRE: dumpon + +. /etc/rc.subr + +name="dumpkey" +rcvar="dumpkey_enable" +start_cmd="dumpkey_start" +start_precmd="dumpkey_prestart" +stop_cmd=":" + +dumpkey_prestart() +{ + if [ ! -r "${dumpkey_pub}" ] || [ ! -r "${dumpkey_priv}" ]; then + warn "At least one of keys doesn't exist. Generating new keys..." + + dumpkey_pub=${dumpdir}/.public.key + dumpkey_priv=${dumpdir}/.private.key + + /usr/bin/openssl genrsa -out ${dumpkey_priv} ${dumpkey_bits} + /usr/bin/openssl rsa -in ${dumpkey_priv} -out ${dumpkey_pub} -outform PEM -pubout + fi +} + +dumpkey_start() +{ + /sbin/dumpkey -p ${dumpkey_pub} +} + +load_rc_config $name +run_rc_command "$1"