savecore revision 136224
178344Sobrien#!/bin/sh 278344Sobrien# 398184Sgordon# $NetBSD: savecore,v 1.5 2002/03/22 04:34:00 thorpej Exp $ 498184Sgordon# $FreeBSD: head/etc/rc.d/savecore 136224 2004-10-07 13:55:26Z mtm $ 578344Sobrien# 678344Sobrien 778344Sobrien# PROVIDE: savecore 878344Sobrien# REQUIRE: syslogd 998184Sgordon# BEFORE: SERVERS 10136224Smtm# KEYWORD: nojail 1178344Sobrien 1278344Sobrien. /etc/rc.subr 1378344Sobrien 1478344Sobrienname="savecore" 1578344Sobrienstart_cmd="savecore_start" 1698184Sgordonstart_precmd="savecore_prestart" 1778344Sobrienstop_cmd=":" 1878344Sobrien 1998184Sgordonsavecore_prestart() 2078344Sobrien{ 2198184Sgordon # ${DUMPDIR} should be a directory or a symbolic link 2278344Sobrien # to the crash directory if core dumps are to be saved. 2378344Sobrien # 2498184Sgordon DUMPDIR="${dumpdir:-/var/crash}" 2598184Sgordon 26124622Smtm # Quit if we have no dump device 27124622Smtm case ${dumpdev} in 28124622Smtm [Nn][Oo] | '') 29124622Smtm debug 'No dump device. Quitting.' 30124622Smtm return 1 31124622Smtm ;; 32124622Smtm esac 3398184Sgordon 34124622Smtm # If there is no crash directory set it now 35124622Smtm case ${dumpdir} in 36124622Smtm '') 37124622Smtm dumpdir='/var/crash' 3898184Sgordon ;; 39124622Smtm [Nn][Oo]) 40124622Smtm dumpdir='NO' 4198184Sgordon ;; 4298184Sgordon esac 43124622Smtm 44124622Smtm if [ ! -e "${dumpdev}" -o ! -d "${dumpdir}" ]; then 45124622Smtm warn "Wrong dump device or directory. Savecore not run." 46124622Smtm return 1 47124622Smtm fi 4898184Sgordon return 0 4998184Sgordon} 5098184Sgordon 5198184Sgordonsavecore_start() 5298184Sgordon{ 53127171Sdavidc echo "Checking for core dump on ${dumpdev} ..." 54127171Sdavidc savecore ${savecore_flags} ${DUMPDIR} ${dumpdev} 5578344Sobrien} 5678344Sobrien 5778344Sobrienload_rc_config $name 5878344Sobrienrun_rc_command "$1" 59