1 '\" te
2 .\" Copyright (c) 2003, Sun Microsystems, Inc.
3 .\" All Rights Reserved.
4 .\" 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.
5 .\" 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.
6 .\" 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]
7 .TH MOD_IPP 4 "Nov 26, 2003"
8 .SH NAME
9 mod_ipp \- Embedded Internet Print Protocol (IPP) listener for the Apache HTTP
10 server
11 .SH SYNOPSIS
12 .LP
13 .nf
14 \fB/usr/apache/libexec/mod_ipp.so\fR
15 .fi
16
17 .SH DESCRIPTION
18 .sp
19 .LP
20 The \fBmod_ipp\fR module implements RFCs 2910 and 2911 to provide an IPP
21 handling service for the Apache HTTP server. When loaded on the Apache server,
22 \fBmod_ipp\fR processes all HTTP requests with MIME types of
23 \fBapplication/ipp\fR. The \fBmod_ipp\fR module also processes additional
24 configuration directives to enable or disable portions of the protocol support.
25 .SS "Using Configuration Directives"
26 .sp
27 .LP
28 The following is a list of configuration directives that apply to the Apache
29 IPP Listening service:
30 .RS +4
31 .TP
32 .ie t \(bu
33 .el o
34 ipp-conformance (\fIautomatic\fR|\fI1.0\fR|\fI1.1\fR)
35 .RE
36 .RS +4
37 .TP
38 .ie t \(bu
39 .el o
40 ipp-operation (\fIoperation\fR) (\fBenable\fR|\fBdisable\fR)
41 .RS +4
42 .TP
43 .ie t \(bu
44 .el o
45 \fBenable\fR|\fBdisable\fR
46 .sp
47 The values \fBtrue\fR, \fByes\fR, \fBon\fR, \fBenable\fR are considered to be
48 synonymous and will enable support for the named operation. All other values
49 will disable support for the named operation.
50 .RE
51 .RE
52 .SS "Operations"
53 .sp
54 .LP
55 The following is a list of IPP handling service operations:
56 .sp
57 .ne 2
58 .na
59 \fB\fBprint-job\fR\fR
60 .ad
61 .RS 26n
62 This operation is a required IPP operation that allows client systems to submit
63 a print job with a single document embedded in the data stream. This operation
64 is primarily used from the IPP support Microsoft has provided for its Windows
65 (9X/ME/NT/2K/XP).
66 .RE
67
68 .sp
69 .ne 2
70 .na
71 \fB\fBprint-uri\fR\fR
72 .ad
73 .RS 26n
74 This is an optional IPP operation that allows client systems to submit a print
75 job with a reference (URL) for a single document. This operation is currently
76 not supported by the \fBmod_ipp\fR Apache Module.
77 .RE
78
79 .sp
80 .ne 2
81 .na
82 \fB\fBvalidate-job\fR\fR
83 .ad
84 .RS 26n
85 This is a required IPP operation that allows client systems to simulate the
86 submission of a print job to verify that the server is capable of handling the
87 job. This operation is supported by \fBmod_ipp\fR.
88 .RE
89
90 .sp
91 .ne 2
92 .na
93 \fB\fBcreate-job\fR\fR
94 .ad
95 .RS 26n
96 This is an optional IPP operation that allows client systems to submit a print
97 job. The operation is used with the \fBsend-document\fR and \fBsend-uri\fR
98 operations.
99 .RE
100
101 .sp
102 .ne 2
103 .na
104 \fB\fBget-jobs\fR\fR
105 .ad
106 .RS 26n
107 This is a required IPP operation that allows client systems to retrieve a list
108 of print jobs from the print service.
109 .RE
110
111 .sp
112 .ne 2
113 .na
114 \fB\fBget-printer-attributes\fR\fR
115 .ad
116 .RS 26n
117 This is a required IPP operation that allows client systems to retrieve
118 attributes from the print service that describes the named printer object.
119 .RE
120
121 .sp
122 .ne 2
123 .na
124 \fB\fBpause-printer\fR\fR
125 .ad
126 .RS 26n
127 This an optional IPP operation that allows client systems to stop job
128 processing on the named print queue.
129 .RE
130
131 .sp
132 .ne 2
133 .na
134 \fB\fBresume-printer\fR\fR
135 .ad
136 .RS 26n
137 This is an optional IPP operation that allows client systems to resume job
138 processing on the named print queue.
139 .RE
140
141 .sp
142 .ne 2
143 .na
144 \fB\fBpurge-jobs\fR\fR
145 .ad
146 .RS 26n
147 This is an optional IPP operation that allows client systems to cancel all
148 print jobs on the named print queue.
149 .RE
150
151 .sp
152 .ne 2
153 .na
154 \fB\fBsend-document\fR\fR
155 .ad
156 .RS 26n
157 This is a required IPP operation that allows client systems to add documents to
158 print jobs created with the \fBcreate-job\fR operation, but not yet submitted.
159 .RE
160
161 .sp
162 .ne 2
163 .na
164 \fB\fBsend-uri\fR\fR
165 .ad
166 .RS 26n
167 This is an optional IPP operation that allows a client system to add a document
168 reference (URI) to a print job created with the \fBcreate-job\fR operation, but
169 not yet submitted. This operation is currently not supported by the
170 \fBmod_ipp\fR Apache Module.
171 .RE
172
173 .sp
174 .ne 2
175 .na
176 \fB\fBcancel-job\fR\fR
177 .ad
178 .RS 26n
179 This is a required IPP operation that allows client systems to cancel print
180 jobs.
181 .RE
182
183 .sp
184 .ne 2
185 .na
186 \fB\fBget-job-attributes\fR\fR
187 .ad
188 .RS 26n
189 This is a required IPP operation that allows client systems to retrieve
190 attributes that describe a print job from the print service.
191 .RE
192
193 .sp
194 .ne 2
195 .na
196 \fB\fBhold-job\fR\fR
197 .ad
198 .RS 26n
199 This is an optional IPP operation that allows client systems to hold print
200 jobs.
201 .RE
202
203 .sp
204 .ne 2
205 .na
206 \fB\fBrelease-job\fR\fR
207 .ad
208 .RS 26n
209 This is an optional IPP operation that allows client systems to release print
210 jobs.
211 .RE
212
213 .sp
214 .ne 2
215 .na
216 \fB\fBrestart-job\fR\fR
217 .ad
218 .RS 26n
219 This is an optional IPP operation that allows client systems to restart print
220 jobs.
221 .RE
222
223 .sp
224 .ne 2
225 .na
226 \fB\fBall\fR\fR
227 .ad
228 .RS 26n
229 This is a place holder for enabling or disabling support for all IPP operations
230 implemented by the \fBmod_ipp\fR Apache module.
231 .RE
232
233 .sp
234 .ne 2
235 .na
236 \fB\fBrequired\fR\fR
237 .ad
238 .RS 26n
239 This is a place holder for enabling or disabling support for the required IPP
240 operations implemented by the \fBmod_ipp\fR Apache module.
241 .RE
242
243 .SH EXAMPLES
244 .LP
245 \fBExample 1 \fRUsing a Configuration File to Start a Standalone Apache Server
246 .sp
247 .LP
248 The following configuration file can be used to start a standalone Apache
249 server to respond to IPP request sent to port 631.
250
251 .sp
252 .in +2
253 .nf
254 ServerType standalone
255 ServerRoot "/usr/apache"
256 PidFile /var/run/httpd-standalone-ipp.pid
257 ErrorLog /var/lp/logs/ipp-errors
258
259 Timeout 300
260 KeepAlive On
261 MaxKeepAliveRequests 100
262 KeepAliveTimeout 15
263
264 MinSpareServers 1
265 MaxSpareServers 3
266 StartServers 1
267 MaxClients 150
268 MaxRequestsPerChild 0
269
270 LoadModule ipp_module libexec/mod_ipp.so
271
272 ClearModuleList
273 AddModule mod_ipp.c
274 AddModule mod_so.c
275
276 Port 631
277
278 User lp
279 Group lp
280
281 ServerAdmin lp@localhost
282 DefaultType application/ipp
283
284 <IFModule mod_app>
285 <Location />
286 ipp-operation all on
287 </Location>
288 </IFModule mod_app>
289 .fi
290 .in -2
291
292 .sp
293 .LP
294 A more restrictive configuration might include the following parameters:
295
296 .sp
297 .in +2
298 .nf
299 <IFModule mod_app>
300 <Location />
301 ipp-operation all offn
302 ipp-operation required on
303 </Location>
304 </IFModule mod_app>
305 .fi
306 .in -2
307
308 .SH ATTRIBUTES
309 .sp
310 .LP
311 See \fBattributes\fR(5) or descriptions of the following attributes:
312 .sp
313
314 .sp
315 .TS
316 box;
317 c | c
318 l | l .
319 ATTRIBUTE TYPE ATTRIBUTE VALUE
320 _
321 Interface Stability External
322 .TE
323
324 .SH SEE ALSO
325 .sp
326 .LP
327 \fBman\fR(1), \fBcatman\fR(1M), \fBattributes\fR(5)
328 .sp
329 .LP
330 Herriot, R., Ed., Butler, S., Moore, P., Turner, R., Wenn, J. \fIRFC 2910,
331 Internet Printing Protocol/1.1: Encoding and Transport\fR. Network Working
332 Group. September 2000.
333 .sp
334 .LP
335 Hastings, T., Ed., Herriot, R., deBry, R., Isaacson, S., Powell, P. \fIRFC
336 2911, Internet Printing Protocol/1.1: Model and Semantics\fR. Network Working
337 Group. September 2000.
338 .sp
339 .LP
340 http://www.apache.org
341 .SH NOTES
342 .sp
343 .LP
344 Configuration file directives are processed in the order listed in the config
345 file. The default behavior is to enable support for all operations implemented
346 in the \fBmod_ipp\fR Apache module.
347 .sp
348 .LP
349 Since the Apache IPP listening service implements some capabilities that are
350 more of operator features, it may not be desirable to enable all IPP operations
351 without requiring user authentication on the Apache listening service.
352 .sp
353 .LP
354 The following is an example of a more reasonable configuration for Apache IPP
355 servers without user authentication enabled:
356 .sp
357 .in +2
358 .nf
359 ipp-operations all disabled
360 ipp-operations required enabled
361 .fi
362 .in -2
363
364 .sp
365 .LP
366 The printers and jobs available under this service can be accessed using URIs
367 of the following form:
368 .sp
369 .in +2
370 .nf
371 printer:
372 http://server[:port]/printers/{queue}
373 ipp://server[:port]/printers/{queue}
374 job:
375 http://server[:port]/printers/{queue}/{job-id}
376 ipp://server[:port]/printers/{queue}/{job-id}
377 .fi
378 .in -2
379
380 .sp
381 .LP
382 631 is the default IPP port and implied when the URI scheme is \fBipp\fR.
383 However, some client implementations do not recognize the \fBipp\fR URI scheme
384 and require \fBhttp://server:631/...\fR instead. For example, Microsoft's IPP
385 client implementation does not recognize the \fBipp\fR scheme.
386 .sp
387 .LP
388 In addition to the documentation and man pages included with Solaris, more
389 information is available at http://www.apache.org
390 .sp
391 .LP
392 The \fBhttpd\fR(8) man page and other Apache man pages are provided with the
393 programming modules. To view the Apache manual pages with the man command, add
394 \fB/usr/apache/man\fR to the \fBMANPATH\fR environment variable. See
395 \fBman\fR(1) for more information. Running \fBcatman\fR(1M) on the Apache
396 manual pages is not supported.