1#!/usr/bin/ksh 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, Version 1.0 only 7# (the "License"). You may not use this file except in compliance 8# with the License. 9# 10# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11# or http://www.opensolaris.org/os/licensing. 12# See the License for the specific language governing permissions 13# and limitations under the License. 14# 15# When distributing Covered Code, include this CDDL HEADER in each 16# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17# If applicable, add the following below this CDDL HEADER, with the 18# fields enclosed by brackets "[]" replaced with your own identifying 19# information: Portions Copyright [yyyy] [name of copyright owner] 20# 21# CDDL HEADER END 22# 23# 24# ident "%Z%%M% %I% %E% SMI" 25# 26# Copyright 2005 Sun Microsystems, Inc. All rights reserved. 27# Use is subject to license terms. 28# 29 30# 31# Get the make/model/nickname from ppdfilename 32# 33 34if [[ $# -lt 1 ]]; then 35 exit 1 36fi 37 38if [[ -f /usr/lib/lp/model/ppd/ppdcache ]]; then 39 40 ppdfile=`/bin/grep $1 /usr/lib/lp/model/ppd/ppdcache` 41 42 if [[ -z "$ppdfile" ]]; then 43 44 # Perhaps this is an old configuration file 45 # look for ppd file in new directories 46 47 # Get last two fields from arg1: full path/filename of ppd 48 # file. Separate with /. 49 # arg1: /usr/lib/lp/model/ppd/<MANU>/<filename> 50 51 manufile=`echo $1 | /bin/nawk -F/ '{ print $7 "/" $8 }` 52 53 # search for ppd file in all the directories under system 54 # Use the first one found 55 56 for dir in /usr/lib/lp/model/ppd/system/*; do 57 if [[ -d "$dir" ]]; then 58 target=$dir/$manufile 59 found=`/bin/grep $target /usr/lib/lp/model/ppd/ppdcache` 60 61 if [[ -z "$ppdfile" && -n "$found" ]]; then 62 ppdfile=$found 63 fi 64 65 66 fi 67 done 68 69 fi 70 71 if [[ -z "$ppdfile" ]]; then 72 exit 1 73 else 74 echo $ppdfile | 75 nawk '{FS=":"; print $1; print $2; print $3}' 76 exit 0 77 fi 78fi 79