From owner-freebsd-current@FreeBSD.ORG Thu Jan 8 13:41:06 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3DED616A4CE for ; Thu, 8 Jan 2004 13:41:06 -0800 (PST) Received: from ms-smtp-02-eri0.socal.rr.com (ms-smtp-02-qfe0.socal.rr.com [66.75.162.134]) by mx1.FreeBSD.org (Postfix) with ESMTP id 33F8243D41 for ; Thu, 8 Jan 2004 13:41:03 -0800 (PST) (envelope-from sean@mcneil.com) Received: from server.mcneil.com (cpe-66-75-176-109.socal.rr.com [66.75.176.109])i08Lf0NR021573 for ; Thu, 8 Jan 2004 13:41:00 -0800 (PST) Received: from [66.75.176.109] (mcneil.com [66.75.176.109]) by server.mcneil.com (8.12.10/8.12.10) with ESMTP id i08LexNj001587 for ; Thu, 8 Jan 2004 13:41:00 -0800 (PST) (envelope-from sean@mcneil.com) From: Sean McNeil To: freebsd-current@freebsd.org Content-Type: text/plain Message-Id: <1073598059.1541.3.camel@server.mcneil.com> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.5 Date: Thu, 08 Jan 2004 13:40:59 -0800 Content-Transfer-Encoding: 7bit X-DCC-sonic.net-Metrics: server.mcneil.com 1156; Body=1 Fuz1=1 Fuz2=1 X-Mailman-Approved-At: Thu, 08 Jan 2004 14:10:14 -0800 Subject: devfs support of wildcarding X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Jan 2004 21:41:06 -0000 My recent post with a change to /etc/rc.d/devfs allowed for things like: perm pass* 0666 to be in /etc/devfs.conf I've made a slight modification to that to allow something like: perm xpt0,pass*,cd* 0666 I hope someone else might find this useful. /etc/rc.d/devfs: #!/bin/sh # # $FreeBSD: src/etc/rc.d/devfs,v 1.6 2003/08/20 06:15:18 mtm Exp $ # # PROVIDE: devfs # REQUIRE: LOGIN # BEFORE: securelevel # KEYWORD: FreeBSD . /etc/rc.subr name="devfs" start_cmd='devfs_start' stop_cmd=':' devfs_start() { if [ -n "$devfs_system_ruleset" ]; then devfs_init_rulesets devfs_set_ruleset $devfs_system_ruleset /dev devfs_apply_ruleset $devfs_system_ruleset /dev fi read_devfs_conf } read_devfs_conf() { if [ -r /etc/devfs.conf ]; then cd /dev while read action devlist parameter; do for device in `echo ${devlist} | sed -e 's/,/ /g'`; do case "${action}" in l*) if [ -c ${device} -a ! -e ${parameter} ]; then ln -fs ${device} ${parameter} fi ;; o*) if [ -c ${device} ]; then chown ${parameter} ${device} fi ;; p*) if [ -c ${device} ]; then chmod ${parameter} ${device} fi ;; esac done done < /etc/devfs.conf fi } load_rc_config $name run_rc_command "$1"