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.