1 #!/bin/sh 2 # 3 # CDDL HEADER START 4 # 5 # The contents of this file are subject to the terms of the 6 # Common Development and Distribution License (the "License"). 7 # You may not use this file except in compliance with the License. 8 # 9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 # or http://www.opensolaris.org/os/licensing. 11 # See the License for the specific language governing permissions 12 # and limitations under the License. 13 # 14 # When distributing Covered Code, include this CDDL HEADER in each 15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 # If applicable, add the following below this CDDL HEADER, with the 17 # fields enclosed by brackets "[]" replaced with your own identifying 18 # information: Portions Copyright [yyyy] [name of copyright owner] 19 # 20 # CDDL HEADER END 21 # 22 # 23 #pragma ident "%Z%%M% %I% %E% SMI" 24 # 25 # Copyright 2008 Sun Microsystems, Inc. All rights reserved. 26 # Use is subject to license terms. 27 # 28 29 PATH="/usr/bin:/usr/sbin:${PATH}" 30 export PATH 31 32 while read src dest 33 do 34 if [ ! -f $dest ] ; then 35 cp $src $dest 36 else 37 # begin updates 38 sed -e '/^type=ddi_pseudo;name=app /d' \ 39 -e '/^type=ddi_pseudo;name=sw /d' \ 40 -e '/^type=ddi_pseudo;name=tiqmouse /d' \ 41 -e '/^type=ddi_pseudo;name=win /d' \ 42 -e 's/^type=ddi_serial:mb;name=asy/type=ddi_serial:mb/' \ 43 -e 's/^type=ddi_serial:dialout,mb;name=asy/type=ddi_serial:dialout,mb/' \ 44 -e '/^type=ddi_pseudo;name=lp;addr=3BC,0 /s/3BC,0/1,3bc/' \ 45 -e '/^type=ddi_pseudo;name=lp;addr=3bc,0 /s/3bc,0/1,3bc/' \ 46 -e '/^type=ddi_pseudo;name=lp;addr=378,0 /s/378,0/1,378/' \ 47 -e '/^type=ddi_pseudo;name=lp;addr=278,0 /s/278,0/1,278/' \ 48 -e '/^type=ddi_audio;minor1=audio /d' \ 49 -e '/^type=ddi_audio;minor1=audioctl /d' \ 50 -e '/^type=ddi_pseudo;name=kdmouse /d' \ 51 -e '/^type=ddi_pseudo;name=logi /d' \ 52 -e '/^type=ddi_pseudo;name=lp;addr=1,3bc /d' \ 53 -e '/^type=ddi_pseudo;name=lp;addr=1,378 /d' \ 54 -e '/^type=ddi_pseudo;name=lp;addr=1,278 /d' \ 55 -e '/^type=ddi_pseudo;name=rootprop /d' \ 56 -e '/^type=ddi_serial:mb;minor=a /d' \ 57 -e '/^type=ddi_serial:mb;minor=b /d' \ 58 -e '/^type=ddi_serial:mb;minor=c /d' \ 59 -e '/^type=ddi_serial:mb;minor=d /d' \ 60 -e '/^type=ddi_serial:mb;minor=a /d' \ 61 -e '/^type=ddi_serial:mb;minor=b /d' \ 62 -e '/^type=ddi_serial:mb;minor=c /d' \ 63 -e '/^type=ddi_serial:mb;minor=d /d' \ 64 -e '/^type=ddi_serial:dialout,mb;minor=a,cu /d' \ 65 -e '/^type=ddi_serial:dialout,mb;minor=b,cu /d' \ 66 -e '/^type=ddi_serial:dialout,mb;minor=c,cu /d' \ 67 -e '/^type=ddi_serial:dialout,mb;minor=d,cu /d' \ 68 -e '/^type=ddi_serial:mb; /d' \ 69 -e '/^type=ddi_serial:dialout,mb;minor=a,cu /d' \ 70 -e '/^type=ddi_serial:dialout,mb;minor=b,cu /d' \ 71 -e '/^type=ddi_serial:dialout,mb;minor=c,cu /d' \ 72 -e '/^type=ddi_serial:dialout,mb;minor=d,cu /d' \ 73 -e '/^type=ddi_pseudo;name=msm /d' \ 74 -e '/^type=ddi_audio;name=clone;minor=sbpro /d' \ 75 -e '/^type=ddi_audio;name=sbpro;minor=sbproctl /d' \ 76 -e '/^type=ddi_block:diskette;addr=0,0;minor=c /d' \ 77 -e '/^type=ddi_block:diskette;addr=0,0;minor=c,raw /d' \ 78 -e '/^type=ddi_block:diskette;addr1=0;minor=c /d' \ 79 -e '/^type=ddi_block:diskette;addr1=0;minor=c,raw /d' \ 80 -e '/^type=ddi_pseudo;name=chanmux;minor=chanmux /d' \ 81 -e '/^type=ddi_pseudo;name=chanmux;minor=1 /d' \ 82 -e '/^type=ddi_pseudo;name=chanmux;minor=2 /d' \ 83 -e '/^type=ddi_pseudo;name=chanmux;minor=3 /d' \ 84 -e '/^type=ddi_pseudo;name=chanmux;minor=4 /d' \ 85 -e '/^type=ddi_pseudo;name=chanmux;minor=5 /d' \ 86 -e '/^type=ddi_pseudo;name=chanmux;minor=6 /d' \ 87 -e '/^type=ddi_pseudo;name=chanmux;minor=7 /d' \ 88 -e '/^type=ddi_pseudo;name=chanmux;minor=8 /d' \ 89 -e '/^type=ddi_pseudo;name=chanmux;minor=9 /d' \ 90 -e '/^type=ddi_pseudo;name=chanmux;minor=10 /d' \ 91 -e '/^type=ddi_pseudo;name=chanmux;minor=11 /d' \ 92 -e '/^type=ddi_pseudo;name=chanmux;minor=12 /d' \ 93 -e '/^type=ddi_pseudo;name=chanmux;minor=chanmux /d' \ 94 -e '/^type=ddi_pseudo;name=winlock /d' \ 95 -e '/^type=ddi_pseudo;name=mm /d' \ 96 -e '/^type=ddi_pseudo;name=conskbd /d' \ 97 -e '/^type=ddi_pseudo;name=consms /d' \ 98 -e '/^type=ddi_pseudo;name=wc /d' \ 99 -e '/^type=ddi_pseudo;name=dump /d' \ 100 -e '/^type=ddi_pseudo;name=cn /d' \ 101 -e '/^type=ddi_pseudo;name=lo /d' \ 102 -e '/^type=ddi_pseudo;name=ptm /d' \ 103 -e '/^type=ddi_pseudo;name=ptc /d' \ 104 -e '/^type=ddi_pseudo;name=pts /d' \ 105 -e '/^type=ddi_pseudo;name=ptsl /d' \ 106 -e '/^type=ddi_pseudo;name=log /d' \ 107 -e '/^type=ddi_pseudo;name=sad /d' \ 108 -e '/^type=ddi_pseudo;name=sy /d' \ 109 -e '/^type=ddi_pseudo;name=clone /d' \ 110 -e '/^type=ddi_network /d' \ 111 -e '/^type=ddi_pseudo;name=openeepr /d' \ 112 -e '/^type=ddi_pseudo;name=lockstat /d' \ 113 -e '/^type=ddi_pseudo;name=kstat /d' \ 114 -e '/^type=ddi_pseudo;name=ksyms /d' \ 115 -e '/^type=ddi_display /d' \ 116 -e '/^type=ddi_pseudo;name=clone;minor=icmp /d' \ 117 -e '/^type=ddi_pseudo;name=SUNW,bpp /d' \ 118 -e '/^type=ddi_pseudo;name=eeprom /d' \ 119 -e '/^type=ddi_pseudo;name=clone;minor=ipdcm /d' \ 120 -e '/^type=ddi_pseudo;name=vol /d' \ 121 -e '/^type=ddi_pseudo;name=profile /d' \ 122 -e '/^type=ddi_parallel;name=mcpp /d' \ 123 -e '/^type=ddi_pseudo;name=zsh /d' \ 124 -e '/^type=ddi_pseudo;name=clone;minor=zsh /d' \ 125 -e '/^type=ddi_pseudo;name=SUNW,sx /d' \ 126 -e '/^type=ddi_pseudo;name=sx_cmem /d' \ 127 -e '/^type=ddi_parallel;name=SUNW,spif;minor=stclp /d' \ 128 -e '/^type=ddi_pseudo;name=SUNW,spif;minor=stc /d' \ 129 -e '/^type=ddi_pseudo;name=tl;minor=ticots /d' \ 130 -e '/^type=ddi_pseudo;name=tl;minor=ticotsord /d' \ 131 -e '/^type=ddi_pseudo;name=tl;minor=ticlts /d' \ 132 -e '/^type=ddi_pseudo;name=md;minor=admin /d' \ 133 -e '/^type=ddi_pseudo;name=md;minor2=blk /d' \ 134 -e '/^type=ddi_pseudo;name=md;minor2=raw /d' \ 135 -e '/^type=ddi_pseudo;name=tnf /d' \ 136 -e '/^type=ddi_pseudo;name=pm /d' \ 137 -e '/^type=ddi_pseudo;name=winlock /d' \ 138 -e '/^type=ddi_pseudo;name=mm /d' \ 139 -e '/^type=ddi_pseudo;name=conskbd /d' \ 140 -e '/^type=ddi_pseudo;name=consms /d' \ 141 -e '/^type=ddi_pseudo;name=wc /d' \ 142 -e '/^type=ddi_pseudo;name=dump /d' \ 143 -e '/^type=ddi_pseudo;name=cn /d' \ 144 -e '/^type=ddi_pseudo;name=lo /d' \ 145 -e '/^type=ddi_pseudo;name=ptm /d' \ 146 -e '/^type=ddi_pseudo;name=ptc /d' \ 147 -e '/^type=ddi_pseudo;name=pts /d' \ 148 -e '/^type=ddi_pseudo;name=ptsl /d' \ 149 -e '/^type=ddi_pseudo;name=log /d' \ 150 -e '/^type=ddi_pseudo;name=sad /d' \ 151 -e '/^type=ddi_pseudo;name=sy /d' \ 152 -e '/^type=ddi_pseudo;name=clone /d' \ 153 -e '/^type=ddi_network /d' \ 154 -e '/^type=ddi_pseudo;name=openeepr /d' \ 155 -e '/^type=ddi_pseudo;name=lockstat /d' \ 156 -e '/^type=ddi_pseudo;name=kstat /d' \ 157 -e '/^type=ddi_pseudo;name=ksyms /d' \ 158 -e '/^type=ddi_display /d' \ 159 -e '/^type=ddi_pseudo;name=clone;minor=icmp /d' \ 160 -e '/^type=ddi_pseudo;name=SUNW,bpp /d' \ 161 -e '/^type=ddi_pseudo;name=eeprom /d' \ 162 -e '/^type=ddi_pseudo;name=clone;minor=ipdcm /d' \ 163 -e '/^type=ddi_pseudo;name=vol /d' \ 164 -e '/^type=ddi_pseudo;name=profile /d' \ 165 -e '/^type=ddi_parallel;name=mcpp /d' \ 166 -e '/^type=ddi_pseudo;name=zsh /d' \ 167 -e '/^type=ddi_pseudo;name=clone;minor=zsh /d' \ 168 -e '/^type=ddi_pseudo;name=SUNW,sx /d' \ 169 -e '/^type=ddi_pseudo;name=sx_cmem /d' \ 170 -e '/^type=ddi_parallel;name=SUNW,spif;minor=stclp /d' \ 171 -e '/^type=ddi_pseudo;name=SUNW,spif;minor=stc /d' \ 172 -e '/^type=ddi_pseudo;name=tl;minor=ticots /d' \ 173 -e '/^type=ddi_pseudo;name=tl;minor=ticotsord /d' \ 174 -e '/^type=ddi_pseudo;name=tl;minor=ticlts /d' \ 175 -e '/^type=ddi_pseudo;name=md;minor=admin /d' \ 176 -e '/^type=ddi_pseudo;name=md;minor2=blk /d' \ 177 -e '/^type=ddi_pseudo;name=md;minor2=raw /d' \ 178 -e '/^type=ddi_pseudo;name=tnf /d' \ 179 -e '/^type=ddi_pseudo;name=pm /d' \ 180 $dest > /tmp/d.$$ 181 182 if cmp -s /tmp/d.$$ $dest > /dev/null 2>&1 183 then 184 : # Do not modify file unless changes are required. 185 else 186 cp /tmp/d.$$ $dest 187 fi 188 189 # remove temporary files 190 rm -f /tmp/d.$$ 191 fi 192 done 193 194 exit 0 195