1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# Copyright (c) 1990, 2010, Oracle and/or its affiliates. All rights reserved. 22# 23# Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T 24# All Rights Reserved 25# 26# Portions of this source code were derived from Berkeley 27# under license from the Regents of the University of 28# California. 29# 30#---- 31# It is somewhat confusing to note that Solaris 2.x uses /etc/auto_master 32# instead of the 4.x /etc/auto.master file name because of NIS+ treating a 33# "." in a special way. 34# 35# Set the following variable to "-b" to have NIS servers use the domain name 36# resolver for hosts not in the current domain. 37#B=-b 38B= 39DIR =/etc 40# 41# If the ipnodes (IPv6 hosts file) lives in a directory other than 42# /etc/inet, then you'll need to change the following line. 43# 44INETDIR=/etc/inet 45# 46# If the auth_attr, exec_attr, prof_attr files 47# live in a directory other than /etc/security, then you'll 48# need to change the following line. 49# 50RBACDIR=/etc/security 51# 52# If the passwd, shadow and/or adjunct files used by rpc.yppasswdd 53# live in directory other than /etc then you'll need to change the 54# following line. 55# DO NOT indent the line, however, since /etc/init.d/yp attempts 56# to find it with grep "^PWDIR" ... 57# 58PWDIR =/etc 59DOM = `domainname` 60NOPUSH = "" 61ALIASES = /etc/mail/aliases 62YPDIR=/usr/lib/netsvc/yp 63SBINDIR=/usr/sbin 64YPDBDIR=/var/yp 65YPPUSH=$(YPDIR)/yppush 66MAKEDBM=$(SBINDIR)/makedbm 67MULTI=$(YPDIR)/multi 68REVNETGROUP=$(SBINDIR)/revnetgroup 69STDETHERS=$(YPDIR)/stdethers 70STDHOSTS=$(YPDIR)/stdhosts 71MKNETID=$(SBINDIR)/mknetid 72MKALIAS=$(YPDIR)/mkalias 73 74CHKPIPE= || ( echo "NIS make terminated:" $@ 1>&2; kill -TERM 0 ) 75 76 77k: 78 @if [ ! $(NOPUSH) ]; then $(MAKE) $(MFLAGS) -k all; \ 79 else $(MAKE) $(MFLAGS) -k all NOPUSH=$(NOPUSH);fi 80 81all: passwd group hosts ipnodes ethers networks rpc services protocols \ 82 netgroup bootparams aliases publickey netid netmasks c2secure \ 83 timezone auto.master auto.home ageing \ 84 auth.attr exec.attr prof.attr user.attr 85 86c2secure: 87 -@if [ -f $(PWDIR)/security/passwd.adjunct ]; then \ 88 if [ ! $(NOPUSH) ]; then $(MAKE) $(MFLAGS) -k \ 89 passwd.adjunct.time group.adjunct.time; \ 90 else $(MAKE) $(MFLAGS) -k NOPUSH=$(NOPUSH) \ 91 passwd.adjunct.time group.adjunct.time; \ 92 fi; \ 93 fi 94 95passwd.time: $(PWDIR)/passwd $(PWDIR)/shadow 96 -@if [ -f $(PWDIR)/security/passwd.adjunct ]; then \ 97 (nawk 'BEGIN { FS=":"; OFS=":" } /^[a-zA-Z0-9_]/ { $$2 = "##" $$1; printf "%s\t%s\n", $$1, $$0 }' $(PWDIR)/passwd $(CHKPIPE)) | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/passwd.byname; \ 98 (nawk 'BEGIN { FS=":"; OFS=":" } /^[a-zA-Z0-9_]/ { $$2 = "##" $$1; printf "%-10d\t%s\n", $$3, $$0 }' $(PWDIR)/passwd $(CHKPIPE)) | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/passwd.byuid; \ 99 elif [ -f $(PWDIR)/shadow ]; then \ 100 (nawk 'BEGIN { FS=":"; OFS=":"; while ( getline < "$(PWDIR)/shadow" > 0) shadow[$$1] = $$2; } /^[a-zA-Z0-9_]/ { $$2 = shadow[$$1]; printf "%s\t%s\n",$$1,$$0 }' $(PWDIR)/passwd $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/passwd.byname; \ 101 (nawk 'BEGIN { FS=":"; OFS=":"; while ( getline < "$(PWDIR)/shadow" > 0) shadow[$$1] = $$2; } /^[a-zA-Z0-9_]/ { $$2 = shadow[$$1]; printf "%-10d\t%s\n",$$3,$$0 }' $(PWDIR)/passwd $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/passwd.byuid; \ 102 else \ 103 (awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { print $$1, $$0 }' $(PWDIR)/passwd $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/passwd.byname; \ 104 (awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { printf("%-10d ", $$3); print $$0 }' $(PWDIR)/passwd $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/passwd.byuid; \ 105 fi 106 @touch passwd.time; 107 @echo "updated passwd"; 108 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) passwd.byname; fi 109 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) passwd.byuid; fi 110 @if [ ! $(NOPUSH) ]; then echo "pushed passwd"; fi 111 112group.time: $(DIR)/group 113 @(awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { print $$1, $$0 }' $(DIR)/group $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/group.byname; 114 @(awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { printf("%-10d ", $$3); print $$0 }' $(DIR)/group $(CHKPIPE)) | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/group.bygid; 115 @touch group.time; 116 @echo "updated group"; 117 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) group.byname; fi 118 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) group.bygid; fi 119 @if [ ! $(NOPUSH) ]; then echo "pushed group"; fi 120 121project.time: $(DIR)/project 122 @(awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { print $$1, $$0 }' $(DIR)/project $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/project.byname; 123 @(awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { printf("%-10d ", $$2); print $$0 }' $(DIR)/project $(CHKPIPE)) | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/project.byprojid; 124 @touch project.time; 125 @echo "updated project"; 126 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) project.byname; fi 127 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) project.byprojid; fi 128 @if [ ! $(NOPUSH) ]; then echo "pushed project"; fi 129 130ipnodes.time: $(INETDIR)/ipnodes 131 @($(MULTI) -n $(B) -l $(INETDIR)/ipnodes); 132 @($(STDHOSTS) -wn $(INETDIR)/ipnodes $(CHKPIPE))| \ 133 (awk 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$1, $$0 }' $(CHKPIPE)) | \ 134 $(MAKEDBM) $(B) - $(YPDBDIR)/$(DOM)/ipnodes.byaddr; 135 @touch ipnodes.time; 136 @echo "updated ipnodes"; 137 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) ipnodes.byname; fi 138 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) ipnodes.byaddr; fi 139 @if [ ! $(NOPUSH) ]; then echo "pushed ipnodes"; fi 140 141hosts.time: $(DIR)/hosts 142 @($(MULTI) $(B) -l $(DIR)/hosts); 143 @($(STDHOSTS) -w $(DIR)/hosts $(CHKPIPE))| \ 144 (awk 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$1, $$0 }' $(CHKPIPE)) | \ 145 $(MAKEDBM) $(B) - $(YPDBDIR)/$(DOM)/hosts.byaddr; 146 @touch hosts.time; 147 @echo "updated hosts"; 148 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) hosts.byname; fi 149 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) hosts.byaddr; fi 150 @if [ ! $(NOPUSH) ]; then echo "pushed hosts"; fi 151 152ethers.time: $(DIR)/ethers 153 @($(STDETHERS) $(DIR)/ethers $(CHKPIPE)) \ 154 |(awk '{print $$1, $$0; for (i = 3;i <= NF;i++) print $$i,$$0}' $(CHKPIPE)) \ 155 | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/ethers.byaddr 156 157 @(awk 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' \ 158 $(DIR)/ethers $(CHKPIPE)) | \ 159 $(MAKEDBM) - $(YPDBDIR)/$(DOM)/ethers.byname; 160 @touch ethers.time; 161 @echo "updated ethers"; 162 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) ethers.byname; fi 163 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) ethers.byaddr; fi 164 @if [ ! $(NOPUSH) ]; then echo "pushed ethers"; fi 165 166networks.time: $(DIR)/networks 167 @(sed -e "/^#/d" -e s/#.*$$// $(DIR)/networks $(CHKPIPE)) |( awk \ 168 '{print $$1, $$0; for (i = 3;i <= NF;i++) print $$i,$$0}' \ 169 $(CHKPIPE) )| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/networks.byname; 170 @(awk 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' \ 171 $(DIR)/networks $(CHKPIPE)) | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/networks.byaddr; 172 @touch networks.time; 173 @echo "updated networks"; 174 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) networks.byname; fi 175 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) networks.byaddr; fi 176 @if [ ! $(NOPUSH) ]; then echo "pushed networks"; fi 177 178services.time: $(DIR)/services 179 @(awk 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' \ 180 $(DIR)/services $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/services.byname; 181 @(awk 'BEGIN { OFS="\t"; } \ 182 $$1 !~ /^#/ { split($$2,pp,"/"); printf("%s/%s %s\n", $$1, pp[2], $$0);\ 183 if (seen[$$1] == "") {\ 184 printf("%s %s\n", $$1, $$0); seen[$$1]=$$1;} \ 185 for (i = 3; i <= NF && $$i !~ /^#/; i++) {\ 186 if (seen[$$i] == "") {\ 187 printf("%s %s\n", $$i, $$0); seen[$$i]=$$i;} \ 188 printf("%s/%s %s\n", $$i, pp[2], $$0)}}' \ 189 $(DIR)/services $(CHKPIPE)) | \ 190 $(MAKEDBM) $(B) - $(YPDBDIR)/$(DOM)/services.byservicename 191 192 @touch services.time; 193 @echo "updated services"; 194 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) services.byname; fi 195 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) services.byservicename; fi 196 @if [ ! $(NOPUSH) ]; then echo "pushed services"; fi 197 198rpc.time: $(DIR)/rpc 199 @(awk 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' \ 200 $(DIR)/rpc $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/rpc.bynumber; 201 @touch rpc.time; 202 @echo "updated rpc"; 203 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) rpc.bynumber; fi 204 @if [ ! $(NOPUSH) ]; then echo "pushed rpc"; fi 205 206protocols.time: $(DIR)/protocols 207 @(awk 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' \ 208 $(DIR)/protocols $(CHKPIPE)) | $(MAKEDBM) - \ 209 $(YPDBDIR)/$(DOM)/protocols.bynumber; 210 211 @(sed -e "/^#/d" -e s/#.*$$// $(DIR)/protocols $(CHKPIPE)) |( awk \ 212 '{print $$1,$$0; for (i = 3;i <= NF;i++) print $$i, $$0}' \ 213 $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/protocols.byname; 214 215 @touch protocols.time; 216 @echo "updated protocols"; 217 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) protocols.byname; fi 218 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) protocols.bynumber; fi 219 @if [ ! $(NOPUSH) ]; then echo "pushed protocols"; fi 220 221netgroup.time: $(DIR)/netgroup 222 @$(MAKEDBM) $(DIR)/netgroup $(YPDBDIR)/$(DOM)/netgroup 223 @($(REVNETGROUP) < $(DIR)/netgroup -u $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/netgroup.byuser 224 @($(REVNETGROUP) < $(DIR)/netgroup -h $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/netgroup.byhost 225 @touch netgroup.time; 226 @echo "updated netgroup"; 227 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) netgroup; fi 228 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) netgroup.byuser; fi 229 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) netgroup.byhost; fi 230 @if [ ! $(NOPUSH) ]; then echo "pushed netgroup"; fi 231 232bootparams.time: $(DIR)/bootparams 233 @(sed -e '/^#/d' -e s/#.*$$// -e 's/[ ][ ]*$$//' \ 234 -e '/\\$$/s/\\$$/ /' $(DIR)/bootparams $(CHKPIPE))\ 235 |( awk '/ $$/ {printf "%s", $$0} !/ $$/ {print}' $(CHKPIPE))\ 236 |( sed -e 's/[ ][ ]*/ /g' $(CHKPIPE))\ 237 | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/bootparams; 238 @touch bootparams.time; 239 @echo "updated bootparams"; 240 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) bootparams; fi 241 @if [ ! $(NOPUSH) ]; then echo "pushed bootparams"; fi 242 243aliases.time: $(ALIASES) 244 @cp $(ALIASES) $(YPDBDIR)/$(DOM)/mail.aliases; 245 @/usr/lib/sendmail -bi -oA$(YPDBDIR)/$(DOM)/mail.aliases; 246 $(MKALIAS) $(YPDBDIR)/$(DOM)/mail.aliases $(YPDBDIR)/$(DOM)/mail.byaddr; 247 @rm $(YPDBDIR)/$(DOM)/mail.aliases; 248 @touch aliases.time; 249 @echo "updated aliases"; 250 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) mail.aliases; fi 251 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) mail.byaddr; fi 252 @if [ ! $(NOPUSH) ]; then echo "pushed aliases"; fi 253 254netmasks.time: $(DIR)/netmasks 255 $(MAKEDBM) $(DIR)/netmasks $(YPDBDIR)/$(DOM)/netmasks.byaddr; 256 @touch netmasks.time; 257 @echo "updated netmasks"; 258 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) netmasks.byaddr; fi 259 @if [ ! $(NOPUSH) ]; then echo "pushed netmasks"; fi 260 261 262publickey.time: $(DIR)/publickey 263 @(sed "/^#/d" < $(DIR)/publickey $(CHKPIPE))| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/publickey.byname; 264 @touch publickey.time; 265 @echo "updated publickey"; 266 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) publickey.byname; fi 267 @if [ ! $(NOPUSH) ]; then echo "pushed publickey"; fi 268 269netid.time: $(PWDIR)/passwd $(DIR)/group $(DIR)/hosts $(DIR)/netid 270 @$(MKNETID) -q -p $(PWDIR)/passwd -g $(DIR)/group -h $(DIR)/hosts -m $(DIR)/netid > .ypjunk; 271 @$(MAKEDBM) .ypjunk $(YPDBDIR)/$(DOM)/netid.byname; 272 @rm -f .ypjunk; 273 @touch netid.time; 274 @echo "updated netid"; 275 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) netid.byname; fi 276 @if [ ! $(NOPUSH) ]; then echo "pushed netid"; fi 277 278# Old way. Could be restored by PSARC decision. 279# 280#passwd.adjunct.time: $(PWDIR)/security/passwd.adjunct 281# @(awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { print $$1, $$0 }' $(PWDIR)/security/passwd.adjunct $(CHKPIPE)) | \ 282# $(MAKEDBM) -s - $(YPDBDIR)/$(DOM)/passwd.adjunct.byname; 283# @chmod 600 $(YPDBDIR)/$(DOM)/passwd.adjunct.byname.dir; 284# @chmod 600 $(YPDBDIR)/$(DOM)/passwd.adjunct.byname.pag; 285# @touch passwd.adjunct.time 286# @echo "updated passwd.adjunct"; 287# @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) passwd.adjunct.byname; fi 288# @if [ ! $(NOPUSH) ]; then echo "pushed passwd.adjunct"; fi 289 290passwd.adjunct.time: $(PWDIR)/security/passwd.adjunct $(PWDIR)/shadow 291 -@if [ -f $(PWDIR)/shadow ]; then \ 292 (nawk 'BEGIN { FS=":"; while (getline < "$(PWDIR)/shadow" > 0) shadow[$$1] = $$2; } /^[a-zA-Z0-9_]/ { $$2 = shadow[$$1]; OFS=":"; printf "%s\t%s\n", $$1, $$0 }' $(PWDIR)/security/passwd.adjunct $(CHKPIPE)) | $(MAKEDBM) -s - $(YPDBDIR)/$(DOM)/passwd.adjunct.byname; \ 293 else \ 294 (awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { print $$1, $$0 }' $(PWDIR)/security/passwd.adjunct $(CHKPIPE)) | \ 295 $(MAKEDBM) -s - $(YPDBDIR)/$(DOM)/passwd.adjunct.byname; \ 296 fi 297 @chmod 600 $(YPDBDIR)/$(DOM)/passwd.adjunct.byname.dir; 298 @chmod 600 $(YPDBDIR)/$(DOM)/passwd.adjunct.byname.pag; 299 @touch passwd.adjunct.time 300 @echo "updated passwd.adjunct"; 301 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) passwd.adjunct.byname; fi 302 @if [ ! $(NOPUSH) ]; then echo "pushed passwd.adjunct"; fi 303 304group.adjunct.time: $(PWDIR)/security/group.adjunct 305 @(awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ { print $$1, $$0 }' $(PWDIR)/security/group.adjunct $(CHKPIPE)) | \ 306 $(MAKEDBM) -s - $(YPDBDIR)/$(DOM)/group.adjunct.byname; 307 @chmod 600 $(YPDBDIR)/$(DOM)/group.adjunct.byname.dir; 308 @chmod 600 $(YPDBDIR)/$(DOM)/group.adjunct.byname.pag; 309 @touch group.adjunct.time 310 @echo "updated group.adjunct"; 311 @if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) group.adjunct.byname; fi 312 @if [ ! $(NOPUSH) ]; then echo "pushed group.adjunct"; fi 313 314timezone.time: $(DIR)/timezone 315 -@if [ -f $(DIR)/timezone ]; then \ 316 sed -e "/^#/d" -e s/#.*$$// $(DIR)/timezone \ 317 | awk '{for (i = 2; i<=NF; i++) print $$i, $$0}' \ 318 | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/timezone.byname; \ 319 touch timezone.time; \ 320 echo "updated timezone"; \ 321 if [ ! $(NOPUSH) ]; then \ 322 $(YPPUSH) timezone.byname; \ 323 echo "pushed timezone"; \ 324 else \ 325 : ; \ 326 fi \ 327 else \ 328 echo "couldn't find $(DIR)/timezone"; \ 329 fi 330 331auto.master.time: $(DIR)/auto_master 332 -@if [ -f $(DIR)/auto_master ]; then \ 333 sed -e "/^#/d" -e s/#.*$$// $(DIR)/auto_master \ 334 | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/auto.master; \ 335 touch auto.master.time; \ 336 echo "updated auto.master"; \ 337 if [ ! $(NOPUSH) ]; then \ 338 $(YPPUSH) auto.master; \ 339 echo "pushed auto.master"; \ 340 else \ 341 : ; \ 342 fi \ 343 else \ 344 echo "couldn't find $(DIR)/auto_master"; \ 345 fi 346 347auto.home.time: $(DIR)/auto_home 348 -@if [ -f $(DIR)/auto_home ]; then \ 349 sed -e "/^#/d" -e s/#.*$$// $(DIR)/auto_home \ 350 | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/auto.home; \ 351 touch auto.home.time; \ 352 echo "updated auto.home"; \ 353 if [ ! $(NOPUSH) ]; then \ 354 $(YPPUSH) auto.home; \ 355 echo "pushed auto.home"; \ 356 else \ 357 : ; \ 358 fi \ 359 else \ 360 echo "couldn't find $(DIR)/auto_home"; \ 361 fi 362 363 364auth.attr.time: $(RBACDIR)/auth_attr 365 -@if [ -f $(RBACDIR)/auth_attr ]; then \ 366 sed -e "/^#/d" -e s/#.*$$// $(RBACDIR)/auth_attr \ 367 |sed -e '/\\$$/{:l' -e 'N;s/\\\n//;t h' -e ':h' \ 368 -e 's/\\$$/\\/;t l' -e } \ 369 | (nawk 'BEGIN { FS=":"; OFS=":" } /^[a-zA-Z0-9_]/ \ 370 {printf "%s:%s\n", $$1, $$0 }' $(CHKPIPE)) \ 371 | $(MAKEDBM) -S ":" -E - $(YPDBDIR)/$(DOM)/auth_attr; \ 372 touch auth.attr.time; \ 373 echo "updated auth_attr"; \ 374 if [ ! $(NOPUSH) ]; then \ 375 $(YPPUSH) auth_attr; \ 376 echo "pushed auth_attr"; \ 377 else \ 378 : ; \ 379 fi \ 380 else \ 381 echo "couldn't find $(RBACDIR)/auth_attr"; \ 382 fi 383 384exec.attr.time: $(RBACDIR)/exec_attr 385 -@if [ -f $(RBACDIR)/exec_attr ]; then \ 386 sed -e "/^#/d" -e s/#.*$$// $(RBACDIR)/exec_attr \ 387 |sed -e '/\\$$/{:l' -e 'N;s/\\\n//;t h' -e ':h' \ 388 -e 's/\\$$/\\/;t l' -e } \ 389 | (nawk 'BEGIN { FS=":"; OFS=":" } /^[a-zA-Z0-9_]/ \ 390 {printf "%s:%s:%s:%s\n", $$1, $$2, $$6, $$0 }' $(CHKPIPE)) \ 391 | $(MAKEDBM) -S ":" -E -D 2 - $(YPDBDIR)/$(DOM)/exec_attr; \ 392 touch exec.attr.time; \ 393 echo "updated exec_attr"; \ 394 if [ ! $(NOPUSH) ]; then \ 395 $(YPPUSH) exec_attr; \ 396 echo "pushed exec_attr"; \ 397 else \ 398 : ; \ 399 fi \ 400 else \ 401 echo "couldn't find $(RBACDIR)/exec_attr"; \ 402 fi 403 404prof.attr.time: $(RBACDIR)/prof_attr 405 -@if [ -f $(RBACDIR)/prof_attr ]; then \ 406 sed -e "/^#/d" -e s/#.*$$// $(RBACDIR)/prof_attr \ 407 |sed -e '/\\$$/{:l' -e 'N;s/\\\n//;t h' -e ':h' \ 408 -e 's/\\$$/\\/;t l' -e } \ 409 | (nawk 'BEGIN { FS=":"; OFS=":" } /^[a-zA-Z0-9_]/ \ 410 {printf "%s:%s\n", $$1, $$0 }' $(CHKPIPE)) \ 411 | $(MAKEDBM) -S ":" -E - $(YPDBDIR)/$(DOM)/prof_attr; \ 412 touch prof.attr.time; \ 413 echo "updated prof_attr"; \ 414 if [ ! $(NOPUSH) ]; then \ 415 $(YPPUSH) prof_attr; \ 416 echo "pushed prof_attr"; \ 417 else \ 418 : ; \ 419 fi \ 420 else \ 421 echo "couldn't find $(RBACDIR)/prof_attr"; \ 422 fi 423 424user.attr.time: $(DIR)/user_attr 425 -@if [ -f $(DIR)/user_attr ]; then \ 426 sed -e "/^#/d" -e s/#.*$$// $(DIR)/user_attr \ 427 |sed -e '/\\$$/{:l' -e 'N;s/\\\n//;t h' -e ':h' \ 428 -e 's/\\$$/\\/;t l' -e } \ 429 | (nawk 'BEGIN { FS=":"; OFS=":" } /^[a-zA-Z0-9_]/ \ 430 {printf "%s:%s\n", $$1, $$0 }' $(CHKPIPE)) \ 431 | $(MAKEDBM) -S ":" -E - $(YPDBDIR)/$(DOM)/user_attr; \ 432 touch user.attr.time; \ 433 echo "updated user_attr"; \ 434 if [ ! $(NOPUSH) ]; then \ 435 $(YPPUSH) user_attr; \ 436 echo "pushed user_attr"; \ 437 else \ 438 : ; \ 439 fi \ 440 else \ 441 echo "couldn't find $(DIR)/user_attr"; \ 442 fi 443 444ageing.time: $(PWDIR)/shadow 445 -@if [ -f $(PWDIR)/shadow ]; then \ 446 (awk 'BEGIN {FS=":"; OFS=":"} $$1 !~ /^#/ {printf "%s\t%s:%s:%s:%s:%s:%s:%s:%s\n", $$1,$$1,$$3,$$4,$$5,$$6,$$7,$$8,$$9}' $(PWDIR)/shadow) | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/ageing.byname; \ 447 touch ageing.time; \ 448 echo "updated ageing"; \ 449 else \ 450 echo "couldn't find $(PWDIR)/shadow"; \ 451 fi 452 453passwd: passwd.time 454group: group.time 455project: project.time 456hosts: hosts.time 457ipnodes: ipnodes.time 458ethers: ethers.time 459networks: networks.time 460rpc: rpc.time 461services: services.time 462protocols: protocols.time 463netgroup: netgroup.time 464bootparams: bootparams.time 465aliases: aliases.time 466publickey: publickey.time 467netid: netid.time 468passwd.adjunct: passwd.adjunct.time 469group.adjunct: group.adjunct.time 470netmasks: netmasks.time 471timezone: timezone.time 472auto.master: auto.master.time 473auto.home: auto.home.time 474auth.attr:auth.attr.time 475exec.attr:exec.attr.time 476prof.attr:prof.attr.time 477user.attr:user.attr.time 478$(DIR)/netid: 479$(DIR)/timezone: 480$(DIR)/auto_master: 481$(DIR)/auto_home: 482$(PWDIR)/shadow: 483$(DIR)/auth_attr: 484$(DIR)/exec_attr: 485$(DIR)/prof_attr: 486$(DIR)/user_attr: 487ageing: ageing.time 488