staticroute revision 1.3
11.1Schristos#!/bin/sh
21.1Schristos#
31.3Sreed# $NetBSD: staticroute,v 1.3 2008/01/31 15:21:32 reed Exp $
41.1Schristos#
51.1Schristos
61.1Schristos# PROVIDE: staticroute
71.1Schristos# REQUIRE: network
81.1Schristos# BEFORE:  NETWORKING
91.1Schristos
101.3Sreed# See the route.conf(5) manual page for details.
111.3Sreed
121.2Smycroft$_rc_subr_loaded . /etc/rc.subr
131.1Schristos
141.1Schristosname="staticroute"
151.1Schristosstart_cmd="staticroute_doit Adding add"
161.1Schristosstop_cmd="staticroute_doit Deleting delete"
171.1Schristos
181.1Schristosstaticroute_doit() {
191.1Schristos	if [ -s /etc/route.conf ]; then
201.1Schristos		echo "$1 static routes."
211.1Schristos		while read args; do
221.1Schristos			[ -z "$args" ] && continue
231.1Schristos			case "$args" in
241.1Schristos			"#"*)
251.1Schristos				;;
261.1Schristos			"+"*)
271.1Schristos				[ $2 = "add" ] && eval ${args#*+}
281.1Schristos				;;
291.1Schristos			"-"*)
301.1Schristos				[ $2 = "delete" ] && eval ${args#*-}
311.1Schristos				;;
321.1Schristos			*)
331.1Schristos				route -q $2 -$args
341.1Schristos				;;
351.1Schristos			esac
361.1Schristos		done < /etc/route.conf
371.1Schristos	fi
381.1Schristos}
391.1Schristos
401.1Schristosload_rc_config $name
411.1Schristosrun_rc_command "$1"
42