1#!/bin/sh - 2# $NetBSD: SVR4_MAKEDEV,v 1.9 2001/02/10 23:25:51 eeh Exp $ 3# 4# Copyright (c) 1995 Christos Zoulas 5# All rights reserved. 6# 7# Redistribution and use in source and binary forms, with or without 8# modification, are permitted provided that the following conditions 9# are met: 10# 1. Redistributions of source code must retain the above copyright 11# notice, this list of conditions and the following disclaimer. 12# 2. Redistributions in binary form must reproduce the above copyright 13# notice, this list of conditions and the following disclaimer in the 14# documentation and/or other materials provided with the distribution. 15# 3. The names of the authors may not be used to endorse or promote products 16# derived from this software without specific prior written permission 17# 18# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 19# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 20# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 22# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 23# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 27# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28# 29# Device "make" file. Valid arguments: 30# all everything 31# Terminal devices: 32# ptmx pty master multiplexer 33# Use the ptyfs for the slaves. 34# Network: 35# udp UDP socket creation 36# tcp TCP socket creation 37# rawip RAW socket creation 38# ticlts UNIX datagram creation 39# ticotsord UNIX stream creation (with orderly release) 40# ticots UNIX stream creation 41# Various: 42# wabi Windows emulation; /dev/null for now 43# 44PATH=/sbin:/bin/:/usr/bin:/usr/sbin:/usr/etc 45MACHINE=${MACHINE:-`/usr/bin/uname -m`} 46umask 77 47 48case $MACHINE in 49amiga) major=51;; 50atari) major=51;; 51hp300) major=36;; 52i386) major=43;; 53mac68k) major=44;; 54mvme68k) major=38;; 55next68k) major=44;; 56news68k) major=75;; 57sparc*) major=43;; 58sun3) major=83;; 59x68k) major=42;; 60*) 61 echo $MACHINE: unsupported machine >&2 62 exit 1 63 ;; 64esac 65 66for i 67do 68 69unit=`expr $i : '[a-z][a-z]*\([0-9][0-9]*\)'` 70[ "$unit" ] || unit=0 71 72case $i in 73 74all) 75 sh SVR4_MAKEDEV ptmx 76 sh SVR4_MAKEDEV tcp udp rawip ticlts ticotsord ticots wabi 77 ;; 78 79ptmx) 80 mknod -R -u bin -g bin -m 666 $i c ptm 2 81 ;; 82 83tcp) 84 rm -f $i 85 mknod $i c $major 35 86 chown bin.bin $i 87 chmod 666 $i 88 ;; 89 90 91udp) 92 rm -f $i 93 mknod $i c $major 36 94 chown bin.bin $i 95 chmod 666 $i 96 ;; 97 98rawip) 99 rm -f $i 100 mknod $i c $major 37 101 chown bin.bin $i 102 chmod 666 $i 103 ;; 104 105ticlts) 106 rm -f $i 107 mknod $i c $major 38 108 chown bin.bin $i 109 chmod 666 $i 110 ;; 111 112ticotsord) 113 rm -f $i 114 mknod $i c $major 39 115 chown bin.bin $i 116 chmod 666 $i 117 ;; 118 119ticots) 120 rm -f $i 121 mknod $i c $major 40 122 chown bin.bin $i 123 chmod 666 $i 124 ;; 125 126 127wabi) 128 rm -f $i 129 case $MACHINE in 130 amiga|\ 131 atari|\ 132 hp300|\ 133 i386|\ 134 mac68k|\ 135 mvme68k|\ 136 next68k|\ 137 x68k) 138 mknod $i c 2 2;; # /dev/null 139 news68k|\ 140 sparc*|\ 141 sun3) 142 mknod $i c 3 2;; # /dev/null 143 esac 144 chown bin.bin $i 145 chmod 666 $i 146 ;; 147 148*) 149 echo $i: unknown device 2>&1 150 exit 1 151 ;; 152esac 153done 154 155