components/foomatic/filters/Solaris/netstandard_foomatic
author Rich Burridge <rich.burridge@oracle.com>
Mon, 11 Mar 2013 10:06:51 -0700
changeset 1205 6c6c27bcf9ac
parent 335 223d5bf98b72
permissions -rw-r--r--
16431724 Adjust how license text and Oracle internal tracking numbers are propagated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
335
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     1
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     2
# CDDL HEADER START
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     3
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     7
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    11
# and limitations under the License.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    12
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    18
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    19
# CDDL HEADER END
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    20
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    21
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    22
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    23
# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    24
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    25
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    26
###########
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    27
##
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    28
## Network Standard printer interface program for foomatic.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    29
##
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    30
###########
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    31
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    32
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    33
# We can't do much except exit if spooler/scheduler
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    34
# cancels us.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    35
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    36
trap 'eval exit_clean 15' 15
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    37
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    38
####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    39
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    40
# Send standard error messages to /dev/null rather than to
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    41
# the spooler. Avoids "Terminated" messages that shell puts out
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    42
# when gets SIGTERM. Save standard error so it can be used
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    43
# when we need it
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    44
####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    45
exec 5>&2 2>/dev/null 3>&1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    46
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    47
####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    48
# set some global variables
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    49
####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    50
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    51
: ${LPTMPDIR:=/tmp}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    52
: ${SPOOLDIR:=/usr/spool/lp}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    53
: ${LOCALPATH:=${SPOOLDIR}/bin}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    54
PATH="/bin:/usr/bin:${LOCALPATH}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    55
exit_code=0
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    56
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    57
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    58
# ${LPTELL} is the name of a program that will send its
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    59
# standard input to the Spooler. It is used to forward
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    60
# the description of a printer fault to the Spooler,
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    61
# which uses it in an alert to the administrator.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    62
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    63
if [ ! -x "${LPTELL:=${LOCALPATH}/lp.tell}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    64
then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    65
        fake_lptell () {
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    66
                header="no"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    67
                while read line
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    68
                do
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    69
                        if [ "no" = "${header}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    70
                        then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    71
                                errmsg ERROR ${E_IP_UNKNOWN} \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    72
                "unknown printer/interface failure" \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    73
                "consult your system administrator;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    74
                reasons for failure (if any) follow:"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    75
                                header=yes
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    76
                        fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    77
                        echo "${line}" >&2
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    78
                done
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    79
                return 1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    80
        }
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    81
        LPTELL=fake_lptell
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    82
fi       
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    83
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    84
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    85
# Error message formatter:
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    86
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    87
# Invoke as
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    88
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    89
#       errmsg severity message-number problem help
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    90
#                                                   
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    91
# where severity is "ERROR" or "WARNING", message-number is
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    92
# a unique identifier, problem is a short description of the
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    93
# problem, and help is a short suggestion for fixing the problem.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    94
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    95
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    96
LP_ERR_LABEL="UX:lp"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    97
E_IP_ARGS=1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    98
E_IP_OPTS=2
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
    99
#E_IP_FILTER=3
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   100
E_IP_UNKNOWN=5
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   101
E_IP_BADFILE=6
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   102
E_IP_ERRORS=12 	# (in slow.filter)
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   103
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   104
errmsg () {
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   105
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   106
        case $1 in
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   107
        ERROR )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   108
                sev="  ERROR";
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   109
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   110
        WARNING )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   111
                sev="WARNING";
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   112
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   113
        esac
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   114
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   115
        echo "${LP_ERR_LABEL}:$2 ${sev}: $3
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   116
        TO FIX: $4" >&5
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   117
}                       
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   118
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   119
###########
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   120
##
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   121
## Check arguments
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   122
###########
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   123
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   124
parse () {
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   125
        echo "`expr \"$1\" : \"^[^=]*=\(.*\)\"`"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   126
}         
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   127
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   128
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   129
##
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   130
## Error Cleanup and Exit
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   131
##
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   132
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   133
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   134
exit_clean()
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   135
{
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   136
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   137
	if [ -f "${LPTMPDIR}/pr_eexit_code.$$" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   138
	then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   139
		/bin/rm ${LPTMPDIR}/pr_eexit_code.$$
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   140
	fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   141
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   142
	if [ -f "${LPTMPDIR}/small_banner.$$" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   143
	then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   144
		/bin/rm ${LPTMPDIR}/small_banner.$$
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   145
	fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   146
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   147
	if [ -f "${tmpfile}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   148
	then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   149
		/bin/rm "${tmpfile}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   150
	fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   151
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   152
	exit $1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   153
}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   154
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   155
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   156
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   157
# This program is invoked as
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   158
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   159
# ${SPOOLDIR}/.../printer request-id user title copies options files...
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   160
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   161
# The first three arguments are simply reprinted on the banner page,
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   162
# the fourth (copies) is used to control the number of copies to print,
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   163
# the fifth (options) is a blank separated list (in a single argument)
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   164
# of user or Spooler supplied options (without the -o prefix),
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   165
# and the last arguments are the files to print.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   166
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   167
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   168
if [ $# -lt 5 ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   169
then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   170
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   171
        errmsg ERROR ${E_IP_ARGS} \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   172
                "wrong number of arguments to interface program" \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   173
                "consult your system administrator"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   174
        exit 1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   175
fi      
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   176
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   177
printer=`basename $0`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   178
request_id=$1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   179
user_name=$2
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   180
title=$3
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   181
copies=$4
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   182
option_list=$5
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   183
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   184
shift 5
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   185
files="$*"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   186
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   187
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   188
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   189
# debug sent to file if defined in /etc/syslog.conf
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   190
# syslog.conf entry: 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   191
#	lpr.debug	/path/filename
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   192
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   193
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" " "
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   194
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "INPUT"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   195
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "    printer : ${printer}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   196
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "    request_id : ${request_id}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   197
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "    user_name : ${user_name}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   198
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "    title : ${title}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   199
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "    copies : ${copies}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   200
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "    option_list : ${option_list}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   201
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "    files : ${files}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   202
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "	 spooler_key ${SPOOLER_KEY}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   203
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   204
####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   205
# default: do print a banner
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   206
####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   207
nobanner=no
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   208
nofilebreak="no"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   209
inlist=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   210
data_file_flag=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   211
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   212
for i in ${option_list}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   213
do
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   214
        case "${inlist}${i}" in
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   215
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   216
        nobanner )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   217
                nobanner="yes"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   218
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   219
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   220
        nofilebreak )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   221
                nofilebreak="yes"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   222
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   223
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   224
        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   225
        #
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   226
        # If you want to add simple options (e.g. -o simple)
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   227
        # identify them here.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   228
        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   229
#       simple )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   230
#               simple="yes"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   231
# 		;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   232
                   
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   233
        cpi=pica )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   234
                cpi=10
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   235
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   236
        cpi=elite )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   237
                cpi=12
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   238
                ;; 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   239
        cpi=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   240
                cpi=`parse ${i}`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   241
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   242
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   243
        lpi=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   244
                lpi=`parse ${i}`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   245
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   246
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   247
        length=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   248
                length=`parse ${i}`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   249
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   250
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   251
        width=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   252
                width=`parse ${i}`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   253
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   254
        dest=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   255
                dest="-d `parse ${i}`"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   256
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   257
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   258
        protocol=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   259
                protocol="-P `parse ${i}`"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   260
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   261
        bsdctrl=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   262
		controlfile="-c `parse ${i}`"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   263
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   264
        timeout=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   265
                timeout="-t `parse ${i}`"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   266
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   267
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   268
        data-file-type=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   269
                data_file_flag="-f `parse ${i}`"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   270
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   271
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   272
	#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   273
	# The IPP/PAPI attributes are handled by the foomatic-rip filter so
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   274
	# all we need to do here is ignore them so that they don't invoke the
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   275
	# "unrecognized option" message.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   276
	#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   277
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   278
	finishing=* | page-ranges=* | sides=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   279
		;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   280
	number-up=* | orientation-requested=* | media=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   281
		;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   282
	printer-resolution=* | print-quality=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   283
		;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   284
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   285
        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   286
        #
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   287
        # If you want to add simple-value options (e.g. -o value=a)
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   288
        # identify them here.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   289
        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   290
#       value=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   291
#		value=`parse ${i}`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   292
#		;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   293
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   294
        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   295
        #
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   296
        # If you want to add options that, 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   297
        # take a list (e.g. -o lopt='a b c'), identif
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   298
        # them here and below (look for LOPT).
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   299
        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   300
                                   
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   301
#	flist=* | lpd=* | options=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   302
        flist=* | lpd=* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   303
#LOPT   stty=* | flist=* | lpd=* | lopt=* )    
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   304
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   305
                inlist=`expr "${inlist}${i}" : "^\([^=]*=\)"`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   306
                case "${i}" in
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   307
                ${inlist}\'*\' )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   308
                        item=`expr "${i}" : "^[^=]*='*\(.*\)'\$"`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   309
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   310
                ${inlist}\' )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   311
                        continue
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   312
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   313
                ${inlist}\'* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   314
                        item=`expr "${i}" : "^[^=]*='*\(.*\)\$"`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   315
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   316
                ${inlist}* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   317
                        item=`expr "${i}" : "^[^=]*=\(.*\)\$"`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   318
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   319
                *\' )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   320
                        item=`expr "${i}" : "^\(.*\)'\$"`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   321
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   322
                * )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   323
                        item="${i}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   324
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   325
                esac
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   326
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   327
                #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   328
                #
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   329
                # We don't dare use "eval" because a clever user could
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   330
                # put something in an option value that we'd end up
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   331
                # exec'ing.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   332
                #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   333
                case "${inlist}" in
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   334
                flist= )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   335
                        flist="${flist} ${item}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   336
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   337
                lpd= )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   338
                        lpd="${lpd} ${item}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   339
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   340
#LOPT		lopt= )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   341
#LOPT                   lopt="${lopt} ${item}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   342
#LOPT			;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   343
#		options= )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   344
#			options="${options} ${item}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   345
#			;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   346
                esac
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   347
                     
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   348
                case "${i}" in
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   349
                ${inlist}\'*\' )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   350
                        inlist=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   351
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   352
                ${inlist}\'* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   353
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   354
                *\' | ${inlist}* )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   355
                        inlist=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   356
                        ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   357
                esac
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   358
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   359
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   360
        * )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   361
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   362
        esac
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   363
done         
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   364
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   365
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}"  "term : ${TERM}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   366
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   367
if [ -z "${FILTER}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   368
then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   369
        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   370
        #
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   371
        # If no filter is being used, we use netpr to push the
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   372
	# file to the printer.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   373
        # (QUOTES ARE IMPORTANT!)
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   374
        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   375
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   376
        case "$TERM" in
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   377
                PS )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   378
                        # make the "postscript" printers use netpr 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   379
                        FILTER=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   380
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   381
                PSR )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   382
                        # make the "reverse postscript" printers reverse the
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   383
                        # output and the use postio to talk to the printer
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   384
                        #FILTER="/usr/lib/lp/postscript/postreverse "
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   385
                        #FILTER=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   386
                        FILTER="/usr/lib/lp/postscript/postreverse "
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   387
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   388
                * )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   389
                        # We don't know the type, so just assume that the
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   390
                        # input and output are the same. Use netpr.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   391
                        #FILTER=/bin/cat
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   392
			FILTER=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   393
                ;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   394
        esac
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   395
fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   396
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   397
####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   398
# sets default value for ordering of data and control files with
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   399
# bsd protocol. Default: data files first. Administrator
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   400
# may set to control file first with lpadmin -o bsdctrl=first
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   401
####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   402
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   403
banner_flag=""
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   404
case "${nobanner}" in
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   405
	yes )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   406
		banner_flag="-b"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   407
	;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   408
esac
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   409
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   410
NETPR="/usr/lib/lp/bin/netpr ${banner_flag} ${data_file_flag} \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   411
	-I ${request_id} -U ${user_name} \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   412
	-p ${printer} ${dest} -T \"${title}\"  \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   413
	${timeout}  ${protocol} ${controlfile} "
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   414
LPTELL_OPTS="-l"	# netpr sends LaserWriter style messages back
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   415
PPDFILTER=/usr/lib/lp/bin/foomatic-rip
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   416
PPDFILTERA="${PPDFILTER} ${request_id} ${user_name} \"${title}\" ${copies} \"${option_list}\""
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   417
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   418
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "NETPR= ${NETPR}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   419
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "filter : ${FILTER}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   420
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "ppdfilter : ${PPDFILTERA}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   421
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   422
node=`uname -n`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   423
pid=$$
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   424
tmpfile=${LPTMPDIR}/${node}.${pid}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   425
tmpfilefoo=${LPTMPDIR}/${node}.${pid}.1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   426
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   427
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" "tmpfile : ${tmpfile}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   428
 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   429
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   430
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   431
# Set up filter for banner page
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   432
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   433
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   434
banner_filter=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   435
case "${TERM}" in
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   436
PS | PSR )
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   437
	banner_filter=" | /usr/lib/lp/postscript/postprint "
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   438
	LPTELL_OPTS="-l"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   439
	;;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   440
esac 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   441
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   442
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   443
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   444
# Build temporary file that is the banner page
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   445
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   446
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   447
PAD="#####${NL}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   448
CR="\r"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   449
NL="${CR}\n"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   450
FF=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   451
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   452
small_banner() {
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   453
        echo "${CR}\c"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   454
        echo "${PAD}\c"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   455
        echo "#####  User: ${user_name}${NL}\c"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   456
        if [ -n "${title}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   457
        then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   458
                echo "##### Title: ${title}${NL}\c"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   459
        fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   460
        echo "#####  Date: `LANG=C date '+%a %H:%M %h %d, %Y'`${NL}\c"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   461
        echo "#####   Job: ${request_id}${NL}\c"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   462
        echo "${PAD}\c"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   463
        if [ -n "${FF}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   464
        then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   465
                echo "${CR}${FF}\c"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   466
        fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   467
}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   468
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   469
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   470
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   471
# Doing small banner as we don't know what printer is out there
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   472
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   473
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   474
banner=small_banner
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   475
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   476
if [ "no" = "${nobanner}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   477
then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   478
	eval "${banner} ${banner_filter}" 2>&1 1>${LPTMPDIR}/small_banner.$$ 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   479
fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   480
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   481
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   482
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   483
# Print banner page before job unless PSR
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   484
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   485
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   486
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   487
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   488
if [ "no" = "${nobanner}" -a "${TERM}" != "PSR" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   489
then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   490
	(
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   491
		eval ${NETPR} ${LPTMPDIR}/small_banner.$$ 2>&1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   492
		echo $? > ${LPTMPDIR}/pr_eexit_code.$$
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   493
	) | ${LPTELL} ${LPTELL_OPTS} ${printer}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   494
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   495
	exit_code=`cat ${LPTMPDIR}/pr_eexit_code.$$`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   496
	logger -p lpr.debug -t "netstandard_foomatic: ${request_id}"	\
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   497
		"banner page exit code : ${exit_code}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   498
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   499
fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   500
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   501
i=1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   502
while [ $i -le $copies ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   503
do
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   504
        for file in ${files}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   505
        do
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   506
                if [ -r "${file}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   507
                then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   508
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   509
			if [ ! -z "${FILTER}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   510
			then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   511
 				(
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   512
					#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   513
					# There is a filter, use it
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   514
					#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   515
					# Put 0<${file} before the "eval" to keep
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   516
					# clever users from giving a file name that
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   517
					# evaluates as something to execute.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   518
					# Redirect stderr to stdout so LPTELL will
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   519
					# get error messages from pipe. 
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   520
					#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   521
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   522
					0<${file} eval ${FILTER} 2>&1 1>${tmpfile}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   523
					echo $? > ${LPTMPDIR}/pr_eexit_code.$$
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   524
				) | ${LPTELL} ${LPTELL_OPTS} ${printer}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   525
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   526
				exit_code=`cat ${LPTMPDIR}/pr_eexit_code.$$`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   527
				logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   528
					"filter exit_code : ${exit_code}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   529
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   530
 			 	if [ -n "${exit_code}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   531
 				then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   532
					if [ "${exit_code}" -eq 0 ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   533
					then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   534
						printfile=${tmpfile}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   535
					else
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   536
						####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   537
						# The filter did not succeed, so don't try to print
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   538
						####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   539
							printfile=
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   540
					fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   541
				fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   542
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   543
			else
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   544
				printfile=${file}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   545
			fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   546
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   547
			logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   548
				"printfile : ${printfile}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   549
			
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   550
			#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   551
			# Print the file
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   552
			#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   553
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   554
			if [ -r "${printfile}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   555
			then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   556
				(
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   557
logger -p lpr.debug -t "@1 netstandard_foomatic: printfile = ${printfile}" ""
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   558
logger -p lpr.debug -t "netstandard_foomatic: ${NETPR} ${printfile}" ""
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   559
					#eval ${NETPR} ${printfile} 2>&1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   560
					cat ${printfile} | ${PPDFILTER} \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   561
	      ${request_id} ${user_name} "${title}" ${copies} "${option_list}" \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   562
						> ${tmpfilefoo} 2> /dev/null
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   563
					eval ${NETPR} ${tmpfilefoo} 2>&1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   564
					echo $? > ${LPTMPDIR}/pr_eexit_code.$$
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   565
					/bin/rm -f ${tmpfilefoo}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   566
				) | ${LPTELL} ${LPTELL_OPTS} ${printer}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   567
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   568
				exit_code=`cat ${LPTMPDIR}/pr_eexit_code.$$`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   569
				logger -p lpr.debug -t "@2 netstandard_foomatic: ${request_id}" \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   570
					"netpr exit_code : ${exit_code}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   571
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   572
				if [ -f "${tmpfile}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   573
				then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   574
					/bin/rm "${tmpfile}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   575
				fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   576
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   577
				if [ -n "${exit_code}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   578
				then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   579
					if [ "${exit_code}" -eq 0 ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   580
					then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   581
						printone=yes
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   582
					else
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   583
						if [ "${exit_code}" -lt 128 ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   584
						then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   585
							noprint=yes
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   586
						else
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   587
							retry=yes
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   588
						fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   589
					fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   590
				fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   591
				
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   592
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   593
			else	
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   594
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   595
				errmsg WARNING ${E_IP_BADFILE} \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   596
				"cannot read temporary file \"${printfile}\""\
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   597
					"see if file still exists,
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   598
			or consult your system administrator;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   599
			printing continues"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   600
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   601
			fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   602
		else
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   603
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   604
                        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   605
                        #
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   606
                        # Don't complain about not being able to read
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   607
                        # a file on second and subsequent copies, unless
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   608
                        # we've not complained yet. This removes repeated
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   609
                        # messages about the same file yet reduces the
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   610
                        # chance that the user can remove a file and not
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   611
                        # know that we had trouble finding it.
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   612
                        #####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   613
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   614
                        if [ "${i}" -le 1 -o -z "${badfileyet}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   615
                        then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   616
                                errmsg WARNING ${E_IP_BADFILE} \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   617
                                        "cannot read file \"${file}\"" \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   618
                                        "see if the file still exists and is readable,
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   619
                or consult your system administrator;
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   620
                printing continues"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   621
                                badfileyet=yes
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   622
                        fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   623
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   624
		fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   625
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   626
# for file in ${files}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   627
	done
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   628
	i=`expr $i + 1`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   629
done
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   630
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   631
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   632
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   633
# If printing in reverse order, print the banner page now
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   634
#
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   635
#####
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   636
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   637
if [ "no" = "${nobanner}" -a "${TERM}" = "PSR" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   638
then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   639
(
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   640
	eval ${NETPR} ${LPTMPDIR}/small_banner.$$ 2>&1
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   641
	echo $? > ${LPTMPDIR}/pr_eexit_code.$$
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   642
) | ${LPTELL} ${LPTELL_OPTS} ${printer}
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   643
fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   644
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   645
exit_code=`cat ${LPTMPDIR}/pr_eexit_code.$$`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   646
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}"     \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   647
                "banner page exit code : ${exit_code}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   648
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   649
if [ -n "${printone}" -a -z "${retry}" -a -z "${noprint}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   650
then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   651
       	exit_code=`expr 0`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   652
else
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   653
        if [ -n "${retry}" -a -z "${printone}" -a -z "${noprint}" ]
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   654
        then
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   655
                exit_code=`expr 129`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   656
        else
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   657
		exit_code=`expr 1`
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   658
	fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   659
fi
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   660
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   661
logger -p lpr.debug -t "netstandard_foomatic: ${request_id}" \
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   662
	"FINAL exit_code : ${exit_code}"
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   663
223d5bf98b72 7049357 Move foomatic-* stuff to Userland.
Vladimir Marek <Vladimir.Marek@oracle.com>
parents:
diff changeset
   664
exit_clean ${exit_code}