'\" te
.\" Copyright (c) 2003, Sun Microsystems, Inc.
.\" All Rights Reserved.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH MOD_IPP 4 "Nov 26, 2003"
.SH NAME
mod_ipp \- Embedded Internet Print Protocol (IPP) listener for the Apache HTTP
server
.SH SYNOPSIS
.LP
.nf
\fB/usr/apache/libexec/mod_ipp.so\fR
.fi
.SH DESCRIPTION
.sp
.LP
The \fBmod_ipp\fR module implements RFCs 2910 and 2911 to provide an IPP
handling service for the Apache HTTP server. When loaded on the Apache server,
\fBmod_ipp\fR processes all HTTP requests with MIME types of
\fBapplication/ipp\fR. The \fBmod_ipp\fR module also processes additional
configuration directives to enable or disable portions of the protocol support.
.SS "Using Configuration Directives"
.sp
.LP
The following is a list of configuration directives that apply to the Apache
IPP Listening service:
.RS +4
.TP
.ie t \(bu
.el o
ipp-conformance (\fIautomatic\fR|\fI1.0\fR|\fI1.1\fR)
.RE
.RS +4
.TP
.ie t \(bu
.el o
ipp-operation (\fIoperation\fR) (\fBenable\fR|\fBdisable\fR)
.RS +4
.TP
.ie t \(bu
.el o
\fBenable\fR|\fBdisable\fR
.sp
The values \fBtrue\fR, \fByes\fR, \fBon\fR, \fBenable\fR are considered to be
synonymous and will enable support for the named operation. All other values
will disable support for the named operation.
.RE
.RE
.SS "Operations"
.sp
.LP
The following is a list of IPP handling service operations:
.sp
.ne 2
.na
\fB\fBprint-job\fR\fR
.ad
.RS 26n
This operation is a required IPP operation that allows client systems to submit
a print job with a single document embedded in the data stream. This operation
is primarily used from the IPP support Microsoft has provided for its Windows
(9X/ME/NT/2K/XP).
.RE
.sp
.ne 2
.na
\fB\fBprint-uri\fR\fR
.ad
.RS 26n
This is an optional IPP operation that allows client systems to submit a print
job with a reference (URL) for a single document. This operation is currently
not supported by the \fBmod_ipp\fR Apache Module.
.RE
.sp
.ne 2
.na
\fB\fBvalidate-job\fR\fR
.ad
.RS 26n
This is a required IPP operation that allows client systems to simulate the
submission of a print job to verify that the server is capable of handling the
job. This operation is supported by \fBmod_ipp\fR.
.RE
.sp
.ne 2
.na
\fB\fBcreate-job\fR\fR
.ad
.RS 26n
This is an optional IPP operation that allows client systems to submit a print
job. The operation is used with the \fBsend-document\fR and \fBsend-uri\fR
operations.
.RE
.sp
.ne 2
.na
\fB\fBget-jobs\fR\fR
.ad
.RS 26n
This is a required IPP operation that allows client systems to retrieve a list
of print jobs from the print service.
.RE
.sp
.ne 2
.na
\fB\fBget-printer-attributes\fR\fR
.ad
.RS 26n
This is a required IPP operation that allows client systems to retrieve
attributes from the print service that describes the named printer object.
.RE
.sp
.ne 2
.na
\fB\fBpause-printer\fR\fR
.ad
.RS 26n
This an optional IPP operation that allows client systems to stop job
processing on the named print queue.
.RE
.sp
.ne 2
.na
\fB\fBresume-printer\fR\fR
.ad
.RS 26n
This is an optional IPP operation that allows client systems to resume job
processing on the named print queue.
.RE
.sp
.ne 2
.na
\fB\fBpurge-jobs\fR\fR
.ad
.RS 26n
This is an optional IPP operation that allows client systems to cancel all
print jobs on the named print queue.
.RE
.sp
.ne 2
.na
\fB\fBsend-document\fR\fR
.ad
.RS 26n
This is a required IPP operation that allows client systems to add documents to
print jobs created with the \fBcreate-job\fR operation, but not yet submitted.
.RE
.sp
.ne 2
.na
\fB\fBsend-uri\fR\fR
.ad
.RS 26n
This is an optional IPP operation that allows a client system to add a document
reference (URI) to a print job created with the \fBcreate-job\fR operation, but
not yet submitted. This operation is currently not supported by the
\fBmod_ipp\fR Apache Module.
.RE
.sp
.ne 2
.na
\fB\fBcancel-job\fR\fR
.ad
.RS 26n
This is a required IPP operation that allows client systems to cancel print
jobs.
.RE
.sp
.ne 2
.na
\fB\fBget-job-attributes\fR\fR
.ad
.RS 26n
This is a required IPP operation that allows client systems to retrieve
attributes that describe a print job from the print service.
.RE
.sp
.ne 2
.na
\fB\fBhold-job\fR\fR
.ad
.RS 26n
This is an optional IPP operation that allows client systems to hold print
jobs.
.RE
.sp
.ne 2
.na
\fB\fBrelease-job\fR\fR
.ad
.RS 26n
This is an optional IPP operation that allows client systems to release print
jobs.
.RE
.sp
.ne 2
.na
\fB\fBrestart-job\fR\fR
.ad
.RS 26n
This is an optional IPP operation that allows client systems to restart print
jobs.
.RE
.sp
.ne 2
.na
\fB\fBall\fR\fR
.ad
.RS 26n
This is a place holder for enabling or disabling support for all IPP operations
implemented by the \fBmod_ipp\fR Apache module.
.RE
.sp
.ne 2
.na
\fB\fBrequired\fR\fR
.ad
.RS 26n
This is a place holder for enabling or disabling support for the required IPP
operations implemented by the \fBmod_ipp\fR Apache module.
.RE
.SH EXAMPLES
.LP
\fBExample 1 \fRUsing a Configuration File to Start a Standalone Apache Server
.sp
.LP
The following configuration file can be used to start a standalone Apache
server to respond to IPP request sent to port 631.
.sp
.in +2
.nf
ServerType standalone
ServerRoot "/usr/apache"
PidFile /var/run/httpd-standalone-ipp.pid
ErrorLog /var/lp/logs/ipp-errors
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
MinSpareServers 1
MaxSpareServers 3
StartServers 1
MaxClients 150
MaxRequestsPerChild 0
LoadModule ipp_module libexec/mod_ipp.so
ClearModuleList
AddModule mod_ipp.c
AddModule mod_so.c
Port 631
User lp
Group lp
ServerAdmin lp@localhost
DefaultType application/ipp
ipp-operation all on
.fi
.in -2
.sp
.LP
A more restrictive configuration might include the following parameters:
.sp
.in +2
.nf
ipp-operation all offn
ipp-operation required on
.fi
.in -2
.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(5) or descriptions of the following attributes:
.sp
.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability External
.TE
.SH SEE ALSO
.sp
.LP
\fBman\fR(1), \fBcatman\fR(1M), \fBattributes\fR(5)
.sp
.LP
Herriot, R., Ed., Butler, S., Moore, P., Turner, R., Wenn, J. \fIRFC 2910,
Internet Printing Protocol/1.1: Encoding and Transport\fR. Network Working
Group. September 2000.
.sp
.LP
Hastings, T., Ed., Herriot, R., deBry, R., Isaacson, S., Powell, P. \fIRFC
2911, Internet Printing Protocol/1.1: Model and Semantics\fR. Network Working
Group. September 2000.
.sp
.LP
http://www.apache.org
.SH NOTES
.sp
.LP
Configuration file directives are processed in the order listed in the config
file. The default behavior is to enable support for all operations implemented
in the \fBmod_ipp\fR Apache module.
.sp
.LP
Since the Apache IPP listening service implements some capabilities that are
more of operator features, it may not be desirable to enable all IPP operations
without requiring user authentication on the Apache listening service.
.sp
.LP
The following is an example of a more reasonable configuration for Apache IPP
servers without user authentication enabled:
.sp
.in +2
.nf
ipp-operations all disabled
ipp-operations required enabled
.fi
.in -2
.sp
.LP
The printers and jobs available under this service can be accessed using URIs
of the following form:
.sp
.in +2
.nf
printer:
http://server[:port]/printers/{queue}
ipp://server[:port]/printers/{queue}
job:
http://server[:port]/printers/{queue}/{job-id}
ipp://server[:port]/printers/{queue}/{job-id}
.fi
.in -2
.sp
.LP
631 is the default IPP port and implied when the URI scheme is \fBipp\fR.
However, some client implementations do not recognize the \fBipp\fR URI scheme
and require \fBhttp://server:631/...\fR instead. For example, Microsoft's IPP
client implementation does not recognize the \fBipp\fR scheme.
.sp
.LP
In addition to the documentation and man pages included with Solaris, more
information is available at http://www.apache.org
.sp
.LP
The \fBhttpd\fR(8) man page and other Apache man pages are provided with the
programming modules. To view the Apache manual pages with the man command, add
\fB/usr/apache/man\fR to the \fBMANPATH\fR environment variable. See
\fBman\fR(1) for more information. Running \fBcatman\fR(1M) on the Apache
manual pages is not supported.