smb_print.c revision 86d7016b0051dd58772baafe5b5bcee51d560b05
849N/A * The contents of this file are subject to the terms of the 849N/A * Common Development and Distribution License (the "License"). 849N/A * You may not use this file except in compliance with the License. 849N/A * See the License for the specific language governing permissions 849N/A * and limitations under the License. 849N/A * When distributing Covered Code, include this CDDL HEADER in each 849N/A * If applicable, add the following below this CDDL HEADER, with the 849N/A * fields enclosed by brackets "[]" replaced with your own identifying 849N/A * information: Portions Copyright [yyyy] [name of copyright owner] 849N/A * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. 849N/A * Copyright 2012 Nexenta Systems, Inc. All rights reserved. 849N/A * Starts the creation of a new printer file, which will be deleted 1008N/A * automatically once it has been closed and printed. 3853N/A * SetupLength is the number of bytes in the first part of the resulting 849N/A * print spool file which contains printer-specific control strings. 849N/A * Mode can have the following values: 849N/A * 0 Text mode. The server may optionally 849N/A * expand tabs to a series of spaces. 849N/A * 1 Graphics mode. No conversion of data 3853N/A * should be done by the server. 3853N/A * IdentifierString can be used by the server to provide some sort of 849N/A * per-client identifying component to the print file. 849N/A * When the file is closed, it will be sent to the spooler and printed. 849N/A * Creates a new spool file which will be later copied and 849N/A * deleted by cupsd. After the file is created, information 849N/A * related to the file will be placed in a spooldoc list 849N/A * to be later used by cupsd 849N/A /* sp->sd_spool_num set by smb_spool_add_doc() */ 849N/A * Close the specified file handle and queue the file for printing. 2624N/A * The fid refers to a file previously created as a print spool file. 2624N/A * On successful completion of this request, the file is queued for 849N/A * printing by the server. 849N/A * Servers that negotiate LANMAN1.0 or later allow all the the fid 849N/A * to be closed and printed via any close request. 849N/A * Adds the print file fid to a list to be used as a search 849N/A * key in the spooldoc list. It then wakes up the smbd 849N/A * spool monitor thread to copy the spool file. 849N/A * we have a print FID open, close the FID. In this 849N/A * situation, smb_spool_add_fid() will do nothing. 849N/A * Get a list of print queue entries on the server. Support for 849N/A * this request is optional (not required for Windows clients). 849N/A * Write (append) data to a print spool file. The fid must refer to 849N/A * The first SetupLength bytes (see SMB_COM_OPEN_PRINT_FILE) in the 849N/A * print spool file contain printer setup data. 849N/A * Servers that negotiate LANMAN1.0 or later also support the use of 849N/A * normal write requests with print spool files.