- Added a French localization (STR #4247)
- Added a Russian localization (STR #4228)
- Updated the Catalan localization (STR #4202)
+ - cupsGetPPD did not work with statically-configured CUPS shared
+ queues (STR #4178)
+ - The scheduler did not support long MIME media types (STR #4270)
+ - The cupsfilter command did not set the CHARSET environment variable
+ for the text filters (STR #4273)
- The lp command did not show errors for unknown "--foo" (STR #4261)
- Bad IPP responses could crash ipptool (STR #4262)
- Updated USB quirk rules for Canon and Xerox printers (STR #4217,
- Fixed a problem with local Kerberos authentication (STR #4140)
- Coverity scan: fixed some minor issues (STR #4242)
- The scheduler did not remove color profiles after deleting a printer
- (STR #4232)
+ (STR #4232, STR #4276)
- The CUPS library did not always detect a timed out connection to the
server which could cause temporary loss of printing from applications
(STR #4187)
-CHANGES-IPPTOOL.txt - 2013-01-31
+CHANGES-IPPTOOL.txt - 2013-02-20
--------------------------------
This file provides a list of changes to the ipptool binary distribution posted
on cups.org.
+2013-02-nn
+
+ - The IPP/1.1 test file did not allow for sufficient retries when
+ printing.
+ - The IPP/1.1 test file did not allow for empty printer-name values.
+ - The IPP Everywhere test file contained numerous errors.
+ - The color.jpg test file used a progressive mode instead of the
+ baseline JPEG mode.
+ - The IPP/1.1 test file referenced "color.jpeg" instead of "color.jpg".
+
+
2013-01-31
- Added support for DEFINE-MATCH and DEFINE-NO-MATCH as STATUS
ipp_attribute_t *copies_sup; /* copies-supported */
ipp_attribute_t *cups_version; /* cups-version */
ipp_attribute_t *format_sup; /* document-format-supported */
+ ipp_attribute_t *job_auth; /* job-authorization-uri */
ipp_attribute_t *media_col_sup; /* media-col-supported */
ipp_attribute_t *operations_sup; /* operations-supported */
ipp_attribute_t *doc_handling_sup; /* multiple-document-handling-supported */
copies_sup ? copies : 1, document_format, pc, ppd,
media_col_sup, doc_handling_sup, print_color_mode);
- ippDelete(cupsDoRequest(http, request, resource));
+ response = cupsDoRequest(http, request, resource);
ipp_status = cupsLastError();
fprintf(stderr, "DEBUG: Validate-Job: %s (%s)\n",
ippErrorString(ipp_status), cupsLastErrorString());
+ if ((job_auth = ippFindAttribute(response, "job-authorization-uri",
+ IPP_TAG_URI)) != NULL)
+ num_options = cupsAddOption("job-authorization-uri",
+ ippGetString(job_auth, 0, NULL), num_options,
+ &options);
+
+ ippDelete(response);
+
if (job_canceled)
break;
"job-resolvers-supported",
"job-settable-attributes-supported",
"job-spooling-supported",
+ "jpeg-k-octets-supported", /* CUPS extension */
+ "jpeg-x-dimension-supported", /* CUPS extension */
+ "jpeg-y-dimension-supported", /* CUPS extension */
+ "landscape-orientation-requested-preferred",
+ /* CUPS extension */
"marker-change-time", /* CUPS extension */
"marker-colors", /* CUPS extension */
"marker-high-levels", /* CUPS extension */
"operations-supported",
"pages-per-minute",
"pages-per-minute-color",
+ "pdf-k-octets-supported", /* CUPS extension */
+ "pdf-versions-supported", /* CUPS extension */
"pdl-override-supported",
"port-monitor", /* CUPS extension */
"port-monitor-supported", /* CUPS extension */
device_uri = attr->values[0].string.text;
if (device_uri &&
- ((strstr(device_uri, "._ipp.") != NULL ||
- strstr(device_uri, "._ipps.") != NULL) &&
- !strcmp(device_uri + strlen(device_uri) - 5, "/cups")))
+ (!strncmp(device_uri, "ipp://", 6) ||
+ !strncmp(device_uri, "ipps://", 7) ||
+ ((strstr(device_uri, "._ipp.") != NULL ||
+ strstr(device_uri, "._ipps.") != NULL) &&
+ !strcmp(device_uri + strlen(device_uri) - 5, "/cups"))))
{
/*
- * Statically-configured Bonjour shared printer.
+ * Statically-configured shared printer.
*/
httpSeparateURI(HTTP_URI_CODING_ALL,
message = COLORD_DBUS_MSG(COLORD_DBUS_PATH, "DeleteDevice");
dbus_message_iter_init_append(message, &args);
- dbus_message_iter_append_basic(&args, DBUS_TYPE_OBJECT_PATH, &device_id);
+ dbus_message_iter_append_basic(&args, DBUS_TYPE_OBJECT_PATH, &device_path);
/*
* Send the DeleteDevice request synchronously...
*/
dbus_error_init(&error);
- cupsdLogMessage(CUPSD_LOG_DEBUG, "Calling DeleteDevice(%s)", device_id);
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Calling DeleteDevice(%s)", device_path);
reply = dbus_connection_send_with_reply_and_block(colord_con, message,
COLORD_DBUS_TIMEOUT,
&error);
*
* Filtering program for CUPS.
*
- * Copyright 2007-2012 by Apple Inc.
+ * Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
{
int i; /* Looping var */
const char *argv[8], /* Command-line arguments */
- *envp[15], /* Environment variables */
+ *envp[16], /* Environment variables */
*temp; /* Temporary string */
char *optstr, /* Filter options */
content_type[1024], /* CONTENT_TYPE */
envp[11] = printer_name;
envp[12] = rip_max_cache;
envp[13] = userenv;
- envp[14] = NULL;
+ envp[14] = "CHARSET=utf-8";
+ envp[15] = NULL;
for (i = 0; argv[i]; i ++)
fprintf(stderr, "DEBUG: argv[%d]=\"%s\"\n", i, argv[i]);
* Grab format from client...
*/
- if (sscanf(format->values[0].string.text, "%15[^/]/%31[^;]", super,
+ if (sscanf(format->values[0].string.text, "%15[^/]/%255[^;]", super,
type) != 2)
{
send_ipp_status(con, IPP_BAD_REQUEST,
* Use default document format...
*/
- if (sscanf(default_format, "%15[^/]/%31[^;]", super, type) != 2)
+ if (sscanf(default_format, "%15[^/]/%255[^;]", super, type) != 2)
{
send_ipp_status(con, IPP_BAD_REQUEST,
_("Bad document-format \"%s\"."),
* Grab format from client...
*/
- if (sscanf(format->values[0].string.text, "%15[^/]/%31[^;]",
+ if (sscanf(format->values[0].string.text, "%15[^/]/%255[^;]",
super, type) != 2)
{
send_ipp_status(con, IPP_BAD_REQUEST, _("Bad document-format \"%s\"."),
* Use default document format...
*/
- if (sscanf(default_format, "%15[^/]/%31[^;]", super, type) != 2)
+ if (sscanf(default_format, "%15[^/]/%255[^;]", super, type) != 2)
{
send_ipp_status(con, IPP_BAD_REQUEST,
_("Bad document-format-default \"%s\"."), default_format);
if ((format = ippFindAttribute(con->request, "document-format",
IPP_TAG_MIMETYPE)) != NULL)
{
- if (sscanf(format->values[0].string.text, "%15[^/]/%31[^;]",
+ if (sscanf(format->values[0].string.text, "%15[^/]/%255[^;]",
super, type) != 2)
{
send_ipp_status(con, IPP_BAD_REQUEST,
*
* MIME test program for CUPS.
*
- * Copyright 2007-2011 by Apple Inc.
+ * Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
}
else
{
- sscanf(argv[i], "%15[^/]/%31s", super, type);
+ sscanf(argv[i], "%15[^/]/%255s", super, type);
dst = mimeType(mime, super, type);
filters = mimeFilter2(mime, src, srcinfo.st_size, dst, &cost);
#
# IPP/1.1 test suite.
#
-# Copyright 2007-2012 by Apple Inc.
+# Copyright 2007-2013 by Apple Inc.
# Copyright 2001-2006 by Easy Software Products. All rights reserved.
#
# These coded instructions, statements, and computer programs are the
STATUS successful-ok
STATUS client-error-document-format-not-supported
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
EXPECT natural-language-configured OF-TYPE naturalLanguage IN-GROUP printer-attributes-tag COUNT 1
EXPECT pdl-override-supported OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1
EXPECT printer-is-accepting-jobs OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1
- EXPECT printer-name OF-TYPE name IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^.{1,127}$$/"
+ EXPECT printer-name OF-TYPE name IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^.{0,127}$$/"
EXPECT printer-state OF-TYPE enum IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 3,4,5
EXPECT printer-state-reasons OF-TYPE keyword IN-GROUP printer-attributes-tag
EXPECT printer-up-time OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0
STATUS successful-ok
STATUS client-error-document-format-not-supported
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS client-error-document-format-not-supported
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
STATUS successful-ok
STATUS server-error-job-canceled
- STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 10
+ STATUS server-error-busy REPEAT-MATCH REPEAT-LIMIT 30
EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
EXPECT ipp-features-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE "ipp-everywhere"
- EXPECT job-account-id-supported OF-TYPE boolean IN-GROUP printer-attributes-tag WITH-VALUE 1 COUNT 1 DEFINE-MATCH JOB_ACCOUNT_ID_SUPPORTED
+ EXPECT job-account-id-supported OF-TYPE boolean IN-GROUP printer-attributes-tag WITH-VALUE true COUNT 1 DEFINE-MATCH JOB_ACCOUNT_ID_SUPPORTED
EXPECT job-account-id-default OF-TYPE name|no-value IN-GROUP printer-attributes-tag COUNT 1 IF-DEFINED JOB_ACCOUNT_ID_SUPPORTED
- EXPECT job-accounting-user-id-supported OF-TYPE boolean IN-GROUP printer-attributes-tag WITH-VALUE 1 COUNT 1 DEFINE-MATCH JOB_ACCOUNTING_USER_ID_SUPPORTED
+ EXPECT job-accounting-user-id-supported OF-TYPE boolean IN-GROUP printer-attributes-tag WITH-VALUE true COUNT 1 DEFINE-MATCH JOB_ACCOUNTING_USER_ID_SUPPORTED
EXPECT job-accounting-user-id-default OF-TYPE name|no-value IN-GROUP printer-attributes-tag COUNT 1 IF-DEFINED JOB_ACCOUNTING_USER_ID_SUPPORTED
EXPECT job-constraints-supported OF-TYPE collection IN-GROUP printer-attributes-tag DEFINE-MATCH JOB_CONSTRAINTS_SUPPORTED
EXPECT job-creation-attributes-supported OF-TYPE keyword IN-GROUP printer-attributes-tag
- EXPECT job-ids-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 1
+ EXPECT job-ids-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE true
- EXPECT job-preferred-attributes-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 1
+ EXPECT preferred-attributes-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1
EXPECT media-bottom-margin-supported OF-TYPE integer IN-GROUP printer-attributes-tag WITH-ALL-VALUES >-1
EXPECT media-left-margin-supported OF-TYPE integer IN-GROUP printer-attributes-tag WITH-ALL-VALUES >-1
EXPECT multiple-document-jobs-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1
- EXPECT multiple-operation-timeout OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0
+ EXPECT multiple-operation-time-out OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0
- EXPECT multiple-operation-timeout-action OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^(abort-job|hold-job|process-job)$/"
+ EXPECT multiple-operation-time-out-action OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^(abort-job|hold-job|process-job)$/"
EXPECT overrides-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE "document-number"
EXPECT overrides-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE "pages"
- EXPECT page-ranges-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 1 IF-DEFINED PDF_OR_OPENXPS
+ EXPECT page-ranges-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE true IF-DEFINED PDF_OR_OPENXPS
EXPECT print-color-mode-default OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^(auto|auto-monochrome|bi-level|color|highlight|monochrome|process-bi-level|process-monochrome)$/"
EXPECT print-color-mode-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-ALL-VALUES "/^(auto|auto-monochrome|bi-level|color|highlight|monochrome|process-bi-level|process-monochrome)$/"
EXPECT ?printer-mandatory-job-attributes OF-TYPE keyword IN-GROUP printer-attributes-tag
- EXPECT printer-organization OF-TYPE keyword IN-GROUP printer-attributes-tag
- EXPECT printer-organizational-unit OF-TYPE keyword IN-GROUP printer-attributes-tag
+ EXPECT printer-organization OF-TYPE text IN-GROUP printer-attributes-tag
+ EXPECT printer-organizational-unit OF-TYPE text IN-GROUP printer-attributes-tag
EXPECT printer-state-change-date-time OF-TYPE dateTime IN-GROUP printer-attributes-tag COUNT 1
EXPECT printer-state-change-time OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >-1
EXPECT printer-supply OF-TYPE octetString IN-GROUP printer-attributes-tag SAME-COUNT-AS printer-supply-description
EXPECT printer-supply-description OF-TYPE text IN-GROUP printer-attributes-tag SAME-COUNT-AS printer-supply
- EXPECT printer-supply-uri OF-TYPE uri IN-GROUP printer-attributes-tag COUNT 1
+ EXPECT printer-supply-info-uri OF-TYPE uri IN-GROUP printer-attributes-tag COUNT 1
- EXPECT printer-uuid OF-TYPE uri IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^urn:uuid:[0-9A-F]{8,8}-[0-9A-F]{4,4}-[0-9A-F]{4,4}-[0-9A-F]{4,4}-[0-9A-F]{12,12}/"
+ EXPECT printer-uuid OF-TYPE uri IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^urn:uuid:[0-9A-Fa-f]{8,8}-[0-9A-Fa-f]{4,4}-[0-9A-Fa-f]{4,4}-[0-9A-Fa-f]{4,4}-[0-9A-Fa-f]{12,12}/"
EXPECT pwg-raster-document-resolution-supported OF-TYPE resolution IN-GROUP printer-attributes-tag
EXPECT pwg-raster-document-resolution-supported WITH-VALUE 150dpi DEFINE-MATCH HAVE_150DPI
EXPECT pwg-raster-document-sheet-back OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1
EXPECT pwg-raster-document-type-supported OF-TYPE keyword IN-GROUP printer-attributes-tag
- EXPECT pwg-raster-document-type-supported WITH-VALUE "black-1" DEFINE-MATCH HAVE_BLACK_1
- EXPECT pwg-raster-document-type-supported WITH-VALUE "cmyk-8" DEFINE-MATCH HAVE_CMYK_8
- EXPECT pwg-raster-document-type-supported WITH-VALUE "sgray-8" DEFINE-MATCH HAVE_SGRAY_8
- EXPECT pwg-raster-document-type-supported WITH-VALUE "srgb-8" DEFINE-MATCH HAVE_SRGB_8
- EXPECT pwg-raster-document-type-supported WITH-VALUE "srgb-16" DEFINE-MATCH HAVE_SRGB_16
+ EXPECT pwg-raster-document-type-supported WITH-VALUE "black_1" DEFINE-MATCH HAVE_BLACK_1
+ EXPECT pwg-raster-document-type-supported WITH-VALUE "cmyk_8" DEFINE-MATCH HAVE_CMYK_8
+ EXPECT pwg-raster-document-type-supported WITH-VALUE "sgray_8" DEFINE-MATCH HAVE_SGRAY_8
+ EXPECT pwg-raster-document-type-supported WITH-VALUE "srgb_8" DEFINE-MATCH HAVE_SRGB_8
+ EXPECT pwg-raster-document-type-supported WITH-VALUE "srgb_16" DEFINE-MATCH HAVE_SRGB_16
EXPECT which-jobs-supported OF-TYPE keyword IN-GROUP printer-attributes-tag
}