CHANGES IN CUPS V1.4.4
- Documentation updates (STR #3453, STR #3527, STR #3528, STR #3529)
+ - Added additional validation checks for the 1284 device ID (STR #3534)
+ - Fixed a problem with the RPM spec file (STR #3544)
+ - The lpstat command did not limit the job list to the specified
+ printers (STR #3541)
- The cupsfilter command did not set the RIP_MAX_CACHE environment
variable (STR #3531)
- Fixed support for media-col and page size variants (STR #3394)
--- /dev/null
+IPPTOOL.txt - 2010-04-07
+------------------------
+
+
+INTRODUCTION
+
+ Starting with CUPS 1.5, CUPS now installs a user program called
+ ipptool that can be used to send arbitrary IPP requests to a CUPS
+ server or IPP printer. This tool started life as part of the CUPS
+ automated test suite and has grown to support complex conformance
+ tests and a simple way to query printer, job, and subscription
+ attributes.
+
+
+BASIC USAGE
+
+ The ipptool command requires a printer URI and one or more "test"
+ files that describe the operations, attributes to display, and
+ expected status and attribute values. Several standard files are
+ included with CUPS, for example to show a list of pending print jobs
+ on a CUPS printer called "myprinter" you'd run:
+
+ ipptool ipp://localhost/printers/myprinter get-jobs.test
+
+ which would produce something like this:
+
+ job-id job-state job-name job-originating-user-name
+ ------ ------------ ------------ -------------------------
+ 72 pending testfile.pdf msweet
+ 73 pending testfile.ps msweet
+ 74 pending-held testfile.jpg msweet
+ 75 pending-held testfile.txt msweet
+
+ To get output suitable for import into a spreadsheet, use the "-c"
+ (CSV) option:
+
+ ipptool -c ipp://localhost/printers/myprinter get-jobs.test
+
+ which would produce something like this:
+
+ job-id,job-state,job-name,job-originating-user-name
+ 72,pending,testfile.pdf,msweet
+ 73,pending,testfile.ps,msweet
+ 74,pending-held,testfile.jpg,msweet
+ 75,pending-held,testfile.txt,msweet
+
+
+CONFORMANCE TESTS
+
+ We provide basic IPP conformance tests for IPP/1.1, IPP/2.0, and
+ IPP/2.1. For a given printer URI, the following commands perform
+ tests at each level:
+
+ ipptool -t printer-uri ipp-1.1.test
+ ipptool -t -V 2.0 printer-uri ipp-2.0.test
+ ipptool -t -V 2.1 printer-uri ipp-2.1.test
+
+
+READING THE DOCUMENTATION
+
+ The command usage is described in the ipptest(1) man page, while the
+ file format is described in the ipptestfile(5) man page.
+
+
+GETTING SUPPORT AND OTHER RESOURCES
+
+ If you have problems, READ THE DOCUMENTATION FIRST! We also provide many
+ discussion forums which are available at:
+
+ http://www.cups.org/newsgroups.php
+
+ See the CUPS web site at "http://www.cups.org/" for other resources.
+
+
+LEGAL STUFF
+
+ CUPS is Copyright 2007-2010 by Apple Inc. CUPS and the CUPS logo are
+ trademarks of Apple Inc.
+
+ The MD5 Digest code is Copyright 1999 Aladdin Enterprises.
+
+ This software is based in part on the work of the Independent JPEG Group.
+
+ CUPS is provided under the terms of version 2 of the GNU General Public
+ License and GNU Library General Public License. This program is distributed
+ in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the "doc/help/license.html" or "LICENSE.txt" files for more information.
-README - CUPS v1.4.0 - 2009-06-26
----------------------------------
+README - CUPS v1.5svn - 2010-04-07
+----------------------------------
Looking for compile instructions? Read the file "INSTALL.txt"
instead...
LEGAL STUFF
- CUPS is Copyright 2007-2009 by Apple Inc. CUPS and the CUPS logo are
+ CUPS is Copyright 2007-2010 by Apple Inc. CUPS and the CUPS logo are
trademarks of Apple Inc.
The MD5 Digest code is Copyright 1999 Aladdin Enterprises.
/*
* The length field counts the number of bytes in the string
- * including the length field itself (2 bytes).
+ * including the length field itself (2 bytes). The minimum
+ * length for a valid/usable device ID is 14 bytes:
+ *
+ * <LENGTH> MFG: <MFG> ;MDL: <MDL> ;
+ * 2 + 4 + 1 + 5 + 1 + 1
*/
- length -= 2;
+ if (length < 14)
+ {
+ /*
+ * Can't use this device ID, so don't try to copy it...
+ */
- /*
- * Copy the device ID text to the beginning of the buffer and
- * nul-terminate.
- */
+ device_id[0] = '\0';
+ got_id = 0;
+ }
+ else
+ {
+ /*
+ * Copy the device ID text to the beginning of the buffer and
+ * nul-terminate.
+ */
- memmove(device_id, device_id + 2, length);
- device_id[length] = '\0';
+ length -= 2;
+
+ memmove(device_id, device_id + 2, length);
+ device_id[length] = '\0';
+ }
}
# ifdef DEBUG
else
mfg = temp;
}
+ if (!mdl)
+ mdl = "";
+
if (!strncasecmp(mdl, mfg, strlen(mfg)))
{
mdl += strlen(mfg);
char temp[1024]; /* Temporary make and model */
- snprintf(temp, sizeof(temp), "%s %s", mfg, mdl);
+ if (mfg)
+ snprintf(temp, sizeof(temp), "%s %s", mfg, mdl);
+ else
+ snprintf(temp, sizeof(temp), "%s", mdl);
+
_ppdNormalizeMakeAndModel(temp, make_model, make_model_size);
}
}
#include <usb.h>
#include <poll.h>
-#include <cups/globals.h>
+#include <cups/cups-private.h>
/*
*/
# include "versioning.h"
+# include <stddef.h>
# include <sys/types.h>
# if defined(WIN32) && !defined(__CUPS_SSIZE_T_DEFINED)
# define __CUPS_SSIZE_T_DEFINED
"pending",
"pending-held",
"processing",
- "processing-stopped"
+ "processing-stopped",
"canceled",
"aborted",
"completed"
-LIBRARY libcups2
-VERSION 2.8
-EXPORTS
-_cupsCharmapFlush
-_cupsCharmapFree
-_cupsCharmapGet
-_cupsEncodingName
-_cupsGetPassword
-_cupsGlobals
-_cupsLangPrintf
-_cupsLangPuts
-_cupsLangString
-_cupsMD5Append
-_cupsMD5Finish
-_cupsMD5Init
-_cupsMessageFree
-_cupsMessageLoad
-_cupsMessageLookup
-_cupsSetError
-_cupsSetLocale
-_cupsStrAlloc
-_cupsStrFlush
-_cupsStrFormatd
-_cupsStrFree
-_cupsStrScand
-_cupsStrStatistics
-_cups_strcpy
-_cups_strlcat
-_cups_strlcpy
-_httpResolveURI
-_ippAddAttr
-_ippFindOption
-_ippFreeAttr
-_ppdFreeLanguages
-_ppdGetEncoding
-_ppdGetLanguages
-_ppdHashName
-_pwgCreateWithFile
-_pwgDestroy
-_pwgWriteFile
-_pwgGenerateSize
-_pwgInitSize
-_pwgMediaForLegacy
-_pwgMediaForPPD
-_pwgMediaForPWG
-_pwgMediaForSize
-_pwgCreateWithPPD
-_pwgGetInputSlot
-_pwgGetMediaType
-_pwgGetPageSize
-_pwgGetSize
-_pwgGetSource
-_pwgGetType
-_pwgInputSlotForSource
-_pwgMediaTypeForType
-_pwgPageSizeForMedia
-cupsAddDest
-cupsAddOption
-cupsAdminCreateWindowsPPD
-cupsAdminExportSamba
-cupsArrayAdd
-cupsArrayClear
-cupsArrayCount
-cupsArrayCurrent
-cupsArrayDelete
-cupsArrayDup
-cupsArrayFind
-cupsArrayFirst
-cupsArrayIndex
-cupsArrayInsert
-cupsArrayLast
-cupsArrayNew
-cupsArrayNext
-cupsArrayPrev
-cupsArrayRemove
-cupsArrayRestore
-cupsArraySave
-cupsArrayUserData
-cupsCancelJob
-cupsCharsetToUTF8
-cupsDirClose
-cupsDirOpen
-cupsDirRead
-cupsDirRewind
-cupsDoAuthentication
-cupsDoFileRequest
-cupsDoIORequest
-cupsDoRequest
-cupsEncodeOptions
-cupsEncodeOptions2
-cupsEncryption
-cupsFileClose
-cupsFileCompression
-cupsFileEOF
-cupsFileFind
-cupsFileFlush
-cupsFileGetChar
-cupsFileGetConf
-cupsFileGetLine
-cupsFileGets
-cupsFileLock
-cupsFileNumber
-cupsFileOpen
-cupsFileOpenFd
-cupsFilePeekChar
-cupsFilePrintf
-cupsFilePutChar
-cupsFilePuts
-cupsFileRead
-cupsFileRewind
-cupsFileSeek
-cupsFileStderr
-cupsFileStdin
-cupsFileStdout
-cupsFileTell
-cupsFileUnlock
-cupsFileWrite
-cupsFreeDests
-cupsFreeJobs
-cupsFreeOptions
-cupsGetClasses
-cupsGetDefault
-cupsGetDefault2
-cupsGetDest
-cupsGetDests
-cupsGetDests2
-cupsGetFd
-cupsGetFile
-cupsGetJobs
-cupsGetJobs2
-cupsGetOption
-cupsGetPPD
-cupsGetPPD2
-cupsGetPassword
-cupsGetPrinters
-cupsGetResponse
-cupsLangDefault
-cupsLangEncoding
-cupsLangFlush
-cupsLangFree
-cupsLangGet
-cupsLastError
-cupsLastErrorString
-cupsMarkOptions
-cupsNotifySubject
-cupsNotifyText
-cupsParseOptions
-cupsPrintFile
-cupsPrintFile2
-cupsPrintFiles
-cupsPrintFiles2
-cupsPutFd
-cupsPutFile
-cupsRemoveOption
-cupsResolveConflicts
-cupsSendRequest
-cupsServer
-cupsSetDests
-cupsSetDests2
-cupsSetEncryption
-cupsSetPasswordCB
-cupsSetServer
-cupsSetUser
-cupsTempFd
-cupsTempFile
-cupsTempFile2
-cupsUTF32ToUTF8
-cupsUTF8ToCharset
-cupsUTF8ToUTF32
-cupsUser
-cupsWriteRequestData
-httpAddrAny
-httpAddrConnect
-httpAddrEqual
-httpAddrFreeList
-httpAddrGetList
-httpAddrLength
-httpAddrLocalhost
-httpAddrLookup
-httpAddrString
-httpAssembleURI
-httpAssembleURIf
-httpBlocking
-httpCheck
-httpClearCookie
-httpClearFields
-httpClose
-httpConnect
-httpConnectEncrypt
-httpDecode64
-httpDecode64_2
-httpDelete
-httpEncode64
-httpEncode64_2
-httpEncryption
-httpError
-httpFlush
-httpFlushWrite
-httpGet
-httpGetBlocking
-httpGetCookie
-httpGetDateString
-httpGetDateString2
-httpGetDateTime
-httpGetFd
-httpGetField
-httpGetHostByName
-httpGetHostname
-httpGetLength
-httpGetLength2
-httpGetStatus
-httpGetSubField
-httpGetSubField2
-httpGets
-httpHead
-httpInitialize
-httpMD5
-httpMD5Final
-httpMD5String
-httpOptions
-httpPost
-httpPrintf
-httpPut
-httpRead
-httpRead2
-httpReconnect
-httpSeparate
-httpSeparate2
-httpSeparateURI
-httpSetCookie
-httpSetExpect
-httpSetField
-httpSetLength
-httpStatus
-httpTrace
-httpUpdate
-httpWait
-httpWrite
-httpWrite2
-ippAddBoolean
-ippAddBooleans
-ippAddCollection
-ippAddCollections
-ippAddDate
-ippAddInteger
-ippAddIntegers
-ippAddOctetString
-ippAddRange
-ippAddRanges
-ippAddResolution
-ippAddResolutions
-ippAddSeparator
-ippAddString
-ippAddStrings
-ippDateToTime
-ippDelete
-ippDeleteAttribute
-ippErrorString
-ippErrorValue
-ippFindAttribute
-ippFindNextAttribute
-ippLength
-ippNew
-ippNewRequest
-ippOpString
-ippOpValue
-ippPort
-ippRead
-ippReadFile
-ippReadIO
-ippSetPort
-ippTagString
-ippTagValue
-ippTimeToDate
-ippWrite
-ippWriteFile
-ippWriteIO
-ppdClose
-ppdCollect
-ppdCollect2
-ppdConflicts
-ppdEmit
-ppdEmitAfterOrder
-ppdEmitFd
-ppdEmitJCL
-ppdEmitJCLEnd
-ppdEmitString
-ppdErrorString
-ppdFindAttr
-ppdFindChoice
-ppdFindCustomOption
-ppdFindCustomParam
-ppdFindMarkedChoice
-ppdFindNextAttr
-ppdFindOption
-ppdFirstCustomParam
-ppdFirstOption
-ppdIsMarked
-ppdLastError
-ppdLocalize
-ppdMarkDefaults
-ppdMarkOption
-ppdNextCustomParam
-ppdNextOption
-ppdOpen
-ppdOpen2
-ppdOpenFd
-ppdOpenFile
-ppdPageLength
-ppdPageSize
-ppdPageWidth
-ppdSetConformance
+LIBRARY libcups2\r
+VERSION 2.8\r
+EXPORTS\r
+_cupsCharmapFlush\r
+_cupsCharmapFree\r
+_cupsCharmapGet\r
+_cupsEncodingName\r
+_cupsGetPassword\r
+_cupsGlobals\r
+_cupsLangPrintf\r
+_cupsLangPuts\r
+_cupsLangString\r
+_cupsMD5Append\r
+_cupsMD5Finish\r
+_cupsMD5Init\r
+_cupsMessageFree\r
+_cupsMessageLoad\r
+_cupsMessageLookup\r
+_cupsSetError\r
+_cupsSetLocale\r
+_cupsStrAlloc\r
+_cupsStrFlush\r
+_cupsStrFormatd\r
+_cupsStrFree\r
+_cupsStrScand\r
+_cupsStrStatistics\r
+_cups_strcpy\r
+_cups_strlcat\r
+_cups_strlcpy\r
+_httpResolveURI\r
+_ippAddAttr\r
+_ippAttrString\r
+_ippFindOption\r
+_ippFreeAttr\r
+_ppdFreeLanguages\r
+_ppdGetEncoding\r
+_ppdGetLanguages\r
+_ppdHashName\r
+_pwgCreateWithFile\r
+_pwgDestroy\r
+_pwgWriteFile\r
+_pwgGenerateSize\r
+_pwgInitSize\r
+_pwgMediaForLegacy\r
+_pwgMediaForPPD\r
+_pwgMediaForPWG\r
+_pwgMediaForSize\r
+_pwgCreateWithPPD\r
+_pwgGetInputSlot\r
+_pwgGetMediaType\r
+_pwgGetPageSize\r
+_pwgGetSize\r
+_pwgGetSource\r
+_pwgGetType\r
+_pwgInputSlotForSource\r
+_pwgMediaTypeForType\r
+_pwgPageSizeForMedia\r
+cupsAddDest\r
+cupsAddOption\r
+cupsAdminCreateWindowsPPD\r
+cupsAdminExportSamba\r
+cupsArrayAdd\r
+cupsArrayClear\r
+cupsArrayCount\r
+cupsArrayCurrent\r
+cupsArrayDelete\r
+cupsArrayDup\r
+cupsArrayFind\r
+cupsArrayFirst\r
+cupsArrayIndex\r
+cupsArrayInsert\r
+cupsArrayLast\r
+cupsArrayNew\r
+cupsArrayNext\r
+cupsArrayPrev\r
+cupsArrayRemove\r
+cupsArrayRestore\r
+cupsArraySave\r
+cupsArrayUserData\r
+cupsCancelJob\r
+cupsCharsetToUTF8\r
+cupsDirClose\r
+cupsDirOpen\r
+cupsDirRead\r
+cupsDirRewind\r
+cupsDoAuthentication\r
+cupsDoFileRequest\r
+cupsDoIORequest\r
+cupsDoRequest\r
+cupsEncodeOptions\r
+cupsEncodeOptions2\r
+cupsEncryption\r
+cupsFileClose\r
+cupsFileCompression\r
+cupsFileEOF\r
+cupsFileFind\r
+cupsFileFlush\r
+cupsFileGetChar\r
+cupsFileGetConf\r
+cupsFileGetLine\r
+cupsFileGets\r
+cupsFileLock\r
+cupsFileNumber\r
+cupsFileOpen\r
+cupsFileOpenFd\r
+cupsFilePeekChar\r
+cupsFilePrintf\r
+cupsFilePutChar\r
+cupsFilePuts\r
+cupsFileRead\r
+cupsFileRewind\r
+cupsFileSeek\r
+cupsFileStderr\r
+cupsFileStdin\r
+cupsFileStdout\r
+cupsFileTell\r
+cupsFileUnlock\r
+cupsFileWrite\r
+cupsFreeDests\r
+cupsFreeJobs\r
+cupsFreeOptions\r
+cupsGetClasses\r
+cupsGetDefault\r
+cupsGetDefault2\r
+cupsGetDest\r
+cupsGetDests\r
+cupsGetDests2\r
+cupsGetFd\r
+cupsGetFile\r
+cupsGetJobs\r
+cupsGetJobs2\r
+cupsGetOption\r
+cupsGetPPD\r
+cupsGetPPD2\r
+cupsGetPassword\r
+cupsGetPrinters\r
+cupsGetResponse\r
+cupsLangDefault\r
+cupsLangEncoding\r
+cupsLangFlush\r
+cupsLangFree\r
+cupsLangGet\r
+cupsLastError\r
+cupsLastErrorString\r
+cupsMarkOptions\r
+cupsNotifySubject\r
+cupsNotifyText\r
+cupsParseOptions\r
+cupsPrintFile\r
+cupsPrintFile2\r
+cupsPrintFiles\r
+cupsPrintFiles2\r
+cupsPutFd\r
+cupsPutFile\r
+cupsRemoveOption\r
+cupsResolveConflicts\r
+cupsSendRequest\r
+cupsServer\r
+cupsSetDests\r
+cupsSetDests2\r
+cupsSetEncryption\r
+cupsSetPasswordCB\r
+cupsSetServer\r
+cupsSetUser\r
+cupsTempFd\r
+cupsTempFile\r
+cupsTempFile2\r
+cupsUTF32ToUTF8\r
+cupsUTF8ToCharset\r
+cupsUTF8ToUTF32\r
+cupsUser\r
+cupsWriteRequestData\r
+httpAddrAny\r
+httpAddrConnect\r
+httpAddrEqual\r
+httpAddrFreeList\r
+httpAddrGetList\r
+httpAddrLength\r
+httpAddrLocalhost\r
+httpAddrLookup\r
+httpAddrString\r
+httpAssembleURI\r
+httpAssembleURIf\r
+httpBlocking\r
+httpCheck\r
+httpClearCookie\r
+httpClearFields\r
+httpClose\r
+httpConnect\r
+httpConnectEncrypt\r
+httpDecode64\r
+httpDecode64_2\r
+httpDelete\r
+httpEncode64\r
+httpEncode64_2\r
+httpEncryption\r
+httpError\r
+httpFlush\r
+httpFlushWrite\r
+httpGet\r
+httpGetBlocking\r
+httpGetCookie\r
+httpGetDateString\r
+httpGetDateString2\r
+httpGetDateTime\r
+httpGetFd\r
+httpGetField\r
+httpGetHostByName\r
+httpGetHostname\r
+httpGetLength\r
+httpGetLength2\r
+httpGetStatus\r
+httpGetSubField\r
+httpGetSubField2\r
+httpGets\r
+httpHead\r
+httpInitialize\r
+httpMD5\r
+httpMD5Final\r
+httpMD5String\r
+httpOptions\r
+httpPost\r
+httpPrintf\r
+httpPut\r
+httpRead\r
+httpRead2\r
+httpReconnect\r
+httpSeparate\r
+httpSeparate2\r
+httpSeparateURI\r
+httpSetCookie\r
+httpSetExpect\r
+httpSetField\r
+httpSetLength\r
+httpStatus\r
+httpTrace\r
+httpUpdate\r
+httpWait\r
+httpWrite\r
+httpWrite2\r
+ippAddBoolean\r
+ippAddBooleans\r
+ippAddCollection\r
+ippAddCollections\r
+ippAddDate\r
+ippAddInteger\r
+ippAddIntegers\r
+ippAddOctetString\r
+ippAddRange\r
+ippAddRanges\r
+ippAddResolution\r
+ippAddResolutions\r
+ippAddSeparator\r
+ippAddString\r
+ippAddStrings\r
+ippDateToTime\r
+ippDelete\r
+ippDeleteAttribute\r
+ippErrorString\r
+ippErrorValue\r
+ippFindAttribute\r
+ippFindNextAttribute\r
+ippLength\r
+ippNew\r
+ippNewRequest\r
+ippOpString\r
+ippOpValue\r
+ippPort\r
+ippRead\r
+ippReadFile\r
+ippReadIO\r
+ippSetPort\r
+ippTagString\r
+ippTagValue\r
+ippTimeToDate\r
+ippWrite\r
+ippWriteFile\r
+ippWriteIO\r
+ppdClose\r
+ppdCollect\r
+ppdCollect2\r
+ppdConflicts\r
+ppdEmit\r
+ppdEmitAfterOrder\r
+ppdEmitFd\r
+ppdEmitJCL\r
+ppdEmitJCLEnd\r
+ppdEmitString\r
+ppdErrorString\r
+ppdFindAttr\r
+ppdFindChoice\r
+ppdFindCustomOption\r
+ppdFindCustomParam\r
+ppdFindMarkedChoice\r
+ppdFindNextAttr\r
+ppdFindOption\r
+ppdFirstCustomParam\r
+ppdFirstOption\r
+ppdIsMarked\r
+ppdLastError\r
+ppdLocalize\r
+ppdMarkDefaults\r
+ppdMarkOption\r
+ppdNextCustomParam\r
+ppdNextOption\r
+ppdOpen\r
+ppdOpen2\r
+ppdOpenFd\r
+ppdOpenFile\r
+ppdPageLength\r
+ppdPageSize\r
+ppdPageWidth\r
+ppdSetConformance\r
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS und das CUPS Logo sind
eingetragene Warenzeichen der <A HREF="http://www.apple.com">Apple Inc.</A>
-CUPS ist urheberrechtlich geschützt 2007-2009 von Apple Inc, alle Rechte vorbehalten.</TD></TR>
+CUPS ist urheberrechtlich geschützt 2007-2010 von Apple Inc, alle Rechte vorbehalten.</TD></TR>
</TABLE>
</BODY>
</HTML>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS y el logo de CUPS son
marcas registradas de <A HREF="http://www.apple.com">Apple Inc.</A> Los derechos
-de copia de CUPS 2007-2009 son de Apple Inc. Todos los derechos reservados.</TD></TR>
+de copia de CUPS 2007-2010 son de Apple Inc. Todos los derechos reservados.</TD></TR>
</TABLE>
</BODY>
</HTML>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS eta CUPSen logotipoa <A HREF="http://www.apple.com">Apple Inc.</A>en marka erregistratuaj dira.
-CUPSen copyright-a 2007-2009 Apple Inc. Eskubide guztiak gordeta.</TD></TR>
+CUPSen copyright-a 2007-2010 Apple Inc. Eskubide guztiak gordeta.</TD></TR>
</TABLE>
</BODY>
</HTML>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS dan logo CUPS logo adalah merek dagang dari
-<A HREF="http://www.apple.com">Apple Inc.</A> Hak cipta CUPS pada 2007-2009 Apple
+<A HREF="http://www.apple.com">Apple Inc.</A> Hak cipta CUPS pada 2007-2010 Apple
Inc. Semua hak terpelihara.</TD></TR>
</TABLE>
</BODY>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS and the CUPS logo are trademarks of
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS is copyright 2007-2009 Apple
+<A HREF="http://www.apple.com">Apple Inc.</A> CUPS is copyright 2007-2010 Apple
Inc. All rights reserved.</TD></TR>
</TABLE>
</BODY>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS e il logo CUPS sono marchi di
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS è un copyright 2007-2009 di Apple
+<A HREF="http://www.apple.com">Apple Inc.</A> CUPS è un copyright 2007-2010 di Apple
Inc. Tutti i diritti sono riservati.</TD></TR>
</TABLE>
</BODY>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS and the CUPS logo are trademarks of
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS is copyright 2007-2009 Apple
+<A HREF="http://www.apple.com">Apple Inc.</A> CUPS is copyright 2007-2010 Apple
Inc. All rights reserved.</TD></TR>
</TABLE>
</BODY>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS i logo CUPS
są znakami handlowymi <A HREF="http://www.apple.com">Apple Inc.</A> CUPS
-copyright 2007-2009 Apple Inc. Wszystkie prawa zastrzeżone.</TD></TR>
+copyright 2007-2010 Apple Inc. Wszystkie prawa zastrzeżone.</TD></TR>
</TABLE>
</BODY>
</HTML>
</TD></TR>
<TR><TD> </TD></TR>
-<TR><TD CLASS="trailer">CUPS а также логотип CUPS являются зарегистрированными торговыми марками <A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2009) компании Apple Inc. Все права защищены.</TD></TR>
+<TR><TD CLASS="trailer">CUPS а также логотип CUPS являются зарегистрированными торговыми марками <A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2010) компании Apple Inc. Все права защищены.</TD></TR>
</TABLE>
</BODY>
</HTML>
*/
#include <cups/cups.h>
+#include <cups/ppd.h>
#include <cups/string-private.h>
#include <cups/language-private.h>
#include <signal.h>
/usr/share/doc/cups/eu/*
%dir /usr/share/doc/cups/id
/usr/share/doc/cups/id/*
+%dir /usr/share/doc/cups/it
+/usr/share/doc/cups/it/*
%dir /usr/share/doc/cups/ja
/usr/share/doc/cups/ja/*
%dir /usr/share/doc/cups/pl
/*
* "$Id: network.c 7861 2008-08-26 03:15:14Z mike $"
*
- * Network interface functions for the Common UNIX Printing System
- * (CUPS) scheduler.
+ * Network interface functions for the CUPS scheduler.
*
- * Copyright 2007-2009 by Apple Inc.
+ * Copyright 2007-2010 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
* Just the DefaultResolution to report...
*/
- xdpi = (int)strtol(ppd_attr->value, (char **)&resptr, 10);
+ xdpi = ydpi = (int)strtol(ppd_attr->value, (char **)&resptr, 10);
if (resptr > ppd_attr->value && xdpi > 0)
{
if (*resptr == 'x')
/*
- * An empty list always matches...
+ * An empty list never matches...
*/
if (!list || !*list)
- return (1);
+ return (0);
while (*list)
{
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS und das CUPS Logo sind
eingetragene Warenzeichen der <A HREF="http://www.apple.com">Apple Inc.</A> CUPS
-ist urheberrechtlich geschützt 2007-2009 von Apple Inc, alle Rechte vorbehalten.</TD></TR>
+ist urheberrechtlich geschützt 2007-2010 von Apple Inc, alle Rechte vorbehalten.</TD></TR>
</TABLE>
</BODY>
</HTML>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS y el logo de CUPS son marcas registradas de
<A HREF="http://www.apple.com">Apple, Inc.</A> Los derechos de copia de CUPS
-2007-2009 son de Apple Inc. Todos los derechos reservados.</TD></TR>
+2007-2010 son de Apple Inc. Todos los derechos reservados.</TD></TR>
</TABLE>
</BODY>
</HTML>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS eta CUPSen logotipoa <A HREF="http://www.apple.com">Apple Inc.</A>en
-marka errejistratuak dira. CUPSen copyright-a: 2007-2009 Apple
+marka errejistratuak dira. CUPSen copyright-a: 2007-2010 Apple
Inc. eskubide guztiak gordeta.</TD></TR>
</TABLE>
</BODY>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS dan logo CUPS adalah merek dagang dari
-<A HREF="http://www.apple.com">Apple Inc.</A> Hak Cipta CUPS adalah 2007-2009 Apple
+<A HREF="http://www.apple.com">Apple Inc.</A> Hak Cipta CUPS adalah 2007-2010 Apple
Inc. Semua hak terpelihara.</TD></TR>
</TABLE>
</BODY>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS e il logo CUPS sono marchi di
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS è un copyright 2007-2009 Apple
+<A HREF="http://www.apple.com">Apple Inc.</A> CUPS è un copyright 2007-2010 Apple
Inc. Tutti i diritti sono riservati.</TD></TR>
</TABLE>
</BODY>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS and the CUPS logo are trademarks of
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS is copyright 2007-2009 Apple
+<A HREF="http://www.apple.com">Apple Inc.</A> CUPS is copyright 2007-2010 Apple
Inc. All rights reserved.</TD></TR>
</TABLE>
</BODY>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS i logo CUPS
są znakami handlowymi <A HREF="http://www.apple.com">Apple Inc.</A> CUPS
-copyright 2007-2009 Apple Inc. Wszystkie prawa zastrzeżone.</TD></TR>
+copyright 2007-2010 Apple Inc. Wszystkie prawa zastrzeżone.</TD></TR>
</TABLE>
</BODY>
</HTML>
</TD></TR>
<TR><TD> </TD></TR>
-<TR><TD CLASS="trailer">CUPS а также логотип CUPS являются зарегистрированными торговыми марками <A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2009) компании Apple Inc. Все права защищены.</TD></TR>
+<TR><TD CLASS="trailer">CUPS а также логотип CUPS являются зарегистрированными торговыми марками <A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2010) компании Apple Inc. Все права защищены.</TD></TR>
</TABLE>
</BODY>
</HTML>
</TD></TR>
<TR><TD> </TD></TR>
<TR><TD CLASS="trailer">CUPS and the CUPS logo are trademarks of
-<A HREF="http://www.apple.com">Apple Inc.</A> CUPS is copyright 2007-2009 Apple
+<A HREF="http://www.apple.com">Apple Inc.</A> CUPS is copyright 2007-2010 Apple
Inc. All rights reserved.</TD></TR>
</TABLE>
</BODY>
#
# Usage:
#
-# ./ipptool printer-uri get-jobs.test
+# ./ipptool printer-uri get-completed-jobs.test
#
ATTR uri printer-uri $uri
ATTR keyword which-jobs completed
ATTR keyword requested-attributes
- job-id,job-name,document-format,job-media-sheets-completed,job-originating-user-name
+ job-id,job-state,job-name,job-originating-user-name,job-media-sheets-completed
# What statuses are OK?
STATUS successful-ok
# What attributes to display
DISPLAY job-id
+ DISPLAY job-state
DISPLAY job-name
- DISPLAY document-format
- DISPLAY job-media-sheets-completed
DISPLAY job-originating-user-name
+ DISPLAY job-media-sheets-completed
}
ATTR language attributes-natural-language en
ATTR uri printer-uri $uri
ATTR keyword requested-attributes
- job-id,job-name,document-format,job-media-sheets-completed,job-originating-user-name
+ job-id,job-state,job-name,job-originating-user-name
# What statuses are OK?
STATUS successful-ok
# What attributes to display
DISPLAY job-id
+ DISPLAY job-state
DISPLAY job-name
- DISPLAY document-format
- DISPLAY job-media-sheets-completed
DISPLAY job-originating-user-name
}
--- /dev/null
+#!/bin/sh
+#
+# "$Id$"
+#
+# Make an ipptool package for CUPS.
+#
+# Copyright 2007-2010 by Apple Inc.
+# Copyright 1997-2007 by Easy Software Products, all rights reserved.
+#
+# These coded instructions, statements, and computer programs are the
+# property of Apple Inc. and are protected by Federal copyright
+# law. Distribution and use rights are outlined in the file "LICENSE.txt"
+# which should have been included with this file. If this file is
+# file is missing or damaged, see the license at "http://www.cups.org/".
+#
+
+# Make sure we are running in the right directory...
+if test ! -f tools/makeipptoolpkg; then
+ echo "Run this script from the top-level CUPS source directory, e.g.:"
+ echo ""
+ echo " tools/makeipptoolpkg $*"
+ echo ""
+ exit 1
+fi
+
+if test $# = 0; then
+ echo Updating to get snapshot version...
+ svn up
+ rev=`svnversion . | sed -e '1,$s/[a-zA-Z]//g'`
+ fileversion="1.5svn-r$rev"
+ version=snapshot
+else
+ fileversion=$1
+ version=$1
+fi
+
+if (svn st | grep -qv '^\?'); then
+ echo Local changes remain:
+ svn st | grep -v '^\?'
+ exit 1
+fi
+
+echo Creating package directory...
+pkgdir="ipptool-$fileversion"
+
+test -d $pkgdir && rm -r $pkgdir
+mkdir $pkgdir || exit 1
+
+echo Copying package files
+cp IPPTOOL.txt LICENSE.txt $pkgdir
+cp doc/help/man-ipptool*.html $pkgdir
+cp test/create-printer-subscription.test $pkgdir
+cp test/get-completed-jobs.test test/get-jobs.test $pkgdir
+cp test/ipp-[12].*.test $pkgdir
+cp test/ipptool-static $pkgdir/ipptool
+cp test/testfile.* $pkgdir
+
+if test `uname` = Darwin; then
+ echo Creating disk image...
+ pkgfile="$pkgdir-macosx-universal.dmg"
+ test -f $pkgfile && rm $pkgfile
+ hdiutil create -srcfolder $pkgdir $pkgfile
+ #sudo chown `whoami` $pkgfile
+else
+ echo Creating archive...
+ pkgfile="$pkgdir-`uname`-`uname -m`.tar.gz"
+ tar czf $pkgfile $pkgdir || exit 1
+fi
+
+if test -x /usr/bin/md5sum; then
+ (md5sum $pkgfile | awk '{print $1, "'$fileversion' cups/'$version'/" $2}')
+elif test -x /sbin/md5; then
+ (md5 $pkgfile | awk '{print $4, "'$fileversion' cups/'$version'/" substr($2, 2, length($2) - 2)}')
+fi
+
+echo Removing temporary files...
+rm -r $pkgdir
+
+echo "Done!"
+
+#
+# End of "$Id$".
+#
echo Updating for snapshot...
svn up
rev=`svnversion . | sed -e '1,$s/[a-zA-Z]//g'`
- version="1.4svn"
+ version="1.5svn"
revision="-r$rev"
- fileversion="1.4svn-r$rev"
- fileurl="ftp://ftp.easysw.com/pub/cups/test/cups-$fileversion-source.tar."
+ fileversion="1.5svn-r$rev"
+ fileurl="http://ftp.easysw.com/pub/cups/test/cups-$fileversion-source.tar."
url="."
else
echo Creating tag for release...
version=$1
revision=""
fileversion=$1
- fileurl="ftp://ftp.easysw.com/pub/cups/$version/cups-$fileversion-source.tar."
+ fileurl="http://ftp.easysw.com/pub/cups/$version/cups-$fileversion-source.tar."
url="https://svn.easysw.com/public/cups/tags/release-$version"
svn copy https://svn.easysw.com/public/cups/trunk "$url" \