summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES.md42
-rw-r--r--INSTALL.md4
-rw-r--r--Makedefs.in12
-rw-r--r--Makefile28
-rw-r--r--README.md2
-rw-r--r--backend/Makefile7
-rw-r--r--backend/dnssd.c21
-rw-r--r--backend/ipp.c243
-rw-r--r--backend/lpd.c16
-rw-r--r--backend/org.cups.usb-quirks3
-rw-r--r--backend/socket.c16
-rw-r--r--backend/test1284.c4
-rw-r--r--backend/testbackend.c4
-rw-r--r--backend/usb-darwin.c4
-rw-r--r--backend/usb.c4
-rw-r--r--berkeley/Makefile4
-rw-r--r--berkeley/lpq.c4
-rw-r--r--cgi-bin/Makefile127
-rw-r--r--cgi-bin/admin.c9
-rw-r--r--cgi-bin/cgi.h4
-rw-r--r--cgi-bin/help-index.c8
-rw-r--r--cgi-bin/makedocset.c469
-rw-r--r--cgi-bin/search.c3
-rw-r--r--config-scripts/cups-compiler.m451
-rw-r--r--config-scripts/cups-opsys.m44
-rw-r--r--config-scripts/cups-sharedlibs.m420
-rwxr-xr-xconfigure440
-rw-r--r--configure.ac2
-rw-r--r--cups/Makefile28
-rw-r--r--cups/adminutil.c16
-rw-r--r--cups/api-ppd.shtml4
-rw-r--r--cups/auth.c145
-rw-r--r--cups/backchannel.c12
-rw-r--r--cups/cups.h8
-rw-r--r--cups/debug-private.h27
-rw-r--r--cups/debug.c10
-rw-r--r--cups/dest.c12
-rw-r--r--cups/dir.c10
-rw-r--r--cups/file-private.h34
-rw-r--r--cups/file.c95
-rw-r--r--cups/file.h10
-rw-r--r--cups/getputfile.c70
-rw-r--r--cups/globals.c32
-rw-r--r--cups/http-addr.c8
-rw-r--r--cups/http-addrlist.c41
-rw-r--r--cups/http-private.h32
-rw-r--r--cups/http-support.c157
-rw-r--r--cups/http.c247
-rw-r--r--cups/http.h12
-rw-r--r--cups/ipp.c242
-rw-r--r--cups/language-private.h16
-rw-r--r--cups/language.c4
-rw-r--r--cups/libcups2.def23
-rw-r--r--cups/ppd-cache.c197
-rw-r--r--cups/ppd-emit.c8
-rw-r--r--cups/ppd-util.c8
-rw-r--r--cups/ppd.c47
-rw-r--r--cups/ppd.h2
-rw-r--r--cups/raster-private.h14
-rw-r--r--cups/request.c38
-rw-r--r--cups/sidechannel.c8
-rw-r--r--cups/snmp.c4
-rw-r--r--cups/string-private.h9
-rw-r--r--cups/tempfile.c24
-rw-r--r--cups/testarray.c4
-rw-r--r--cups/testdest.c4
-rw-r--r--cups/testfile.c21
-rw-r--r--cups/testhttp.c57
-rw-r--r--cups/testipp.c4
-rw-r--r--cups/testppd.c4
-rw-r--r--cups/testsnmp.c4
-rw-r--r--cups/thread-private.h2
-rw-r--r--cups/thread.c2
-rw-r--r--cups/tls-darwin.c12
-rw-r--r--cups/tls-gnutls.c2
-rw-r--r--cups/tls.c4
-rw-r--r--cups/tlscheck.c18
-rw-r--r--cups/usersys.c22
-rw-r--r--cups/util.c4
-rw-r--r--cups/versioning.h307
-rw-r--r--doc/Makefile12
-rw-r--r--doc/de/index.html.in2
-rw-r--r--doc/es/index.html.in2
-rw-r--r--doc/help/api-ppd.html4
-rw-r--r--doc/help/cupspm.epubbin219708 -> 219707 bytes
-rw-r--r--doc/help/man-cups-files.conf.html8
-rw-r--r--doc/help/man-cupsd.conf.html4
-rw-r--r--doc/help/man-lpadmin.html6
-rw-r--r--doc/index.html.in2
-rw-r--r--doc/ja/index.html.in2
-rw-r--r--doc/pt_BR/index.html.in4
-rw-r--r--doc/ru/index.html.in2
-rw-r--r--filter/Makefile31
-rw-r--r--filter/pstops.c3
-rw-r--r--filter/raster.c8
-rw-r--r--filter/rastertoepson.c4
-rw-r--r--filter/rastertolabel.c4
-rw-r--r--locale/Makefile3
-rw-r--r--locale/cups.pot1167
-rw-r--r--locale/cups.strings3
-rw-r--r--locale/cups_ca.po12
-rw-r--r--locale/cups_cs.po12
-rw-r--r--locale/cups_de.po12
-rw-r--r--locale/cups_es.po12
-rw-r--r--locale/cups_fr.po12
-rw-r--r--locale/cups_it.po12
-rw-r--r--locale/cups_ja.po12
-rw-r--r--locale/cups_pt_BR.po12
-rw-r--r--locale/cups_ru.po12
-rw-r--r--locale/cups_zh_CN.po12
-rw-r--r--man/cups-files.conf.man.in6
-rw-r--r--man/lpadmin.man9
-rw-r--r--monitor/Makefile2
-rw-r--r--notifier/Makefile4
-rw-r--r--packaging/cups.spec4
-rw-r--r--ppdc/Makefile106
-rw-r--r--ppdc/ppdc-driver.cxx7
-rw-r--r--ppdc/ppdc-source.cxx11
-rw-r--r--ppdc/sample.drv40
-rw-r--r--scheduler/Makefile106
-rw-r--r--scheduler/client.c7
-rw-r--r--scheduler/conf.h14
-rw-r--r--scheduler/cups-deviced.c4
-rw-r--r--scheduler/cups-driverd.cxx40
-rw-r--r--scheduler/cups-exec.c4
-rw-r--r--scheduler/cupsd.h12
-rw-r--r--scheduler/cupsfilter.c4
-rw-r--r--scheduler/ipp.c40
-rw-r--r--scheduler/job.c56
-rw-r--r--scheduler/job.h9
-rw-r--r--scheduler/log.c89
-rw-r--r--scheduler/main.c33
-rw-r--r--scheduler/mime-private.h5
-rw-r--r--scheduler/org.cups.cupsd.plist2
-rw-r--r--scheduler/sysman.c19
-rw-r--r--scheduler/testlpd.c12
-rw-r--r--scheduler/testspeed.c4
-rw-r--r--scheduler/testsub.c4
-rw-r--r--scheduler/type.c2
-rw-r--r--systemv/Makefile13
-rw-r--r--systemv/cupsaddsmb.c4
-rw-r--r--systemv/cupsctl.c4
-rw-r--r--systemv/cupstestdsc.c4
-rw-r--r--systemv/cupstestppd.c8
-rw-r--r--systemv/lpadmin.c64
-rw-r--r--systemv/lpoptions.c4
-rw-r--r--templates/admin.tmpl16
-rw-r--r--templates/choose-model.tmpl1
-rw-r--r--templates/de/admin.tmpl16
-rw-r--r--templates/de/choose-model.tmpl1
-rw-r--r--templates/de/trailer.tmpl2
-rw-r--r--templates/es/admin.tmpl16
-rw-r--r--templates/es/choose-model.tmpl1
-rw-r--r--templates/es/trailer.tmpl2
-rw-r--r--templates/fr/admin.tmpl16
-rw-r--r--templates/fr/choose-model.tmpl1
-rw-r--r--templates/fr/trailer.tmpl2
-rw-r--r--templates/ja/admin.tmpl16
-rw-r--r--templates/ja/choose-model.tmpl1
-rw-r--r--templates/ja/trailer.tmpl2
-rw-r--r--templates/pt_BR/admin.tmpl16
-rw-r--r--templates/pt_BR/choose-model.tmpl1
-rw-r--r--templates/pt_BR/header.tmpl.in2
-rw-r--r--templates/pt_BR/jobs-header.tmpl2
-rw-r--r--templates/pt_BR/trailer.tmpl2
-rw-r--r--templates/ru/admin.tmpl18
-rw-r--r--templates/ru/choose-model.tmpl1
-rw-r--r--templates/ru/trailer.tmpl2
-rw-r--r--templates/trailer.tmpl2
-rw-r--r--test/5.1-lpadmin.sh21
-rw-r--r--test/5.2-lpc.sh13
-rw-r--r--test/5.3-lpq.sh13
-rw-r--r--test/5.4-lpstat.sh17
-rw-r--r--test/5.5-lp.sh25
-rw-r--r--test/5.6-lpr.sh23
-rw-r--r--test/5.7-lprm.sh19
-rw-r--r--test/5.8-cancel.sh19
-rw-r--r--test/5.9-lpinfo.sh17
-rw-r--r--test/Makefile10
-rw-r--r--test/ipp-everywhere.test1728
-rw-r--r--test/ippfind.c42
-rw-r--r--test/ippserver.c51
-rw-r--r--test/ipptool.c54
-rwxr-xr-xtest/run-stp-tests.sh152
-rwxr-xr-xtest/waitjobs.sh11
-rw-r--r--vcnet/config.h8
-rw-r--r--vcnet/cups.sln90
-rw-r--r--vcnet/cupstestppd.vcxproj83
-rw-r--r--vcnet/cupstestppd.vcxproj.user4
-rw-r--r--vcnet/dns_sd.c444
-rw-r--r--vcnet/dns_sd.h2434
-rw-r--r--vcnet/dnssdstub.vcxproj100
-rw-r--r--vcnet/dnssdstub.vcxproj.filters27
-rw-r--r--vcnet/dnssdstub.vcxproj.user4
-rw-r--r--vcnet/ippfind.vcxproj93
-rw-r--r--vcnet/ippfind.vcxproj.user4
-rw-r--r--vcnet/ippserver.vcxproj95
-rw-r--r--vcnet/ippserver.vcxproj.user4
-rw-r--r--vcnet/ipptool.vcxproj83
-rw-r--r--vcnet/ipptool.vcxproj.user4
-rw-r--r--vcnet/libcups2.vcxproj175
-rw-r--r--vcnet/libcups2.vcxproj.filters33
-rw-r--r--vcnet/libcups2.vcxproj.user4
-rw-r--r--vcnet/libcupsimage2.vcxproj99
-rw-r--r--vcnet/libcupsimage2.vcxproj.user4
-rw-r--r--vcnet/packages.config4
-rw-r--r--vcnet/regex.vcxproj17
-rw-r--r--vcnet/regex.vcxproj.user4
-rw-r--r--vcnet/testfile.vcxproj53
-rw-r--r--vcnet/testfile.vcxproj.user4
-rw-r--r--vcnet/testhttp.vcxproj53
-rw-r--r--vcnet/testhttp.vcxproj.user4
-rw-r--r--xcode/config.h4
213 files changed, 7099 insertions, 5017 deletions
diff --git a/CHANGES.md b/CHANGES.md
index 7220dc9..8e09dbd 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,7 +1,47 @@
-CHANGES - 2.2.8 - 2018-06-05
+CHANGES - 2.2.9 - 2018-11-09
============================
+Changes in CUPS v2.2.9
+----------------------
+
+- Localization changes (Issue #5348, Issue #5362, Issue #5408)
+- Documentation updates (Issue #5369)
+- The lpadmin command would create a non-working printer in some error cases
+ (Issue #5305)
+- The scheduler would crash if an empty `AccessLog` directive was specified
+ (Issue #5309)
+- Fixed a regression in the changes to ippValidateAttribute (Issue #5322,
+ Issue #5330)
+- Fixed a crash bug in the Epson dot matrix driver (Issue #5323)
+- Automatic debug logging of job errors did not work with systemd (Issue #5337)
+- The web interface did not list the IPP Everywhere "driver" (Issue #5338)
+- The IPP Everywhere "driver" now properly supports face-up printers
+ (Issue #5345)
+- Fixed some typos in the label printer drivers (Issue #5350)
+- Multi-file jobs could get stuck if the backend failed (Issue #5359,
+ Issue #5413)
+- The IPP Everywhere "driver" no longer does local filtering when printing to
+ a shared CUPS printer (Issue #5361)
+- The lpadmin command now correctly reports IPP errors when configuring an
+ IPP Everywhere printer (Issue #5370)
+- Fixed some memory leaks discovered by Coverity (Issue #5375)
+- The PPD compiler incorrectly terminated JCL options (Issue #5379)
+- The cupstestppd utility did not generate errors for missing/mismatched
+ CloseUI/JCLCloseUI keywords (Issue #5381)
+- The scheduler now reports the actual location of the log file (Issue #5398)
+- Added a USB quirk rule (Issue #5420)
+- The scheduler was being backgrounded on macOS, causing applications to spin
+ (rdar://40436080)
+- The scheduler did not validate that required initial request attributes were
+ in the operation group (rdar://41098178)
+- Authentication in the web interface did not work on macOS (rdar://41444473)
+- Fixed an issue with HTTP Digest authentication (rdar://41709086)
+- The scheduler could crash when job history was purged (rdar://42198057)
+- Dropped non-working RSS subscriptions UI from web interface templates.
+- Fixed a memory leak for some IPP (extension) syntaxes.
+
+
Changes in CUPS v2.2.8
----------------------
diff --git a/INSTALL.md b/INSTALL.md
index 9b534b1..9d733c8 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -1,4 +1,4 @@
-INSTALL - CUPS v2.2.8 - 2018-06-05
+INSTALL - CUPS v2.2.9 - 2018-11-08
==================================
This file describes how to compile and install CUPS from source code. For more
@@ -21,7 +21,7 @@ does not endorse or support third-party support software for CUPS.
> c. software updates will often replace parts of your local installation,
> potentially rendering your system unusable.
>
-> Apple only supports using the Clang supplied with Xcode to build CUPS on
+> Apple only supports using the compiler supplied with Xcode to build CUPS on
> macOS.
diff --git a/Makedefs.in b/Makedefs.in
index 4055b93..f614c0c 100644
--- a/Makedefs.in
+++ b/Makedefs.in
@@ -1,7 +1,7 @@
#
# Common makefile definitions for CUPS.
#
-# Copyright 2007-2017 by Apple Inc.
+# Copyright 2007-2018 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -95,10 +95,7 @@ LOCALTARGET = @LOCALTARGET@
#
LIBCUPS = @LIBCUPS@
-LIBCUPSCGI = @LIBCUPSCGI@
LIBCUPSIMAGE = @LIBCUPSIMAGE@
-LIBCUPSMIME = @LIBCUPSMIME@
-LIBCUPSPPDC = @LIBCUPSPPDC@
LIBCUPSSTATIC = @LIBCUPSSTATIC@
LIBGSSAPI = @LIBGSSAPI@
LIBMALLOC = @LIBMALLOC@
@@ -127,6 +124,13 @@ IPPALIASES = @IPPALIASES@
INSTALLXPC = @INSTALLXPC@
#
+# Code signing...
+#
+
+CODE_SIGN = @CODE_SIGN@
+CODE_SIGN_IDENTITY = -
+
+#
# Program options...
#
# ARCHFLAGS Defines the default architecture build options.
diff --git a/Makefile b/Makefile
index afc90ce..ddb3a5f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
#
# Top-level Makefile for CUPS.
#
-# Copyright 2007-2016 by Apple Inc.
+# Copyright 2007-2018 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -273,32 +273,6 @@ apihelp:
#
-# Create an Xcode docset using Mini-XML's mxmldoc (http://www.msweet.org/)...
-#
-
-docset: apihelp
- echo Generating docset directory tree...
- $(RM) -r org.cups.docset
- mkdir -p org.cups.docset/Contents/Resources/Documentation/help
- mkdir -p org.cups.docset/Contents/Resources/Documentation/images
- cd man; $(MAKE) $(MFLAGS) html
- cd doc; $(MAKE) $(MFLAGS) docset
- cd cgi-bin; $(MAKE) $(MFLAGS) makedocset
- cgi-bin/makedocset org.cups.docset \
- `svnversion . | sed -e '1,$$s/[a-zA-Z]//g'` \
- doc/help/api-*.tokens
- $(RM) doc/help/api-*.tokens
- echo Indexing docset...
- /Applications/Xcode.app/Contents/Developer/usr/bin/docsetutil index org.cups.docset
- echo Generating docset archive and feed...
- $(RM) org.cups.docset.atom
- /Applications/Xcode.app/Contents/Developer/usr/bin/docsetutil package --output org.cups.docset.xar \
- --atom org.cups.docset.atom \
- --download-url http://www.cups.org/org.cups.docset.xar \
- org.cups.docset
-
-
-#
# Lines of code computation...
#
diff --git a/README.md b/README.md
index ff8e1b5..45837b5 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-README - CUPS v2.2.8 - 2018-06-05
+README - CUPS v2.2.9 - 2018-11-08
=================================
Looking for compile instructions? Read the file `INSTALL.md` instead...
diff --git a/backend/Makefile b/backend/Makefile
index aeb33d8..48a1c66 100644
--- a/backend/Makefile
+++ b/backend/Makefile
@@ -250,6 +250,7 @@ libbackend.a: $(LIBOBJS)
dnssd: dnssd.o ../cups/$(LIBCUPS) libbackend.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o dnssd dnssd.o libbackend.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
if test `uname` = Darwin; then \
$(RM) mdns; \
$(LN) dnssd mdns; \
@@ -263,6 +264,7 @@ dnssd: dnssd.o ../cups/$(LIBCUPS) libbackend.a
ipp: ipp.o ../cups/$(LIBCUPS) libbackend.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o ipp ipp.o libbackend.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
$(RM) http
$(LN) ipp http
@@ -274,6 +276,7 @@ ipp: ipp.o ../cups/$(LIBCUPS) libbackend.a
lpd: lpd.o ../cups/$(LIBCUPS) libbackend.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpd lpd.o libbackend.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -283,6 +286,7 @@ lpd: lpd.o ../cups/$(LIBCUPS) libbackend.a
snmp: snmp.o ../cups/$(LIBCUPS) libbackend.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o snmp snmp.o libbackend.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -292,12 +296,14 @@ snmp: snmp.o ../cups/$(LIBCUPS) libbackend.a
socket: socket.o ../cups/$(LIBCUPS) libbackend.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o socket socket.o libbackend.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
socket-static: socket.o ../cups/$(LIBCUPSSTATIC) libbackend.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o socket-static socket.o libbackend.a \
../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
$(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -308,6 +314,7 @@ usb: usb.o ../cups/$(LIBCUPS) libbackend.a
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o usb usb.o libbackend.a $(LIBUSB) \
$(BACKLIBS) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
usb.o: usb.c usb-darwin.c usb-libusb.c usb-unix.c
diff --git a/backend/dnssd.c b/backend/dnssd.c
index 849595d..c0d3579 100644
--- a/backend/dnssd.c
+++ b/backend/dnssd.c
@@ -1,7 +1,7 @@
/*
* DNS-SD discovery backend for CUPS.
*
- * Copyright 2008-2017 by Apple Inc.
+ * Copyright 2008-2018 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -94,7 +94,7 @@ static void browse_callback(DNSServiceRef sdRef,
const char *serviceName,
const char *regtype,
const char *replyDomain, void *context)
- __attribute__((nonnull(1,5,6,7,8)));
+ _CUPS_NONNULL((1,5,6,7,8));
static void browse_local_callback(DNSServiceRef sdRef,
DNSServiceFlags flags,
uint32_t interfaceIndex,
@@ -103,7 +103,7 @@ static void browse_local_callback(DNSServiceRef sdRef,
const char *regtype,
const char *replyDomain,
void *context)
- __attribute__((nonnull(1,5,6,7,8)));
+ _CUPS_NONNULL((1,5,6,7,8));
#endif /* HAVE_DNSSD */
#ifdef HAVE_AVAHI
static void browse_callback(AvahiServiceBrowser *browser,
@@ -121,12 +121,12 @@ static void client_callback(AvahiClient *client,
#endif /* HAVE_AVAHI */
static int compare_devices(cups_device_t *a, cups_device_t *b);
-static void exec_backend(char **argv) __attribute__((noreturn));
+static void exec_backend(char **argv) _CUPS_NORETURN;
static cups_device_t *get_device(cups_array_t *devices,
const char *serviceName,
const char *regtype,
const char *replyDomain)
- __attribute__((nonnull(1,2,3,4)));
+ _CUPS_NONNULL((1,2,3,4));
#ifdef HAVE_DNSSD
static void query_callback(DNSServiceRef sdRef,
DNSServiceFlags flags,
@@ -136,7 +136,7 @@ static void query_callback(DNSServiceRef sdRef,
uint16_t rrclass, uint16_t rdlen,
const void *rdata, uint32_t ttl,
void *context)
- __attribute__((nonnull(1,5,9,11)));
+ _CUPS_NONNULL((1,5,9,11));
#elif defined(HAVE_AVAHI)
static int poll_callback(struct pollfd *pollfds,
unsigned int num_pollfds, int timeout,
@@ -153,7 +153,7 @@ static void query_callback(AvahiRecordBrowser *browser,
#endif /* HAVE_DNSSD */
static void sigterm_handler(int sig);
static void unquote(char *dst, const char *src, size_t dstsize)
- __attribute__((nonnull(1,2)));
+ _CUPS_NONNULL((1,2));
/*
@@ -1257,6 +1257,13 @@ query_callback(
strlcat(make_and_model, " ", sizeof(make_and_model));
strlcat(make_and_model, model, sizeof(make_and_model));
+ if (!_cups_strncasecmp(make_and_model, "EPSON EPSON ", 12))
+ _cups_strcpy(make_and_model, make_and_model + 6);
+ else if (!_cups_strncasecmp(make_and_model, "HP HP ", 6))
+ _cups_strcpy(make_and_model, make_and_model + 3);
+ else if (!_cups_strncasecmp(make_and_model, "Lexmark International Lexmark ", 30))
+ _cups_strcpy(make_and_model, make_and_model + 22);
+
device->make_and_model = strdup(make_and_model);
}
else
diff --git a/backend/ipp.c b/backend/ipp.c
index 61e706e..f14a44e 100644
--- a/backend/ipp.c
+++ b/backend/ipp.c
@@ -1,7 +1,7 @@
/*
* IPP backend for CUPS.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -426,9 +426,9 @@ main(int argc, /* I - Number of command-line args */
port = IPP_PORT; /* Default to port 631 */
if (!strcmp(scheme, "https") || !strcmp(scheme, "ipps"))
- cupsSetEncryption(HTTP_ENCRYPT_ALWAYS);
+ cupsSetEncryption(HTTP_ENCRYPTION_ALWAYS);
else
- cupsSetEncryption(HTTP_ENCRYPT_IF_REQUESTED);
+ cupsSetEncryption(HTTP_ENCRYPTION_IF_REQUESTED);
/*
* See if there are any options...
@@ -515,13 +515,13 @@ main(int argc, /* I - Number of command-line args */
*/
if (!_cups_strcasecmp(value, "always"))
- cupsSetEncryption(HTTP_ENCRYPT_ALWAYS);
+ cupsSetEncryption(HTTP_ENCRYPTION_ALWAYS);
else if (!_cups_strcasecmp(value, "required"))
- cupsSetEncryption(HTTP_ENCRYPT_REQUIRED);
+ cupsSetEncryption(HTTP_ENCRYPTION_REQUIRED);
else if (!_cups_strcasecmp(value, "never"))
- cupsSetEncryption(HTTP_ENCRYPT_NEVER);
+ cupsSetEncryption(HTTP_ENCRYPTION_NEVER);
else if (!_cups_strcasecmp(value, "ifrequested"))
- cupsSetEncryption(HTTP_ENCRYPT_IF_REQUESTED);
+ cupsSetEncryption(HTTP_ENCRYPTION_IF_REQUESTED);
else
{
_cupsLangPrintFilter(stderr, "ERROR",
@@ -709,11 +709,11 @@ main(int argc, /* I - Number of command-line args */
fprintf(stderr, "DEBUG: Connecting to %s:%d\n", hostname, port);
_cupsLangPrintFilter(stderr, "INFO", _("Connecting to printer."));
- if (httpReconnect(http))
+ if (httpReconnect2(http, 30000, NULL))
{
int error = errno; /* Connection error */
- if (http->status == HTTP_PKI_ERROR)
+ if (http->status == HTTP_STATUS_CUPS_PKI_ERROR)
update_reasons(NULL, "+cups-certificate-error");
if (job_canceled)
@@ -916,7 +916,7 @@ main(int argc, /* I - Number of command-line args */
* Build the IPP request...
*/
- request = ippNewRequest(IPP_GET_PRINTER_ATTRIBUTES);
+ request = ippNewRequest(IPP_OP_GET_PRINTER_ATTRIBUTES);
ippSetVersion(request, version / 10, version % 10);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
NULL, uri);
@@ -931,7 +931,7 @@ main(int argc, /* I - Number of command-line args */
fputs("DEBUG: Getting supported attributes...\n", stderr);
- if (http->version < HTTP_1_1)
+ if (http->version < HTTP_VERSION_1_1)
{
fprintf(stderr, "DEBUG: Printer responded with HTTP version %d.%d.\n",
http->version / 100, http->version % 100);
@@ -945,15 +945,15 @@ main(int argc, /* I - Number of command-line args */
fprintf(stderr, "DEBUG: Get-Printer-Attributes: %s (%s)\n",
ippErrorString(ipp_status), cupsLastErrorString());
- if (ipp_status <= IPP_OK_CONFLICT)
+ if (ipp_status <= IPP_STATUS_OK_CONFLICTING)
password_tries = 0;
else
{
fprintf(stderr, "DEBUG: Get-Printer-Attributes returned %s.\n",
ippErrorString(ipp_status));
- if (ipp_status == IPP_PRINTER_BUSY ||
- ipp_status == IPP_SERVICE_UNAVAILABLE)
+ if (ipp_status == IPP_STATUS_ERROR_BUSY ||
+ ipp_status == IPP_STATUS_ERROR_SERVICE_UNAVAILABLE)
{
if (contimeout && (time(NULL) - start_time) > contimeout)
{
@@ -970,8 +970,8 @@ main(int argc, /* I - Number of command-line args */
delay = _cupsNextDelay(delay, &prev_delay);
}
- else if ((ipp_status == IPP_BAD_REQUEST ||
- ipp_status == IPP_VERSION_NOT_SUPPORTED) && version > 10)
+ else if ((ipp_status == IPP_STATUS_ERROR_BAD_REQUEST ||
+ ipp_status == IPP_STATUS_ERROR_VERSION_NOT_SUPPORTED) && version > 10)
{
/*
* Switch to IPP/1.1 or IPP/1.0...
@@ -994,9 +994,9 @@ main(int argc, /* I - Number of command-line args */
version = 10;
}
- httpReconnect(http);
+ httpReconnect2(http, 30000, NULL);
}
- else if (ipp_status == IPP_NOT_FOUND)
+ else if (ipp_status == IPP_STATUS_ERROR_NOT_FOUND)
{
_cupsLangPrintFilter(stderr, "ERROR",
_("The printer configuration is incorrect or the "
@@ -1006,8 +1006,8 @@ main(int argc, /* I - Number of command-line args */
return (CUPS_BACKEND_STOP);
}
- else if (ipp_status == IPP_FORBIDDEN ||
- ipp_status == IPP_AUTHENTICATION_CANCELED)
+ else if (ipp_status == IPP_STATUS_ERROR_FORBIDDEN ||
+ ipp_status == IPP_STATUS_ERROR_CUPS_AUTHENTICATION_CANCELED)
{
const char *www_auth = httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE);
/* WWW-Authenticate field value */
@@ -1020,13 +1020,13 @@ main(int argc, /* I - Number of command-line args */
fprintf(stderr, "ATTR: auth-info-required=%s\n", auth_info_required);
return (CUPS_BACKEND_AUTH_REQUIRED);
}
- else if (ipp_status != IPP_NOT_AUTHORIZED)
+ else if (ipp_status != IPP_STATUS_ERROR_NOT_AUTHORIZED)
{
_cupsLangPrintFilter(stderr, "ERROR",
_("Unable to get printer status."));
sleep(10);
- httpReconnect(http);
+ httpReconnect2(http, 30000, NULL);
}
ippDelete(supported);
@@ -1140,7 +1140,14 @@ main(int argc, /* I - Number of command-line args */
copies_sup = NULL; /* No */
}
- cups_version = ippFindAttribute(supported, "cups-version", IPP_TAG_TEXT);
+ if ((cups_version = ippFindAttribute(supported, "cups-version", IPP_TAG_TEXT)) != NULL)
+ {
+ const char *version = ippGetString(cups_version, 0, NULL);
+
+ fprintf(stderr, "DEBUG: cups-version = \"%s\"\n", version);
+ if (!strcmp(version, "cups-version"))
+ cups_version = NULL; /* Bogus cups-version value returned by buggy printers! */
+ }
encryption_sup = ippFindAttribute(supported, "job-password-encryption-supported", IPP_TAG_KEYWORD);
@@ -1176,7 +1183,7 @@ main(int argc, /* I - Number of command-line args */
ippOpString(operations_sup->values[i].integer));
for (i = 0; i < operations_sup->num_values; i ++)
- if (operations_sup->values[i].integer == IPP_PRINT_JOB)
+ if (operations_sup->values[i].integer == IPP_OP_PRINT_JOB)
break;
if (i >= operations_sup->num_values)
@@ -1184,7 +1191,7 @@ main(int argc, /* I - Number of command-line args */
"cups-ipp-missing-print-job");
for (i = 0; i < operations_sup->num_values; i ++)
- if (operations_sup->values[i].integer == IPP_CANCEL_JOB)
+ if (operations_sup->values[i].integer == IPP_OP_CANCEL_JOB)
break;
if (i >= operations_sup->num_values)
@@ -1192,7 +1199,7 @@ main(int argc, /* I - Number of command-line args */
"cups-ipp-missing-cancel-job");
for (i = 0; i < operations_sup->num_values; i ++)
- if (operations_sup->values[i].integer == IPP_GET_JOB_ATTRIBUTES)
+ if (operations_sup->values[i].integer == IPP_OP_GET_JOB_ATTRIBUTES)
break;
if (i >= operations_sup->num_values)
@@ -1200,7 +1207,7 @@ main(int argc, /* I - Number of command-line args */
"cups-ipp-missing-get-job-attributes");
for (i = 0; i < operations_sup->num_values; i ++)
- if (operations_sup->values[i].integer == IPP_GET_PRINTER_ATTRIBUTES)
+ if (operations_sup->values[i].integer == IPP_OP_GET_PRINTER_ATTRIBUTES)
break;
if (i >= operations_sup->num_values)
@@ -1209,13 +1216,13 @@ main(int argc, /* I - Number of command-line args */
for (i = 0; i < operations_sup->num_values; i ++)
{
- if (operations_sup->values[i].integer == IPP_VALIDATE_JOB)
+ if (operations_sup->values[i].integer == IPP_OP_VALIDATE_JOB)
validate_job = 1;
- else if (operations_sup->values[i].integer == IPP_CREATE_JOB)
+ else if (operations_sup->values[i].integer == IPP_OP_CREATE_JOB)
create_job = 1;
- else if (operations_sup->values[i].integer == IPP_SEND_DOCUMENT)
+ else if (operations_sup->values[i].integer == IPP_OP_SEND_DOCUMENT)
send_document = 1;
- else if (operations_sup->values[i].integer == IPP_GET_JOB_ATTRIBUTES)
+ else if (operations_sup->values[i].integer == IPP_OP_GET_JOB_ATTRIBUTES)
get_job_attrs = 1;
}
@@ -1243,7 +1250,7 @@ main(int argc, /* I - Number of command-line args */
report_printer_state(supported);
}
- while (!job_canceled && ipp_status > IPP_OK_CONFLICT);
+ while (!job_canceled && ipp_status > IPP_STATUS_OK_CONFLICTING);
if (job_canceled)
return (CUPS_BACKEND_OK);
@@ -1261,7 +1268,7 @@ main(int argc, /* I - Number of command-line args */
IPP_TAG_BOOLEAN);
if (printer_state == NULL ||
- (printer_state->values[0].integer > IPP_PRINTER_PROCESSING &&
+ (printer_state->values[0].integer > IPP_PSTATE_PROCESSING &&
waitprinter) ||
printer_accepting == NULL ||
!printer_accepting->values[0].boolean)
@@ -1387,7 +1394,7 @@ main(int argc, /* I - Number of command-line args */
* (I hate compatibility hacks!)
*/
- if (http->version < HTTP_1_1 && num_files == 0)
+ if (http->version < HTTP_VERSION_1_1 && num_files == 0)
{
if ((fd = cupsTempFd(tmpfilename, sizeof(tmpfilename))) < 0)
{
@@ -1415,7 +1422,7 @@ main(int argc, /* I - Number of command-line args */
files = &compatfile;
num_files = 1;
}
- else if (http->version < HTTP_1_1 && num_files == 1)
+ else if (http->version < HTTP_VERSION_1_1 && num_files == 1)
{
struct stat fileinfo; /* File information */
@@ -1448,8 +1455,8 @@ main(int argc, /* I - Number of command-line args */
monitor.create_job = create_job;
monitor.get_job_attrs = get_job_attrs;
monitor.encryption = cupsEncryption();
- monitor.job_state = IPP_JOB_PENDING;
- monitor.printer_state = IPP_PRINTER_IDLE;
+ monitor.job_state = IPP_JSTATE_PENDING;
+ monitor.printer_state = IPP_PSTATE_IDLE;
monitor.retryable = argc == 6 && document_format && strcmp(document_format, "image/pwg-raster") && strcmp(document_format, "image/urf");
if (create_job)
@@ -1532,10 +1539,10 @@ main(int argc, /* I - Number of command-line args */
"cups-ipp-missing-validate-job");
break;
}
- else if (ipp_status < IPP_REDIRECTION_OTHER_SITE ||
- ipp_status == IPP_BAD_REQUEST)
+ else if (ipp_status < IPP_STATUS_REDIRECTION_OTHER_SITE ||
+ ipp_status == IPP_STATUS_ERROR_BAD_REQUEST)
break;
- else if (job_auth == NULL && ipp_status > IPP_BAD_REQUEST)
+ else if (job_auth == NULL && ipp_status > IPP_STATUS_ERROR_BAD_REQUEST)
goto cleanup;
}
@@ -1560,8 +1567,8 @@ main(int argc, /* I - Number of command-line args */
if (job_canceled)
break;
- request = new_request((num_files > 1 || create_job) ? IPP_CREATE_JOB :
- IPP_PRINT_JOB,
+ request = new_request((num_files > 1 || create_job) ? IPP_OP_CREATE_JOB :
+ IPP_OP_PRINT_JOB,
version, uri, argv[2], monitor.job_name, num_options,
options, compression, copies_sup ? copies : 1,
document_format, pc, ppd, media_col_sup,
@@ -1586,7 +1593,7 @@ main(int argc, /* I - Number of command-line args */
fputs("DEBUG: Sending file using HTTP/1.1 chunking...\n", stderr);
http_status = cupsSendRequest(http, request, resource, length);
- if (http_status == HTTP_CONTINUE && request->state == IPP_DATA)
+ if (http_status == HTTP_STATUS_CONTINUE && request->state == IPP_STATE_DATA)
{
if (compression && strcmp(compression, "none"))
httpSetField(http, HTTP_FIELD_CONTENT_ENCODING, compression);
@@ -1605,7 +1612,7 @@ main(int argc, /* I - Number of command-line args */
http_status = cupsWriteRequestData(http, buffer, (size_t)bytes);
}
- while (http_status == HTTP_CONTINUE &&
+ while (http_status == HTTP_STATUS_CONTINUE &&
(!job_canceled || compatsize > 0))
{
/*
@@ -1630,7 +1637,7 @@ main(int argc, /* I - Number of command-line args */
fprintf(stderr, "DEBUG: Read %d bytes...\n", (int)bytes);
if ((http_status = cupsWriteRequestData(http, buffer, (size_t)bytes))
- != HTTP_CONTINUE)
+ != HTTP_STATUS_CONTINUE)
break;
}
else if (bytes == 0 || (errno != EINTR && errno != EAGAIN))
@@ -1638,7 +1645,7 @@ main(int argc, /* I - Number of command-line args */
}
}
- if (http_status == HTTP_ERROR)
+ if (http_status == HTTP_STATUS_ERROR)
fprintf(stderr, "DEBUG: Error writing document data for "
"Print-Job: %s\n", strerror(httpError(http)));
@@ -1657,7 +1664,7 @@ main(int argc, /* I - Number of command-line args */
ippErrorString(ipp_status), cupsLastErrorString());
debug_attributes(response);
- if (ipp_status > IPP_OK_CONFLICT)
+ if (ipp_status > IPP_STATUS_OK_CONFLICTING)
{
job_id = 0;
@@ -1709,7 +1716,7 @@ main(int argc, /* I - Number of command-line args */
else if (www_auth[0])
auth_info_required = "username,password";
}
- else if (ipp_status == IPP_REQUEST_VALUE)
+ else if (ipp_status == IPP_STATUS_ERROR_REQUEST_VALUE)
{
/*
* Print file is too large, abort this job...
@@ -1765,7 +1772,7 @@ main(int argc, /* I - Number of command-line args */
* Send the next file in the job...
*/
- request = ippNewRequest(IPP_SEND_DOCUMENT);
+ request = ippNewRequest(IPP_OP_SEND_DOCUMENT);
ippSetVersion(request, version / 10, version % 10);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
@@ -1794,7 +1801,7 @@ main(int argc, /* I - Number of command-line args */
debug_attributes(request);
http_status = cupsSendRequest(http, request, resource, 0);
- if (http_status == HTTP_CONTINUE && request->state == IPP_DATA)
+ if (http_status == HTTP_STATUS_CONTINUE && request->state == IPP_STATE_DATA)
{
if (compression && strcmp(compression, "none"))
httpSetField(http, HTTP_FIELD_CONTENT_ENCODING, compression);
@@ -1818,11 +1825,11 @@ main(int argc, /* I - Number of command-line args */
if (fd >= 0)
{
- while (!job_canceled && http_status == HTTP_CONTINUE &&
+ while (!job_canceled && http_status == HTTP_STATUS_CONTINUE &&
(bytes = read(fd, buffer, sizeof(buffer))) > 0)
{
if ((http_status = cupsWriteRequestData(http, buffer, (size_t)bytes))
- != HTTP_CONTINUE)
+ != HTTP_STATUS_CONTINUE)
break;
else
{
@@ -1838,7 +1845,7 @@ main(int argc, /* I - Number of command-line args */
close(fd);
}
- if (http_status == HTTP_ERROR)
+ if (http_status == HTTP_STATUS_ERROR)
fprintf(stderr, "DEBUG: Error writing document data for "
"Send-Document: %s\n", strerror(httpError(http)));
@@ -1850,7 +1857,7 @@ main(int argc, /* I - Number of command-line args */
debug_attributes(response);
ippDelete(response);
- if (cupsLastError() > IPP_OK_CONFLICT && !job_canceled)
+ if (cupsLastError() > IPP_STATUS_OK_CONFLICTING && !job_canceled)
{
ipp_status = cupsLastError();
@@ -1871,12 +1878,12 @@ main(int argc, /* I - Number of command-line args */
if (job_canceled)
break;
- if (ipp_status <= IPP_OK_CONFLICT && argc > 6)
+ if (ipp_status <= IPP_STATUS_OK_CONFLICTING && argc > 6)
{
fprintf(stderr, "PAGE: 1 %d\n", copies_sup ? atoi(argv[4]) : 1);
copies_remaining --;
}
- else if ((ipp_status == IPP_STATUS_ERROR_DOCUMENT_FORMAT_ERROR || ipp_status == IPP_STATUS_ERROR_DOCUMENT_UNPRINTABLE) &&
+ else if ((ipp_status == IPP_STATUS_ERROR_DOCUMENT_FORMAT_NOT_SUPPORTED || ipp_status == IPP_STATUS_ERROR_DOCUMENT_UNPRINTABLE) &&
argc == 6 &&
document_format && strcmp(document_format, "image/pwg-raster") && strcmp(document_format, "image/urf"))
{
@@ -1890,9 +1897,9 @@ main(int argc, /* I - Number of command-line args */
goto cleanup;
}
- else if (ipp_status == IPP_SERVICE_UNAVAILABLE ||
- ipp_status == IPP_NOT_POSSIBLE ||
- ipp_status == IPP_PRINTER_BUSY)
+ else if (ipp_status == IPP_STATUS_ERROR_SERVICE_UNAVAILABLE ||
+ ipp_status == IPP_STATUS_ERROR_NOT_POSSIBLE ||
+ ipp_status == IPP_STATUS_ERROR_BUSY)
{
if (argc == 6)
{
@@ -1908,14 +1915,14 @@ main(int argc, /* I - Number of command-line args */
}
continue;
}
- else if (ipp_status == IPP_REQUEST_VALUE ||
- ipp_status == IPP_ERROR_JOB_CANCELED ||
- ipp_status == IPP_NOT_AUTHORIZED ||
+ else if (ipp_status == IPP_STATUS_ERROR_REQUEST_VALUE ||
+ ipp_status == IPP_STATUS_ERROR_JOB_CANCELED ||
+ ipp_status == IPP_STATUS_ERROR_NOT_AUTHORIZED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_INFO_NEEDED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_CLOSED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_LIMIT_REACHED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_AUTHORIZATION_FAILED ||
- ipp_status == IPP_INTERNAL_ERROR)
+ ipp_status == IPP_STATUS_ERROR_INTERNAL)
{
/*
* Print file is too large, job was canceled, we need new
@@ -1945,7 +1952,7 @@ main(int argc, /* I - Number of command-line args */
goto cleanup;
}
- else if (ipp_status == IPP_NOT_FOUND)
+ else if (ipp_status == IPP_STATUS_ERROR_NOT_FOUND)
{
/*
* Printer does not actually implement support for Create-Job/
@@ -1959,7 +1966,7 @@ main(int argc, /* I - Number of command-line args */
update_reasons(NULL, "+cups-ipp-conformance-failure-report,"
"cups-ipp-missing-send-document");
- ipp_status = IPP_INTERNAL_ERROR; /* Force queue to stop */
+ ipp_status = IPP_STATUS_ERROR_INTERNAL; /* Force queue to stop */
goto cleanup;
}
@@ -1991,14 +1998,14 @@ main(int argc, /* I - Number of command-line args */
check_printer_state(http, uri, resource, argv[2], version);
- if (cupsLastError() <= IPP_OK_CONFLICT)
+ if (cupsLastError() <= IPP_STATUS_OK_CONFLICTING)
password_tries = 0;
/*
- * Build an IPP_GET_JOB_ATTRIBUTES request...
+ * Build an IPP_OP_GET_JOB_ATTRIBUTES request...
*/
- request = ippNewRequest(IPP_GET_JOB_ATTRIBUTES);
+ request = ippNewRequest(IPP_OP_GET_JOB_ATTRIBUTES);
ippSetVersion(request, version / 10, version % 10);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
@@ -2022,11 +2029,11 @@ main(int argc, /* I - Number of command-line args */
* Do the request...
*/
- httpReconnect(http);
+ httpReconnect2(http, 30000, NULL);
response = cupsDoRequest(http, request, resource);
ipp_status = cupsLastError();
- if (ipp_status == IPP_NOT_FOUND || ipp_status == IPP_NOT_POSSIBLE)
+ if (ipp_status == IPP_STATUS_ERROR_NOT_FOUND || ipp_status == IPP_STATUS_ERROR_NOT_POSSIBLE)
{
/*
* Job has gone away and/or the server has no job history...
@@ -2036,7 +2043,7 @@ main(int argc, /* I - Number of command-line args */
"cups-ipp-missing-job-history");
ippDelete(response);
- ipp_status = IPP_OK;
+ ipp_status = IPP_STATUS_OK;
break;
}
@@ -2044,25 +2051,25 @@ main(int argc, /* I - Number of command-line args */
ippErrorString(ipp_status), cupsLastErrorString());
debug_attributes(response);
- if (ipp_status <= IPP_OK_CONFLICT)
+ if (ipp_status <= IPP_STATUS_OK_CONFLICTING)
password_tries = 0;
else
{
- if (ipp_status != IPP_SERVICE_UNAVAILABLE &&
- ipp_status != IPP_PRINTER_BUSY)
+ if (ipp_status != IPP_STATUS_ERROR_SERVICE_UNAVAILABLE &&
+ ipp_status != IPP_STATUS_ERROR_BUSY)
{
ippDelete(response);
- ipp_status = IPP_OK;
+ ipp_status = IPP_STATUS_OK;
break;
}
- else if (ipp_status == IPP_INTERNAL_ERROR)
+ else if (ipp_status == IPP_STATUS_ERROR_INTERNAL)
{
waitjob_tries ++;
if (waitjob_tries > 4)
{
ippDelete(response);
- ipp_status = IPP_OK;
+ ipp_status = IPP_STATUS_OK;
break;
}
}
@@ -2078,11 +2085,11 @@ main(int argc, /* I - Number of command-line args */
*/
if (cups_version &&
- job_state->values[0].integer >= IPP_JOB_PENDING &&
- job_state->values[0].integer <= IPP_JOB_COMPLETED)
+ job_state->values[0].integer >= IPP_JSTATE_PENDING &&
+ job_state->values[0].integer <= IPP_JSTATE_COMPLETED)
update_reasons(NULL,
remote_job_states[job_state->values[0].integer -
- IPP_JOB_PENDING]);
+ IPP_JSTATE_PENDING]);
if ((job_sheets = ippFindAttribute(response, "job-impressions-completed", IPP_TAG_INTEGER)) == NULL)
job_sheets = ippFindAttribute(response, "job-media-sheets-completed", IPP_TAG_INTEGER);
@@ -2102,9 +2109,9 @@ main(int argc, /* I - Number of command-line args */
break;
}
}
- else if (ipp_status != IPP_SERVICE_UNAVAILABLE &&
- ipp_status != IPP_NOT_POSSIBLE &&
- ipp_status != IPP_PRINTER_BUSY)
+ else if (ipp_status != IPP_STATUS_ERROR_SERVICE_UNAVAILABLE &&
+ ipp_status != IPP_STATUS_ERROR_NOT_POSSIBLE &&
+ ipp_status != IPP_STATUS_ERROR_BUSY)
{
/*
* If the printer does not return a job-state attribute, it does not
@@ -2114,7 +2121,7 @@ main(int argc, /* I - Number of command-line args */
update_reasons(NULL, "+cups-ipp-conformance-failure-report,"
"cups-ipp-missing-job-state");
- ipp_status = IPP_INTERNAL_ERROR;
+ ipp_status = IPP_STATUS_ERROR_INTERNAL;
break;
}
}
@@ -2139,7 +2146,7 @@ main(int argc, /* I - Number of command-line args */
{
cancel_job(http, uri, job_id, resource, argv[2], version);
- if (cupsLastError() > IPP_OK_CONFLICT)
+ if (cupsLastError() > IPP_STATUS_OK_CONFLICTING)
_cupsLangPrintFilter(stderr, "ERROR", _("Unable to cancel print job."));
}
@@ -2149,7 +2156,7 @@ main(int argc, /* I - Number of command-line args */
check_printer_state(http, uri, resource, argv[2], version);
- if (cupsLastError() <= IPP_OK_CONFLICT)
+ if (cupsLastError() <= IPP_STATUS_OK_CONFLICTING)
password_tries = 0;
/*
@@ -2196,9 +2203,9 @@ main(int argc, /* I - Number of command-line args */
* Return the queue status...
*/
- if (ipp_status == IPP_NOT_AUTHORIZED || ipp_status == IPP_FORBIDDEN ||
- ipp_status == IPP_AUTHENTICATION_CANCELED ||
- ipp_status <= IPP_OK_CONFLICT)
+ if (ipp_status == IPP_STATUS_ERROR_NOT_AUTHORIZED || ipp_status == IPP_STATUS_ERROR_FORBIDDEN ||
+ ipp_status == IPP_STATUS_ERROR_CUPS_AUTHENTICATION_CANCELED ||
+ ipp_status <= IPP_STATUS_OK_CONFLICTING)
fprintf(stderr, "ATTR: auth-info-required=%s\n", auth_info_required);
if (ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_INFO_NEEDED)
@@ -2210,25 +2217,25 @@ main(int argc, /* I - Number of command-line args */
else if (ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_AUTHORIZATION_FAILED)
fputs("JOBSTATE: account-authorization-failed\n", stderr);
- if (ipp_status == IPP_NOT_AUTHORIZED || ipp_status == IPP_FORBIDDEN ||
- ipp_status == IPP_AUTHENTICATION_CANCELED)
+ if (ipp_status == IPP_STATUS_ERROR_NOT_AUTHORIZED || ipp_status == IPP_STATUS_ERROR_FORBIDDEN ||
+ ipp_status == IPP_STATUS_ERROR_CUPS_AUTHENTICATION_CANCELED)
return (CUPS_BACKEND_AUTH_REQUIRED);
else if (ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_LIMIT_REACHED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_INFO_NEEDED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_CLOSED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_AUTHORIZATION_FAILED)
return (CUPS_BACKEND_HOLD);
- else if (ipp_status == IPP_INTERNAL_ERROR)
+ else if (ipp_status == IPP_STATUS_ERROR_INTERNAL)
return (CUPS_BACKEND_STOP);
- else if (ipp_status == IPP_CONFLICT || ipp_status == IPP_STATUS_ERROR_REQUEST_ENTITY || ipp_status == IPP_STATUS_ERROR_REQUEST_VALUE)
+ else if (ipp_status == IPP_STATUS_ERROR_CONFLICTING || ipp_status == IPP_STATUS_ERROR_REQUEST_ENTITY || ipp_status == IPP_STATUS_ERROR_REQUEST_VALUE)
return (CUPS_BACKEND_FAILED);
- else if (ipp_status == IPP_REQUEST_VALUE ||
+ else if (ipp_status == IPP_STATUS_ERROR_REQUEST_VALUE ||
ipp_status == IPP_STATUS_ERROR_ATTRIBUTES_OR_VALUES ||
- ipp_status == IPP_DOCUMENT_FORMAT || job_canceled < 0)
+ ipp_status == IPP_STATUS_ERROR_DOCUMENT_FORMAT_NOT_SUPPORTED || job_canceled < 0)
{
- if (ipp_status == IPP_REQUEST_VALUE)
+ if (ipp_status == IPP_STATUS_ERROR_REQUEST_VALUE)
_cupsLangPrintFilter(stderr, "ERROR", _("Print job too large."));
- else if (ipp_status == IPP_DOCUMENT_FORMAT)
+ else if (ipp_status == IPP_STATUS_ERROR_DOCUMENT_FORMAT_NOT_SUPPORTED)
_cupsLangPrintFilter(stderr, "ERROR",
_("Printer cannot print supplied content."));
else if (ipp_status == IPP_STATUS_ERROR_ATTRIBUTES_OR_VALUES)
@@ -2239,7 +2246,7 @@ main(int argc, /* I - Number of command-line args */
return (CUPS_BACKEND_CANCEL);
}
- else if (ipp_status > IPP_OK_CONFLICT && ipp_status != IPP_ERROR_JOB_CANCELED)
+ else if (ipp_status > IPP_STATUS_OK_CONFLICTING && ipp_status != IPP_STATUS_ERROR_JOB_CANCELED)
return (CUPS_BACKEND_RETRY_CURRENT);
else
return (CUPS_BACKEND_OK);
@@ -2263,7 +2270,7 @@ cancel_job(http_t *http, /* I - HTTP connection */
_cupsLangPrintFilter(stderr, "INFO", _("Canceling print job."));
- request = ippNewRequest(IPP_CANCEL_JOB);
+ request = ippNewRequest(IPP_OP_CANCEL_JOB);
ippSetVersion(request, version / 10, version % 10);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
@@ -2297,7 +2304,7 @@ check_printer_state(
ipp_t *request, /* IPP request */
*response; /* IPP response */
ipp_attribute_t *attr; /* Attribute in response */
- ipp_pstate_t printer_state = IPP_PRINTER_STOPPED;
+ ipp_pstate_t printer_state = IPP_PSTATE_STOPPED;
/* Current printer-state */
@@ -2305,7 +2312,7 @@ check_printer_state(
* Send a Get-Printer-Attributes request and log the results...
*/
- request = ippNewRequest(IPP_GET_PRINTER_ATTRIBUTES);
+ request = ippNewRequest(IPP_OP_GET_PRINTER_ATTRIBUTES);
ippSetVersion(request, version / 10, version % 10);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
@@ -2431,14 +2438,14 @@ monitor_printer(
monitor->job_reasons = 0;
- while (monitor->job_state < IPP_JOB_CANCELED && !job_canceled)
+ while (monitor->job_state < IPP_JSTATE_CANCELED && !job_canceled)
{
/*
* Reconnect to the printer as needed...
*/
if (httpGetFd(http) < 0)
- httpReconnect(http);
+ httpReconnect2(http, 30000, NULL);
if (httpGetFd(http) >= 0)
{
@@ -2450,7 +2457,7 @@ monitor_printer(
monitor->resource,
monitor->user,
monitor->version);
- if (cupsLastError() <= IPP_OK_CONFLICT)
+ if (cupsLastError() <= IPP_STATUS_OK_CONFLICTING)
password_tries = 0;
if (monitor->job_id == 0 && monitor->create_job)
@@ -2467,13 +2474,13 @@ monitor_printer(
*/
job_op = (monitor->job_id > 0 && monitor->get_job_attrs) ?
- IPP_GET_JOB_ATTRIBUTES : IPP_GET_JOBS;
+ IPP_OP_GET_JOB_ATTRIBUTES : IPP_OP_GET_JOBS;
request = ippNewRequest(job_op);
ippSetVersion(request, monitor->version / 10, monitor->version % 10);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
NULL, monitor->uri);
- if (job_op == IPP_GET_JOB_ATTRIBUTES)
+ if (job_op == IPP_OP_GET_JOB_ATTRIBUTES)
ippAddInteger(request, IPP_TAG_OPERATION, IPP_TAG_INTEGER, "job-id",
monitor->job_id);
@@ -2494,16 +2501,16 @@ monitor_printer(
fprintf(stderr, "DEBUG: (monitor) %s: %s (%s)\n", ippOpString(job_op),
ippErrorString(cupsLastError()), cupsLastErrorString());
- if (cupsLastError() <= IPP_OK_CONFLICT)
+ if (cupsLastError() <= IPP_STATUS_OK_CONFLICTING)
password_tries = 0;
- if (job_op == IPP_GET_JOB_ATTRIBUTES)
+ if (job_op == IPP_OP_GET_JOB_ATTRIBUTES)
{
if ((attr = ippFindAttribute(response, "job-state",
IPP_TAG_ENUM)) != NULL)
monitor->job_state = (ipp_jstate_t)attr->values[0].integer;
else
- monitor->job_state = IPP_JOB_COMPLETED;
+ monitor->job_state = IPP_JSTATE_COMPLETED;
}
else if (response)
{
@@ -2511,7 +2518,7 @@ monitor_printer(
{
job_id = 0;
job_name = NULL;
- job_state = IPP_JOB_PENDING;
+ job_state = IPP_JSTATE_PENDING;
job_user = NULL;
while (attr && attr->group_tag != IPP_TAG_JOB)
@@ -2557,8 +2564,8 @@ monitor_printer(
ippEnumString("job-state", monitor->job_state));
if (!job_canceled &&
- (monitor->job_state == IPP_JOB_CANCELED ||
- monitor->job_state == IPP_JOB_ABORTED))
+ (monitor->job_state == IPP_JSTATE_CANCELED ||
+ monitor->job_state == IPP_JSTATE_ABORTED))
{
job_canceled = -1;
fprintf(stderr, "DEBUG: (monitor) job_canceled = -1\n");
@@ -2639,8 +2646,8 @@ monitor_printer(
ippEnumString("job-state", monitor->job_state));
if (!job_canceled &&
- (monitor->job_state == IPP_JOB_CANCELED ||
- monitor->job_state == IPP_JOB_ABORTED))
+ (monitor->job_state == IPP_JSTATE_CANCELED ||
+ monitor->job_state == IPP_JSTATE_ABORTED))
job_canceled = -1;
}
@@ -2662,14 +2669,14 @@ monitor_printer(
if (job_canceled > 0 && monitor->job_id > 0)
{
if (httpGetFd(http) < 0)
- httpReconnect(http);
+ httpReconnect2(http, 30000, NULL);
if (httpGetFd(http) >= 0)
{
cancel_job(http, monitor->uri, monitor->job_id, monitor->resource,
monitor->user, monitor->version);
- if (cupsLastError() > IPP_OK_CONFLICT)
+ if (cupsLastError() > IPP_STATUS_OK_CONFLICTING)
{
fprintf(stderr, "DEBUG: (monitor) cancel_job() = %s\n", cupsLastErrorString());
_cupsLangPrintFilter(stderr, "ERROR", _("Unable to cancel print job."));
@@ -2745,7 +2752,7 @@ new_request(
fprintf(stderr, "DEBUG: job-name=\"%s\"\n", title);
}
- if (format && op != IPP_CREATE_JOB)
+ if (format && op != IPP_OP_CREATE_JOB)
{
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_MIMETYPE, "document-format", NULL, format);
fprintf(stderr, "DEBUG: document-format=\"%s\"\n", format);
@@ -3586,6 +3593,8 @@ update_reasons(ipp_attribute_t *attr, /* I - printer-state-reasons or NULL */
}
}
+ cupsArrayDelete(new_reasons);
+
_cupsMutexUnlock(&report_mutex);
/*
diff --git a/backend/lpd.c b/backend/lpd.c
index 4325b7c..d8c2e6b 100644
--- a/backend/lpd.c
+++ b/backend/lpd.c
@@ -24,14 +24,14 @@
#include <sys/stat.h>
#include <stdio.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <winsock.h>
#else
# include <sys/socket.h>
# include <netinet/in.h>
# include <arpa/inet.h>
# include <netdb.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#ifdef __APPLE__
# include <CoreFoundation/CFNumber.h>
# include <CoreFoundation/CFPreferences.h>
@@ -623,11 +623,11 @@ cups_rresvport(int *port, /* IO - Port number to bind to */
* -1...
*/
-#ifdef WIN32
+#ifdef _WIN32
closesocket(fd);
#else
close(fd);
-#endif /* WIN32 */
+#endif /* _WIN32 */
return (-1);
}
@@ -735,11 +735,11 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
ssize_t nbytes; /* Number of bytes written */
off_t tbytes; /* Total bytes written */
char buffer[32768]; /* Output buffer */
-#ifdef WIN32
+#ifdef _WIN32
DWORD tv; /* Timeout in milliseconds */
#else
struct timeval tv; /* Timeout in secs and usecs */
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -922,7 +922,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
* Set the timeout...
*/
-#ifdef WIN32
+#ifdef _WIN32
tv = (DWORD)(timeout * 1000);
setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, (char *)&tv, sizeof(tv));
@@ -933,7 +933,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */
setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv));
setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
-#endif /* WIN32 */
+#endif /* _WIN32 */
fputs("STATE: -connecting-to-device\n", stderr);
_cupsLangPrintFilter(stderr, "INFO", _("Connected to printer."));
diff --git a/backend/org.cups.usb-quirks b/backend/org.cups.usb-quirks
index 1f1feff..fd3df82 100644
--- a/backend/org.cups.usb-quirks
+++ b/backend/org.cups.usb-quirks
@@ -284,3 +284,6 @@
# HP LaserJet P1102 (Issue #5310)
0x03F0 0x002A no-reattach
+
+# Lexmark MS317dn
+0x043d 0x0226 no-reattach
diff --git a/backend/socket.c b/backend/socket.c
index c16a1a0..6cfe381 100644
--- a/backend/socket.c
+++ b/backend/socket.c
@@ -1,7 +1,7 @@
/*
* AppSocket backend for CUPS.
*
- * Copyright 2007-2016 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -23,7 +23,7 @@
#include <sys/types.h>
#include <sys/stat.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <winsock.h>
#else
# include <unistd.h>
@@ -32,7 +32,7 @@
# include <netinet/in.h>
# include <arpa/inet.h>
# include <netdb.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -402,8 +402,10 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
lseek(print_fd, 0, SEEK_SET);
}
- tbytes = backendRunLoop(print_fd, device_fd, snmp_fd, &(addrlist->addr), 1,
- 0, backendNetworkSideCB);
+ if ((bytes = backendRunLoop(print_fd, device_fd, snmp_fd, &(addrlist->addr), 1, 0, backendNetworkSideCB)) < 0)
+ tbytes = -1;
+ else
+ tbytes = bytes;
if (print_fd != 0 && tbytes >= 0)
_cupsLangPrintFilter(stderr, "INFO", _("Print file sent."));
@@ -411,7 +413,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
fputs("STATE: +cups-waiting-for-job-completed\n", stderr);
- if (waiteof)
+ if (waiteof && tbytes >= 0)
{
/*
* Shutdown the socket and wait for the other end to finish...
@@ -448,7 +450,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
if (print_fd != 0)
close(print_fd);
- return (CUPS_BACKEND_OK);
+ return (tbytes >= 0 ? CUPS_BACKEND_OK : CUPS_BACKEND_FAILED);
}
diff --git a/backend/test1284.c b/backend/test1284.c
index 85ac8b5..b55bb8e 100644
--- a/backend/test1284.c
+++ b/backend/test1284.c
@@ -18,12 +18,12 @@
*/
#include <cups/string-private.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
#else
# include <unistd.h>
# include <fcntl.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#include "ieee1284.c"
diff --git a/backend/testbackend.c b/backend/testbackend.c
index 969083a..39689b0 100644
--- a/backend/testbackend.c
+++ b/backend/testbackend.c
@@ -1,7 +1,7 @@
/*
* Backend test program for CUPS.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2005 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -38,7 +38,7 @@ static int job_canceled = 0;
*/
static void sigterm_handler(int sig);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
static void walk_cb(const char *oid, const char *data, int datalen,
void *context);
diff --git a/backend/usb-darwin.c b/backend/usb-darwin.c
index 4f31d03..4a85b47 100644
--- a/backend/usb-darwin.c
+++ b/backend/usb-darwin.c
@@ -290,10 +290,10 @@ static void status_timer_cb(CFRunLoopTimerRef timer, void *info);
#if defined(__i386__) || defined(__x86_64__)
static pid_t child_pid; /* Child PID */
-static void run_legacy_backend(int argc, char *argv[], int fd) __attribute__((noreturn)); /* Starts child backend process running as a ppc executable */
+static void run_legacy_backend(int argc, char *argv[], int fd) _CUPS_NORETURN; /* Starts child backend process running as a ppc executable */
#endif /* __i386__ || __x86_64__ */
static void sigterm_handler(int sig); /* SIGTERM handler */
-static void sigquit_handler(int sig, siginfo_t *si, void *unused) __attribute__((noreturn));
+static void sigquit_handler(int sig, siginfo_t *si, void *unused) _CUPS_NORETURN;
#ifdef PARSE_PS_ERRORS
static const char *next_line (const char *buffer);
diff --git a/backend/usb.c b/backend/usb.c
index a3b6fba..b71f21d 100644
--- a/backend/usb.c
+++ b/backend/usb.c
@@ -24,13 +24,13 @@
#include "backend-private.h"
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
#else
# include <unistd.h>
# include <fcntl.h>
# include <termios.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
diff --git a/berkeley/Makefile b/berkeley/Makefile
index 0a17b53..ffa27b9 100644
--- a/berkeley/Makefile
+++ b/berkeley/Makefile
@@ -125,6 +125,7 @@ uninstall:
lpc: lpc.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpc lpc.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -134,6 +135,7 @@ lpc: lpc.o ../cups/$(LIBCUPS)
lpq: lpq.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpq lpq.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -143,6 +145,7 @@ lpq: lpq.o ../cups/$(LIBCUPS)
lpr: lpr.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpr lpr.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -152,6 +155,7 @@ lpr: lpr.o ../cups/$(LIBCUPS)
lprm: lprm.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lprm lprm.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/berkeley/lpq.c b/berkeley/lpq.c
index fb6d121..9e30506 100644
--- a/berkeley/lpq.c
+++ b/berkeley/lpq.c
@@ -1,7 +1,7 @@
/*
* "lpq" command for CUPS.
*
- * Copyright 2007-2016 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -26,7 +26,7 @@ static http_t *connect_server(const char *, http_t *);
static int show_jobs(const char *, http_t *, const char *,
const char *, const int, const int);
static void show_printer(const char *, http_t *, const char *);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
/*
diff --git a/cgi-bin/Makefile b/cgi-bin/Makefile
index ae96307..24fdd1a 100644
--- a/cgi-bin/Makefile
+++ b/cgi-bin/Makefile
@@ -1,7 +1,7 @@
#
# CGI makefile for CUPS.
#
-# Copyright 2007-2017 by Apple Inc.
+# Copyright 2007-2018 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -26,7 +26,6 @@ OBJS = \
classes.o \
help.o \
jobs.o \
- makedocset.o \
printers.o \
testcgi.o \
testhi.o \
@@ -38,8 +37,7 @@ CGIS = \
jobs.cgi \
printers.cgi
LIBTARGETS = \
- libcupscgi.a \
- $(LIBCUPSCGI)
+ libcupscgi.a
UNITTARGETS = \
testcgi \
@@ -77,8 +75,7 @@ unittests: $(UNITTARGETS)
#
clean:
- $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS) makedocset
- $(RM) libcupscgi.so libcupscgi.dylib
+ $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS)
#
@@ -126,42 +123,13 @@ install-exec:
#
install-headers:
- if test "x$(privateinclude)" != x; then \
- echo Installing private header files into $(PRIVATEINCLUDE)...; \
- $(INSTALL_DIR) -m 755 $(PRIVATEINCLUDE); \
- for file in cgi.h help-index.h; do \
- $(INSTALL_DATA) $$file $(PRIVATEINCLUDE); \
- done; \
- fi
#
# Install libraries...
#
-install-libs: $(INSTALLSTATIC)
- echo Installing libraries in $(LIBDIR)...
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) $(LIBCUPSCGI) $(LIBDIR)
- if test $(LIBCUPSCGI) = "libcupscgi.so.1"; then \
- $(RM) $(LIBDIR)/`basename $(LIBCUPSCGI) .1`; \
- $(LN) $(LIBCUPSCGI) $(LIBDIR)/`basename $(LIBCUPSCGI) .1`; \
- fi
- if test $(LIBCUPSCGI) = "libcupscgi.1.dylib"; then \
- $(RM) $(LIBDIR)/libcupscgi.dylib; \
- $(LN) $(LIBCUPSCGI) $(LIBDIR)/libcupscgi.dylib; \
- fi
- if test "x$(SYMROOT)" != "x"; then \
- $(INSTALL_DIR) $(SYMROOT); \
- cp $(LIBCUPSCGI) $(SYMROOT); \
- dsymutil $(SYMROOT)/$(LIBCUPSCGI); \
- fi
-
-installstatic:
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) -m 755 libcupscgi.a $(LIBDIR)
- $(RANLIB) $(LIBDIR)/libcupscgi.a
- $(CHMOD) 555 $(LIBDIR)/libcupscgi.a
+install-libs:
#
@@ -173,54 +141,6 @@ uninstall:
$(RM) $(SERVERBIN)/cgi-bin/$$file; \
done
-$(RMDIR) $(SERVERBIN)/cgi-bin
- $(RM) $(LIBDIR)/libcupscgi.1.dylib
- $(RM) $(LIBDIR)/libcupscgi.a
- $(RM) $(LIBDIR)/libcupscgi.dylib
- $(RM) $(LIBDIR)/libcupscgi.so
- $(RM) $(LIBDIR)/libcupscgi.so.1
- -$(RMDIR) $(LIBDIR)
- -if test "x$(privateinclude)" != x; then \
- $(RM) $(PRIVATEINCLUDE)/cgi.h; \
- $(RM) $(PRIVATEINCLUDE)/help-index.h; \
- $(RMDIR) $(PRIVATEINCLUDE); \
- fi
-
-
-#
-# libcupscgi.so.1
-#
-
-libcupscgi.so.1: $(LIBOBJS)
- echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBS)
- $(RM) `basename $@ .1`
- $(LN) $@ `basename $@ .1`
-
-
-#
-# libcupscgi.1.dylib
-#
-
-libcupscgi.1.dylib: $(LIBOBJS) libcupscgi.exp
- echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
- -install_name $(libdir)/$@ \
- -current_version 1.0.0 \
- -compatibility_version 1.0.0 \
- -exported_symbols_list libcupscgi.exp \
- $(LIBOBJS) $(LIBS)
- $(RM) libcupscgi.dylib
- $(LN) $@ libcupscgi.dylib
-
-
-#
-# libcupscgi.la
-#
-
-libcupscgi.la: $(LIBOBJS)
- echo Linking $@...
- $(LD_CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
- -version-info 1:0 $(LIBS)
#
@@ -238,56 +158,50 @@ libcupscgi.a: $(LIBOBJS)
# admin.cgi
#
-admin.cgi: admin.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
+admin.cgi: admin.o ../Makedefs ../cups/$(LIBCUPS) libcupscgi.a
echo Linking $@...
- $(LD_CC) $(LDFLAGS) -o $@ admin.o -lcupscgi $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ admin.o libcupscgi.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# classes.cgi
#
-classes.cgi: classes.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
+classes.cgi: classes.o ../Makedefs ../cups/$(LIBCUPS) libcupscgi.a
echo Linking $@...
- $(LD_CC) $(LDFLAGS) -o $@ classes.o -lcupscgi $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ classes.o libcupscgi.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# help.cgi
#
-help.cgi: help.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
+help.cgi: help.o ../Makedefs ../cups/$(LIBCUPS) libcupscgi.a
echo Linking $@...
- $(LD_CC) $(LDFLAGS) -o $@ help.o -lcupscgi $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ help.o libcupscgi.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# jobs.cgi
#
-jobs.cgi: jobs.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
+jobs.cgi: jobs.o ../Makedefs ../cups/$(LIBCUPS) libcupscgi.a
echo Linking $@...
- $(LD_CC) $(LDFLAGS) -o $@ jobs.o -lcupscgi $(LIBS)
-
-
-#
-# makedocset
-#
-
-makedocset: makedocset.o ../Makedefs libcupscgi.a ../cups/$(LIBCUPSSTATIC)
- echo Linking $@...
- $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ makedocset.o libcupscgi.a \
- ../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(SSLLIBS) $(DNSSDLIBS) \
- $(LIBZ) $(LIBGSSAPI)
+ $(LD_CC) $(LDFLAGS) -o $@ jobs.o libcupscgi.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# printers.cgi
#
-printers.cgi: printers.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
+printers.cgi: printers.o ../Makedefs ../cups/$(LIBCUPS) libcupscgi.a
echo Linking $@...
- $(LD_CC) $(LDFLAGS) -o $@ printers.o -L. -lcupscgi $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ printers.o -L. libcupscgi.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -299,6 +213,7 @@ testcgi: testcgi.o ../Makedefs libcupscgi.a ../cups/$(LIBCUPSSTATIC)
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testcgi.o libcupscgi.a \
../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(SSLLIBS) $(DNSSDLIBS) \
$(LIBZ) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Testing CGI API...
./testcgi
@@ -312,6 +227,7 @@ testhi: testhi.o ../Makedefs libcupscgi.a ../cups/$(LIBCUPSSTATIC)
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testhi.o libcupscgi.a \
../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(SSLLIBS) $(DNSSDLIBS) \
$(LIBZ) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Testing help index API...
./testhi
@@ -324,6 +240,7 @@ testtemplate: testtemplate.o ../Makedefs libcupscgi.a ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ testtemplate.o libcupscgi.a ../cups/$(LIBCUPSSTATIC) \
$(COMMONLIBS) $(SSLLIBS) $(DNSSDLIBS) $(LIBZ) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c
index 576fac0..ce92977 100644
--- a/cgi-bin/admin.c
+++ b/cgi-bin/admin.c
@@ -1,7 +1,7 @@
/*
* Administration CGI for CUPS.
*
- * Copyright 2007-2015 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -1137,6 +1137,8 @@ do_am_printer(http_t *http, /* I - HTTP connection */
else if (!file &&
(!cgiGetVariable("PPD_NAME") || cgiGetVariable("SELECT_MAKE")))
{
+ int ipp_everywhere = !strncmp(var, "ipp://", 6) || !strncmp(var, "ipps://", 7) || (!strncmp(var, "dnssd://", 8) && (strstr(var, "_ipp._tcp") || strstr(var, "_ipps._tcp")));
+
if (modify && !cgiGetVariable("SELECT_MAKE"))
{
/*
@@ -1282,9 +1284,8 @@ do_am_printer(http_t *http, /* I - HTTP connection */
cgiStartHTML(title);
if (!cgiGetVariable("PPD_MAKE"))
cgiSetVariable("PPD_MAKE", cgiGetVariable("CURRENT_MAKE"));
- if (!modify)
- cgiSetVariable("CURRENT_MAKE_AND_MODEL",
- cgiGetArray("PPD_MAKE_AND_MODEL", 0));
+ if (ipp_everywhere)
+ cgiSetVariable("SHOW_IPP_EVERYWHERE", "1");
cgiCopyTemplateLang("choose-model.tmpl");
cgiEndHTML();
}
diff --git a/cgi-bin/cgi.h b/cgi-bin/cgi.h
index 0c360cb..c2e5789 100644
--- a/cgi-bin/cgi.h
+++ b/cgi-bin/cgi.h
@@ -19,12 +19,12 @@
# include <time.h>
# include <sys/stat.h>
-# ifdef WIN32
+# ifdef _WIN32
# include <direct.h>
# include <io.h>
# else
# include <unistd.h>
-# endif /* WIN32 */
+# endif /* _WIN32 */
# include <cups/cups.h>
# include <cups/array.h>
diff --git a/cgi-bin/help-index.c b/cgi-bin/help-index.c
index cb27164..6a6fcf4 100644
--- a/cgi-bin/help-index.c
+++ b/cgi-bin/help-index.c
@@ -1,7 +1,7 @@
/*
* Online help index routines for CUPS.
*
- * Copyright 2007-2015 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -138,11 +138,7 @@ static int help_load_file(help_index_t *hi,
const char *filename,
const char *relative,
time_t mtime);
-static help_node_t *help_new_node(const char *filename, const char *anchor,
- const char *section, const char *text,
- time_t mtime, off_t offset,
- size_t length)
- __attribute__((nonnull(1,3,4)));
+static help_node_t *help_new_node(const char *filename, const char *anchor, const char *section, const char *text, time_t mtime, off_t offset, size_t length) _CUPS_NONNULL((1, 3, 4));
static int help_sort_by_name(help_node_t *p1, help_node_t *p2);
static int help_sort_by_score(help_node_t *p1, help_node_t *p2);
static int help_sort_words(help_word_t *w1, help_word_t *w2);
diff --git a/cgi-bin/makedocset.c b/cgi-bin/makedocset.c
deleted file mode 100644
index 5a72177..0000000
--- a/cgi-bin/makedocset.c
+++ /dev/null
@@ -1,469 +0,0 @@
-/*
- * Xcode documentation set generator.
- *
- * Copyright 2007-2012 by Apple Inc.
- * Copyright 1997-2007 by Easy Software Products.
- *
- * 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
- * missing or damaged, see the license at "http://www.cups.org/".
- *
- * Usage:
- *
- * makedocset directory *.tokens
- */
-
-/*
- * Include necessary headers...
- */
-
-#include "cgi-private.h"
-#include <errno.h>
-
-
-/*
- * Local structures...
- */
-
-typedef struct _cups_html_s /**** Help file ****/
-{
- char *path; /* Path to help file */
- char *title; /* Title of help file */
-} _cups_html_t;
-
-typedef struct _cups_section_s /**** Help section ****/
-{
- char *name; /* Section name */
- cups_array_t *files; /* Files in this section */
-} _cups_section_t;
-
-
-/*
- * Local functions...
- */
-
-static int compare_html(_cups_html_t *a, _cups_html_t *b);
-static int compare_sections(_cups_section_t *a, _cups_section_t *b);
-static int compare_sections_files(_cups_section_t *a, _cups_section_t *b);
-static void write_index(const char *path, help_index_t *hi);
-static void write_info(const char *path, const char *revision);
-static void write_nodes(const char *path, help_index_t *hi);
-
-
-/*
- * 'main()' - Test the help index code.
- */
-
-int /* O - Exit status */
-main(int argc, /* I - Number of command-line args */
- char *argv[]) /* I - Command-line arguments */
-{
- int i; /* Looping var */
- char path[1024], /* Path to documentation */
- line[1024]; /* Line from file */
- help_index_t *hi; /* Help index */
- cups_file_t *tokens, /* Tokens.xml file */
- *fp; /* Current file */
-
-
- if (argc < 4)
- {
- puts("Usage: makedocset directory revision *.tokens");
- return (1);
- }
-
- /*
- * Index the help documents...
- */
-
- snprintf(path, sizeof(path), "%s/Contents/Resources/Documentation", argv[1]);
- if ((hi = helpLoadIndex(NULL, path)) == NULL)
- {
- fputs("makedocset: Unable to index help files!\n", stderr);
- return (1);
- }
-
- snprintf(path, sizeof(path), "%s/Contents/Resources/Documentation/index.html",
- argv[1]);
- write_index(path, hi);
-
- snprintf(path, sizeof(path), "%s/Contents/Resources/Nodes.xml", argv[1]);
- write_nodes(path, hi);
-
- /*
- * Write the Info.plist file...
- */
-
- snprintf(path, sizeof(path), "%s/Contents/Info.plist", argv[1]);
- write_info(path, argv[2]);
-
- /*
- * Merge the Tokens.xml files...
- */
-
- snprintf(path, sizeof(path), "%s/Contents/Resources/Tokens.xml", argv[1]);
- if ((tokens = cupsFileOpen(path, "w")) == NULL)
- {
- fprintf(stderr, "makedocset: Unable to create \"%s\": %s\n", path,
- strerror(errno));
- return (1);
- }
-
- cupsFilePuts(tokens, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
- cupsFilePuts(tokens, "<Tokens version=\"1.0\">\n");
-
- for (i = 3; i < argc; i ++)
- {
- if ((fp = cupsFileOpen(argv[i], "r")) == NULL)
- {
- fprintf(stderr, "makedocset: Unable to open \"%s\": %s\n", argv[i],
- strerror(errno));
- return (1);
- }
-
- if (!cupsFileGets(fp, line, sizeof(line)) || strncmp(line, "<?xml ", 6) ||
- !cupsFileGets(fp, line, sizeof(line)) || strncmp(line, "<Tokens ", 8))
- {
- fprintf(stderr, "makedocset: Bad Tokens.xml file \"%s\"!\n", argv[i]);
- return (1);
- }
-
- while (cupsFileGets(fp, line, sizeof(line)))
- {
- if (strcmp(line, "</Tokens>"))
- cupsFilePrintf(tokens, "%s\n", line);
- }
-
- cupsFileClose(fp);
- }
-
- cupsFilePuts(tokens, "</Tokens>\n");
-
- cupsFileClose(tokens);
-
- /*
- * Return with no errors...
- */
-
- return (0);
-}
-
-
-/*
- * 'compare_html()' - Compare the titles of two HTML files.
- */
-
-static int /* O - Result of comparison */
-compare_html(_cups_html_t *a, /* I - First file */
- _cups_html_t *b) /* I - Second file */
-{
- return (_cups_strcasecmp(a->title, b->title));
-}
-
-
-/*
- * 'compare_sections()' - Compare the names of two help sections.
- */
-
-static int /* O - Result of comparison */
-compare_sections(_cups_section_t *a, /* I - First section */
- _cups_section_t *b) /* I - Second section */
-{
- return (_cups_strcasecmp(a->name, b->name));
-}
-
-
-/*
- * 'compare_sections_files()' - Compare the number of files and section names.
- */
-
-static int /* O - Result of comparison */
-compare_sections_files(
- _cups_section_t *a, /* I - First section */
- _cups_section_t *b) /* I - Second section */
-{
- int ret = cupsArrayCount(b->files) - cupsArrayCount(a->files);
-
- if (ret)
- return (ret);
- else
- return (_cups_strcasecmp(a->name, b->name));
-}
-
-
-/*
- * 'write_index()' - Write an index file for the CUPS help.
- */
-
-static void
-write_index(const char *path, /* I - File to write */
- help_index_t *hi) /* I - Index of files */
-{
- cups_file_t *fp; /* Output file */
- help_node_t *node; /* Current help node */
- _cups_section_t *section, /* Current section */
- key; /* Section search key */
- _cups_html_t *html; /* Current HTML file */
- cups_array_t *sections, /* Sections in index */
- *sections_files,/* Sections sorted by size */
- *columns[3]; /* Columns in final HTML file */
- int column, /* Current column */
- lines[3], /* Number of lines in each column */
- min_column, /* Smallest column */
- min_lines; /* Smallest number of lines */
-
-
- /*
- * Build an array of sections and their files.
- */
-
- sections = cupsArrayNew((cups_array_func_t)compare_sections, NULL);
-
- for (node = (help_node_t *)cupsArrayFirst(hi->nodes);
- node;
- node = (help_node_t *)cupsArrayNext(hi->nodes))
- {
- if (node->anchor)
- continue;
-
- key.name = node->section ? node->section : "Miscellaneous";
- if ((section = (_cups_section_t *)cupsArrayFind(sections, &key)) == NULL)
- {
- section = (_cups_section_t *)calloc(1, sizeof(_cups_section_t));
- section->name = key.name;
- section->files = cupsArrayNew((cups_array_func_t)compare_html, NULL);
-
- cupsArrayAdd(sections, section);
- }
-
- html = (_cups_html_t *)calloc(1, sizeof(_cups_html_t));
- html->path = node->filename;
- html->title = node->text;
-
- cupsArrayAdd(section->files, html);
- }
-
- /*
- * Build a sorted list of sections based on the number of files in each section
- * and the section name...
- */
-
- sections_files = cupsArrayNew((cups_array_func_t)compare_sections_files,
- NULL);
- for (section = (_cups_section_t *)cupsArrayFirst(sections);
- section;
- section = (_cups_section_t *)cupsArrayNext(sections))
- cupsArrayAdd(sections_files, section);
-
- /*
- * Then build three columns to hold everything, trying to balance the number of
- * lines in each column...
- */
-
- for (column = 0; column < 3; column ++)
- {
- columns[column] = cupsArrayNew((cups_array_func_t)compare_sections, NULL);
- lines[column] = 0;
- }
-
- for (section = (_cups_section_t *)cupsArrayFirst(sections_files);
- section;
- section = (_cups_section_t *)cupsArrayNext(sections_files))
- {
- for (min_column = 0, min_lines = lines[0], column = 1;
- column < 3;
- column ++)
- {
- if (lines[column] < min_lines)
- {
- min_column = column;
- min_lines = lines[column];
- }
- }
-
- cupsArrayAdd(columns[min_column], section);
- lines[min_column] += cupsArrayCount(section->files) + 2;
- }
-
- /*
- * Write the HTML file...
- */
-
- if ((fp = cupsFileOpen(path, "w")) == NULL)
- {
- fprintf(stderr, "makedocset: Unable to create %s: %s\n", path,
- strerror(errno));
- exit(1);
- }
-
- cupsFilePuts(fp, "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 "
- "Transitional//EN\" "
- "\"http://www.w3.org/TR/html4/loose.dtd\">\n"
- "<html>\n"
- "<head>\n"
- "<title>CUPS Documentation</title>\n"
- "<link rel='stylesheet' type='text/css' "
- "href='cups-printable.css'>\n"
- "</head>\n"
- "<body>\n"
- "<h1 class='title'>CUPS Documentation</h1>\n"
- "<table width='100%' summary=''>\n"
- "<tr>\n");
-
- for (column = 0; column < 3; column ++)
- {
- if (column)
- cupsFilePuts(fp, "<td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>\n");
-
- cupsFilePuts(fp, "<td valign='top' width='33%'>");
- for (section = (_cups_section_t *)cupsArrayFirst(columns[column]);
- section;
- section = (_cups_section_t *)cupsArrayNext(columns[column]))
- {
- cupsFilePrintf(fp, "<h2 class='title'>%s</h2>\n", section->name);
- for (html = (_cups_html_t *)cupsArrayFirst(section->files);
- html;
- html = (_cups_html_t *)cupsArrayNext(section->files))
- cupsFilePrintf(fp, "<p class='compact'><a href='%s'>%s</a></p>\n",
- html->path, html->title);
- }
- cupsFilePuts(fp, "</td>\n");
- }
- cupsFilePuts(fp, "</tr>\n"
- "</table>\n"
- "</body>\n"
- "</html>\n");
- cupsFileClose(fp);
-}
-
-
-/*
- * 'write_info()' - Write the Info.plist file.
- */
-
-static void
-write_info(const char *path, /* I - File to write */
- const char *revision) /* I - Subversion revision number */
-{
- cups_file_t *fp; /* File */
-
-
- if ((fp = cupsFileOpen(path, "w")) == NULL)
- {
- fprintf(stderr, "makedocset: Unable to create %s: %s\n", path,
- strerror(errno));
- exit(1);
- }
-
- cupsFilePrintf(fp, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
- "<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" "
- "\"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n"
- "<plist version=\"1.0\">\n"
- "<dict>\n"
- "\t<key>CFBundleIdentifier</key>\n"
- "\t<string>org.cups.docset</string>\n"
- "\t<key>CFBundleName</key>\n"
- "\t<string>CUPS Documentation</string>\n"
- "\t<key>CFBundleVersion</key>\n"
- "\t<string>%d.%d.%s</string>\n"
- "\t<key>CFBundleShortVersionString</key>\n"
- "\t<string>%d.%d.%d</string>\n"
- "\t<key>DocSetFeedName</key>\n"
- "\t<string>cups.org</string>\n"
- "\t<key>DocSetFeedURL</key>\n"
- "\t<string>http://www.cups.org/org.cups.docset.atom"
- "</string>\n"
- "\t<key>DocSetPublisherIdentifier</key>\n"
- "\t<string>org.cups</string>\n"
- "\t<key>DocSetPublisherName</key>\n"
- "\t<string>CUPS</string>\n"
- "</dict>\n"
- "</plist>\n",
- CUPS_VERSION_MAJOR, CUPS_VERSION_MINOR, revision,
- CUPS_VERSION_MAJOR, CUPS_VERSION_MINOR, CUPS_VERSION_PATCH);
-
- cupsFileClose(fp);
-}
-
-
-/*
- * 'write_nodes()' - Write the Nodes.xml file.
- */
-
-static void
-write_nodes(const char *path, /* I - File to write */
- help_index_t *hi) /* I - Index of files */
-{
- cups_file_t *fp; /* Output file */
- int id; /* Current node ID */
- help_node_t *node; /* Current help node */
- int subnodes; /* Currently in Subnodes for file? */
- int needclose; /* Need to close the current node? */
-
-
- if ((fp = cupsFileOpen(path, "w")) == NULL)
- {
- fprintf(stderr, "makedocset: Unable to create %s: %s\n", path,
- strerror(errno));
- exit(1);
- }
-
- cupsFilePuts(fp, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
- "<DocSetNodes version=\"1.0\">\n"
- "<TOC>\n"
- "<Node id=\"0\">\n"
- "<Name>CUPS Documentation</Name>\n"
- "<Path>Documentation/index.html</Path>\n"
- "</Node>\n");
-
- for (node = (help_node_t *)cupsArrayFirst(hi->nodes), id = 1, subnodes = 0,
- needclose = 0;
- node;
- node = (help_node_t *)cupsArrayNext(hi->nodes), id ++)
- {
- if (node->anchor)
- {
- if (!subnodes)
- {
- cupsFilePuts(fp, "<Subnodes>\n");
- subnodes = 1;
- }
-
- cupsFilePrintf(fp, "<Node id=\"%d\">\n"
- "<Path>Documentation/%s</Path>\n"
- "<Anchor>%s</Anchor>\n"
- "<Name>%s</Name>\n"
- "</Node>\n", id, node->filename, node->anchor,
- node->text);
- }
- else
- {
- if (subnodes)
- {
- cupsFilePuts(fp, "</Subnodes>\n");
- subnodes = 0;
- }
-
- if (needclose)
- cupsFilePuts(fp, "</Node>\n");
-
- cupsFilePrintf(fp, "<Node id=\"%d\">\n"
- "<Path>Documentation/%s</Path>\n"
- "<Name>%s</Name>\n", id, node->filename, node->text);
- needclose = 1;
- }
- }
-
- if (subnodes)
- cupsFilePuts(fp, "</Subnodes>\n");
-
- if (needclose)
- cupsFilePuts(fp, "</Node>\n");
-
- cupsFilePuts(fp, "</TOC>\n"
- "</DocSetNodes>\n");
-
- cupsFileClose(fp);
-}
diff --git a/cgi-bin/search.c b/cgi-bin/search.c
index 3d1a18d..399331d 100644
--- a/cgi-bin/search.c
+++ b/cgi-bin/search.c
@@ -1,7 +1,7 @@
/*
* Search routines for CUPS.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -365,4 +365,5 @@ void
cgiFreeSearch(void *search) /* I - Search context */
{
regfree((regex_t *)search);
+ free(search);
}
diff --git a/config-scripts/cups-compiler.m4 b/config-scripts/cups-compiler.m4
index 4996393..7bde566 100644
--- a/config-scripts/cups-compiler.m4
+++ b/config-scripts/cups-compiler.m4
@@ -1,7 +1,7 @@
dnl
dnl Compiler stuff for CUPS.
dnl
-dnl Copyright 2007-2017 by Apple Inc.
+dnl Copyright 2007-2018 by Apple Inc.
dnl Copyright 1997-2007 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -156,46 +156,19 @@ if test -n "$GCC"; then
if test "x$with_optim" = x; then
# Add useful warning options for tracking down problems...
- OPTIM="-Wall -Wno-format-y2k -Wunused $OPTIM"
-
- AC_MSG_CHECKING(whether compiler supports -Wno-unused-result)
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wno-unused-result"
- AC_TRY_COMPILE(,,
- [OPTIM="$OPTIM -Wno-unused-result"
- AC_MSG_RESULT(yes)],
- AC_MSG_RESULT(no))
- CFLAGS="$OLDCFLAGS"
-
- AC_MSG_CHECKING(whether compiler supports -Wsign-conversion)
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wsign-conversion"
- AC_TRY_COMPILE(,,
- [OPTIM="$OPTIM -Wsign-conversion"
- AC_MSG_RESULT(yes)],
- AC_MSG_RESULT(no))
- CFLAGS="$OLDCFLAGS"
-
- AC_MSG_CHECKING(whether compiler supports -Wno-tautological-compare)
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wno-tautological-compare"
- AC_TRY_COMPILE(,,
- [OPTIM="$OPTIM -Wno-tautological-compare"
- AC_MSG_RESULT(yes)],
- AC_MSG_RESULT(no))
- CFLAGS="$OLDCFLAGS"
-
- AC_MSG_CHECKING(whether compiler supports -Wno-format-truncation)
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wno-format-truncation"
- AC_TRY_COMPILE(,,
- [OPTIM="$OPTIM -Wno-format-truncation"
- AC_MSG_RESULT(yes)],
- AC_MSG_RESULT(no))
- CFLAGS="$OLDCFLAGS"
+ OPTIM="-Wall -Wno-format-y2k -Wunused -Wno-unused-result -Wsign-conversion $OPTIM"
+
+ # Test GCC version for certain warning flags since -Werror
+ # doesn't trigger...
+ gccversion=`$CC --version | head -1 | awk '{print $NF}'`
+ case "$gccversion" in
+ 7.*)
+ OPTIM="$OPTIM -Wno-format-truncation -Wno-tautological-compare"
+ ;;
+ esac
# Additional warning options for development testing...
- if test -d .svn; then
+ if test -d .git; then
OPTIM="-Werror $OPTIM"
fi
fi
diff --git a/config-scripts/cups-opsys.m4 b/config-scripts/cups-opsys.m4
index d854547..a478543 100644
--- a/config-scripts/cups-opsys.m4
+++ b/config-scripts/cups-opsys.m4
@@ -1,7 +1,7 @@
dnl
dnl Operating system stuff for CUPS.
dnl
-dnl Copyright 2007-2017 by Apple Inc.
+dnl Copyright 2007-2018 by Apple Inc.
dnl Copyright 1997-2006 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -35,3 +35,5 @@ else
LOCALTARGET=""
fi
AC_SUBST(LOCALTARGET)
+
+AC_PATH_PROGS(CODE_SIGN, codesign true)
diff --git a/config-scripts/cups-sharedlibs.m4 b/config-scripts/cups-sharedlibs.m4
index 6e6b582..bf68e4f 100644
--- a/config-scripts/cups-sharedlibs.m4
+++ b/config-scripts/cups-sharedlibs.m4
@@ -1,7 +1,7 @@
dnl
dnl Shared library support for CUPS.
dnl
-dnl Copyright 2007-2017 by Apple Inc.
+dnl Copyright 2007-2018 by Apple Inc.
dnl Copyright 1997-2005 by Easy Software Products, all rights reserved.
dnl
dnl These coded instructions, statements, and computer programs are the
@@ -24,30 +24,21 @@ if test x$enable_shared != xno; then
case "$host_os_name" in
sunos*)
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSCGI="libcupscgi.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
- LIBCUPSMIME="libcupsmime.so.1"
- LIBCUPSPPDC="libcupsppdc.so.1"
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-h\`basename \$@\` -G \$(OPTIM)"
;;
linux* | gnu* | *bsd*)
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSCGI="libcupscgi.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
- LIBCUPSMIME="libcupsmime.so.1"
- LIBCUPSPPDC="libcupsppdc.so.1"
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
;;
darwin*)
LIBCUPS="lib$cupsbase.2.dylib"
- LIBCUPSCGI="libcupscgi.1.dylib"
LIBCUPSIMAGE="libcupsimage.2.dylib"
- LIBCUPSMIME="libcupsmime.1.dylib"
- LIBCUPSPPDC="libcupsppdc.1.dylib"
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -dynamiclib -single_module -lc"
@@ -56,10 +47,7 @@ if test x$enable_shared != xno; then
echo "Warning: shared libraries may not be supported. Trying -shared"
echo " option with compiler."
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSCGI="libcupscgi.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
- LIBCUPSMIME="libcupsmime.so.1"
- LIBCUPSPPDC="libcupsppdc.so.1"
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
@@ -68,10 +56,7 @@ if test x$enable_shared != xno; then
else
PICFLAG=0
LIBCUPS="lib$cupsbase.a"
- LIBCUPSCGI="libcupscgi.a"
LIBCUPSIMAGE="libcupsimage.a"
- LIBCUPSMIME="libcupsmime.a"
- LIBCUPSPPDC="libcupsppdc.a"
DSO=":"
DSOXX=":"
fi
@@ -81,10 +66,7 @@ AC_SUBST(DSOXX)
AC_SUBST(DSOFLAGS)
AC_SUBST(LIBCUPS)
AC_SUBST(LIBCUPSBASE)
-AC_SUBST(LIBCUPSCGI)
AC_SUBST(LIBCUPSIMAGE)
-AC_SUBST(LIBCUPSMIME)
-AC_SUBST(LIBCUPSPPDC)
AC_SUBST(LIBCUPSSTATIC)
if test x$enable_shared = xno; then
diff --git a/configure b/configure
index 9134476..5c2ce69 100755
--- a/configure
+++ b/configure
@@ -1,11 +1,13 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for CUPS 2.2.8.
+# Generated by GNU Autoconf 2.68 for CUPS 2.2.9.
#
# Report bugs to <https://github.com/apple/cups/issues>.
#
#
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
+# Foundation, Inc.
#
#
# This configure script is free software; the Free Software Foundation
@@ -134,31 +136,6 @@ export LANGUAGE
# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-# Use a proper internal environment variable to ensure we don't fall
- # into an infinite loop, continuously re-executing ourselves.
- if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
- _as_can_reexec=no; export _as_can_reexec;
- # We cannot yet assume a decent shell, so we have to provide a
-# neutralization value for shells without unset; and this also
-# works around shells that cannot unset nonexistent variables.
-# Preserve -v and -x to the replacement shell.
-BASH_ENV=/dev/null
-ENV=/dev/null
-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
-esac
-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-# Admittedly, this is quite paranoid, since all the known shells bail
-# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
- fi
- # We don't want this to propagate to other subprocesses.
- { _as_can_reexec=; unset _as_can_reexec;}
if test "x$CONFIG_SHELL" = x; then
as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
@@ -192,8 +169,7 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
else
exitcode=1; echo positional parameters were not saved.
fi
-test x\$exitcode = x0 || exit 1
-test -x / || exit 1"
+test x\$exitcode = x0 || exit 1"
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
@@ -238,25 +214,21 @@ IFS=$as_save_IFS
if test "x$CONFIG_SHELL" != x; then :
- export CONFIG_SHELL
- # We cannot yet assume a decent shell, so we have to provide a
-# neutralization value for shells without unset; and this also
-# works around shells that cannot unset nonexistent variables.
-# Preserve -v and -x to the replacement shell.
-BASH_ENV=/dev/null
-ENV=/dev/null
-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
-esac
-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-# Admittedly, this is quite paranoid, since all the known shells bail
-# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-exit 255
+ # We cannot yet assume a decent shell, so we have to provide a
+ # neutralization value for shells without unset; and this also
+ # works around shells that cannot unset nonexistent variables.
+ # Preserve -v and -x to the replacement shell.
+ BASH_ENV=/dev/null
+ ENV=/dev/null
+ (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+ export CONFIG_SHELL
+ case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+ esac
+ exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
fi
if test x$as_have_required = xno; then :
@@ -359,14 +331,6 @@ $as_echo X"$as_dir" |
} # as_fn_mkdir_p
-
-# as_fn_executable_p FILE
-# -----------------------
-# Test if FILE is an executable regular file.
-as_fn_executable_p ()
-{
- test -f "$1" && test -x "$1"
-} # as_fn_executable_p
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -488,10 +452,6 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
chmod +x "$as_me.lineno" ||
{ $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
- # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
- # already done that, so ensure we don't try to do so again and fall
- # in an infinite loop. This has already happened in practice.
- _as_can_reexec=no; export _as_can_reexec
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
# original and so on. Autoconf is especially sensitive to this).
@@ -526,16 +486,16 @@ if (echo >conf$$.file) 2>/dev/null; then
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -pR'.
+ # In both cases, we have to default to `cp -p'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -pR'
+ as_ln_s='cp -p'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -pR'
+ as_ln_s='cp -p'
fi
else
- as_ln_s='cp -pR'
+ as_ln_s='cp -p'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
@@ -547,8 +507,28 @@ else
as_mkdir_p=false
fi
-as_test_x='test -x'
-as_executable_p=as_fn_executable_p
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in #(
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -580,8 +560,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='CUPS'
PACKAGE_TARNAME='cups'
-PACKAGE_VERSION='2.2.8'
-PACKAGE_STRING='CUPS 2.2.8'
+PACKAGE_VERSION='2.2.9'
+PACKAGE_STRING='CUPS 2.2.9'
PACKAGE_BUGREPORT='https://github.com/apple/cups/issues'
PACKAGE_URL='https://www.cups.org/'
@@ -712,10 +692,7 @@ LINKCUPS
EXTLINKCUPSIMAGE
EXTLINKCUPS
LIBCUPSSTATIC
-LIBCUPSPPDC
-LIBCUPSMIME
LIBCUPSIMAGE
-LIBCUPSCGI
LIBCUPSBASE
LIBCUPS
DSOFLAGS
@@ -794,6 +771,7 @@ AWK
CUPS_BUILD
CUPS_REVISION
CUPS_VERSION
+CODE_SIGN
LOCALTARGET
host_os
host_vendor
@@ -1397,6 +1375,8 @@ target=$target_alias
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
+ $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
+ If a cross compiler is detected then cross compile mode will be used" >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
fi
@@ -1482,7 +1462,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures CUPS 2.2.8 to adapt to many kinds of systems.
+\`configure' configures CUPS 2.2.9 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1547,7 +1527,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of CUPS 2.2.8:";;
+ short | recursive ) echo "Configuration of CUPS 2.2.9:";;
esac
cat <<\_ACEOF
@@ -1728,10 +1708,10 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-CUPS configure 2.2.8
-generated by GNU Autoconf 2.69
+CUPS configure 2.2.9
+generated by GNU Autoconf 2.68
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2010 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
@@ -1882,7 +1862,7 @@ $as_echo "$ac_try_echo"; } >&5
test ! -s conftest.err
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
- test -x conftest$ac_exeext
+ $as_test_x conftest$ac_exeext
}; then :
ac_retval=0
else
@@ -2192,8 +2172,8 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by CUPS $as_me 2.2.8, which was
-generated by GNU Autoconf 2.69. Invocation command line was
+It was created by CUPS $as_me 2.2.9, which was
+generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -2663,11 +2643,57 @@ else
fi
+for ac_prog in codesign true
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_CODE_SIGN+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $CODE_SIGN in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_CODE_SIGN="$CODE_SIGN" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_path_CODE_SIGN="$as_dir/$ac_word$ac_exec_ext"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+ ;;
+esac
+fi
+CODE_SIGN=$ac_cv_path_CODE_SIGN
+if test -n "$CODE_SIGN"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CODE_SIGN" >&5
+$as_echo "$CODE_SIGN" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$CODE_SIGN" && break
+done
+
+
ac_config_headers="$ac_config_headers config.h"
-CUPS_VERSION="2.2.8"
+CUPS_VERSION="2.2.9"
CUPS_REVISION=""
CUPS_BUILD="cups-$CUPS_VERSION"
@@ -2713,7 +2739,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_AWK="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2761,7 +2787,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2805,7 +2831,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3249,7 +3275,8 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
-struct stat;
+#include <sys/types.h>
+#include <sys/stat.h>
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
struct buf { int x; };
FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -3499,7 +3526,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3543,7 +3570,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CXX="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3745,7 +3772,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3785,7 +3812,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_RANLIB="ranlib"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3838,7 +3865,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3878,7 +3905,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_CHMOD="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3918,7 +3945,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_GZIP="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3958,7 +3985,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_LD="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3998,7 +4025,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_LN="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4038,7 +4065,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_MKDIR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4078,7 +4105,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_MV="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4118,7 +4145,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_RM="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4158,7 +4185,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_RMDIR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4198,7 +4225,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4238,7 +4265,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_XDGOPEN="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4314,7 +4341,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4357,7 +4384,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4767,7 +4794,7 @@ do
for ac_prog in grep ggrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- as_fn_executable_p "$ac_path_GREP" || continue
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
# Check for GNU ac_path_GREP and select it if it is found.
# Check for GNU $ac_path_GREP
case `"$ac_path_GREP" --version 2>&1` in
@@ -4833,7 +4860,7 @@ do
for ac_prog in egrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- as_fn_executable_p "$ac_path_EGREP" || continue
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
# Check for GNU ac_path_EGREP and select it if it is found.
# Check for GNU $ac_path_EGREP
case `"$ac_path_EGREP" --version 2>&1` in
@@ -6579,30 +6606,21 @@ if test x$enable_shared != xno; then
case "$host_os_name" in
sunos*)
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSCGI="libcupscgi.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
- LIBCUPSMIME="libcupsmime.so.1"
- LIBCUPSPPDC="libcupsppdc.so.1"
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-h\`basename \$@\` -G \$(OPTIM)"
;;
linux* | gnu* | *bsd*)
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSCGI="libcupscgi.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
- LIBCUPSMIME="libcupsmime.so.1"
- LIBCUPSPPDC="libcupsppdc.so.1"
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
;;
darwin*)
LIBCUPS="lib$cupsbase.2.dylib"
- LIBCUPSCGI="libcupscgi.1.dylib"
LIBCUPSIMAGE="libcupsimage.2.dylib"
- LIBCUPSMIME="libcupsmime.1.dylib"
- LIBCUPSPPDC="libcupsppdc.1.dylib"
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -dynamiclib -single_module -lc"
@@ -6611,10 +6629,7 @@ if test x$enable_shared != xno; then
echo "Warning: shared libraries may not be supported. Trying -shared"
echo " option with compiler."
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSCGI="libcupscgi.so.1"
LIBCUPSIMAGE="libcupsimage.so.2"
- LIBCUPSMIME="libcupsmime.so.1"
- LIBCUPSPPDC="libcupsppdc.so.1"
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
@@ -6623,10 +6638,7 @@ if test x$enable_shared != xno; then
else
PICFLAG=0
LIBCUPS="lib$cupsbase.a"
- LIBCUPSCGI="libcupscgi.a"
LIBCUPSIMAGE="libcupsimage.a"
- LIBCUPSMIME="libcupsmime.a"
- LIBCUPSPPDC="libcupsppdc.a"
DSO=":"
DSOXX=":"
fi
@@ -6639,9 +6651,6 @@ fi
-
-
-
if test x$enable_shared = xno; then
LINKCUPS="../cups/lib$cupsbase.a"
LINKCUPSIMAGE="../filter/libcupsimage.a"
@@ -6988,114 +6997,19 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test "x$with_optim" = x; then
# Add useful warning options for tracking down problems...
- OPTIM="-Wall -Wno-format-y2k -Wunused $OPTIM"
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports -Wno-unused-result" >&5
-$as_echo_n "checking whether compiler supports -Wno-unused-result... " >&6; }
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wno-unused-result"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- OPTIM="$OPTIM -Wno-unused-result"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CFLAGS="$OLDCFLAGS"
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports -Wsign-conversion" >&5
-$as_echo_n "checking whether compiler supports -Wsign-conversion... " >&6; }
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wsign-conversion"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- OPTIM="$OPTIM -Wsign-conversion"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CFLAGS="$OLDCFLAGS"
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports -Wno-tautological-compare" >&5
-$as_echo_n "checking whether compiler supports -Wno-tautological-compare... " >&6; }
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wno-tautological-compare"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- OPTIM="$OPTIM -Wno-tautological-compare"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CFLAGS="$OLDCFLAGS"
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports -Wno-format-truncation" >&5
-$as_echo_n "checking whether compiler supports -Wno-format-truncation... " >&6; }
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Werror -Wno-format-truncation"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- OPTIM="$OPTIM -Wno-format-truncation"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CFLAGS="$OLDCFLAGS"
+ OPTIM="-Wall -Wno-format-y2k -Wunused -Wno-unused-result -Wsign-conversion $OPTIM"
+
+ # Test GCC version for certain warning flags since -Werror
+ # doesn't trigger...
+ gccversion=`$CC --version | head -1 | awk '{print $NF}'`
+ case "$gccversion" in
+ 7.*)
+ OPTIM="$OPTIM -Wno-format-truncation -Wno-tautological-compare"
+ ;;
+ esac
# Additional warning options for development testing...
- if test -d .svn; then
+ if test -d .git; then
OPTIM="-Werror $OPTIM"
fi
fi
@@ -7851,7 +7765,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_KRB5CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7894,7 +7808,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_ac_pt_KRB5CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -8446,7 +8360,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_LIBGNUTLSCONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -8489,7 +8403,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_ac_pt_LIBGNUTLSCONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -9048,8 +8962,6 @@ _ACEOF
esac
rm -rf conftest*
fi
-
-
fi
@@ -10091,7 +10003,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_JAVA="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -10156,7 +10068,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -10221,7 +10133,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_PHPCGI="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -10262,7 +10174,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_PHP="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -10332,7 +10244,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -10802,16 +10714,16 @@ if (echo >conf$$.file) 2>/dev/null; then
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -pR'.
+ # In both cases, we have to default to `cp -p'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -pR'
+ as_ln_s='cp -p'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -pR'
+ as_ln_s='cp -p'
fi
else
- as_ln_s='cp -pR'
+ as_ln_s='cp -p'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
@@ -10871,16 +10783,28 @@ else
as_mkdir_p=false
fi
-
-# as_fn_executable_p FILE
-# -----------------------
-# Test if FILE is an executable regular file.
-as_fn_executable_p ()
-{
- test -f "$1" && test -x "$1"
-} # as_fn_executable_p
-as_test_x='test -x'
-as_executable_p=as_fn_executable_p
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in #(
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -10901,8 +10825,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by CUPS $as_me 2.2.8, which was
-generated by GNU Autoconf 2.69. Invocation command line was
+This file was extended by CUPS $as_me 2.2.9, which was
+generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -10964,11 +10888,11 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-CUPS config.status 2.2.8
-configured by $0, generated by GNU Autoconf 2.69,
+CUPS config.status 2.2.9
+configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2010 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
@@ -11057,7 +10981,7 @@ fi
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
- set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
shift
\$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
CONFIG_SHELL='$SHELL'
diff --git a/configure.ac b/configure.ac
index 438e56c..046356c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -15,7 +15,7 @@ dnl We need at least autoconf 2.60...
AC_PREREQ(2.60)
dnl Package name and version...
-AC_INIT([CUPS], [2.2.8], [https://github.com/apple/cups/issues], [cups], [https://www.cups.org/])
+AC_INIT([CUPS], [2.2.9], [https://github.com/apple/cups/issues], [cups], [https://www.cups.org/])
sinclude(config-scripts/cups-opsys.m4)
sinclude(config-scripts/cups-common.m4)
diff --git a/cups/Makefile b/cups/Makefile
index f292ff0..f83c937 100644
--- a/cups/Makefile
+++ b/cups/Makefile
@@ -312,8 +312,9 @@ uninstall:
libcups.so.2: $(LIBOBJS)
echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBGSSAPI) \
+ $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBGSSAPI) \
$(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
$(RM) `basename $@ .2`
$(LN) $@ `basename $@ .2`
@@ -329,13 +330,14 @@ libcups.2.dylib: $(LIBOBJS) $(LIBCUPSORDER)
grep -v -E -e '^(_cupsConnect|_cupsCharset|_cupsEncodingName|_cupsSetDefaults|_cupsSetHTTPError|_cupsUserDefault)$$' | \
sort >t.exp
echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
+ $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \
-install_name $(libdir)/$@ \
-current_version 2.13.0 \
-compatibility_version 2.0.0 \
-exported_symbols_list t.exp \
$(LIBOBJS) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
$(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
$(RM) libcups.dylib t.exp
$(LN) $@ libcups.dylib
@@ -346,7 +348,7 @@ libcups.2.dylib: $(LIBOBJS) $(LIBCUPSORDER)
libcups.la: $(LIBOBJS)
echo Linking $@...
- $(LD_CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) \
+ $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) \
-rpath $(LIBDIR) -version-info 2:13 $(LIBGSSAPI) $(SSLLIBS) \
$(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
@@ -374,7 +376,7 @@ libcups2.def: $(LIBOBJS) Makefile
(nm $(LIBOBJS) 2>/dev/null | grep "T _" | awk '{print $$3}'; \
echo __cups_strcpy; echo __cups_strlcat; echo __cups_strlcpy) | \
grep -v -E \
- -e 'cups_debug|Apple|BackChannel|Backend|FileCheck|Filter|GSSService|SetNegotiate|SideChannel' \
+ -e 'cups_debug|Apple|BackChannel|Backend|FileCheck|Filter|GSSService|SetNegotiate|SideChannel|SNMP' \
-e 'Block$$' | \
sed -e '1,$$s/^_//' | sort >>libcups2.def
@@ -387,6 +389,7 @@ testadmin: testadmin.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ testadmin.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -397,6 +400,7 @@ testarray: testarray.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testarray.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running array API tests...
./testarray
@@ -409,6 +413,7 @@ testcache: testcache.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ testcache.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -419,6 +424,7 @@ testconflicts: testconflicts.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ testconflicts.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -429,6 +435,7 @@ testcreds: testcreds.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testcreds.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -439,6 +446,7 @@ testcups: testcups.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ testcups.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -449,6 +457,7 @@ testdest: testdest.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ testdest.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -459,6 +468,7 @@ testfile: testfile.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testfile.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running file API tests...
./testfile
@@ -471,6 +481,7 @@ testgetdests: testgetdests.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ testgetdests.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -481,6 +492,7 @@ testhttp: testhttp.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testhttp.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running HTTP API tests...
./testhttp
@@ -493,6 +505,7 @@ testipp: testipp.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testipp.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running IPP API tests...
./testipp
@@ -505,6 +518,7 @@ testi18n: testi18n.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testi18n.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running internationalization API tests...
./testi18n
@@ -517,6 +531,7 @@ testlang: testlang.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testlang.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Creating locale directory structure...
$(RM) -r locale
$(MKDIR) locale/en
@@ -541,6 +556,7 @@ testoptions: testoptions.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testoptions.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running option API tests...
./testoptions
@@ -553,6 +569,7 @@ testppd: testppd.o $(LIBCUPSSTATIC) test.ppd test2.ppd
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testppd.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running PPD API tests...
./testppd
@@ -565,6 +582,7 @@ testpwg: testpwg.o $(LIBCUPSSTATIC) test.ppd
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testpwg.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running PWG API tests...
./testpwg test.ppd
@@ -577,6 +595,7 @@ testsnmp: testsnmp.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ testsnmp.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -587,6 +606,7 @@ tlscheck: tlscheck.o $(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ tlscheck.o $(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/cups/adminutil.c b/cups/adminutil.c
index adb1f7a..375b905 100644
--- a/cups/adminutil.c
+++ b/cups/adminutil.c
@@ -22,11 +22,11 @@
#include "adminutil.h"
#include <fcntl.h>
#include <sys/stat.h>
-#ifdef WIN32
+#ifdef _WIN32
#else
# include <unistd.h>
# include <sys/wait.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -2087,7 +2087,7 @@ do_samba_command(const char *command, /* I - Command to run */
const char *authfile, /* I - Samba authentication file */
FILE *logfile) /* I - Optional log file */
{
-#ifdef WIN32
+#ifdef _WIN32
return (1); /* Always fail on Windows... */
#else
@@ -2154,7 +2154,7 @@ do_samba_command(const char *command, /* I - Command to run */
return (WEXITSTATUS(status));
else
return (-WTERMSIG(status));
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -2172,9 +2172,9 @@ get_cupsd_conf(
int *remote) /* O - Remote file? */
{
int fd; /* Temporary file descriptor */
-#ifndef WIN32
+#ifndef _WIN32
struct stat info; /* cupsd.conf file information */
-#endif /* WIN32 */
+#endif /* _WIN32 */
http_status_t status; /* Status of getting cupsd.conf */
char host[HTTP_MAX_HOST]; /* Hostname for connection */
@@ -2191,7 +2191,7 @@ get_cupsd_conf(
snprintf(name, namesize, "%s/cupsd.conf", cg->cups_serverroot);
*remote = 0;
-#ifndef WIN32
+#ifndef _WIN32
if (!_cups_strcasecmp(host, "localhost") && !access(name, R_OK))
{
/*
@@ -2218,7 +2218,7 @@ get_cupsd_conf(
status = HTTP_STATUS_OK;
}
else
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
{
/*
* Read cupsd.conf via a HTTP GET request...
diff --git a/cups/api-ppd.shtml b/cups/api-ppd.shtml
index 50c4850..4940946 100644
--- a/cups/api-ppd.shtml
+++ b/cups/api-ppd.shtml
@@ -1,7 +1,7 @@
<!--
PPD API introduction for CUPS.
- Copyright 2007-2012 by Apple Inc.
+ Copyright 2007-2018 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -13,7 +13,7 @@
<h2 class='title'><a name='OVERVIEW'>Overview</a></h2>
-<blockquote>The PPD API is deprecated starting in CUPS 1.6/macOS 10.8. Please use the new Job Ticket APIs in the <a href="api-cups.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
+<blockquote>The PPD API is deprecated starting in CUPS 1.6/macOS 10.8. Please use the new Job Ticket APIs in the <a href="cupspm.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
<p>The CUPS PPD API provides read-only access the data in PostScript Printer
Description ("PPD") files which are used for all printers with a driver. With
diff --git a/cups/auth.c b/cups/auth.c
index 740b079..a1f5042 100644
--- a/cups/auth.c
+++ b/cups/auth.c
@@ -23,11 +23,11 @@
#include "cups-private.h"
#include <fcntl.h>
#include <sys/stat.h>
-#if defined(WIN32) || defined(__EMX__)
+#if defined(_WIN32) || defined(__EMX__)
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 || __EMX__ */
+#endif /* _WIN32 || __EMX__ */
#if HAVE_AUTHORIZATION_H
# include <Security/Authorization.h>
@@ -119,9 +119,7 @@ cupsDoAuthentication(
*www_auth, /* WWW-Authenticate header */
*schemedata; /* Scheme-specific data */
char scheme[256], /* Scheme name */
- prompt[1024], /* Prompt for user */
- realm[HTTP_MAX_VALUE], /* realm="xyz" string */
- nonce[HTTP_MAX_VALUE]; /* nonce="xyz" string */
+ prompt[1024]; /* Prompt for user */
int localauth; /* Local authentication result */
_cups_globals_t *cg; /* Global data */
@@ -259,6 +257,7 @@ cupsDoAuthentication(
httpEncode64_2(encode, sizeof(encode), http->userpass, (int)strlen(http->userpass));
httpSetAuthString(http, "Basic", encode);
+ break;
}
else if (!_cups_strcasecmp(scheme, "Digest"))
{
@@ -266,124 +265,15 @@ cupsDoAuthentication(
* Digest authentication...
*/
- int i; /* Looping var */
- char algorithm[65], /* Hashing algorithm */
- opaque[HTTP_MAX_VALUE],
- /* Opaque data from server */
- cnonce[65], /* cnonce value */
- kd[65], /* Final MD5/SHA-256 digest */
- ha1[65], /* Hash of username:realm:password */
- ha2[65], /* Hash of method:request-uri */
- hdata[65], /* Hash of auth data */
- temp[1024], /* Temporary string */
- digest[1024]; /* Digest auth data */
- unsigned char hash[32]; /* Hash buffer */
- const char *hashalg; /* Hashing algorithm */
- size_t hashsize; /* Size of hash */
-
- if (strcmp(nonce, http->nonce))
- {
- strlcpy(http->nonce, nonce, sizeof(http->nonce));
- http->nonce_count = 1;
- }
- else
- http->nonce_count ++;
+ char nonce[HTTP_MAX_VALUE]; /* nonce="xyz" string */
- cups_auth_param(schemedata, "opaque", opaque, sizeof(opaque));
+ cups_auth_param(schemedata, "algorithm", http->algorithm, sizeof(http->algorithm));
+ cups_auth_param(schemedata, "opaque", http->opaque, sizeof(http->opaque));
cups_auth_param(schemedata, "nonce", nonce, sizeof(nonce));
- cups_auth_param(schemedata, "realm", realm, sizeof(realm));
-
- for (i = 0; i < 64; i ++)
- cnonce[i] = "0123456789ABCDEF"[CUPS_RAND() & 15];
- cnonce[64] = '\0';
-
- if (cups_auth_param(schemedata, "algorithm", algorithm, sizeof(algorithm)))
- {
- /*
- * Follow RFC 2617/7616...
- */
-
- if (!_cups_strcasecmp(algorithm, "MD5"))
- {
- /*
- * RFC 2617 Digest with MD5
- */
-
- hashalg = "md5";
- }
- else if (!_cups_strcasecmp(algorithm, "SHA-256"))
- {
- /*
- * RFC 7616 Digest with SHA-256
- */
-
- hashalg = "sha2-256";
- }
- else
- {
- /*
- * Some other algorithm we don't support, skip this one...
- */
-
- continue;
- }
-
- /*
- * Calculate digest value...
- */
-
- /* H(A1) = H(username:realm:password) */
- snprintf(temp, sizeof(temp), "%s:%s:%s", cupsUser(), realm, strchr(http->userpass, ':') + 1);
- hashsize = (size_t)cupsHashData(hashalg, (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
- cupsHashString(hash, hashsize, ha1, sizeof(ha1));
-
- /* H(A2) = H(method:uri) */
- snprintf(temp, sizeof(temp), "%s:%s", method, resource);
- hashsize = (size_t)cupsHashData(hashalg, (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
- cupsHashString(hash, hashsize, ha2, sizeof(ha2));
-
- /* H(data) = H(nonce:nc:cnonce:qop:H(A2)) */
- snprintf(temp, sizeof(temp), "%s:%08x:%s:auth:%s", nonce, http->nonce_count, cnonce, ha2);
- hashsize = (size_t)cupsHashData(hashalg, (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
- cupsHashString(hash, hashsize, hdata, sizeof(hdata));
-
- /* KD = H(H(A1):H(data)) */
- snprintf(temp, sizeof(temp), "%s:%s", ha1, hdata);
- hashsize = (size_t)cupsHashData(hashalg, (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
- cupsHashString(hash, hashsize, kd, sizeof(kd));
-
- /* Pass the RFC 2617/7616 WWW-Authenticate header */
- if (opaque[0])
- snprintf(digest, sizeof(digest), "username=\"%s\", realm=\"%s\", nonce=\"%s\", algorithm=%s, qop=auth, opaque=\"%s\", cnonce=\"%s\", nc=%08x, uri=\"%s\", response=\"%s\"", cupsUser(), realm, nonce, algorithm, opaque, cnonce, http->nonce_count, resource, kd);
- else
- snprintf(digest, sizeof(digest), "username=\"%s\", realm=\"%s\", nonce=\"%s\", algorithm=%s, qop=auth, cnonce=\"%s\", nc=%08x, uri=\"%s\", response=\"%s\"", cupsUser(), realm, nonce, algorithm, cnonce, http->nonce_count, resource, kd);
- }
- else
- {
- /*
- * Use old RFC 2069 Digest method...
- */
-
- /* H(A1) = H(username:realm:password) */
- snprintf(temp, sizeof(temp), "%s:%s:%s", cupsUser(), realm, strchr(http->userpass, ':') + 1);
- hashsize = (size_t)cupsHashData("md5", (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
- cupsHashString(hash, hashsize, ha1, sizeof(ha1));
-
- /* H(A2) = H(method:uri) */
- snprintf(temp, sizeof(temp), "%s:%s", method, resource);
- hashsize = (size_t)cupsHashData("md5", (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
- cupsHashString(hash, hashsize, ha2, sizeof(ha2));
+ cups_auth_param(schemedata, "realm", http->realm, sizeof(http->realm));
- /* KD = H(H(A1):nonce:H(A2)) */
- snprintf(temp, sizeof(temp), "%s:%s:%s", ha1, nonce, ha2);
- hashsize = (size_t)cupsHashData("md5", (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
- cupsHashString(hash, hashsize, kd, sizeof(kd));
-
- /* Pass the RFC 2069 WWW-Authenticate header */
- snprintf(digest, sizeof(digest), "username=\"%s\", realm=\"%s\", nonce=\"%s\", uri=\"%s\", response=\"%s\"", cupsUser(), realm, nonce, resource, kd);
- }
-
- httpSetAuthString(http, "Digest", digest);
+ if (_httpSetDigestAuthString(http, nonce, method, resource))
+ break;
}
}
@@ -1011,9 +901,9 @@ static int /* O - 0 if available */
/* -1 error */
cups_local_auth(http_t *http) /* I - HTTP connection to server */
{
-#if defined(WIN32) || defined(__EMX__)
+#if defined(_WIN32) || defined(__EMX__)
/*
- * Currently WIN32 and OS-2 do not support the CUPS server...
+ * Currently _WIN32 and OS-2 do not support the CUPS server...
*/
return (1);
@@ -1121,10 +1011,6 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
if (cups_auth_find(www_auth, "Negotiate"))
return (1);
# endif /* HAVE_GSSAPI */
-# ifdef HAVE_AUTHORIZATION_H
- if (cups_auth_find(www_auth, "AuthRef"))
- return (1);
-# endif /* HAVE_AUTHORIZATION_H */
# if defined(SO_PEERCRED) && defined(AF_LOCAL)
/*
@@ -1174,7 +1060,7 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
* No certificate for this PID; see if we can get the root certificate...
*/
- DEBUG_printf(("9cups_local_auth: Unable to open file %s: %s", filename, strerror(errno)));
+ DEBUG_printf(("9cups_local_auth: Unable to open file \"%s\": %s", filename, strerror(errno)));
if (!cups_auth_param(schemedata, "trc", trc, sizeof(trc)))
{
@@ -1186,7 +1072,8 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
}
snprintf(filename, sizeof(filename), "%s/certs/0", cg->cups_statedir);
- fp = fopen(filename, "r");
+ if ((fp = fopen(filename, "r")) == NULL)
+ DEBUG_printf(("9cups_local_auth: Unable to open file \"%s\": %s", filename, strerror(errno)));
}
if (fp)
@@ -1217,5 +1104,5 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
}
return (1);
-#endif /* WIN32 || __EMX__ */
+#endif /* _WIN32 || __EMX__ */
}
diff --git a/cups/backchannel.c b/cups/backchannel.c
index e804d45..bca04dc 100644
--- a/cups/backchannel.c
+++ b/cups/backchannel.c
@@ -19,12 +19,12 @@
#include "cups.h"
#include <errno.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
# include <fcntl.h>
#else
# include <sys/time.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -77,11 +77,11 @@ cupsBackChannelRead(char *buffer, /* I - Buffer to read into */
* Read bytes from the pipe...
*/
-#ifdef WIN32
+#ifdef _WIN32
return ((ssize_t)_read(3, buffer, (unsigned)bytes));
#else
return (read(3, buffer, bytes));
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -139,11 +139,11 @@ cupsBackChannelWrite(
* Write bytes to the pipe...
*/
-#ifdef WIN32
+#ifdef _WIN32
count = (ssize_t)_write(3, buffer, (unsigned)(bytes - total));
#else
count = write(3, buffer, bytes - total);
-#endif /* WIN32 */
+#endif /* _WIN32 */
if (count < 0)
{
diff --git a/cups/cups.h b/cups/cups.h
index 92826d7..cf3be12 100644
--- a/cups/cups.h
+++ b/cups/cups.h
@@ -21,12 +21,12 @@
*/
# include <sys/types.h>
-# if defined(WIN32) && !defined(__CUPS_SSIZE_T_DEFINED)
+# if defined(_WIN32) && !defined(__CUPS_SSIZE_T_DEFINED)
# define __CUPS_SSIZE_T_DEFINED
# include <stddef.h>
/* Windows does not support the ssize_t type, so map it to long... */
typedef long ssize_t; /* @private@ */
-# endif /* WIN32 && !__CUPS_SSIZE_T_DEFINED */
+# endif /* _WIN32 && !__CUPS_SSIZE_T_DEFINED */
# include "file.h"
# include "ipp.h"
@@ -47,10 +47,10 @@ extern "C" {
* Constants...
*/
-# define CUPS_VERSION 2.0208
+# define CUPS_VERSION 2.0209
# define CUPS_VERSION_MAJOR 2
# define CUPS_VERSION_MINOR 2
-# define CUPS_VERSION_PATCH 8
+# define CUPS_VERSION_PATCH 9
# define CUPS_BC_FD 3
/* Back-channel file descriptor for
diff --git a/cups/debug-private.h b/cups/debug-private.h
index 23a0ae1..dc9fe4e 100644
--- a/cups/debug-private.h
+++ b/cups/debug-private.h
@@ -1,7 +1,7 @@
/*
* Private debugging macros for CUPS.
*
- * Copyright 2007-2012 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2005 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -67,20 +67,10 @@ extern "C" {
*/
# ifdef DEBUG
-# ifdef WIN32
-# ifdef LIBCUPS2_EXPORTS
-# define DLLExport __declspec(dllexport)
-# else
-# define DLLExport
-# endif /* LIBCUPS2_EXPORTS */
-# else
-# define DLLExport
-# endif /* WIN32 */
# define DEBUG_puts(x) _cups_debug_puts(x)
# define DEBUG_printf(x) _cups_debug_printf x
# define DEBUG_set(logfile,level,filter) _cups_debug_set(logfile,level,filter,1)
# else
-# define DLLExport
# define DEBUG_puts(x)
# define DEBUG_printf(x)
# define DEBUG_set(logfile,level,filter)
@@ -93,16 +83,13 @@ extern "C" {
extern int _cups_debug_fd;
extern int _cups_debug_level;
-extern void DLLExport _cups_debug_printf(const char *format, ...)
- __attribute__ ((__format__ (__printf__, 1, 2)));
-extern void DLLExport _cups_debug_puts(const char *s);
-extern void DLLExport _cups_debug_set(const char *logfile,
- const char *level, const char *filter,
- int force);
-# ifdef WIN32
-extern int _cups_gettimeofday(struct timeval *tv, void *tz);
+extern void _cups_debug_printf(const char *format, ...) _CUPS_FORMAT(1, 2);
+extern void _cups_debug_puts(const char *s);
+extern void _cups_debug_set(const char *logfile, const char *level, const char *filter, int force) _CUPS_PRIVATE;
+# ifdef _WIN32
+extern int _cups_gettimeofday(struct timeval *tv, void *tz) _CUPS_PRIVATE;
# define gettimeofday(a,b) _cups_gettimeofday(a, b)
-# endif /* WIN32 */
+# endif /* _WIN32 */
# ifdef __cplusplus
}
diff --git a/cups/debug.c b/cups/debug.c
index bd244fe..b68f5ed 100644
--- a/cups/debug.c
+++ b/cups/debug.c
@@ -18,7 +18,7 @@
#include "cups-private.h"
#include "thread-private.h"
-#ifdef WIN32
+#ifdef _WIN32
# include <sys/timeb.h>
# include <time.h>
# include <io.h>
@@ -36,7 +36,7 @@ _cups_gettimeofday(struct timeval *tv, /* I - Timeval struct */
#else
# include <sys/time.h>
# include <unistd.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#include <regex.h>
#include <fcntl.h>
@@ -83,7 +83,7 @@ debug_thread_id(void)
* '_cups_debug_printf()' - Write a formatted line to the log.
*/
-void DLLExport
+void
_cups_debug_printf(const char *format, /* I - Printf-style format string */
...) /* I - Additional arguments as needed */
{
@@ -168,7 +168,7 @@ _cups_debug_printf(const char *format, /* I - Printf-style format string */
* '_cups_debug_puts()' - Write a single line to the log.
*/
-void DLLExport
+void
_cups_debug_puts(const char *s) /* I - String to output */
{
struct timeval curtime; /* Current time */
@@ -248,7 +248,7 @@ _cups_debug_puts(const char *s) /* I - String to output */
* '_cups_debug_set()' - Enable or disable debug logging.
*/
-void DLLExport
+void
_cups_debug_set(const char *logfile, /* I - Log file or NULL */
const char *level, /* I - Log level or NULL */
const char *filter, /* I - Filter string or NULL */
diff --git a/cups/dest.c b/cups/dest.c
index 57a8dc9..7ef85a1 100644
--- a/cups/dest.c
+++ b/cups/dest.c
@@ -2090,9 +2090,9 @@ cupsSetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
cups_option_t *option; /* Current option */
_ipp_option_t *match; /* Matching attribute for option */
FILE *fp; /* File pointer */
-#ifndef WIN32
+#ifndef _WIN32
const char *home; /* HOME environment variable */
-#endif /* WIN32 */
+#endif /* _WIN32 */
char filename[1024]; /* lpoptions file */
int num_temps; /* Number of temporary destinations */
cups_dest_t *temps = NULL, /* Temporary destinations */
@@ -2126,7 +2126,7 @@ cupsSetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
snprintf(filename, sizeof(filename), "%s/lpoptions", cg->cups_serverroot);
-#ifndef WIN32
+#ifndef _WIN32
if (getuid())
{
/*
@@ -2152,7 +2152,7 @@ cupsSetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
snprintf(filename, sizeof(filename), "%s/.cups/lpoptions", home);
}
}
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
* Try to open the file...
@@ -2164,7 +2164,7 @@ cupsSetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
return (-1);
}
-#ifndef WIN32
+#ifndef _WIN32
/*
* Set the permissions to 0644 when saving to the /etc/cups/lpoptions
* file...
@@ -2172,7 +2172,7 @@ cupsSetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_
if (!getuid())
fchmod(fileno(fp), 0644);
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
* Write each printer; each line looks like:
diff --git a/cups/dir.c b/cups/dir.c
index b7cd400..6b37778 100644
--- a/cups/dir.c
+++ b/cups/dir.c
@@ -26,7 +26,7 @@
* Windows implementation...
*/
-#ifdef WIN32
+#ifdef _WIN32
# include <windows.h>
/*
@@ -145,7 +145,7 @@ cupsDirOpen(const char *directory) /* I - Directory name */
cups_dentry_t * /* O - Directory entry or @code NULL@ if there are no more */
cupsDirRead(cups_dir_t *dp) /* I - Directory pointer */
{
- WIN32_FIND_DATA entry; /* Directory entry data */
+ WIN32_FIND_DATAA entry; /* Directory entry data */
/*
@@ -165,11 +165,11 @@ cupsDirRead(cups_dir_t *dp) /* I - Directory pointer */
* No, find the first file...
*/
- dp->dir = FindFirstFile(dp->directory, &entry);
+ dp->dir = FindFirstFileA(dp->directory, &entry);
if (dp->dir == INVALID_HANDLE_VALUE)
return (NULL);
}
- else if (!FindNextFile(dp->dir, &entry))
+ else if (!FindNextFileA(dp->dir, &entry))
return (NULL);
/*
@@ -422,4 +422,4 @@ cupsDirRewind(cups_dir_t *dp) /* I - Directory pointer */
rewinddir(dp->dir);
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
diff --git a/cups/file-private.h b/cups/file-private.h
index 1f4db79..6789283 100644
--- a/cups/file-private.h
+++ b/cups/file-private.h
@@ -6,7 +6,7 @@
* our own file functions allows us to provide transparent support of
* different line endings, gzip'd print files, PPD files, etc.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -31,13 +31,10 @@
# include <stdarg.h>
# include <fcntl.h>
-# ifdef HAVE_LIBZ
-# include <zlib.h>
-# endif /* HAVE_LIBZ */
-# ifdef WIN32
+# ifdef _WIN32
# include <io.h>
# include <sys/locking.h>
-# endif /* WIN32 */
+# endif /* _WIN32 */
/*
@@ -88,30 +85,6 @@ typedef enum /**** _cupsFileCheck file type values ****/
typedef void (*_cups_fc_func_t)(void *context, _cups_fc_result_t result,
const char *message);
-struct _cups_file_s /**** CUPS file structure... ****/
-
-{
- int fd; /* File descriptor */
- char mode, /* Mode ('r' or 'w') */
- compressed, /* Compression used? */
- is_stdio, /* stdin/out/err? */
- eof, /* End of file? */
- buf[4096], /* Buffer */
- *ptr, /* Pointer into buffer */
- *end; /* End of buffer data */
- off_t pos, /* Position in file */
- bufpos; /* File position for start of buffer */
-
-#ifdef HAVE_LIBZ
- z_stream stream; /* (De)compression stream */
- Bytef cbuf[4096]; /* (De)compression buffer */
- uLong crc; /* (De)compression CRC */
-#endif /* HAVE_LIBZ */
-
- char *printf_buffer; /* cupsFilePrintf buffer */
- size_t printf_size; /* Size of cupsFilePrintf buffer */
-};
-
/*
* Prototypes...
@@ -125,6 +98,7 @@ extern _cups_fc_result_t _cupsFileCheck(const char *filename,
extern void _cupsFileCheckFilter(void *context,
_cups_fc_result_t result,
const char *message);
+extern int _cupsFilePeekAhead(cups_file_t *fp, int ch);
# ifdef __cplusplus
}
diff --git a/cups/file.c b/cups/file.c
index 5d15054..5c9ddf8 100644
--- a/cups/file.c
+++ b/cups/file.c
@@ -6,7 +6,7 @@
* our own file functions allows us to provide transparent support of
* different line endings, gzip'd print files, PPD files, etc.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -26,6 +26,39 @@
#include <sys/stat.h>
#include <sys/types.h>
+# ifdef HAVE_LIBZ
+# include <zlib.h>
+# endif /* HAVE_LIBZ */
+
+
+/*
+ * Internal structures...
+ */
+
+struct _cups_file_s /**** CUPS file structure... ****/
+
+{
+ int fd; /* File descriptor */
+ char mode, /* Mode ('r' or 'w') */
+ compressed, /* Compression used? */
+ is_stdio, /* stdin/out/err? */
+ eof, /* End of file? */
+ buf[4096], /* Buffer */
+ *ptr, /* Pointer into buffer */
+ *end; /* End of buffer data */
+ off_t pos, /* Position in file */
+ bufpos; /* File position for start of buffer */
+
+#ifdef HAVE_LIBZ
+ z_stream stream; /* (De)compression stream */
+ Bytef cbuf[4096]; /* (De)compression buffer */
+ uLong crc; /* (De)compression CRC */
+#endif /* HAVE_LIBZ */
+
+ char *printf_buffer; /* cupsFilePrintf buffer */
+ size_t printf_size; /* Size of cupsFilePrintf buffer */
+};
+
/*
* Local functions...
@@ -40,7 +73,7 @@ static ssize_t cups_read(cups_file_t *fp, char *buf, size_t bytes);
static ssize_t cups_write(cups_file_t *fp, const char *buf, size_t bytes);
-#ifndef WIN32
+#ifndef _WIN32
/*
* '_cupsFileCheck()' - Check the permissions of the given filename.
*/
@@ -306,7 +339,7 @@ _cupsFileCheckFilter(
fprintf(stderr, "%s: %s\n", prefix, message);
}
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
@@ -526,22 +559,22 @@ cupsFileFind(const char *filename, /* I - File to find */
while (*path)
{
-#ifdef WIN32
+#ifdef _WIN32
if (*path == ';' || (*path == ':' && ((bufptr - buffer) > 1 || !isalpha(buffer[0] & 255))))
#else
if (*path == ';' || *path == ':')
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
if (bufptr > buffer && bufptr[-1] != '/' && bufptr < bufend)
*bufptr++ = '/';
strlcpy(bufptr, filename, (size_t)(bufend - bufptr));
-#ifdef WIN32
+#ifdef _WIN32
if (!access(buffer, 0))
#else
if (!access(buffer, executable ? X_OK : 0))
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
DEBUG_printf(("1cupsFileFind: Returning \"%s\"", buffer));
return (buffer);
@@ -992,11 +1025,11 @@ cupsFileLock(cups_file_t *fp, /* I - CUPS file */
* Try the lock...
*/
-#ifdef WIN32
+#ifdef _WIN32
return (_locking(fp->fd, block ? _LK_LOCK : _LK_NBLCK, 0));
#else
return (lockf(fp->fd, block ? F_LOCK : F_TLOCK, 0));
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -1084,11 +1117,11 @@ cupsFileOpen(const char *filename, /* I - Name of file */
}
if (fd >= 0)
-#ifdef WIN32
+#ifdef _WIN32
_chsize(fd, 0);
#else
ftruncate(fd, 0);
-#endif /* WIN32 */
+#endif /* _WIN32 */
break;
case 's' : /* Read/write socket */
@@ -1255,15 +1288,27 @@ cupsFileOpenFd(int fd, /* I - File descriptor */
* Don't pass this file to child processes...
*/
-#ifndef WIN32
+#ifndef _WIN32
fcntl(fp->fd, F_SETFD, fcntl(fp->fd, F_GETFD) | FD_CLOEXEC);
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
return (fp);
}
/*
+ * '_cupsFilePeekAhead()' - See if the requested character is buffered up.
+ */
+
+int /* O - 1 if present, 0 otherwise */
+_cupsFilePeekAhead(cups_file_t *fp, /* I - CUPS file */
+ int ch) /* I - Character */
+{
+ return (fp && fp->ptr && memchr(fp->ptr, ch, (size_t)(fp->end - fp->ptr)));
+}
+
+
+/*
* 'cupsFilePeekChar()' - Peek at the next character from a file.
*
* @since CUPS 1.2/macOS 10.5@
@@ -2019,11 +2064,11 @@ cupsFileUnlock(cups_file_t *fp) /* I - CUPS file */
* Unlock...
*/
-#ifdef WIN32
+#ifdef _WIN32
return (_locking(fp->fd, _LK_UNLCK, 0));
#else
return (lockf(fp->fd, F_ULOCK, 0));
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -2553,9 +2598,9 @@ cups_open(const char *filename, /* I - Filename */
{
int fd; /* File descriptor */
struct stat fileinfo; /* File information */
-#ifndef WIN32
+#ifndef _WIN32
struct stat linkinfo; /* Link information */
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
@@ -2583,18 +2628,18 @@ cups_open(const char *filename, /* I - Filename */
return (-1);
}
-#ifdef WIN32
+#ifdef _WIN32
if (fileinfo.st_mode & _S_IFDIR)
#else
if (S_ISDIR(fileinfo.st_mode))
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
close(fd);
errno = EISDIR;
return (-1);
}
-#ifndef WIN32
+#ifndef _WIN32
/*
* Then use lstat to determine whether the filename is a symlink...
*/
@@ -2622,7 +2667,7 @@ cups_open(const char *filename, /* I - Filename */
errno = EPERM;
return (-1);
}
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
return (fd);
}
@@ -2648,7 +2693,7 @@ cups_read(cups_file_t *fp, /* I - CUPS file */
for (;;)
{
-#ifdef WIN32
+#ifdef _WIN32
if (fp->mode == 's')
total = (ssize_t)recv(fp->fd, buf, (unsigned)bytes, 0);
else
@@ -2658,7 +2703,7 @@ cups_read(cups_file_t *fp, /* I - CUPS file */
total = recv(fp->fd, buf, bytes, 0);
else
total = read(fp->fd, buf, bytes);
-#endif /* WIN32 */
+#endif /* _WIN32 */
DEBUG_printf(("9cups_read: total=" CUPS_LLFMT, CUPS_LLCAST total));
@@ -2705,7 +2750,7 @@ cups_write(cups_file_t *fp, /* I - CUPS file */
total = 0;
while (bytes > 0)
{
-#ifdef WIN32
+#ifdef _WIN32
if (fp->mode == 's')
count = (ssize_t)send(fp->fd, buf, (unsigned)bytes, 0);
else
@@ -2715,7 +2760,7 @@ cups_write(cups_file_t *fp, /* I - CUPS file */
count = send(fp->fd, buf, bytes, 0);
else
count = write(fp->fd, buf, bytes);
-#endif /* WIN32 */
+#endif /* _WIN32 */
DEBUG_printf(("9cups_write: count=" CUPS_LLFMT, CUPS_LLCAST count));
diff --git a/cups/file.h b/cups/file.h
index 42abe20..0d3a2e5 100644
--- a/cups/file.h
+++ b/cups/file.h
@@ -6,7 +6,7 @@
* our own file functions allows us to provide transparent support of
* different line endings, gzip'd print files, PPD files, etc.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -29,11 +29,11 @@
# include "versioning.h"
# include <stddef.h>
# include <sys/types.h>
-# if defined(WIN32) && !defined(__CUPS_SSIZE_T_DEFINED)
+# if defined(_WIN32) && !defined(__CUPS_SSIZE_T_DEFINED)
# define __CUPS_SSIZE_T_DEFINED
/* Windows does not support the ssize_t type, so map it to off_t... */
typedef off_t ssize_t; /* @private@ */
-# endif /* WIN32 && !__CUPS_SSIZE_T_DEFINED */
+# endif /* _WIN32 && !__CUPS_SSIZE_T_DEFINED */
/*
@@ -85,9 +85,7 @@ extern cups_file_t *cupsFileOpen(const char *filename, const char *mode)
_CUPS_API_1_2;
extern cups_file_t *cupsFileOpenFd(int fd, const char *mode) _CUPS_API_1_2;
extern int cupsFilePeekChar(cups_file_t *fp) _CUPS_API_1_2;
-extern int cupsFilePrintf(cups_file_t *fp, const char *format, ...)
- __attribute__((__format__ (__printf__, 2, 3)))
- _CUPS_API_1_2;
+extern int cupsFilePrintf(cups_file_t *fp, const char *format, ...) _CUPS_FORMAT(2, 3) _CUPS_API_1_2;
extern int cupsFilePutChar(cups_file_t *fp, int c) _CUPS_API_1_2;
extern ssize_t cupsFilePutConf(cups_file_t *fp, const char *directive,
const char *value) _CUPS_API_1_4;
diff --git a/cups/getputfile.c b/cups/getputfile.c
index ae33bc5..7749ae0 100644
--- a/cups/getputfile.c
+++ b/cups/getputfile.c
@@ -1,7 +1,7 @@
/*
* Get/put file functions for CUPS.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -20,11 +20,11 @@
#include "cups-private.h"
#include <fcntl.h>
#include <sys/stat.h>
-#if defined(WIN32) || defined(__EMX__)
+#if defined(_WIN32) || defined(__EMX__)
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 || __EMX__ */
+#endif /* _WIN32 || __EMX__ */
/*
@@ -45,6 +45,8 @@ cupsGetFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
http_status_t status; /* HTTP status from server */
char if_modified_since[HTTP_MAX_VALUE];
/* If-Modified-Since header */
+ int new_auth = 0; /* Using new auth information? */
+ int digest; /* Are we using Digest authentication? */
/*
@@ -85,9 +87,33 @@ cupsGetFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
}
httpClearFields(http);
- httpSetField(http, HTTP_FIELD_AUTHORIZATION, http->authstring);
httpSetField(http, HTTP_FIELD_IF_MODIFIED_SINCE, if_modified_since);
+ digest = http->authstring && !strncmp(http->authstring, "Digest ", 7);
+
+ if (digest && !new_auth)
+ {
+ /*
+ * Update the Digest authentication string...
+ */
+
+ _httpSetDigestAuthString(http, http->nextnonce, "GET", resource);
+ }
+
+#ifdef HAVE_GSSAPI
+ if (http->authstring && !strncmp(http->authstring, "Negotiate", 9) && !new_auth)
+ {
+ /*
+ * Do not use cached Kerberos credentials since they will look like a
+ * "replay" attack...
+ */
+
+ _cupsSetNegotiateAuthString(http, "GET", resource);
+ }
+#endif /* HAVE_GSSAPI */
+
+ httpSetField(http, HTTP_FIELD_AUTHORIZATION, http->authstring);
+
if (httpGet(http, resource))
{
if (httpReconnect2(http, 30000, NULL))
@@ -102,6 +128,8 @@ cupsGetFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
}
}
+ new_auth = 0;
+
while ((status = httpUpdate(http)) == HTTP_STATUS_CONTINUE);
if (status == HTTP_STATUS_UNAUTHORIZED)
@@ -116,6 +144,8 @@ cupsGetFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
* See if we can do authentication...
*/
+ new_auth = 1;
+
if (cupsDoAuthentication(http, "GET", resource))
{
status = HTTP_STATUS_CUPS_AUTHORIZATION_CANCELED;
@@ -267,6 +297,8 @@ cupsPutFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
int retries; /* Number of retries */
char buffer[8192]; /* Buffer for file */
http_status_t status; /* HTTP status from server */
+ int new_auth = 0; /* Using new auth information? */
+ int digest; /* Are we using Digest authentication? */
/*
@@ -309,10 +341,34 @@ cupsPutFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
http->authstring));
httpClearFields(http);
- httpSetField(http, HTTP_FIELD_AUTHORIZATION, http->authstring);
httpSetField(http, HTTP_FIELD_TRANSFER_ENCODING, "chunked");
httpSetExpect(http, HTTP_STATUS_CONTINUE);
+ digest = http->authstring && !strncmp(http->authstring, "Digest ", 7);
+
+ if (digest && !new_auth)
+ {
+ /*
+ * Update the Digest authentication string...
+ */
+
+ _httpSetDigestAuthString(http, http->nextnonce, "PUT", resource);
+ }
+
+#ifdef HAVE_GSSAPI
+ if (http->authstring && !strncmp(http->authstring, "Negotiate", 9) && !new_auth)
+ {
+ /*
+ * Do not use cached Kerberos credentials since they will look like a
+ * "replay" attack...
+ */
+
+ _cupsSetNegotiateAuthString(http, "PUT", resource);
+ }
+#endif /* HAVE_GSSAPI */
+
+ httpSetField(http, HTTP_FIELD_AUTHORIZATION, http->authstring);
+
if (httpPut(http, resource))
{
if (httpReconnect2(http, 30000, NULL))
@@ -383,6 +439,8 @@ cupsPutFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
DEBUG_printf(("2cupsPutFd: status=%d", status));
+ new_auth = 0;
+
if (status == HTTP_STATUS_UNAUTHORIZED)
{
/*
@@ -395,6 +453,8 @@ cupsPutFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA
* See if we can do authentication...
*/
+ new_auth = 1;
+
if (cupsDoAuthentication(http, "PUT", resource))
{
status = HTTP_STATUS_CUPS_AUTHORIZATION_CANCELED;
diff --git a/cups/globals.c b/cups/globals.c
index 8a05c3e..28c993b 100644
--- a/cups/globals.c
+++ b/cups/globals.c
@@ -34,23 +34,23 @@ static _cups_threadkey_t cups_globals_key = _CUPS_THREADKEY_INITIALIZER;
static pthread_once_t cups_globals_key_once = PTHREAD_ONCE_INIT;
/* One-time initialization object */
#endif /* HAVE_PTHREAD_H */
-#if defined(HAVE_PTHREAD_H) || defined(WIN32)
+#if defined(HAVE_PTHREAD_H) || defined(_WIN32)
static _cups_mutex_t cups_global_mutex = _CUPS_MUTEX_INITIALIZER;
/* Global critical section */
-#endif /* HAVE_PTHREAD_H || WIN32 */
+#endif /* HAVE_PTHREAD_H || _WIN32 */
/*
* Local functions...
*/
-#ifdef WIN32
+#ifdef _WIN32
static void cups_fix_path(char *path);
-#endif /* WIN32 */
+#endif /* _WIN32 */
static _cups_globals_t *cups_globals_alloc(void);
-#if defined(HAVE_PTHREAD_H) || defined(WIN32)
+#if defined(HAVE_PTHREAD_H) || defined(_WIN32)
static void cups_globals_free(_cups_globals_t *g);
-#endif /* HAVE_PTHREAD_H || WIN32 */
+#endif /* HAVE_PTHREAD_H || _WIN32 */
#ifdef HAVE_PTHREAD_H
static void cups_globals_init(void);
#endif /* HAVE_PTHREAD_H */
@@ -65,7 +65,7 @@ _cupsGlobalLock(void)
{
#ifdef HAVE_PTHREAD_H
pthread_mutex_lock(&cups_global_mutex);
-#elif defined(WIN32)
+#elif defined(_WIN32)
EnterCriticalSection(&cups_global_mutex.m_criticalSection);
#endif /* HAVE_PTHREAD_H */
}
@@ -120,13 +120,13 @@ _cupsGlobalUnlock(void)
{
#ifdef HAVE_PTHREAD_H
pthread_mutex_unlock(&cups_global_mutex);
-#elif defined(WIN32)
+#elif defined(_WIN32)
LeaveCriticalSection(&cups_global_mutex.m_criticalSection);
#endif /* HAVE_PTHREAD_H */
}
-#ifdef WIN32
+#ifdef _WIN32
/*
* 'DllMain()' - Main entry for library.
*/
@@ -170,7 +170,7 @@ DllMain(HINSTANCE hinst, /* I - DLL module handle */
return (TRUE);
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -182,13 +182,13 @@ cups_globals_alloc(void)
{
_cups_globals_t *cg = malloc(sizeof(_cups_globals_t));
/* Pointer to global data */
-#ifdef WIN32
+#ifdef _WIN32
HKEY key; /* Registry key */
DWORD size; /* Size of string */
static char installdir[1024] = "", /* Install directory */
confdir[1024] = "", /* Server root directory */
localedir[1024] = ""; /* Locale directory */
-#endif /* WIN32 */
+#endif /* _WIN32 */
if (!cg)
@@ -219,7 +219,7 @@ cups_globals_alloc(void)
* Then set directories as appropriate...
*/
-#ifdef WIN32
+#ifdef _WIN32
if (!installdir[0])
{
/*
@@ -315,7 +315,7 @@ cups_globals_alloc(void)
if ((cg->localedir = getenv("LOCALEDIR")) == NULL)
cg->localedir = CUPS_LOCALEDIR;
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
return (cg);
}
@@ -325,7 +325,7 @@ cups_globals_alloc(void)
* 'cups_globals_free()' - Free global data.
*/
-#if defined(HAVE_PTHREAD_H) || defined(WIN32)
+#if defined(HAVE_PTHREAD_H) || defined(_WIN32)
static void
cups_globals_free(_cups_globals_t *cg) /* I - Pointer to global data */
{
@@ -360,7 +360,7 @@ cups_globals_free(_cups_globals_t *cg) /* I - Pointer to global data */
free(cg);
}
-#endif /* HAVE_PTHREAD_H || WIN32 */
+#endif /* HAVE_PTHREAD_H || _WIN32 */
#ifdef HAVE_PTHREAD_H
diff --git a/cups/http-addr.c b/cups/http-addr.c
index 61c8638..f8b8131 100644
--- a/cups/http-addr.c
+++ b/cups/http-addr.c
@@ -69,11 +69,11 @@ int /* O - 0 on success, -1 on failure */
httpAddrClose(http_addr_t *addr, /* I - Listen address or @code NULL@ */
int fd) /* I - Socket file descriptor */
{
-#ifdef WIN32
+#ifdef _WIN32
if (closesocket(fd))
#else
if (close(fd))
-#endif /* WIN32 */
+#endif /* _WIN32 */
return (-1);
#ifdef AF_LOCAL
@@ -258,9 +258,9 @@ httpAddrListen(http_addr_t *addr, /* I - Address to bind to */
* Close on exec...
*/
-#ifndef WIN32
+#ifndef _WIN32
fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC);
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
#ifdef SO_NOSIGPIPE
/*
diff --git a/cups/http-addrlist.c b/cups/http-addrlist.c
index e5fc940..d9a96c4 100644
--- a/cups/http-addrlist.c
+++ b/cups/http-addrlist.c
@@ -1,7 +1,7 @@
/*
* HTTP address list routines for CUPS.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -24,9 +24,9 @@
#ifdef HAVE_POLL
# include <poll.h>
#endif /* HAVE_POLL */
-#ifndef WIN32
+#ifndef _WIN32
# include <fcntl.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -61,14 +61,14 @@ httpAddrConnect2(
int *cancel) /* I - Pointer to "cancel" variable */
{
int val; /* Socket option value */
-#ifndef WIN32
- int flags; /* Socket flags */
-#endif /* !WIN32 */
- int remaining; /* Remaining timeout */
+#ifndef _WIN32
int i, j, /* Looping vars */
- nfds, /* Number of file descriptors */
- fds[100], /* Socket file descriptors */
+ flags, /* Socket flags */
result; /* Result from select() or poll() */
+#endif /* !_WIN32 */
+ int remaining; /* Remaining timeout */
+ int nfds, /* Number of file descriptors */
+ fds[100]; /* Socket file descriptors */
http_addrlist_t *addrs[100]; /* Addresses */
#ifndef HAVE_POLL
int max_fd = -1; /* Highest file descriptor */
@@ -84,8 +84,10 @@ httpAddrConnect2(
# endif /* HAVE_POLL */
#endif /* O_NONBLOCK */
#ifdef DEBUG
+# ifndef _WIN32
socklen_t len; /* Length of value */
http_addr_t peer; /* Peer address */
+# endif /* !_WIN32 */
char temp[256]; /* Temporary address string */
#endif /* DEBUG */
@@ -213,11 +215,11 @@ httpAddrConnect2(
return (addrlist);
}
-#ifdef WIN32
+#ifdef _WIN32
if (WSAGetLastError() != WSAEINPROGRESS && WSAGetLastError() != WSAEWOULDBLOCK)
#else
if (errno != EINPROGRESS && errno != EWOULDBLOCK)
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
DEBUG_printf(("1httpAddrConnect2: Unable to connect to %s:%d: %s", httpAddrString(&(addrlist->addr), temp, sizeof(temp)), httpAddrPort(&(addrlist->addr)), strerror(errno)));
httpAddrClose(NULL, fds[nfds]);
@@ -225,9 +227,9 @@ httpAddrConnect2(
continue;
}
-#ifndef WIN32
+#ifndef _WIN32
fcntl(fds[nfds], F_SETFL, flags);
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
#ifndef HAVE_POLL
if (fds[nfds] > max_fd)
@@ -296,11 +298,11 @@ httpAddrConnect2(
DEBUG_printf(("1httpAddrConnect2: select() returned %d (%d)", result, errno));
# endif /* HAVE_POLL */
}
-# ifdef WIN32
+# ifdef _WIN32
while (result < 0 && (WSAGetLastError() == WSAEINTR || WSAGetLastError() == WSAEWOULDBLOCK));
# else
while (result < 0 && (errno == EINTR || errno == EAGAIN));
-# endif /* WIN32 */
+# endif /* _WIN32 */
if (result > 0)
{
@@ -377,11 +379,11 @@ httpAddrConnect2(
httpAddrClose(NULL, fds[nfds]);
}
-#ifdef WIN32
+#ifdef _WIN32
_cupsSetError(IPP_STATUS_ERROR_SERVICE_UNAVAILABLE, "Connection failed", 0);
#else
_cupsSetError(IPP_STATUS_ERROR_SERVICE_UNAVAILABLE, strerror(errno), 0);
-#endif /* WIN32 */
+#endif /* _WIN32 */
return (NULL);
}
@@ -618,6 +620,7 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
if (!temp)
{
httpAddrFreeList(first);
+ freeaddrinfo(results);
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, strerror(errno), 0);
return (NULL);
}
@@ -848,11 +851,11 @@ httpAddrGetList(const char *hostname, /* I - Hostname, IP address, or NULL for p
temp->addr.ipv6.sin6_family = AF_INET6;
temp->addr.ipv6.sin6_port = htons(portnum);
-# ifdef WIN32
+# ifdef _WIN32
temp->addr.ipv6.sin6_addr.u.Byte[15] = 1;
# else
temp->addr.ipv6.sin6_addr.s6_addr32[3] = htonl(1);
-# endif /* WIN32 */
+# endif /* _WIN32 */
if (!first)
first = temp;
diff --git a/cups/http-private.h b/cups/http-private.h
index 4f118ba..32cb9ea 100644
--- a/cups/http-private.h
+++ b/cups/http-private.h
@@ -30,7 +30,7 @@
# endif /* __sun */
# include <limits.h>
-# ifdef WIN32
+# ifdef _WIN32
# include <io.h>
# include <winsock2.h>
# define CUPS_SOCAST (const char *)
@@ -39,7 +39,7 @@
# include <fcntl.h>
# include <sys/socket.h>
# define CUPS_SOCAST
-# endif /* WIN32 */
+# endif /* _WIN32 */
# ifdef HAVE_GSSAPI
# ifdef HAVE_GSS_GSSAPI_H
@@ -140,7 +140,7 @@ extern SecIdentityRef SecIdentityCreate(CFAllocatorRef allocator, SecCertificate
# include <sspi.h>
# endif /* HAVE_GNUTLS */
-# ifndef WIN32
+# ifndef _WIN32
# include <net/if.h>
# include <resolv.h>
# ifdef HAVE_GETIFADDRS
@@ -151,11 +151,7 @@ extern SecIdentityRef SecIdentityCreate(CFAllocatorRef allocator, SecCertificate
# include <sys/sockio.h>
# endif /* HAVE_SYS_SOCKIO_H */
# endif /* HAVE_GETIFADDRS */
-# endif /* !WIN32 */
-
-# ifdef HAVE_LIBZ
-# include <zlib.h>
-# endif /* HAVE_LIBZ */
+# endif /* !_WIN32 */
/*
@@ -364,9 +360,20 @@ struct _http_s /**** HTTP connection structure ****/
/* Default field values */
# ifdef HAVE_LIBZ
_http_coding_t coding; /* _HTTP_CODING_xxx */
- z_stream stream; /* (De)compression stream */
- Bytef *sbuffer; /* (De)compression buffer */
+ void *stream; /* (De)compression stream */
+ unsigned char *sbuffer; /* (De)compression buffer */
# endif /* HAVE_LIBZ */
+
+ /**** New in CUPS 2.2.9 ****/
+ char *authentication_info,
+ /* Authentication-Info header */
+ algorithm[65], /* Algorithm from WWW-Authenticate */
+ nextnonce[HTTP_MAX_VALUE],
+ /* Next nonce value from Authentication-Info */
+ opaque[HTTP_MAX_VALUE],
+ /* Opaque value from WWW-Authenticate */
+ realm[HTTP_MAX_VALUE];
+ /* Realm from WWW-Authenticate */
};
# endif /* !_HTTP_NO_PRIVATE */
@@ -385,7 +392,7 @@ extern const char *_cups_hstrerror(int error);
* Some OS's don't have getifaddrs() and freeifaddrs()...
*/
-# if !defined(WIN32) && !defined(HAVE_GETIFADDRS)
+# if !defined(_WIN32) && !defined(HAVE_GETIFADDRS)
# ifdef ifa_dstaddr
# undef ifa_dstaddr
# endif /* ifa_dstaddr */
@@ -420,7 +427,7 @@ extern int _cups_getifaddrs(struct ifaddrs **addrs);
# define getifaddrs _cups_getifaddrs
extern void _cups_freeifaddrs(struct ifaddrs *addrs);
# define freeifaddrs _cups_freeifaddrs
-# endif /* !WIN32 && !HAVE_GETIFADDRS */
+# endif /* !_WIN32 && !HAVE_GETIFADDRS */
/*
@@ -440,6 +447,7 @@ extern const char *_httpResolveURI(const char *uri, char *resolved_uri,
size_t resolved_size, int options,
int (*cb)(void *context),
void *context);
+extern int _httpSetDigestAuthString(http_t *http, const char *nonce, const char *method, const char *resource);
extern const char *_httpStatus(cups_lang_t *lang, http_status_t status);
extern void _httpTLSInitialize(void);
extern size_t _httpTLSPending(http_t *http);
diff --git a/cups/http-support.c b/cups/http-support.c
index 76c1272..767fbf6 100644
--- a/cups/http-support.c
+++ b/cups/http-support.c
@@ -20,13 +20,13 @@
#include "cups-private.h"
#ifdef HAVE_DNSSD
# include <dns_sd.h>
-# ifdef WIN32
+# ifdef _WIN32
# include <io.h>
# elif defined(HAVE_POLL)
# include <poll.h>
# else
# include <sys/select.h>
-# endif /* WIN32 */
+# endif /* _WIN32 */
#elif defined(HAVE_AVAHI)
# include <avahi-client/client.h>
# include <avahi-client/lookup.h>
@@ -1303,6 +1303,152 @@ httpSeparateURI(
/*
+ * '_httpSetDigestAuthString()' - Calculate a Digest authentication response
+ * using the appropriate RFC 2068/2617/7616
+ * algorithm.
+ */
+
+int /* O - 1 on success, 0 on failure */
+_httpSetDigestAuthString(
+ http_t *http, /* I - HTTP connection */
+ const char *nonce, /* I - Nonce value */
+ const char *method, /* I - HTTP method */
+ const char *resource) /* I - HTTP resource path */
+{
+ char kd[65], /* Final MD5/SHA-256 digest */
+ ha1[65], /* Hash of username:realm:password */
+ ha2[65], /* Hash of method:request-uri */
+ username[HTTP_MAX_VALUE],
+ /* username:password */
+ *password, /* Pointer to password */
+ temp[1024], /* Temporary string */
+ digest[1024]; /* Digest auth data */
+ unsigned char hash[32]; /* Hash buffer */
+ size_t hashsize; /* Size of hash */
+
+
+ DEBUG_printf(("2_httpSetDigestAuthString(http=%p, nonce=\"%s\", method=\"%s\", resource=\"%s\")", http, nonce, method, resource));
+
+ if (nonce && *nonce && strcmp(nonce, http->nonce))
+ {
+ strlcpy(http->nonce, nonce, sizeof(http->nonce));
+
+ if (nonce == http->nextnonce)
+ http->nextnonce[0] = '\0';
+
+ http->nonce_count = 1;
+ }
+ else
+ http->nonce_count ++;
+
+ strlcpy(username, http->userpass, sizeof(username));
+ if ((password = strchr(username, ':')) != NULL)
+ *password++ = '\0';
+ else
+ return (0);
+
+ if (http->algorithm[0])
+ {
+ /*
+ * Follow RFC 2617/7616...
+ */
+
+ int i; /* Looping var */
+ char cnonce[65]; /* cnonce value */
+ const char *hashalg; /* Hashing algorithm */
+
+ for (i = 0; i < 64; i ++)
+ cnonce[i] = "0123456789ABCDEF"[CUPS_RAND() & 15];
+ cnonce[64] = '\0';
+
+ if (!_cups_strcasecmp(http->algorithm, "MD5"))
+ {
+ /*
+ * RFC 2617 Digest with MD5
+ */
+
+ hashalg = "md5";
+ }
+ else if (!_cups_strcasecmp(http->algorithm, "SHA-256"))
+ {
+ /*
+ * RFC 7616 Digest with SHA-256
+ */
+
+ hashalg = "sha2-256";
+ }
+ else
+ {
+ /*
+ * Some other algorithm we don't support, skip this one...
+ */
+
+ return (0);
+ }
+
+ /*
+ * Calculate digest value...
+ */
+
+ /* H(A1) = H(username:realm:password) */
+ snprintf(temp, sizeof(temp), "%s:%s:%s", username, http->realm, password);
+ hashsize = (size_t)cupsHashData(hashalg, (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
+ cupsHashString(hash, hashsize, ha1, sizeof(ha1));
+
+ /* H(A2) = H(method:uri) */
+ snprintf(temp, sizeof(temp), "%s:%s", method, resource);
+ hashsize = (size_t)cupsHashData(hashalg, (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
+ cupsHashString(hash, hashsize, ha2, sizeof(ha2));
+
+ /* KD = H(H(A1):nonce:nc:cnonce:qop:H(A2)) */
+ snprintf(temp, sizeof(temp), "%s:%s:%08x:%s:%s:%s", ha1, http->nonce, http->nonce_count, cnonce, "auth", ha2);
+ hashsize = (size_t)cupsHashData(hashalg, (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
+ cupsHashString(hash, hashsize, kd, sizeof(kd));
+
+ /*
+ * Pass the RFC 2617/7616 WWW-Authenticate header...
+ */
+
+ if (http->opaque[0])
+ snprintf(digest, sizeof(digest), "username=\"%s\", realm=\"%s\", nonce=\"%s\", algorithm=%s, qop=auth, opaque=\"%s\", cnonce=\"%s\", nc=%08x, uri=\"%s\", response=\"%s\"", cupsUser(), http->realm, http->nonce, http->algorithm, http->opaque, cnonce, http->nonce_count, resource, kd);
+ else
+ snprintf(digest, sizeof(digest), "username=\"%s\", realm=\"%s\", nonce=\"%s\", algorithm=%s, qop=auth, cnonce=\"%s\", nc=%08x, uri=\"%s\", response=\"%s\"", username, http->realm, http->nonce, http->algorithm, cnonce, http->nonce_count, resource, kd);
+ }
+ else
+ {
+ /*
+ * Use old RFC 2069 Digest method...
+ */
+
+ /* H(A1) = H(username:realm:password) */
+ snprintf(temp, sizeof(temp), "%s:%s:%s", username, http->realm, password);
+ hashsize = (size_t)cupsHashData("md5", (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
+ cupsHashString(hash, hashsize, ha1, sizeof(ha1));
+
+ /* H(A2) = H(method:uri) */
+ snprintf(temp, sizeof(temp), "%s:%s", method, resource);
+ hashsize = (size_t)cupsHashData("md5", (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
+ cupsHashString(hash, hashsize, ha2, sizeof(ha2));
+
+ /* KD = H(H(A1):nonce:H(A2)) */
+ snprintf(temp, sizeof(temp), "%s:%s:%s", ha1, http->nonce, ha2);
+ hashsize = (size_t)cupsHashData("md5", (unsigned char *)temp, strlen(temp), hash, sizeof(hash));
+ cupsHashString(hash, hashsize, kd, sizeof(kd));
+
+ /*
+ * Pass the old RFC 2069 WWW-Authenticate header...
+ */
+
+ snprintf(digest, sizeof(digest), "username=\"%s\", realm=\"%s\", nonce=\"%s\", uri=\"%s\", response=\"%s\"", username, http->realm, http->nonce, resource, kd);
+ }
+
+ httpSetAuthString(http, "Digest", digest);
+
+ return (1);
+}
+
+
+/*
* 'httpStateString()' - Return the string describing a HTTP state value.
*
* @since CUPS 2.0/OS 10.10@
@@ -1622,9 +1768,6 @@ _httpResolveURI(
_http_uribuf_t uribuf; /* URI buffer */
int offline = 0; /* offline-report state set? */
# ifdef HAVE_DNSSD
-# ifdef WIN32
-# pragma comment(lib, "dnssd.lib")
-# endif /* WIN32 */
DNSServiceRef ref, /* DNS-SD master service reference */
domainref = NULL,/* DNS-SD service reference for domain */
ippref = NULL, /* DNS-SD service reference for network IPP */
@@ -1753,11 +1896,11 @@ _httpResolveURI(
FD_ZERO(&input_set);
FD_SET(DNSServiceRefSockFD(ref), &input_set);
-# ifdef WIN32
+# ifdef _WIN32
stimeout.tv_sec = (long)timeout;
# else
stimeout.tv_sec = timeout;
-# endif /* WIN32 */
+# endif /* _WIN32 */
stimeout.tv_usec = 0;
fds = select(DNSServiceRefSockFD(ref)+1, &input_set, NULL, NULL,
diff --git a/cups/http.c b/cups/http.c
index 34f0822..5c14ef6 100644
--- a/cups/http.c
+++ b/cups/http.c
@@ -23,16 +23,19 @@
#include "cups-private.h"
#include <fcntl.h>
#include <math.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <tchar.h>
#else
# include <signal.h>
# include <sys/time.h>
# include <sys/resource.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#ifdef HAVE_POLL
# include <poll.h>
#endif /* HAVE_POLL */
+# ifdef HAVE_LIBZ
+# include <zlib.h>
+# endif /* HAVE_LIBZ */
/*
@@ -106,7 +109,8 @@ static const char * const http_fields[] =
"WWW-Authenticate",
"Accept-Encoding",
"Allow",
- "Server"
+ "Server",
+ "Authentication-Info"
};
@@ -326,6 +330,12 @@ httpClearFields(http_t *http) /* I - HTTP connection */
http->server = NULL;
}
+ if (http->authentication_info)
+ {
+ _cupsStrFree(http->authentication_info);
+ http->authentication_info = NULL;
+ }
+
http->expect = (http_status_t)0;
}
}
@@ -970,11 +980,14 @@ httpGetField(http_t *http, /* I - HTTP connection */
case HTTP_FIELD_SERVER :
return (http->server);
+ case HTTP_FIELD_AUTHENTICATION_INFO :
+ return (http->authentication_info);
+
case HTTP_FIELD_AUTHORIZATION :
if (http->field_authorization)
{
/*
- * Special case for WWW-Authenticate: as its contents can be
+ * Special case for Authorization: as its contents can be
* longer than HTTP_MAX_VALUE...
*/
@@ -1184,11 +1197,11 @@ httpGets(char *line, /* I - Line to read into */
* Pre-load the buffer as needed...
*/
-#ifdef WIN32
+#ifdef _WIN32
WSASetLastError(0);
#else
errno = 0;
-#endif /* WIN32 */
+#endif /* _WIN32 */
while (http->used == 0)
{
@@ -1202,11 +1215,11 @@ httpGets(char *line, /* I - Line to read into */
continue;
DEBUG_puts("3httpGets: Timed out!");
-#ifdef WIN32
+#ifdef _WIN32
http->error = WSAETIMEDOUT;
#else
http->error = ETIMEDOUT;
-#endif /* WIN32 */
+#endif /* _WIN32 */
return (NULL);
}
@@ -1220,7 +1233,7 @@ httpGets(char *line, /* I - Line to read into */
* Nope, can't get a line this time...
*/
-#ifdef WIN32
+#ifdef _WIN32
DEBUG_printf(("3httpGets: recv() error %d!", WSAGetLastError()));
if (WSAGetLastError() == WSAEINTR)
@@ -1257,7 +1270,7 @@ httpGets(char *line, /* I - Line to read into */
http->error = errno;
continue;
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
return (NULL);
}
@@ -1524,9 +1537,9 @@ void
httpInitialize(void)
{
static int initialized = 0; /* Have we been called before? */
-#ifdef WIN32
+#ifdef _WIN32
WSADATA winsockdata; /* WinSock data */
-#endif /* WIN32 */
+#endif /* _WIN32 */
_cupsGlobalLock();
@@ -1536,7 +1549,7 @@ httpInitialize(void)
return;
}
-#ifdef WIN32
+#ifdef _WIN32
WSAStartup(MAKEWORD(2,2), &winsockdata);
#elif !defined(SO_NOSIGPIPE)
@@ -1558,7 +1571,7 @@ httpInitialize(void)
# else
signal(SIGPIPE, SIG_IGN);
# endif /* !SO_NOSIGPIPE */
-#endif /* WIN32 */
+#endif /* _WIN32 */
# ifdef HAVE_SSL
_httpTLSInitialize();
@@ -1714,7 +1727,7 @@ httpPeek(http_t *http, /* I - HTTP connection */
#ifdef HAVE_LIBZ
if (http->used == 0 &&
(http->coding == _HTTP_CODING_IDENTITY ||
- (http->coding >= _HTTP_CODING_GUNZIP && http->stream.avail_in == 0)))
+ (http->coding >= _HTTP_CODING_GUNZIP && ((z_stream *)http->stream)->avail_in == 0)))
#else
if (http->used == 0)
#endif /* HAVE_LIBZ */
@@ -1763,16 +1776,16 @@ httpPeek(http_t *http, /* I - HTTP connection */
int zerr; /* Decompressor error */
z_stream stream; /* Copy of decompressor stream */
- if (http->used > 0 && http->stream.avail_in < HTTP_MAX_BUFFER)
+ if (http->used > 0 && ((z_stream *)http->stream)->avail_in < HTTP_MAX_BUFFER)
{
- size_t buflen = buflen = HTTP_MAX_BUFFER - http->stream.avail_in;
+ size_t buflen = buflen = HTTP_MAX_BUFFER - ((z_stream *)http->stream)->avail_in;
/* Number of bytes to copy */
- if (http->stream.avail_in > 0 &&
- http->stream.next_in > http->sbuffer)
- memmove(http->sbuffer, http->stream.next_in, http->stream.avail_in);
+ if (((z_stream *)http->stream)->avail_in > 0 &&
+ ((z_stream *)http->stream)->next_in > http->sbuffer)
+ memmove(http->sbuffer, ((z_stream *)http->stream)->next_in, ((z_stream *)http->stream)->avail_in);
- http->stream.next_in = http->sbuffer;
+ ((z_stream *)http->stream)->next_in = http->sbuffer;
if (buflen > (size_t)http->data_remaining)
buflen = (size_t)http->data_remaining;
@@ -1783,8 +1796,8 @@ httpPeek(http_t *http, /* I - HTTP connection */
DEBUG_printf(("1httpPeek: Copying %d more bytes of data into "
"decompression buffer.", (int)buflen));
- memcpy(http->sbuffer + http->stream.avail_in, http->buffer, buflen);
- http->stream.avail_in += buflen;
+ memcpy(http->sbuffer + ((z_stream *)http->stream)->avail_in, http->buffer, buflen);
+ ((z_stream *)http->stream)->avail_in += buflen;
http->used -= (int)buflen;
http->data_remaining -= (off_t)buflen;
@@ -1793,9 +1806,9 @@ httpPeek(http_t *http, /* I - HTTP connection */
}
DEBUG_printf(("2httpPeek: length=%d, avail_in=%d", (int)length,
- (int)http->stream.avail_in));
+ (int)((z_stream *)http->stream)->avail_in));
- if (inflateCopy(&stream, &(http->stream)) != Z_OK)
+ if (inflateCopy(&stream, (z_stream *)http->stream) != Z_OK)
{
DEBUG_puts("2httpPeek: Unable to copy decompressor stream.");
http->error = ENOMEM;
@@ -1812,14 +1825,14 @@ httpPeek(http_t *http, /* I - HTTP connection */
{
DEBUG_printf(("2httpPeek: zerr=%d", zerr));
#ifdef DEBUG
- http_debug_hex("2httpPeek", (char *)http->sbuffer, (int)http->stream.avail_in);
+ http_debug_hex("2httpPeek", (char *)http->sbuffer, (int)((z_stream *)http->stream)->avail_in);
#endif /* DEBUG */
http->error = EIO;
return (-1);
}
- bytes = (ssize_t)(length - http->stream.avail_out);
+ bytes = (ssize_t)(length - ((z_stream *)http->stream)->avail_out);
# else
DEBUG_puts("2httpPeek: No inflateCopy on this platform, httpPeek does not "
@@ -1846,7 +1859,7 @@ httpPeek(http_t *http, /* I - HTTP connection */
if (bytes < 0)
{
-#ifdef WIN32
+#ifdef _WIN32
if (WSAGetLastError() == WSAEINTR || WSAGetLastError() == WSAEWOULDBLOCK)
bytes = 0;
else
@@ -1856,7 +1869,7 @@ httpPeek(http_t *http, /* I - HTTP connection */
bytes = 0;
else
http->error = errno;
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
else if (bytes == 0)
{
@@ -1986,31 +1999,31 @@ httpRead2(http_t *http, /* I - HTTP connection */
{
do
{
- if (http->stream.avail_in > 0)
+ if (((z_stream *)http->stream)->avail_in > 0)
{
int zerr; /* Decompressor error */
DEBUG_printf(("2httpRead2: avail_in=%d, avail_out=%d",
- (int)http->stream.avail_in, (int)length));
+ (int)((z_stream *)http->stream)->avail_in, (int)length));
- http->stream.next_out = (Bytef *)buffer;
- http->stream.avail_out = (uInt)length;
+ ((z_stream *)http->stream)->next_out = (Bytef *)buffer;
+ ((z_stream *)http->stream)->avail_out = (uInt)length;
- if ((zerr = inflate(&(http->stream), Z_SYNC_FLUSH)) < Z_OK)
+ if ((zerr = inflate((z_stream *)http->stream, Z_SYNC_FLUSH)) < Z_OK)
{
DEBUG_printf(("2httpRead2: zerr=%d", zerr));
#ifdef DEBUG
- http_debug_hex("2httpRead2", (char *)http->sbuffer, (int)http->stream.avail_in);
+ http_debug_hex("2httpRead2", (char *)http->sbuffer, (int)((z_stream *)http->stream)->avail_in);
#endif /* DEBUG */
http->error = EIO;
return (-1);
}
- bytes = (ssize_t)(length - http->stream.avail_out);
+ bytes = (ssize_t)(length - ((z_stream *)http->stream)->avail_out);
DEBUG_printf(("2httpRead2: avail_in=%d, avail_out=%d, bytes=%d",
- http->stream.avail_in, http->stream.avail_out,
+ ((z_stream *)http->stream)->avail_in, ((z_stream *)http->stream)->avail_out,
(int)bytes));
}
else
@@ -2018,16 +2031,16 @@ httpRead2(http_t *http, /* I - HTTP connection */
if (bytes == 0)
{
- ssize_t buflen = HTTP_MAX_BUFFER - (ssize_t)http->stream.avail_in;
+ ssize_t buflen = HTTP_MAX_BUFFER - (ssize_t)((z_stream *)http->stream)->avail_in;
/* Additional bytes for buffer */
if (buflen > 0)
{
- if (http->stream.avail_in > 0 &&
- http->stream.next_in > http->sbuffer)
- memmove(http->sbuffer, http->stream.next_in, http->stream.avail_in);
+ if (((z_stream *)http->stream)->avail_in > 0 &&
+ ((z_stream *)http->stream)->next_in > http->sbuffer)
+ memmove(http->sbuffer, ((z_stream *)http->stream)->next_in, ((z_stream *)http->stream)->avail_in);
- http->stream.next_in = http->sbuffer;
+ ((z_stream *)http->stream)->next_in = http->sbuffer;
DEBUG_printf(("1httpRead2: Reading up to %d more bytes of data into "
"decompression buffer.", (int)buflen));
@@ -2037,10 +2050,10 @@ httpRead2(http_t *http, /* I - HTTP connection */
if (buflen > http->data_remaining)
buflen = (ssize_t)http->data_remaining;
- bytes = http_read_buffered(http, (char *)http->sbuffer + http->stream.avail_in, (size_t)buflen);
+ bytes = http_read_buffered(http, (char *)http->sbuffer + ((z_stream *)http->stream)->avail_in, (size_t)buflen);
}
else if (http->data_encoding == HTTP_ENCODING_CHUNKED)
- bytes = http_read_chunk(http, (char *)http->sbuffer + http->stream.avail_in, (size_t)buflen);
+ bytes = http_read_chunk(http, (char *)http->sbuffer + ((z_stream *)http->stream)->avail_in, (size_t)buflen);
else
bytes = 0;
@@ -2053,7 +2066,7 @@ httpRead2(http_t *http, /* I - HTTP connection */
"decompression buffer.", CUPS_LLCAST bytes));
http->data_remaining -= bytes;
- http->stream.avail_in += (uInt)bytes;
+ ((z_stream *)http->stream)->avail_in += (uInt)bytes;
if (http->data_remaining <= 0 &&
http->data_encoding == HTTP_ENCODING_CHUNKED)
@@ -2132,7 +2145,7 @@ httpRead2(http_t *http, /* I - HTTP connection */
if (
#ifdef HAVE_LIBZ
(http->coding == _HTTP_CODING_IDENTITY ||
- (http->coding >= _HTTP_CODING_GUNZIP && http->stream.avail_in == 0)) &&
+ (http->coding >= _HTTP_CODING_GUNZIP && ((z_stream *)http->stream)->avail_in == 0)) &&
#endif /* HAVE_LIBZ */
((http->data_remaining <= 0 &&
http->data_encoding == HTTP_ENCODING_LENGTH) ||
@@ -2417,11 +2430,11 @@ httpReconnect2(http_t *http, /* I - HTTP connection */
* Unable to connect...
*/
-#ifdef WIN32
+#ifdef _WIN32
http->error = WSAGetLastError();
#else
http->error = errno;
-#endif /* WIN32 */
+#endif /* _WIN32 */
http->status = HTTP_STATUS_ERROR;
DEBUG_printf(("1httpReconnect2: httpAddrConnect failed: %s",
@@ -2758,11 +2771,11 @@ httpShutdown(http_t *http) /* I - HTTP connection */
_httpTLSStop(http);
#endif /* HAVE_SSL */
-#ifdef WIN32
+#ifdef _WIN32
shutdown(http->fd, SD_RECEIVE); /* Microsoft-ism... */
#else
shutdown(http->fd, SHUT_RD);
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -2938,7 +2951,12 @@ _httpUpdate(http_t *http, /* I - HTTP connection */
httpSetCookie(http, value);
}
else if ((field = httpFieldValue(line)) != HTTP_FIELD_UNKNOWN)
+ {
http_add_field(http, field, value, 1);
+
+ if (field == HTTP_FIELD_AUTHENTICATION_INFO)
+ httpGetSubField2(http, HTTP_FIELD_AUTHENTICATION_INFO, "nextnonce", http->nextnonce, (int)sizeof(http->nextnonce));
+ }
#ifdef DEBUG
else
DEBUG_printf(("1_httpUpdate: unknown field %s seen!", line));
@@ -3091,12 +3109,12 @@ _httpWait(http_t *http, /* I - HTTP connection */
DEBUG_printf(("6_httpWait: select() returned %d...", nfds));
}
-# ifdef WIN32
+# ifdef _WIN32
while (nfds < 0 && (WSAGetLastError() == WSAEINTR ||
WSAGetLastError() == WSAEWOULDBLOCK));
# else
while (nfds < 0 && (errno == EINTR || errno == EAGAIN));
-# endif /* WIN32 */
+# endif /* _WIN32 */
#endif /* HAVE_POLL */
DEBUG_printf(("5_httpWait: returning with nfds=%d, errno=%d...", nfds,
@@ -3132,7 +3150,7 @@ httpWait(http_t *http, /* I - HTTP connection */
}
#ifdef HAVE_LIBZ
- if (http->coding >= _HTTP_CODING_GUNZIP && http->stream.avail_in > 0)
+ if (http->coding >= _HTTP_CODING_GUNZIP && ((z_stream *)http->stream)->avail_in > 0)
{
DEBUG_puts("3httpWait: Returning 1 since there is buffered data ready.");
return (1);
@@ -3228,17 +3246,17 @@ httpWrite2(http_t *http, /* I - HTTP connection */
size_t slen; /* Bytes to write */
ssize_t sret; /* Bytes written */
- http->stream.next_in = (Bytef *)buffer;
- http->stream.avail_in = (uInt)length;
+ ((z_stream *)http->stream)->next_in = (Bytef *)buffer;
+ ((z_stream *)http->stream)->avail_in = (uInt)length;
- while (deflate(&(http->stream), Z_NO_FLUSH) == Z_OK)
+ while (deflate((z_stream *)http->stream, Z_NO_FLUSH) == Z_OK)
{
- DEBUG_printf(("1httpWrite2: avail_out=%d", http->stream.avail_out));
+ DEBUG_printf(("1httpWrite2: avail_out=%d", ((z_stream *)http->stream)->avail_out));
- if (http->stream.avail_out > 0)
+ if (((z_stream *)http->stream)->avail_out > 0)
continue;
- slen = _HTTP_MAX_SBUFFER - http->stream.avail_out;
+ slen = _HTTP_MAX_SBUFFER - ((z_stream *)http->stream)->avail_out;
DEBUG_printf(("1httpWrite2: Writing intermediate chunk, len=%d", (int)slen));
@@ -3255,8 +3273,8 @@ httpWrite2(http_t *http, /* I - HTTP connection */
return (-1);
}
- http->stream.next_out = (Bytef *)http->sbuffer;
- http->stream.avail_out = (uInt)_HTTP_MAX_SBUFFER;
+ ((z_stream *)http->stream)->next_out = (Bytef *)http->sbuffer;
+ ((z_stream *)http->stream)->avail_out = (uInt)_HTTP_MAX_SBUFFER;
}
bytes = (ssize_t)length;
@@ -3676,6 +3694,13 @@ http_add_field(http_t *http, /* I - HTTP connection */
http->server = _cupsStrAlloc(value);
break;
+ case HTTP_FIELD_AUTHENTICATION_INFO :
+ if (http->authentication_info)
+ _cupsStrFree(http->authentication_info);
+
+ http->authentication_info = _cupsStrAlloc(value);
+ break;
+
default :
strlcpy(http->fields[field], value, HTTP_MAX_VALUE);
break;
@@ -3725,13 +3750,13 @@ http_content_coding_finish(
{
case _HTTP_CODING_DEFLATE :
case _HTTP_CODING_GZIP :
- http->stream.next_in = dummy;
- http->stream.avail_in = 0;
+ ((z_stream *)http->stream)->next_in = dummy;
+ ((z_stream *)http->stream)->avail_in = 0;
do
{
- zerr = deflate(&(http->stream), Z_FINISH);
- bytes = _HTTP_MAX_SBUFFER - http->stream.avail_out;
+ zerr = deflate((z_stream *)http->stream, Z_FINISH);
+ bytes = _HTTP_MAX_SBUFFER - ((z_stream *)http->stream)->avail_out;
if (bytes > 0)
{
@@ -3743,15 +3768,18 @@ http_content_coding_finish(
http_write(http, (char *)http->sbuffer, bytes);
}
- http->stream.next_out = (Bytef *)http->sbuffer;
- http->stream.avail_out = (uInt)_HTTP_MAX_SBUFFER;
+ ((z_stream *)http->stream)->next_out = (Bytef *)http->sbuffer;
+ ((z_stream *)http->stream)->avail_out = (uInt)_HTTP_MAX_SBUFFER;
}
while (zerr == Z_OK);
- deflateEnd(&(http->stream));
+ deflateEnd((z_stream *)http->stream);
free(http->sbuffer);
+ free(http->stream);
+
http->sbuffer = NULL;
+ http->stream = NULL;
if (http->wused)
httpFlushWrite(http);
@@ -3759,9 +3787,13 @@ http_content_coding_finish(
case _HTTP_CODING_INFLATE :
case _HTTP_CODING_GUNZIP :
- inflateEnd(&(http->stream));
+ inflateEnd((z_stream *)http->stream);
+
free(http->sbuffer);
+ free(http->stream);
+
http->sbuffer = NULL;
+ http->stream = NULL;
break;
default :
@@ -3831,8 +3863,6 @@ http_content_coding_start(
return;
}
- memset(&(http->stream), 0, sizeof(http->stream));
-
switch (coding)
{
case _HTTP_CODING_DEFLATE :
@@ -3853,18 +3883,30 @@ http_content_coding_start(
* documentation.
*/
- if ((zerr = deflateInit2(&(http->stream), Z_DEFAULT_COMPRESSION,
- Z_DEFLATED,
- coding == _HTTP_CODING_DEFLATE ? -11 : 27, 7,
- Z_DEFAULT_STRATEGY)) < Z_OK)
+ if ((http->stream = calloc(1, sizeof(z_stream))) == NULL)
+ {
+ free(http->sbuffer);
+
+ http->sbuffer = NULL;
+ http->status = HTTP_STATUS_ERROR;
+ http->error = errno;
+ return;
+ }
+
+ if ((zerr = deflateInit2((z_stream *)http->stream, Z_DEFAULT_COMPRESSION, Z_DEFLATED, coding == _HTTP_CODING_DEFLATE ? -11 : 27, 7, Z_DEFAULT_STRATEGY)) < Z_OK)
{
- http->status = HTTP_STATUS_ERROR;
- http->error = zerr == Z_MEM_ERROR ? ENOMEM : EINVAL;
+ free(http->sbuffer);
+ free(http->stream);
+
+ http->sbuffer = NULL;
+ http->stream = NULL;
+ http->status = HTTP_STATUS_ERROR;
+ http->error = zerr == Z_MEM_ERROR ? ENOMEM : EINVAL;
return;
}
- http->stream.next_out = (Bytef *)http->sbuffer;
- http->stream.avail_out = (uInt)_HTTP_MAX_SBUFFER;
+ ((z_stream *)http->stream)->next_out = (Bytef *)http->sbuffer;
+ ((z_stream *)http->stream)->avail_out = (uInt)_HTTP_MAX_SBUFFER;
break;
case _HTTP_CODING_INFLATE :
@@ -3881,19 +3923,30 @@ http_content_coding_start(
* -15 is raw inflate, 31 is gunzip, per ZLIB documentation.
*/
- if ((zerr = inflateInit2(&(http->stream),
- coding == _HTTP_CODING_INFLATE ? -15 : 31))
- < Z_OK)
+ if ((http->stream = calloc(1, sizeof(z_stream))) == NULL)
+ {
+ free(http->sbuffer);
+
+ http->sbuffer = NULL;
+ http->status = HTTP_STATUS_ERROR;
+ http->error = errno;
+ return;
+ }
+
+ if ((zerr = inflateInit2((z_stream *)http->stream, coding == _HTTP_CODING_INFLATE ? -15 : 31)) < Z_OK)
{
free(http->sbuffer);
+ free(http->stream);
+
http->sbuffer = NULL;
+ http->stream = NULL;
http->status = HTTP_STATUS_ERROR;
http->error = zerr == Z_MEM_ERROR ? ENOMEM : EINVAL;
return;
}
- http->stream.avail_in = 0;
- http->stream.next_in = http->sbuffer;
+ ((z_stream *)http->stream)->avail_in = 0;
+ ((z_stream *)http->stream)->next_in = http->sbuffer;
break;
default :
@@ -3959,7 +4012,7 @@ http_create(
if ((http = calloc(sizeof(http_t), 1)) == NULL)
{
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, strerror(errno), 0);
- httpAddrFreeList(addrlist);
+ httpAddrFreeList(myaddrlist);
return (NULL);
}
@@ -4096,7 +4149,7 @@ http_read(http_t *http, /* I - HTTP connection */
if (bytes < 0)
{
-#ifdef WIN32
+#ifdef _WIN32
if (WSAGetLastError() != WSAEINTR)
{
http->error = WSAGetLastError();
@@ -4132,7 +4185,7 @@ http_read(http_t *http, /* I - HTTP connection */
http->error = errno;
return (-1);
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
}
while (bytes < 0);
@@ -4146,7 +4199,7 @@ http_read(http_t *http, /* I - HTTP connection */
if (bytes < 0)
{
-#ifdef WIN32
+#ifdef _WIN32
if (WSAGetLastError() == WSAEINTR)
bytes = 0;
else
@@ -4156,7 +4209,7 @@ http_read(http_t *http, /* I - HTTP connection */
bytes = 0;
else
http->error = errno;
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
else if (bytes == 0)
{
@@ -4520,7 +4573,7 @@ static void
http_set_timeout(int fd, /* I - File descriptor */
double timeout) /* I - Timeout in seconds */
{
-#ifdef WIN32
+#ifdef _WIN32
DWORD tv = (DWORD)(timeout * 1000);
/* Timeout in milliseconds */
@@ -4535,7 +4588,7 @@ http_set_timeout(int fd, /* I - File descriptor */
setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, CUPS_SOCAST &tv, sizeof(tv));
setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, CUPS_SOCAST &tv, sizeof(tv));
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -4697,12 +4750,12 @@ http_write(http_t *http, /* I - HTTP connection */
nfds = select(http->fd + 1, NULL, &output_set, NULL, &timeout);
}
-# ifdef WIN32
+# ifdef _WIN32
while (nfds < 0 && (WSAGetLastError() == WSAEINTR ||
WSAGetLastError() == WSAEWOULDBLOCK));
# else
while (nfds < 0 && (errno == EINTR || errno == EAGAIN));
-# endif /* WIN32 */
+# endif /* _WIN32 */
#endif /* HAVE_POLL */
if (nfds < 0)
@@ -4712,11 +4765,11 @@ http_write(http_t *http, /* I - HTTP connection */
}
else if (nfds == 0 && (!http->timeout_cb || !(*http->timeout_cb)(http, http->timeout_data)))
{
-#ifdef WIN32
+#ifdef _WIN32
http->error = WSAEWOULDBLOCK;
#else
http->error = EWOULDBLOCK;
-#endif /* WIN32 */
+#endif /* _WIN32 */
return (-1);
}
}
@@ -4735,7 +4788,7 @@ http_write(http_t *http, /* I - HTTP connection */
if (bytes < 0)
{
-#ifdef WIN32
+#ifdef _WIN32
if (WSAGetLastError() == WSAEINTR)
continue;
else if (WSAGetLastError() == WSAEWOULDBLOCK)
@@ -4769,7 +4822,7 @@ http_write(http_t *http, /* I - HTTP connection */
http->error = errno;
continue;
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
DEBUG_printf(("3http_write: error writing data (%s).",
strerror(http->error)));
diff --git a/cups/http.h b/cups/http.h
index 156efea..e94adae 100644
--- a/cups/http.h
+++ b/cups/http.h
@@ -1,7 +1,7 @@
/*
* Hyper-Text Transport Protocol definitions for CUPS.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -25,7 +25,7 @@
# include <string.h>
# include <time.h>
# include <sys/types.h>
-# ifdef WIN32
+# ifdef _WIN32
# ifndef __CUPS_SSIZE_T_DEFINED
# define __CUPS_SSIZE_T_DEFINED
/* Windows does not support the ssize_t type, so map it to off_t... */
@@ -54,7 +54,7 @@ typedef off_t ssize_t; /* @private@ */
# if defined(LOCAL_PEERCRED) && !defined(SO_PEERCRED)
# define SO_PEERCRED LOCAL_PEERCRED
# endif /* LOCAL_PEERCRED && !SO_PEERCRED */
-# endif /* WIN32 */
+# endif /* _WIN32 */
/*
@@ -85,7 +85,7 @@ extern "C" {
# define s6_addr32 _S6_un._S6_u32
# elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__APPLE__)|| defined(__DragonFly__)
# define s6_addr32 __u6_addr.__u6_addr32
-# elif defined(WIN32)
+# elif defined(_WIN32)
/*
* Windows only defines byte and 16-bit word members of the union and
* requires special casing of all raw address code...
@@ -181,6 +181,7 @@ typedef enum http_field_e /**** HTTP field names ****/
HTTP_FIELD_ACCEPT_ENCODING, /* Accepting-Encoding field @since CUPS 1.7/macOS 10.9@ */
HTTP_FIELD_ALLOW, /* Allow field @since CUPS 1.7/macOS 10.9@ */
HTTP_FIELD_SERVER, /* Server field @since CUPS 1.7/macOS 10.9@ */
+ HTTP_FIELD_AUTHENTICATION_INFO, /* Authentication-Info field (@since CUPS 2.2.9) */
HTTP_FIELD_MAX /* Maximum field index */
} http_field_t;
@@ -479,8 +480,7 @@ extern int httpHead(http_t *http, const char *uri);
extern void httpInitialize(void);
extern int httpOptions(http_t *http, const char *uri);
extern int httpPost(http_t *http, const char *uri);
-extern int httpPrintf(http_t *http, const char *format, ...)
- __attribute__ ((__format__ (__printf__, 2, 3)));
+extern int httpPrintf(http_t *http, const char *format, ...) _CUPS_FORMAT(2, 3);
extern int httpPut(http_t *http, const char *uri);
extern int httpRead(http_t *http, char *buffer, int length) _CUPS_DEPRECATED_MSG("Use httpRead2 instead.");
extern int httpReconnect(http_t *http) _CUPS_DEPRECATED_1_6_MSG("Use httpReconnect2 instead.");
diff --git a/cups/ipp.c b/cups/ipp.c
index b33a3bc..2c09f27 100644
--- a/cups/ipp.c
+++ b/cups/ipp.c
@@ -19,9 +19,9 @@
#include "cups-private.h"
#include <regex.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -33,12 +33,8 @@ static ipp_attribute_t *ipp_add_attr(ipp_t *ipp, const char *name,
int num_values);
static void ipp_free_values(ipp_attribute_t *attr, int element,
int count);
-static char *ipp_get_code(const char *locale, char *buffer,
- size_t bufsize)
- __attribute__((nonnull(1,2)));
-static char *ipp_lang_code(const char *locale, char *buffer,
- size_t bufsize)
- __attribute__((nonnull(1,2)));
+static char *ipp_get_code(const char *locale, char *buffer, size_t bufsize) _CUPS_NONNULL((1, 2));
+static char *ipp_lang_code(const char *locale, char *buffer, size_t bufsize) _CUPS_NONNULL((1, 2));
static size_t ipp_length(ipp_t *ipp, int collection);
static ssize_t ipp_read_http(http_t *http, ipp_uchar_t *buffer,
size_t length);
@@ -1483,6 +1479,7 @@ ippCopyAttribute(
int quickcopy) /* I - 1 for a referenced copy, 0 for normal */
{
int i; /* Looping var */
+ ipp_tag_t srctag; /* Source value tag */
ipp_attribute_t *dstattr; /* Destination attribute */
_ipp_value_t *srcval, /* Source value */
*dstval; /* Destination value */
@@ -1501,9 +1498,10 @@ ippCopyAttribute(
* Copy it...
*/
- quickcopy = quickcopy ? IPP_TAG_CUPS_CONST : 0;
+ quickcopy = (quickcopy && (srcattr->value_tag & IPP_TAG_CUPS_CONST)) ? IPP_TAG_CUPS_CONST : 0;
+ srctag = srcattr->value_tag & IPP_TAG_CUPS_MASK;
- switch (srcattr->value_tag & ~IPP_TAG_CUPS_CONST)
+ switch (srctag)
{
case IPP_TAG_ZERO :
dstattr = ippAddSeparator(dst);
@@ -1516,139 +1514,70 @@ ippCopyAttribute(
case IPP_TAG_NOTSETTABLE :
case IPP_TAG_DELETEATTR :
case IPP_TAG_ADMINDEFINE :
- dstattr = ippAddOutOfBand(dst, srcattr->group_tag, srcattr->value_tag & ~IPP_TAG_CUPS_CONST, srcattr->name);
+ dstattr = ippAddOutOfBand(dst, srcattr->group_tag, srctag, srcattr->name);
break;
case IPP_TAG_INTEGER :
case IPP_TAG_ENUM :
- dstattr = ippAddIntegers(dst, srcattr->group_tag, srcattr->value_tag,
- srcattr->name, srcattr->num_values, NULL);
- if (!dstattr)
- break;
-
- for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- dstval->integer = srcval->integer;
- break;
-
case IPP_TAG_BOOLEAN :
- dstattr = ippAddBooleans(dst, srcattr->group_tag, srcattr->name,
- srcattr->num_values, NULL);
- if (!dstattr)
- break;
-
- for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- dstval->boolean = srcval->boolean;
+ case IPP_TAG_DATE :
+ case IPP_TAG_RESOLUTION :
+ case IPP_TAG_RANGE :
+ if ((dstattr = ipp_add_attr(dst, srcattr->name, srcattr->group_tag, srctag, srcattr->num_values)) != NULL)
+ memcpy(dstattr->values, srcattr->values, (size_t)srcattr->num_values * sizeof(_ipp_value_t));
break;
case IPP_TAG_TEXT :
case IPP_TAG_NAME :
+ case IPP_TAG_RESERVED_STRING :
case IPP_TAG_KEYWORD :
case IPP_TAG_URI :
case IPP_TAG_URISCHEME :
case IPP_TAG_CHARSET :
case IPP_TAG_LANGUAGE :
case IPP_TAG_MIMETYPE :
- dstattr = ippAddStrings(dst, srcattr->group_tag,
- (ipp_tag_t)(srcattr->value_tag | quickcopy),
- srcattr->name, srcattr->num_values, NULL, NULL);
- if (!dstattr)
+ if ((dstattr = ippAddStrings(dst, srcattr->group_tag, (ipp_tag_t)(srctag | quickcopy), srcattr->name, srcattr->num_values, NULL, NULL)) == NULL)
break;
if (quickcopy)
{
- for (i = srcattr->num_values, srcval = srcattr->values,
- dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- dstval->string.text = srcval->string.text;
+ /*
+ * Can safely quick-copy these string values...
+ */
+
+ memcpy(dstattr->values, srcattr->values, (size_t)srcattr->num_values * sizeof(_ipp_value_t));
}
- else if (srcattr->value_tag & IPP_TAG_CUPS_CONST)
- {
- for (i = srcattr->num_values, srcval = srcattr->values,
- dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- dstval->string.text = _cupsStrAlloc(srcval->string.text);
- }
else
{
- for (i = srcattr->num_values, srcval = srcattr->values,
- dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- dstval->string.text = _cupsStrRetain(srcval->string.text);
- }
- break;
-
- case IPP_TAG_DATE :
- if (srcattr->num_values != 1)
- return (NULL);
-
- dstattr = ippAddDate(dst, srcattr->group_tag, srcattr->name,
- srcattr->values[0].date);
- break;
-
- case IPP_TAG_RESOLUTION :
- dstattr = ippAddResolutions(dst, srcattr->group_tag, srcattr->name,
- srcattr->num_values, IPP_RES_PER_INCH,
- NULL, NULL);
- if (!dstattr)
- break;
-
- for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- {
- dstval->resolution.xres = srcval->resolution.xres;
- dstval->resolution.yres = srcval->resolution.yres;
- dstval->resolution.units = srcval->resolution.units;
- }
- break;
-
- case IPP_TAG_RANGE :
- dstattr = ippAddRanges(dst, srcattr->group_tag, srcattr->name,
- srcattr->num_values, NULL, NULL);
- if (!dstattr)
- break;
+ /*
+ * Otherwise do a normal reference counted copy...
+ */
- for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- {
- dstval->range.lower = srcval->range.lower;
- dstval->range.upper = srcval->range.upper;
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values; i > 0; i --, srcval ++, dstval ++)
+ dstval->string.text = _cupsStrAlloc(srcval->string.text);
}
break;
case IPP_TAG_TEXTLANG :
case IPP_TAG_NAMELANG :
- dstattr = ippAddStrings(dst, srcattr->group_tag,
- (ipp_tag_t)(srcattr->value_tag | quickcopy),
- srcattr->name, srcattr->num_values, NULL, NULL);
- if (!dstattr)
+ if ((dstattr = ippAddStrings(dst, srcattr->group_tag, (ipp_tag_t)(srctag | quickcopy), srcattr->name, srcattr->num_values, NULL, NULL)) == NULL)
break;
if (quickcopy)
{
- for (i = srcattr->num_values, srcval = srcattr->values,
- dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- {
- dstval->string.language = srcval->string.language;
- dstval->string.text = srcval->string.text;
- }
+ /*
+ * Can safely quick-copy these string values...
+ */
+
+ memcpy(dstattr->values, srcattr->values, (size_t)srcattr->num_values * sizeof(_ipp_value_t));
}
else if (srcattr->value_tag & IPP_TAG_CUPS_CONST)
{
- for (i = srcattr->num_values, srcval = srcattr->values,
- dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
+ /*
+ * Otherwise do a normal reference counted copy...
+ */
+
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values; i > 0; i --, srcval ++, dstval ++)
{
if (srcval == srcattr->values)
dstval->string.language = _cupsStrAlloc(srcval->string.language);
@@ -1658,32 +1587,13 @@ ippCopyAttribute(
dstval->string.text = _cupsStrAlloc(srcval->string.text);
}
}
- else
- {
- for (i = srcattr->num_values, srcval = srcattr->values,
- dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
- {
- if (srcval == srcattr->values)
- dstval->string.language = _cupsStrRetain(srcval->string.language);
- else
- dstval->string.language = dstattr->values[0].string.language;
-
- dstval->string.text = _cupsStrRetain(srcval->string.text);
- }
- }
break;
case IPP_TAG_BEGIN_COLLECTION :
- dstattr = ippAddCollections(dst, srcattr->group_tag, srcattr->name,
- srcattr->num_values, NULL);
- if (!dstattr)
+ if ((dstattr = ippAddCollections(dst, srcattr->group_tag, srcattr->name, srcattr->num_values, NULL)) == NULL)
break;
- for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values; i > 0; i --, srcval ++, dstval ++)
{
dstval->collection = srcval->collection;
srcval->collection->use ++;
@@ -1692,15 +1602,10 @@ ippCopyAttribute(
case IPP_TAG_STRING :
default :
- /* TODO: Implement quick copy for unknown/octetString values */
- dstattr = ippAddIntegers(dst, srcattr->group_tag, srcattr->value_tag,
- srcattr->name, srcattr->num_values, NULL);
- if (!dstattr)
+ if ((dstattr = ipp_add_attr(dst, srcattr->name, srcattr->group_tag, srctag, srcattr->num_values)) == NULL)
break;
- for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values;
- i > 0;
- i --, srcval ++, dstval ++)
+ for (i = srcattr->num_values, srcval = srcattr->values, dstval = dstattr->values; i > 0; i --, srcval ++, dstval ++)
{
dstval->unknown.length = srcval->unknown.length;
@@ -3393,7 +3298,10 @@ ippReadIO(void *src, /* I - Data source */
value->boolean = (char)buffer[0];
break;
- case IPP_TAG_NOVALUE :
+ case IPP_TAG_UNSUPPORTED_VALUE :
+ case IPP_TAG_DEFAULT :
+ case IPP_TAG_UNKNOWN :
+ case IPP_TAG_NOVALUE :
case IPP_TAG_NOTSETTABLE :
case IPP_TAG_DELETEATTR :
case IPP_TAG_ADMINDEFINE :
@@ -3413,6 +3321,7 @@ ippReadIO(void *src, /* I - Data source */
case IPP_TAG_TEXT :
case IPP_TAG_NAME :
+ case IPP_TAG_RESERVED_STRING :
case IPP_TAG_KEYWORD :
case IPP_TAG_URI :
case IPP_TAG_URISCHEME :
@@ -4328,7 +4237,7 @@ ippSetString(ipp_t *ipp, /* I - IPP message */
if (!ipp || !attr || !*attr ||
(value_tag < IPP_TAG_TEXT && value_tag != IPP_TAG_TEXTLANG &&
value_tag != IPP_TAG_NAMELANG) || value_tag > IPP_TAG_MIMETYPE ||
- !strvalue)
+ element < 0 || element > (*attr)->num_values || !strvalue)
return (0);
/*
@@ -5097,16 +5006,19 @@ ippValidateAttribute(
break;
}
- if (*ptr < ' ' || *ptr == 0x7f)
- {
- ipp_set_error(IPP_STATUS_ERROR_BAD_REQUEST, _("\"%s\": Bad text value \"%s\" - bad control character (PWG 5100.14 section 8.3)."), attr->name, attr->values[i].string.text);
- return (0);
- }
- else if (*ptr)
- {
- ipp_set_error(IPP_STATUS_ERROR_BAD_REQUEST, _("\"%s\": Bad text value \"%s\" - bad UTF-8 sequence (RFC 8011 section 5.1.2)."), attr->name, attr->values[i].string.text);
- return (0);
- }
+ if (*ptr)
+ {
+ if (*ptr < ' ' || *ptr == 0x7f)
+ {
+ ipp_set_error(IPP_STATUS_ERROR_BAD_REQUEST, _("\"%s\": Bad text value \"%s\" - bad control character (PWG 5100.14 section 8.3)."), attr->name, attr->values[i].string.text);
+ return (0);
+ }
+ else
+ {
+ ipp_set_error(IPP_STATUS_ERROR_BAD_REQUEST, _("\"%s\": Bad text value \"%s\" - bad UTF-8 sequence (RFC 8011 section 5.1.2)."), attr->name, attr->values[i].string.text);
+ return (0);
+ }
+ }
if ((ptr - attr->values[i].string.text) > (IPP_MAX_TEXT - 1))
{
@@ -5159,16 +5071,19 @@ ippValidateAttribute(
break;
}
- if (*ptr < ' ' || *ptr == 0x7f)
- {
- ipp_set_error(IPP_STATUS_ERROR_BAD_REQUEST, _("\"%s\": Bad name value \"%s\" - bad control character (PWG 5100.14 section 8.1)."), attr->name, attr->values[i].string.text);
- return (0);
- }
- else if (*ptr)
+ if (*ptr)
{
- ipp_set_error(IPP_STATUS_ERROR_BAD_REQUEST, _("\"%s\": Bad name value \"%s\" - bad UTF-8 sequence (RFC 8011 section 5.1.3)."), attr->name, attr->values[i].string.text);
- return (0);
- }
+ if (*ptr < ' ' || *ptr == 0x7f)
+ {
+ ipp_set_error(IPP_STATUS_ERROR_BAD_REQUEST, _("\"%s\": Bad name value \"%s\" - bad control character (PWG 5100.14 section 8.1)."), attr->name, attr->values[i].string.text);
+ return (0);
+ }
+ else
+ {
+ ipp_set_error(IPP_STATUS_ERROR_BAD_REQUEST, _("\"%s\": Bad name value \"%s\" - bad UTF-8 sequence (RFC 8011 section 5.1.3)."), attr->name, attr->values[i].string.text);
+ return (0);
+ }
+ }
if ((ptr - attr->values[i].string.text) > (IPP_MAX_NAME - 1))
{
@@ -6501,6 +6416,7 @@ ipp_free_values(ipp_attribute_t *attr, /* I - Attribute to free values from */
}
break;
+ case IPP_TAG_UNSUPPORTED_VALUE :
case IPP_TAG_DEFAULT :
case IPP_TAG_UNKNOWN :
case IPP_TAG_NOVALUE :
@@ -6842,14 +6758,14 @@ ipp_read_http(http_t *http, /* I - Client connection */
if ((bytes = httpRead2(http, (char *)buffer, length - (size_t)tbytes)) < 0)
{
-#ifdef WIN32
+#ifdef _WIN32
break;
#else
if (errno != EAGAIN && errno != EINTR)
break;
bytes = 0;
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
else if (bytes == 0)
break;
@@ -6877,11 +6793,11 @@ ipp_read_file(int *fd, /* I - File descriptor */
ipp_uchar_t *buffer, /* O - Read buffer */
size_t length) /* I - Number of bytes to read */
{
-#ifdef WIN32
+#ifdef _WIN32
return ((ssize_t)read(*fd, buffer, (unsigned)length));
#else
return (read(*fd, buffer, length));
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -7049,9 +6965,9 @@ ipp_write_file(int *fd, /* I - File descriptor */
ipp_uchar_t *buffer, /* I - Data to write */
size_t length) /* I - Number of bytes to write */
{
-#ifdef WIN32
+#ifdef _WIN32
return ((ssize_t)write(*fd, buffer, (unsigned)length));
#else
return (write(*fd, buffer, length));
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
diff --git a/cups/language-private.h b/cups/language-private.h
index 49e4b71..f447ef9 100644
--- a/cups/language-private.h
+++ b/cups/language-private.h
@@ -1,7 +1,7 @@
/*
* Private localization support for CUPS.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -20,6 +20,7 @@
* Include necessary headers...
*/
+# include "config.h"
# include <stdio.h>
# include <cups/transcode.h>
# ifdef __APPLE__
@@ -59,16 +60,11 @@ extern const char *_cupsAppleLocale(CFStringRef languageName, char *locale, size
# endif /* __APPLE__ */
extern void _cupsCharmapFlush(void);
extern const char *_cupsEncodingName(cups_encoding_t encoding);
-extern void _cupsLangPrintError(const char *prefix,
- const char *message);
-extern int _cupsLangPrintFilter(FILE *fp, const char *prefix,
- const char *message, ...)
- __attribute__ ((__format__ (__printf__, 3, 4)));
-extern int _cupsLangPrintf(FILE *fp, const char *message, ...)
- __attribute__ ((__format__ (__printf__, 2, 3)));
+extern void _cupsLangPrintError(const char *prefix, const char *message);
+extern int _cupsLangPrintFilter(FILE *fp, const char *prefix, const char *message, ...) _CUPS_FORMAT(3, 4);
+extern int _cupsLangPrintf(FILE *fp, const char *message, ...) _CUPS_FORMAT(2, 3);
extern int _cupsLangPuts(FILE *fp, const char *message);
-extern const char *_cupsLangString(cups_lang_t *lang,
- const char *message);
+extern const char *_cupsLangString(cups_lang_t *lang, const char *message);
extern void _cupsMessageFree(cups_array_t *a);
extern cups_array_t *_cupsMessageLoad(const char *filename, int unquote);
extern const char *_cupsMessageLookup(cups_array_t *a, const char *m);
diff --git a/cups/language.c b/cups/language.c
index e6d2d44..61280c0 100644
--- a/cups/language.c
+++ b/cups/language.c
@@ -21,11 +21,11 @@
#ifdef HAVE_LANGINFO_H
# include <langinfo.h>
#endif /* HAVE_LANGINFO_H */
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#ifdef HAVE_COREFOUNDATION_H
# include <CoreFoundation/CoreFoundation.h>
#endif /* HAVE_COREFOUNDATION_H */
diff --git a/cups/libcups2.def b/cups/libcups2.def
index a7be679..fa4aaa3 100644
--- a/cups/libcups2.def
+++ b/cups/libcups2.def
@@ -1,5 +1,5 @@
LIBRARY libcups2
-VERSION 2.12
+VERSION 2.13
EXPORTS
_cupsArrayAddStrings
_cupsArrayNewStrings
@@ -13,6 +13,7 @@ _cupsConnect
_cupsConvertOptions
_cupsCreateDest
_cupsEncodingName
+_cupsFilePeekAhead
_cupsGet1284Values
_cupsGetDestResource
_cupsGetDests
@@ -24,9 +25,6 @@ _cupsLangPrintError
_cupsLangPrintf
_cupsLangPuts
_cupsLangString
-_cupsMD5Append
-_cupsMD5Finish
-_cupsMD5Init
_cupsMessageFree
_cupsMessageLoad
_cupsMessageLookup
@@ -39,18 +37,6 @@ _cupsRWInit
_cupsRWLockRead
_cupsRWLockWrite
_cupsRWUnlock
-_cupsSNMPClose
-_cupsSNMPCopyOID
-_cupsSNMPDefaultCommunity
-_cupsSNMPIsOID
-_cupsSNMPIsOIDPrefixed
-_cupsSNMPOIDToString
-_cupsSNMPOpen
-_cupsSNMPRead
-_cupsSNMPSetDebug
-_cupsSNMPStringToOID
-_cupsSNMPWalk
-_cupsSNMPWrite
_cupsSetDefaults
_cupsSetError
_cupsSetHTTPError
@@ -65,6 +51,7 @@ _cupsStrScand
_cupsStrStatistics
_cupsThreadCancel
_cupsThreadCreate
+_cupsThreadDetach
_cupsThreadWait
_cupsUserDefault
_cups_safe_vsnprintf
@@ -81,6 +68,7 @@ _httpDisconnect
_httpEncodeURI
_httpFreeCredentials
_httpResolveURI
+_httpSetDigestAuthString
_httpStatus
_httpTLSInitialize
_httpTLSPending
@@ -124,6 +112,7 @@ _pwgMediaTable
_pwgMediaTypeForType
_pwgPageSizeForMedia
cupsAddDest
+cupsAddIntegerOption
cupsAddOption
cupsAdminCreateWindowsPPD
cupsAdminExportSamba
@@ -227,6 +216,7 @@ cupsGetDests2
cupsGetDevices
cupsGetFd
cupsGetFile
+cupsGetIntegerOption
cupsGetJobs
cupsGetJobs2
cupsGetNamedDest
@@ -240,6 +230,7 @@ cupsGetPrinters
cupsGetResponse
cupsGetServerPPD
cupsHashData
+cupsHashString
cupsLangDefault
cupsLangEncoding
cupsLangFlush
diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
index d67a19b..9ed946e 100644
--- a/cups/ppd-cache.c
+++ b/cups/ppd-cache.c
@@ -3105,8 +3105,8 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
cupsFilePrintf(fp, "*Manufacturer: \"%s\"\n", make);
cupsFilePrintf(fp, "*ModelName: \"%s\"\n", model);
cupsFilePrintf(fp, "*Product: \"(%s)\"\n", model);
- cupsFilePrintf(fp, "*NickName: \"%s\"\n", model);
- cupsFilePrintf(fp, "*ShortNickName: \"%s\"\n", model);
+ cupsFilePrintf(fp, "*NickName: \"%s - IPP Everywhere\"\n", model);
+ cupsFilePrintf(fp, "*ShortNickName: \"%s - IPP Everywhere\"\n", model);
if ((attr = ippFindAttribute(response, "color-supported", IPP_TAG_BOOLEAN)) != NULL && ippGetBoolean(attr, 0))
cupsFilePuts(fp, "*ColorDevice: True\n");
@@ -3130,22 +3130,22 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
/* Type of password */
if (maxlen > (int)(sizeof(pattern) - 1))
- maxlen = sizeof(pattern) - 1;
+ maxlen = (int)sizeof(pattern) - 1;
if (!repertoire || !strcmp(repertoire, "iana_us-ascii_digits"))
- memset(pattern, '1', maxlen);
+ memset(pattern, '1', (size_t)maxlen);
else if (!strcmp(repertoire, "iana_us-ascii_letters"))
- memset(pattern, 'A', maxlen);
+ memset(pattern, 'A', (size_t)maxlen);
else if (!strcmp(repertoire, "iana_us-ascii_complex"))
- memset(pattern, 'C', maxlen);
+ memset(pattern, 'C', (size_t)maxlen);
else if (!strcmp(repertoire, "iana_us-ascii_any"))
- memset(pattern, '.', maxlen);
+ memset(pattern, '.', (size_t)maxlen);
else if (!strcmp(repertoire, "iana_utf-8_digits"))
- memset(pattern, 'N', maxlen);
+ memset(pattern, 'N', (size_t)maxlen);
else if (!strcmp(repertoire, "iana_utf-8_letters"))
- memset(pattern, 'U', maxlen);
+ memset(pattern, 'U', (size_t)maxlen);
else
- memset(pattern, '*', maxlen);
+ memset(pattern, '*', (size_t)maxlen);
pattern[maxlen] = '\0';
@@ -3167,7 +3167,17 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if (ippContainsString(attr, "image/png"))
cupsFilePuts(fp, "*cupsFilter2: \"image/png image/png 0 -\"\n");
if (is_pdf)
- cupsFilePuts(fp, "*cupsFilter2: \"application/vnd.cups-pdf application/pdf 10 -\"\n");
+ {
+ /*
+ * Don't locally filter PDF content when printing to a CUPS shared
+ * printer, otherwise the options will be applied twice...
+ */
+
+ if (ippContainsString(attr, "application/vnd.cups-pdf"))
+ cupsFilePuts(fp, "*cupsFilter2: \"application/pdf application/pdf 0 -\"\n");
+ else
+ cupsFilePuts(fp, "*cupsFilter2: \"application/vnd.cups-pdf application/pdf 10 -\"\n");
+ }
if (is_apple)
cupsFilePuts(fp, "*cupsFilter2: \"image/urf image/urf 100 -\"\n");
if (is_pwg)
@@ -3443,7 +3453,8 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
for (j = 0; j < (int)(sizeof(sources) / sizeof(sources[0])); j ++)
if (!strcmp(sources[j][0], ppdname))
{
- cupsFilePrintf(fp, "*InputSlot %s/%s: \"<</MediaPosition %d>>setpagedevice\"\n", ppdname, _cupsLangString(lang, sources[j][1]), j);
+ cupsFilePrintf(fp, "*InputSlot %s: \"<</MediaPosition %d>>setpagedevice\"\n", ppdname, j);
+ cupsFilePrintf(fp, "*%s.InputSlot %s/%s: \"\"\n", lang->language, ppdname, _cupsLangString(lang, sources[j][1]));
break;
}
}
@@ -3619,9 +3630,14 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
break;
if (j < (int)(sizeof(media_types) / sizeof(media_types[0])))
- cupsFilePrintf(fp, "*MediaType %s/%s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, _cupsLangString(lang, media_types[j][1]), ppdname);
+ {
+ cupsFilePrintf(fp, "*MediaType %s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, ppdname);
+ cupsFilePrintf(fp, "*%s.MediaType %s/%s: \"\"\n", lang->language, ppdname, _cupsLangString(lang, media_types[j][1]));
+ }
else
+ {
cupsFilePrintf(fp, "*MediaType %s/%s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, keyword, ppdname);
+ }
}
cupsFilePuts(fp, "*CloseUI: *MediaType\n");
}
@@ -3647,10 +3663,11 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if (!strcasecmp(keyword, "black_1") || !strcmp(keyword, "bi-level") || !strcmp(keyword, "process-bi-level"))
{
if (!default_color)
- cupsFilePrintf(fp, "*OpenUI *ColorModel/%s: PickOne\n"
- "*OrderDependency: 10 AnySetup *ColorModel\n", _cupsLangString(lang, _("Color Mode")));
+ cupsFilePrintf(fp, "*OpenUI *ColorModel: PickOne\n"
+ "*OrderDependency: 10 AnySetup *ColorModel\n"
+ "*%s.Translation ColorModel/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Color Mode")));
- cupsFilePrintf(fp, "*ColorModel FastGray/%s: \"<</cupsColorSpace 3/cupsBitsPerColor 1/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n", _cupsLangString(lang, _("Fast Grayscale")));
+ cupsFilePrintf(fp, "*ColorModel FastGray: \"<</cupsColorSpace 3/cupsBitsPerColor 1/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n*%s.ColorModel FastGray/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Fast Grayscale")));
if (!default_color)
default_color = "FastGray";
@@ -3658,10 +3675,11 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
else if (!strcasecmp(keyword, "sgray_8") || !strcmp(keyword, "W8") || !strcmp(keyword, "monochrome") || !strcmp(keyword, "process-monochrome"))
{
if (!default_color)
- cupsFilePrintf(fp, "*OpenUI *ColorModel/%s: PickOne\n"
- "*OrderDependency: 10 AnySetup *ColorModel\n", _cupsLangString(lang, _("Color Mode")));
+ cupsFilePrintf(fp, "*OpenUI *ColorModel: PickOne\n"
+ "*OrderDependency: 10 AnySetup *ColorModel\n"
+ "*%s.Translation ColorModel/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Color Mode")));
- cupsFilePrintf(fp, "*ColorModel Gray/%s: \"<</cupsColorSpace 18/cupsBitsPerColor 8/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n", _cupsLangString(lang, _("Grayscale")));
+ cupsFilePrintf(fp, "*ColorModel Gray: \"<</cupsColorSpace 18/cupsBitsPerColor 8/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n*%s.ColorModel Gray/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Grayscale")));
if (!default_color || !strcmp(default_color, "FastGray"))
default_color = "Gray";
@@ -3669,20 +3687,22 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
else if (!strcasecmp(keyword, "srgb_8") || !strcmp(keyword, "SRGB24") || !strcmp(keyword, "color"))
{
if (!default_color)
- cupsFilePrintf(fp, "*OpenUI *ColorModel/%s: PickOne\n"
- "*OrderDependency: 10 AnySetup *ColorModel\n", _cupsLangString(lang, _("Color Mode")));
+ cupsFilePrintf(fp, "*OpenUI *ColorModel: PickOne\n"
+ "*OrderDependency: 10 AnySetup *ColorModel\n"
+ "*%s.Translation ColorModel/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Color Mode")));
- cupsFilePrintf(fp, "*ColorModel RGB/%s: \"<</cupsColorSpace 19/cupsBitsPerColor 8/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n", _cupsLangString(lang, _("Color")));
+ cupsFilePrintf(fp, "*ColorModel RGB: \"<</cupsColorSpace 19/cupsBitsPerColor 8/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n*%s.ColorModel RGB/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Color")));
default_color = "RGB";
}
else if (!strcasecmp(keyword, "adobe-rgb_16") || !strcmp(keyword, "ADOBERGB48"))
{
if (!default_color)
- cupsFilePrintf(fp, "*OpenUI *ColorModel/%s: PickOne\n"
- "*OrderDependency: 10 AnySetup *ColorModel\n", _cupsLangString(lang, _("Color Mode")));
+ cupsFilePrintf(fp, "*OpenUI *ColorModel: PickOne\n"
+ "*OrderDependency: 10 AnySetup *ColorModel\n"
+ "*%s.Translation ColorModel/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Color Mode")));
- cupsFilePrintf(fp, "*ColorModel AdobeRGB/%s: \"<</cupsColorSpace 20/cupsBitsPerColor 16/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n", _cupsLangString(lang, _("Deep Color")));
+ cupsFilePrintf(fp, "*ColorModel AdobeRGB: \"<</cupsColorSpace 20/cupsBitsPerColor 16/cupsColorOrder 0/cupsCompression 0>>setpagedevice\"\n*%s.ColorModel AdobeRGB/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Deep Color")));
if (!default_color)
default_color = "AdobeRGB";
@@ -3702,13 +3722,17 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if ((attr = ippFindAttribute(response, "sides-supported", IPP_TAG_KEYWORD)) != NULL && ippContainsString(attr, "two-sided-long-edge"))
{
- cupsFilePrintf(fp, "*OpenUI *Duplex/%s: PickOne\n"
+ cupsFilePrintf(fp, "*OpenUI *Duplex: PickOne\n"
"*OrderDependency: 10 AnySetup *Duplex\n"
+ "*%s.Translation Duplex/%s: \"\"\n"
"*DefaultDuplex: None\n"
- "*Duplex None/%s: \"<</Duplex false>>setpagedevice\"\n"
- "*Duplex DuplexNoTumble/%s: \"<</Duplex true/Tumble false>>setpagedevice\"\n"
- "*Duplex DuplexTumble/%s: \"<</Duplex true/Tumble true>>setpagedevice\"\n"
- "*CloseUI: *Duplex\n", _cupsLangString(lang, _("2-Sided Printing")), _cupsLangString(lang, _("Off (1-Sided)")), _cupsLangString(lang, _("Long-Edge (Portrait)")), _cupsLangString(lang, _("Short-Edge (Landscape)")));
+ "*Duplex None: \"<</Duplex false>>setpagedevice\"\n"
+ "*%s.Duplex None/%s: \"\"\n"
+ "*Duplex DuplexNoTumble: \"<</Duplex true/Tumble false>>setpagedevice\"\n"
+ "*%s.Duplex DuplexNoTumble/%s: \"\"\n"
+ "*Duplex DuplexTumble: \"<</Duplex true/Tumble true>>setpagedevice\"\n"
+ "*%s.Duplex DuplexTumble/%s: \"\"\n"
+ "*CloseUI: *Duplex\n", lang->language, _cupsLangString(lang, _("2-Sided Printing")), lang->language, _cupsLangString(lang, _("Off (1-Sided)")), lang->language, _cupsLangString(lang, _("Long-Edge (Portrait)")), lang->language, _cupsLangString(lang, _("Short-Edge (Landscape)")));
if ((attr = ippFindAttribute(response, "urf-supported", IPP_TAG_KEYWORD)) != NULL)
{
@@ -3766,6 +3790,12 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if ((attr = ippFindAttribute(response, "output-bin-supported", IPP_TAG_ZERO)) != NULL && (count = ippGetCount(attr)) > 1)
{
+ ipp_attribute_t *trays = ippFindAttribute(response, "printer-output-tray", IPP_TAG_STRING);
+ /* printer-output-tray attribute, if any */
+ const char *tray_ptr; /* printer-output-tray value */
+ int tray_len; /* Len of printer-output-tray value */
+ char tray[IPP_MAX_OCTETSTRING];
+ /* printer-output-tray string value */
static const char * const output_bins[][2] =
{ /* "output-bin" strings */
{ "auto", _("Automatic") },
@@ -3816,6 +3846,11 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
cupsFilePrintf(fp, "*OpenUI *OutputBin: PickOne\n"
"*OrderDependency: 10 AnySetup *OutputBin\n"
"*DefaultOutputBin: %s\n", ppdname);
+ if (!strcmp(ppdname, "FaceUp"))
+ cupsFilePuts(fp, "*DefaultOutputOrder: Reverse\n");
+ else
+ cupsFilePuts(fp, "*DefaultOutputOrder: Normal\n");
+
for (i = 0; i < (int)(sizeof(output_bins) / sizeof(output_bins[0])); i ++)
{
if (!ippContainsString(attr, output_bins[i][0]))
@@ -3823,7 +3858,26 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
pwg_ppdize_name(output_bins[i][0], ppdname, sizeof(ppdname));
- cupsFilePrintf(fp, "*OutputBin %s/%s: \"\"\n", ppdname, _cupsLangString(lang, output_bins[i][1]));
+ cupsFilePrintf(fp, "*OutputBin %s: \"\"\n", ppdname);
+ cupsFilePrintf(fp, "*%s.OutputBin %s/%s: \"\"\n", lang->language, ppdname, _cupsLangString(lang, output_bins[i][1]));
+
+ if ((tray_ptr = ippGetOctetString(trays, i, &tray_len)) != NULL)
+ {
+ if (tray_len >= (int)sizeof(tray))
+ tray_len = (int)sizeof(tray) - 1;
+
+ memcpy(tray, tray_ptr, (size_t)tray_len);
+ tray[tray_len] = '\0';
+
+ if (strstr(tray, "stackingorder=lastToFirst;"))
+ cupsFilePrintf(fp, "*PageStackOrder %s: Reverse\n", ppdname);
+ else
+ cupsFilePrintf(fp, "*PageStackOrder %s: Normal\n", ppdname);
+ }
+ else if (!strcmp(ppdname, "FaceUp"))
+ cupsFilePrintf(fp, "*PageStackOrder %s: Reverse\n", ppdname);
+ else
+ cupsFilePrintf(fp, "*PageStackOrder %s: Normal\n", ppdname);
}
cupsFilePuts(fp, "*CloseUI: *OutputBin\n");
}
@@ -3861,10 +3915,12 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if (i < count)
{
- cupsFilePrintf(fp, "*OpenUI *StapleLocation/%s: PickOne\n", _cupsLangString(lang, _("Staple")));
+ cupsFilePuts(fp, "*OpenUI *StapleLocation: PickOne\n");
cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *StapleLocation\n");
+ cupsFilePrintf(fp, "*%s.Translation StapleLocation/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Staple")));
cupsFilePuts(fp, "*DefaultStapleLocation: None\n");
- cupsFilePrintf(fp, "*StapleLocation None/%s: \"\"\n", _cupsLangString(lang, _("None")));
+ cupsFilePuts(fp, "*StapleLocation None: \"\"\n");
+ cupsFilePrintf(fp, "*%s.StapleLocation None/%s: \"\"\n", lang->language, _cupsLangString(lang, _("None")));
for (; i < count; i ++)
{
@@ -3883,7 +3939,8 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
{
if (!strcmp(finishings[j][0], name))
{
- cupsFilePrintf(fp, "*StapleLocation %s/%s: \"\"\n", name, _cupsLangString(lang, finishings[j][1]));
+ cupsFilePrintf(fp, "*StapleLocation %s: \"\"\n", name);
+ cupsFilePrintf(fp, "*%s.StapleLocation %s/%s: \"\"\n", lang->language, name, _cupsLangString(lang, finishings[j][1]));
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*StapleLocation %s\"\n", value, name, name);
break;
}
@@ -3908,10 +3965,12 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if (i < count)
{
- cupsFilePrintf(fp, "*OpenUI *FoldType/%s: PickOne\n", _cupsLangString(lang, _("Fold")));
+ cupsFilePuts(fp, "*OpenUI *FoldType: PickOne\n");
cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *FoldType\n");
+ cupsFilePrintf(fp, "*%s.Translation FoldType/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Fold")));
cupsFilePuts(fp, "*DefaultFoldType: None\n");
- cupsFilePrintf(fp, "*FoldType None/%s: \"\"\n", _cupsLangString(lang, _("None")));
+ cupsFilePuts(fp, "*FoldType None: \"\"\n");
+ cupsFilePrintf(fp, "*%s.FoldType None/%s: \"\"\n", lang->language, _cupsLangString(lang, _("None")));
for (; i < count; i ++)
{
@@ -3930,7 +3989,8 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
{
if (!strcmp(finishings[j][0], name))
{
- cupsFilePrintf(fp, "*FoldType %s/%s: \"\"\n", name, _cupsLangString(lang, finishings[j][1]));
+ cupsFilePrintf(fp, "*FoldType %s: \"\"\n", name);
+ cupsFilePrintf(fp, "*%s.FoldType %s/%s: \"\"\n", lang->language, name, _cupsLangString(lang, finishings[j][1]));
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*FoldType %s\"\n", value, name, name);
break;
}
@@ -3955,10 +4015,12 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if (i < count)
{
- cupsFilePrintf(fp, "*OpenUI *PunchMedia/%s: PickOne\n", _cupsLangString(lang, _("Punch")));
+ cupsFilePuts(fp, "*OpenUI *PunchMedia: PickOne\n");
cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *PunchMedia\n");
+ cupsFilePrintf(fp, "*%s.Translation PunchMedia/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Punch")));
cupsFilePuts(fp, "*DefaultPunchMedia: None\n");
- cupsFilePrintf(fp, "*PunchMedia None/%s: \"\"\n", _cupsLangString(lang, _("None")));
+ cupsFilePuts(fp, "*PunchMedia None: \"\"\n");
+ cupsFilePrintf(fp, "*%s.PunchMedia None/%s: \"\"\n", lang->language, _cupsLangString(lang, _("None")));
for (i = 0; i < count; i ++)
{
@@ -3977,7 +4039,8 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
{
if (!strcmp(finishings[j][0], name))
{
- cupsFilePrintf(fp, "*PunchMedia %s/%s: \"\"\n", name, _cupsLangString(lang, finishings[j][1]));
+ cupsFilePrintf(fp, "*PunchMedia %s: \"\"\n", name);
+ cupsFilePrintf(fp, "*%s.PunchMedia %s/%s: \"\"\n", lang->language, name, _cupsLangString(lang, finishings[j][1]));
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*PunchMedia %s\"\n", value, name, name);
break;
}
@@ -3993,8 +4056,9 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if (ippContainsInteger(attr, IPP_FINISHINGS_BOOKLET_MAKER))
{
- cupsFilePrintf(fp, "*OpenUI *Booklet/%s: Boolean\n", _cupsLangString(lang, _("Booklet")));
+ cupsFilePuts(fp, "*OpenUI *Booklet: Boolean\n");
cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *Booklet\n");
+ cupsFilePrintf(fp, "*%s.Translation Booklet/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Booklet")));
cupsFilePuts(fp, "*DefaultBooklet: False\n");
cupsFilePuts(fp, "*Booklet False: \"\"\n");
cupsFilePuts(fp, "*Booklet True: \"\"\n");
@@ -4047,16 +4111,19 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
cupsFilePrintf(fp, "*DefaultResolution: %ddpi\n", lowdpi);
- cupsFilePrintf(fp, "*OpenUI *cupsPrintQuality/%s: PickOne\n"
- "*OrderDependency: 10 AnySetup *cupsPrintQuality\n"
- "*DefaultcupsPrintQuality: Normal\n", _cupsLangString(lang, _("Print Quality")));
+ cupsFilePrintf(fp, "*OpenUI *cupsPrintQuality: PickOne\n"
+ "*OrderDependency: 10 AnySetup *cupsPrintQuality\n"
+ "*%s.Translation cupsPrintQuality/%s: \"\"\n"
+ "*DefaultcupsPrintQuality: Normal\n", lang->language, _cupsLangString(lang, _("Print Quality")));
if ((lowdpi & 1) == 0)
- cupsFilePrintf(fp, "*cupsPrintQuality Draft/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Draft")), lowdpi, lowdpi / 2);
+ cupsFilePrintf(fp, "*cupsPrintQuality Draft: \"<</HWResolution[%d %d]>>setpagedevice\"\n*%s.cupsPrintQuality Draft/%s: \"\"\n", lowdpi, lowdpi / 2, lang->language, _cupsLangString(lang, _("Draft")));
else if (ippContainsInteger(quality, IPP_QUALITY_DRAFT))
- cupsFilePrintf(fp, "*cupsPrintQuality Draft/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Draft")), lowdpi, lowdpi);
- cupsFilePrintf(fp, "*cupsPrintQuality Normal/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Normal")), lowdpi, lowdpi);
+ cupsFilePrintf(fp, "*cupsPrintQuality Draft: \"<</HWResolution[%d %d]>>setpagedevice\"\n*%s.cupsPrintQuality Draft/%s: \"\"\n", lowdpi, lowdpi, lang->language, _cupsLangString(lang, _("Draft")));
+
+ cupsFilePrintf(fp, "*cupsPrintQuality Normal: \"<</HWResolution[%d %d]>>setpagedevice\"\n*%s.cupsPrintQuality Normal/%s: \"\"\n", lowdpi, lowdpi, lang->language, _cupsLangString(lang, _("Normal")));
+
if (hidpi > lowdpi || ippContainsInteger(quality, IPP_QUALITY_HIGH))
- cupsFilePrintf(fp, "*cupsPrintQuality High/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("High")), hidpi, hidpi);
+ cupsFilePrintf(fp, "*cupsPrintQuality High: \"<</HWResolution[%d %d]>>setpagedevice\"\n*%s.cupsPrintQuality High/%s: \"\"\n", hidpi, hidpi, lang->language, _cupsLangString(lang, _("High")));
cupsFilePuts(fp, "*CloseUI: *cupsPrintQuality\n");
}
}
@@ -4070,7 +4137,8 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if (count > (int)(sizeof(resolutions) / sizeof(resolutions[0])))
count = (int)(sizeof(resolutions) / sizeof(resolutions[0]));
- for (i = 0; i < count; i ++)
+ resolutions[0] = 0; /* Not in loop to silence Clang static analyzer... */
+ for (i = 1; i < count; i ++)
resolutions[i] = i;
for (i = 0; i < (count - 1); i ++)
@@ -4105,20 +4173,26 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
pwg_ppdize_resolution(attr, resolutions[count / 2], &xres, &yres, ppdname, sizeof(ppdname));
cupsFilePrintf(fp, "*DefaultResolution: %s\n", ppdname);
- cupsFilePrintf(fp, "*OpenUI *cupsPrintQuality/%s: PickOne\n"
- "*OrderDependency: 10 AnySetup *cupsPrintQuality\n"
- "*DefaultcupsPrintQuality: Normal\n", _cupsLangString(lang, _("Print Quality")));
+ cupsFilePrintf(fp, "*OpenUI *cupsPrintQuality: PickOne\n"
+ "*OrderDependency: 10 AnySetup *cupsPrintQuality\n"
+ "*%s.Translation cupsPrintQuality/%s: \"\"\n"
+ "*DefaultcupsPrintQuality: Normal\n", lang->language, _cupsLangString(lang, _("Print Quality")));
if (count > 2 || ippContainsInteger(quality, IPP_QUALITY_DRAFT))
{
pwg_ppdize_resolution(attr, resolutions[0], &xres, &yres, NULL, 0);
- cupsFilePrintf(fp, "*cupsPrintQuality Draft/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Draft")), xres, yres);
+ cupsFilePrintf(fp, "*cupsPrintQuality Draft: \"<</HWResolution[%d %d]>>setpagedevice\"\n", xres, yres);
+ cupsFilePrintf(fp, "*%s.cupsPrintQuality Draft/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Draft")));
}
+
pwg_ppdize_resolution(attr, resolutions[count / 2], &xres, &yres, NULL, 0);
- cupsFilePrintf(fp, "*cupsPrintQuality Normal/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Normal")), xres, yres);
+ cupsFilePrintf(fp, "*cupsPrintQuality Normal: \"<</HWResolution[%d %d]>>setpagedevice\"\n", xres, yres);
+ cupsFilePrintf(fp, "*%s.cupsPrintQuality Normal/%s: \"\"\n", lang->language, _cupsLangString(lang, _("Normal")));
+
if (count > 1 || ippContainsInteger(quality, IPP_QUALITY_HIGH))
{
pwg_ppdize_resolution(attr, resolutions[count - 1], &xres, &yres, NULL, 0);
- cupsFilePrintf(fp, "*cupsPrintQuality High/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("High")), xres, yres);
+ cupsFilePrintf(fp, "*cupsPrintQuality High: \"<</HWResolution[%d %d]>>setpagedevice\"\n", xres, yres);
+ cupsFilePrintf(fp, "*%s.cupsPrintQuality High/%s: \"\"\n", lang->language, _cupsLangString(lang, _("High")));
}
cupsFilePuts(fp, "*CloseUI: *cupsPrintQuality\n");
@@ -4139,14 +4213,17 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
cupsFilePrintf(fp, "*DefaultResolution: %s\n", ppdname);
- cupsFilePrintf(fp, "*OpenUI *cupsPrintQuality/%s: PickOne\n"
+ cupsFilePrintf(fp, "*OpenUI *cupsPrintQuality: PickOne\n"
"*OrderDependency: 10 AnySetup *cupsPrintQuality\n"
- "*DefaultcupsPrintQuality: Normal\n", _cupsLangString(lang, _("Print Quality")));
+ "*%s.Translation cupsPrintQuality/%s: \"\"\n"
+ "*DefaultcupsPrintQuality: Normal\n", lang->language, _cupsLangString(lang, _("Print Quality")));
if (ippContainsInteger(quality, IPP_QUALITY_DRAFT))
- cupsFilePrintf(fp, "*cupsPrintQuality Draft/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Draft")), xres, yres);
- cupsFilePrintf(fp, "*cupsPrintQuality Normal/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Normal")), xres, yres);
+ cupsFilePrintf(fp, "*cupsPrintQuality Draft: \"<</HWResolution[%d %d]>>setpagedevice\"\n*%s.cupsPrintQuality Draft/%s: \"\"\n", xres, yres, lang->language, _cupsLangString(lang, _("Draft")));
+
+ cupsFilePrintf(fp, "*cupsPrintQuality Normal: \"<</HWResolution[%d %d]>>setpagedevice\"\n*%s.cupsPrintQuality Normal/%s: \"\"\n", xres, yres, lang->language, _cupsLangString(lang, _("Normal")));
+
if (ippContainsInteger(quality, IPP_QUALITY_HIGH))
- cupsFilePrintf(fp, "*cupsPrintQuality High/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("High")), xres, yres);
+ cupsFilePrintf(fp, "*cupsPrintQuality High: \"<</HWResolution[%d %d]>>setpagedevice\"\n*%s.cupsPrintQuality High/%s: \"\"\n", xres, yres, lang->language, _cupsLangString(lang, _("High")));
cupsFilePuts(fp, "*CloseUI: *cupsPrintQuality\n");
}
diff --git a/cups/ppd-emit.c b/cups/ppd-emit.c
index 36e5bca..4b153ac 100644
--- a/cups/ppd-emit.c
+++ b/cups/ppd-emit.c
@@ -21,11 +21,11 @@
#include "cups-private.h"
#include "ppd.h"
-#if defined(WIN32) || defined(__EMX__)
+#if defined(_WIN32) || defined(__EMX__)
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 || __EMX__ */
+#endif /* _WIN32 || __EMX__ */
/*
@@ -328,11 +328,11 @@ ppdEmitFd(ppd_file_t *ppd, /* I - PPD file record */
while (buflength > 0)
{
-#ifdef WIN32
+#ifdef _WIN32
if ((bytes = (ssize_t)write(fd, bufptr, (unsigned)buflength)) < 0)
#else
if ((bytes = write(fd, bufptr, buflength)) < 0)
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
if (errno == EAGAIN || errno == EINTR)
continue;
diff --git a/cups/ppd-util.c b/cups/ppd-util.c
index 19c60e2..0974bae 100644
--- a/cups/ppd-util.c
+++ b/cups/ppd-util.c
@@ -21,11 +21,11 @@
#include "ppd-private.h"
#include <fcntl.h>
#include <sys/stat.h>
-#if defined(WIN32) || defined(__EMX__)
+#if defined(_WIN32) || defined(__EMX__)
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 || __EMX__ */
+#endif /* _WIN32 || __EMX__ */
/*
@@ -171,7 +171,7 @@ cupsGetPPD3(http_t *http, /* I - HTTP connection or @code CUPS_HTTP_DEFAUL
return (HTTP_STATUS_NOT_ACCEPTABLE);
}
-#ifndef WIN32
+#ifndef _WIN32
/*
* See if the PPD file is available locally...
*/
@@ -298,7 +298,7 @@ cupsGetPPD3(http_t *http, /* I - HTTP connection or @code CUPS_HTTP_DEFAUL
}
}
}
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
* Try finding a printer URI for this printer...
diff --git a/cups/ppd.c b/cups/ppd.c
index 5bd839d..5f27484 100644
--- a/cups/ppd.c
+++ b/cups/ppd.c
@@ -1,7 +1,7 @@
/*
* PPD file routines for CUPS.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -94,9 +94,9 @@ static ppd_group_t *ppd_get_group(ppd_file_t *ppd, const char *name,
cups_encoding_t encoding);
static ppd_option_t *ppd_get_option(ppd_group_t *group, const char *name);
static _ppd_globals_t *ppd_globals_alloc(void);
-#if defined(HAVE_PTHREAD_H) || defined(WIN32)
+#if defined(HAVE_PTHREAD_H) || defined(_WIN32)
static void ppd_globals_free(_ppd_globals_t *g);
-#endif /* HAVE_PTHREAD_H || WIN32 */
+#endif /* HAVE_PTHREAD_H || _WIN32 */
#ifdef HAVE_PTHREAD_H
static void ppd_globals_init(void);
#endif /* HAVE_PTHREAD_H */
@@ -333,7 +333,9 @@ ppdErrorString(ppd_status_t status) /* I - PPD status */
_("Bad custom parameter"),
_("Missing option keyword"),
_("Bad value string"),
- _("Missing CloseGroup")
+ _("Missing CloseGroup"),
+ _("Bad CloseUI/JCLCloseUI"),
+ _("Missing CloseUI/JCLCloseUI")
};
@@ -1542,8 +1544,29 @@ _ppdOpen(
choice->code = _cupsStrRetain(custom_attr->value);
}
}
- else if (!strcmp(keyword, "CloseUI") || !strcmp(keyword, "JCLCloseUI"))
+ else if (!strcmp(keyword, "CloseUI"))
{
+ if ((!option || option->section == PPD_ORDER_JCL) && pg->ppd_conform == PPD_CONFORM_STRICT)
+ {
+ pg->ppd_status = PPD_BAD_CLOSE_UI;
+
+ goto error;
+ }
+
+ option = NULL;
+
+ _cupsStrFree(string);
+ string = NULL;
+ }
+ else if (!strcmp(keyword, "JCLCloseUI"))
+ {
+ if ((!option || option->section != PPD_ORDER_JCL) && pg->ppd_conform == PPD_CONFORM_STRICT)
+ {
+ pg->ppd_status = PPD_BAD_CLOSE_UI;
+
+ goto error;
+ }
+
option = NULL;
_cupsStrFree(string);
@@ -2007,6 +2030,16 @@ _ppdOpen(
}
/*
+ * Check for a missing CloseUI/JCLCloseUI...
+ */
+
+ if (option && pg->ppd_conform == PPD_CONFORM_STRICT)
+ {
+ pg->ppd_status = PPD_MISSING_CLOSE_UI;
+ goto error;
+ }
+
+ /*
* Check for a missing CloseGroup...
*/
@@ -2804,13 +2837,13 @@ ppd_globals_alloc(void)
* 'ppd_globals_free()' - Free global data.
*/
-#if defined(HAVE_PTHREAD_H) || defined(WIN32)
+#if defined(HAVE_PTHREAD_H) || defined(_WIN32)
static void
ppd_globals_free(_ppd_globals_t *pg) /* I - Pointer to global data */
{
free(pg);
}
-#endif /* HAVE_PTHREAD_H || WIN32 */
+#endif /* HAVE_PTHREAD_H || _WIN32 */
#ifdef HAVE_PTHREAD_H
diff --git a/cups/ppd.h b/cups/ppd.h
index fb33c08..6e628cb 100644
--- a/cups/ppd.h
+++ b/cups/ppd.h
@@ -132,6 +132,8 @@ typedef enum ppd_status_e /**** Status Codes @since CUPS 1.1.19/macOS 10.3@ ***
PPD_MISSING_OPTION_KEYWORD, /* Missing option keyword */
PPD_BAD_VALUE, /* Bad value string */
PPD_MISSING_CLOSE_GROUP, /* Missing CloseGroup */
+ PPD_BAD_CLOSE_UI, /* Bad CloseUI/JCLCloseUI */
+ PPD_MISSING_CLOSE_UI, /* Missing CloseUI/JCLCloseUI */
PPD_MAX_STATUS /* @private@ */
} ppd_status_t;
diff --git a/cups/raster-private.h b/cups/raster-private.h
index 3813581..94dd951 100644
--- a/cups/raster-private.h
+++ b/cups/raster-private.h
@@ -1,7 +1,7 @@
/*
* Private image library definitions for CUPS.
*
- * Copyright 2007-2015 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1993-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -24,13 +24,13 @@
# include <cups/cups.h>
# include <cups/debug-private.h>
# include <cups/string-private.h>
-# ifdef WIN32
+# ifdef _WIN32
# include <io.h>
# include <winsock2.h> /* for htonl() definition */
# else
# include <unistd.h>
# include <fcntl.h>
-# endif /* WIN32 */
+# endif /* _WIN32 */
/*
@@ -49,12 +49,8 @@
* Prototypes...
*/
-extern int _cupsRasterExecPS(cups_page_header2_t *h,
- int *preferred_bits,
- const char *code)
- __attribute__((nonnull(3)));
-extern void _cupsRasterAddError(const char *f, ...)
- __attribute__((__format__(__printf__, 1, 2)));
+extern int _cupsRasterExecPS(cups_page_header2_t *h, int *preferred_bits, const char *code) _CUPS_NONNULL((3));
+extern void _cupsRasterAddError(const char *f, ...) _CUPS_FORMAT(1,2);
extern void _cupsRasterClearError(void);
#endif /* !_CUPS_RASTER_PRIVATE_H_ */
diff --git a/cups/request.c b/cups/request.c
index efbc06e..a4e4b90 100644
--- a/cups/request.c
+++ b/cups/request.c
@@ -20,11 +20,11 @@
#include "cups-private.h"
#include <fcntl.h>
#include <sys/stat.h>
-#if defined(WIN32) || defined(__EMX__)
+#if defined(_WIN32) || defined(__EMX__)
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 || __EMX__ */
+#endif /* _WIN32 || __EMX__ */
#ifndef O_BINARY
# define O_BINARY 0
#endif /* O_BINARY */
@@ -156,11 +156,11 @@ cupsDoIORequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP
return (NULL);
}
-#ifdef WIN32
+#ifdef _WIN32
if (fileinfo.st_mode & _S_IFDIR)
#else
if (S_ISDIR(fileinfo.st_mode))
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
/*
* Can't send a directory...
@@ -172,11 +172,11 @@ cupsDoIORequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP
return (NULL);
}
-#ifndef WIN32
+#ifndef _WIN32
if (!S_ISREG(fileinfo.st_mode))
length = 0; /* Chunk when piping */
else
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
length = ippLength(request) + (size_t)fileinfo.st_size;
}
else
@@ -215,9 +215,9 @@ cupsDoIORequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP
* Send the file with the request...
*/
-#ifndef WIN32
+#ifndef _WIN32
if (S_ISREG(fileinfo.st_mode))
-#endif /* WIN32 */
+#endif /* _WIN32 */
lseek(infile, 0, SEEK_SET);
while ((bytes = read(infile, buffer, sizeof(buffer))) > 0)
@@ -591,7 +591,8 @@ cupsSendRequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP
int got_status; /* Did we get the status? */
ipp_state_t state; /* State of IPP processing */
http_status_t expect; /* Expect: header to use */
- char date[256]; /* Date: header value */
+ char date[256]; /* Date: header value */
+ int digest; /* Are we using Digest authentication? */
DEBUG_printf(("cupsSendRequest(http=%p, request=%p(%s), resource=\"%s\", length=" CUPS_LLFMT ")", (void *)http, (void *)request, request ? ippOpString(request->request.op.operation_id) : "?", resource, CUPS_LLCAST length));
@@ -683,6 +684,17 @@ cupsSendRequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP
httpSetField(http, HTTP_FIELD_DATE, httpGetDateString2(time(NULL), date, (int)sizeof(date)));
httpSetLength(http, length);
+ digest = http->authstring && !strncmp(http->authstring, "Digest ", 7);
+
+ if (digest)
+ {
+ /*
+ * Update the Digest authentication string...
+ */
+
+ _httpSetDigestAuthString(http, http->nextnonce, "POST", resource);
+ }
+
#ifdef HAVE_GSSAPI
if (http->authstring && !strncmp(http->authstring, "Negotiate", 9))
{
@@ -767,9 +779,9 @@ cupsSendRequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP
* Wait up to 1 second to get the 100-continue response as needed...
*/
- if (!got_status)
+ if (!got_status || (digest && status == HTTP_STATUS_CONTINUE))
{
- if (expect == HTTP_STATUS_CONTINUE)
+ if (expect == HTTP_STATUS_CONTINUE || digest)
{
DEBUG_puts("2cupsSendRequest: Waiting for 100-continue...");
@@ -1016,13 +1028,13 @@ _cupsConnect(void)
char ch; /* Connection check byte */
ssize_t n; /* Number of bytes */
-#ifdef WIN32
+#ifdef _WIN32
if ((n = recv(cg->http->fd, &ch, 1, MSG_PEEK)) == 0 ||
(n < 0 && WSAGetLastError() != WSAEWOULDBLOCK))
#else
if ((n = recv(cg->http->fd, &ch, 1, MSG_PEEK | MSG_DONTWAIT)) == 0 ||
(n < 0 && errno != EWOULDBLOCK))
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
/*
* Nope, close the connection...
diff --git a/cups/sidechannel.c b/cups/sidechannel.c
index a4cd960..f2dbabd 100644
--- a/cups/sidechannel.c
+++ b/cups/sidechannel.c
@@ -19,15 +19,15 @@
#include "sidechannel.h"
#include "cups-private.h"
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 */
-#ifndef WIN32
+#endif /* _WIN32 */
+#ifndef _WIN32
# include <sys/select.h>
# include <sys/time.h>
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
#ifdef HAVE_POLL
# include <poll.h>
#endif /* HAVE_POLL */
diff --git a/cups/snmp.c b/cups/snmp.c
index 7958b93..8437528 100644
--- a/cups/snmp.c
+++ b/cups/snmp.c
@@ -395,11 +395,11 @@ _cupsSNMPRead(int fd, /* I - SNMP socket file descriptor */
ready = select(fd + 1, &input_set, NULL, NULL, &stimeout);
}
-# ifdef WIN32
+# ifdef _WIN32
while (ready < 0 && WSAGetLastError() == WSAEINTR);
# else
while (ready < 0 && (errno == EINTR || errno == EAGAIN));
-# endif /* WIN32 */
+# endif /* _WIN32 */
#endif /* HAVE_POLL */
/*
diff --git a/cups/string-private.h b/cups/string-private.h
index e8448d1..ced2492 100644
--- a/cups/string-private.h
+++ b/cups/string-private.h
@@ -1,7 +1,7 @@
/*
* Private string definitions for CUPS.
*
- * Copyright 2007-2015 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -42,12 +42,12 @@
# include <bstring.h>
# endif /* HAVE_BSTRING_H */
-# if defined(WIN32) && !defined(__CUPS_SSIZE_T_DEFINED)
+# if defined(_WIN32) && !defined(__CUPS_SSIZE_T_DEFINED)
# define __CUPS_SSIZE_T_DEFINED
# include <stddef.h>
/* Windows does not support the ssize_t type, so map it to long... */
typedef long ssize_t; /* @private@ */
-# endif /* WIN32 && !__CUPS_SSIZE_T_DEFINED */
+# endif /* _WIN32 && !__CUPS_SSIZE_T_DEFINED */
/*
@@ -175,8 +175,7 @@ extern size_t _cups_strlcpy(char *, const char *, size_t);
# endif /* !HAVE_STRLCPY */
# ifndef HAVE_SNPRINTF
-extern int _cups_snprintf(char *, size_t, const char *, ...)
- __attribute__ ((__format__ (__printf__, 3, 4)));
+extern int _cups_snprintf(char *, size_t, const char *, ...) _CUPS_FORMAT(3, 4);
# define snprintf _cups_snprintf
# endif /* !HAVE_SNPRINTF */
diff --git a/cups/tempfile.c b/cups/tempfile.c
index 1e24869..7b341e1 100644
--- a/cups/tempfile.c
+++ b/cups/tempfile.c
@@ -21,11 +21,11 @@
#include <stdlib.h>
#include <fcntl.h>
#include <sys/stat.h>
-#if defined(WIN32) || defined(__EMX__)
+#if defined(_WIN32) || defined(__EMX__)
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 || __EMX__ */
+#endif /* _WIN32 || __EMX__ */
/*
@@ -42,21 +42,21 @@ cupsTempFd(char *filename, /* I - Pointer to buffer */
int fd; /* File descriptor for temp file */
int tries; /* Number of tries */
const char *tmpdir; /* TMPDIR environment var */
-#if defined(__APPLE__) || defined(WIN32)
+#if defined(__APPLE__) || defined(_WIN32)
char tmppath[1024]; /* Temporary directory */
-#endif /* __APPLE__ || WIN32 */
-#ifdef WIN32
+#endif /* __APPLE__ || _WIN32 */
+#ifdef _WIN32
DWORD curtime; /* Current time */
#else
struct timeval curtime; /* Current time */
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
* See if TMPDIR is defined...
*/
-#ifdef WIN32
+#ifdef _WIN32
if ((tmpdir = getenv("TEMP")) == NULL)
{
GetTempPath(sizeof(tmppath), tmppath);
@@ -92,7 +92,7 @@ cupsTempFd(char *filename, /* I - Pointer to buffer */
if ((tmpdir = getenv("TMPDIR")) == NULL)
tmpdir = "/tmp";
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
* Make the temporary name using the specified directory...
@@ -102,7 +102,7 @@ cupsTempFd(char *filename, /* I - Pointer to buffer */
do
{
-#ifdef WIN32
+#ifdef _WIN32
/*
* Get the current time of day...
*/
@@ -126,21 +126,21 @@ cupsTempFd(char *filename, /* I - Pointer to buffer */
*/
snprintf(filename, (size_t)len - 1, "%s/%05x%08x", tmpdir, (unsigned)getpid(), (unsigned)(curtime.tv_sec + curtime.tv_usec + tries));
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
* Open the file in "exclusive" mode, making sure that we don't
* stomp on an existing file or someone's symlink crack...
*/
-#ifdef WIN32
+#ifdef _WIN32
fd = open(filename, _O_CREAT | _O_RDWR | _O_TRUNC | _O_BINARY,
_S_IREAD | _S_IWRITE);
#elif defined(O_NOFOLLOW)
fd = open(filename, O_RDWR | O_CREAT | O_EXCL | O_NOFOLLOW, 0600);
#else
fd = open(filename, O_RDWR | O_CREAT | O_EXCL, 0600);
-#endif /* WIN32 */
+#endif /* _WIN32 */
if (fd < 0 && errno != EEXIST)
break;
diff --git a/cups/testarray.c b/cups/testarray.c
index 6164ffc..892e325 100644
--- a/cups/testarray.c
+++ b/cups/testarray.c
@@ -494,7 +494,7 @@ main(void)
* 'get_seconds()' - Get the current time in seconds...
*/
-#ifdef WIN32
+#ifdef _WIN32
# include <windows.h>
@@ -515,7 +515,7 @@ get_seconds(void)
gettimeofday(&curtime, NULL);
return (curtime.tv_sec + 0.000001 * curtime.tv_usec);
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
diff --git a/cups/testdest.c b/cups/testdest.c
index c5c2052..9eab8d2 100644
--- a/cups/testdest.c
+++ b/cups/testdest.c
@@ -1,7 +1,7 @@
/*
* CUPS destination API test program for CUPS.
*
- * Copyright 2012-2017 by Apple Inc.
+ * Copyright 2012-2018 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -32,7 +32,7 @@ static void show_conflicts(http_t *http, cups_dest_t *dest, cups_dinfo_t *dinfo,
static void show_default(http_t *http, cups_dest_t *dest, cups_dinfo_t *dinfo, const char *option);
static void show_media(http_t *http, cups_dest_t *dest, cups_dinfo_t *dinfo, unsigned flags, const char *name);
static void show_supported(http_t *http, cups_dest_t *dest, cups_dinfo_t *dinfo, const char *option, const char *value);
-static void usage(const char *arg) __attribute__((noreturn));
+static void usage(const char *arg) _CUPS_NORETURN;
/*
diff --git a/cups/testfile.c b/cups/testfile.c
index b2ec8cd..1473a4a 100644
--- a/cups/testfile.c
+++ b/cups/testfile.c
@@ -1,7 +1,7 @@
/*
* File test program for CUPS.
*
- * Copyright 2007-2015 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -22,14 +22,11 @@
#include "file.h"
#include <stdlib.h>
#include <time.h>
-#ifdef HAVE_LIBZ
-# include <zlib.h>
-#endif /* HAVE_LIBZ */
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#include <fcntl.h>
@@ -53,10 +50,10 @@ main(int argc, /* I - Number of command-line arguments */
int status; /* Exit status */
char filename[1024]; /* Filename buffer */
cups_file_t *fp; /* File pointer */
-#ifndef WIN32
+#ifndef _WIN32
int fds[2]; /* Open file descriptors */
cups_file_t *fdfile; /* File opened with cupsFileOpenFd() */
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
int count; /* Number of lines in file */
@@ -84,7 +81,7 @@ main(int argc, /* I - Number of command-line arguments */
status += random_tests();
-#ifndef WIN32
+#ifndef _WIN32
/*
* Test fdopen and close without reading...
*/
@@ -118,7 +115,7 @@ main(int argc, /* I - Number of command-line arguments */
puts("PASS");
}
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
* Count lines in psglyphs, rewind, then count again.
@@ -174,13 +171,13 @@ main(int argc, /* I - Number of command-line arguments */
*/
fputs("\ncupsFileFind: ", stdout);
-#ifdef WIN32
+#ifdef _WIN32
if (cupsFileFind("notepad.exe", "C:/WINDOWS", 1, filename, sizeof(filename)) &&
cupsFileFind("notepad.exe", "C:/WINDOWS;C:/WINDOWS/SYSTEM32", 1, filename, sizeof(filename)))
#else
if (cupsFileFind("cat", "/bin", 1, filename, sizeof(filename)) &&
cupsFileFind("cat", "/bin:/usr/bin", 1, filename, sizeof(filename)))
-#endif /* WIN32 */
+#endif /* _WIN32 */
printf("PASS (%s)\n", filename);
else
{
diff --git a/cups/testhttp.c b/cups/testhttp.c
index fa8356c..7d8ec06 100644
--- a/cups/testhttp.c
+++ b/cups/testhttp.c
@@ -341,6 +341,40 @@ main(int argc, /* I - Number of command-line arguments */
if (!j)
puts("PASS");
+#if 0
+ /*
+ * _httpDigest()
+ */
+
+ fputs("_httpDigest(MD5): ", stdout);
+ if (!_httpDigest(buffer, sizeof(buffer), "MD5", "Mufasa", "http-auth@example.org", "Circle of Life", "7ypf/xlj9XXwfDPEoM4URrv/xwf94BcCAzFZH4GiTo0v", 1, "f2/wE4q74E6zIJEtWaHKaf5wv/H5QzzpXusqGemxURZJ", "auth", "GET", "/dir/index.html"))
+ {
+ failures ++;
+ puts("FAIL (unable to calculate hash)");
+ }
+ else if (strcmp(buffer, "8ca523f5e9506fed4657c9700eebdbec"))
+ {
+ failures ++;
+ printf("FAIL (got \"%s\", expected \"8ca523f5e9506fed4657c9700eebdbec\")\n", buffer);
+ }
+ else
+ puts("PASS");
+
+ fputs("_httpDigest(SHA-256): ", stdout);
+ if (!_httpDigest(buffer, sizeof(buffer), "SHA-256", "Mufasa", "http-auth@example.org", "Circle of Life", "7ypf/xlj9XXwfDPEoM4URrv/xwf94BcCAzFZH4GiTo0v", 1, "f2/wE4q74E6zIJEtWaHKaf5wv/H5QzzpXusqGemxURZJ", "auth", "GET", "/dir/index.html"))
+ {
+ failures ++;
+ puts("FAIL (unable to calculate hash)");
+ }
+ else if (strcmp(buffer, "753927fa0e85d155564e2e272a28d1802ca10daf4496794697cf8db5856cb6c1"))
+ {
+ failures ++;
+ printf("FAIL (got \"%s\", expected \"753927fa0e85d155564e2e272a28d1802ca10daf4496794697cf8db5856cb6c1\")\n", buffer);
+ }
+ else
+ puts("PASS");
+#endif /* 0 */
+
/*
* httpGetHostname()
*/
@@ -599,6 +633,8 @@ main(int argc, /* I - Number of command-line arguments */
for (i = 1; i < argc; i ++)
{
+ int new_auth;
+
if (!strcmp(argv[i], "-o"))
{
i ++;
@@ -682,6 +718,8 @@ main(int argc, /* I - Number of command-line arguments */
printf("Checking file \"%s\"...\n", resource);
+ new_auth = 0;
+
do
{
if (!_cups_strcasecmp(httpGetField(http, HTTP_FIELD_CONNECTION), "close"))
@@ -694,9 +732,13 @@ main(int argc, /* I - Number of command-line arguments */
}
}
+ if (http->authstring && !strncmp(http->authstring, "Digest ", 7) && !new_auth)
+ _httpSetDigestAuthString(http, http->nextnonce, "HEAD", resource);
+
httpClearFields(http);
httpSetField(http, HTTP_FIELD_AUTHORIZATION, httpGetAuthString(http));
httpSetField(http, HTTP_FIELD_ACCEPT_LANGUAGE, "en");
+
if (httpHead(http, resource))
{
if (httpReconnect2(http, 30000, NULL))
@@ -713,6 +755,8 @@ main(int argc, /* I - Number of command-line arguments */
while ((status = httpUpdate(http)) == HTTP_STATUS_CONTINUE);
+ new_auth = 0;
+
if (status == HTTP_STATUS_UNAUTHORIZED)
{
/*
@@ -725,7 +769,9 @@ main(int argc, /* I - Number of command-line arguments */
* See if we can do authentication...
*/
- if (cupsDoAuthentication(http, "GET", resource))
+ new_auth = 1;
+
+ if (cupsDoAuthentication(http, "HEAD", resource))
{
status = HTTP_STATUS_CUPS_AUTHORIZATION_CANCELED;
break;
@@ -773,6 +819,8 @@ main(int argc, /* I - Number of command-line arguments */
printf("Requesting file \"%s\" (Accept-Encoding: %s)...\n", resource,
encoding ? encoding : "identity");
+ new_auth = 0;
+
do
{
if (!_cups_strcasecmp(httpGetField(http, HTTP_FIELD_CONNECTION), "close"))
@@ -785,6 +833,9 @@ main(int argc, /* I - Number of command-line arguments */
}
}
+ if (http->authstring && !strncmp(http->authstring, "Digest ", 7) && !new_auth)
+ _httpSetDigestAuthString(http, http->nextnonce, "GET", resource);
+
httpClearFields(http);
httpSetField(http, HTTP_FIELD_AUTHORIZATION, httpGetAuthString(http));
httpSetField(http, HTTP_FIELD_ACCEPT_LANGUAGE, "en");
@@ -806,6 +857,8 @@ main(int argc, /* I - Number of command-line arguments */
while ((status = httpUpdate(http)) == HTTP_STATUS_CONTINUE);
+ new_auth = 0;
+
if (status == HTTP_STATUS_UNAUTHORIZED)
{
/*
@@ -818,6 +871,8 @@ main(int argc, /* I - Number of command-line arguments */
* See if we can do authentication...
*/
+ new_auth = 1;
+
if (cupsDoAuthentication(http, "GET", resource))
{
status = HTTP_STATUS_CUPS_AUTHORIZATION_CANCELED;
diff --git a/cups/testipp.c b/cups/testipp.c
index ea8f9d7..2ef2496 100644
--- a/cups/testipp.c
+++ b/cups/testipp.c
@@ -20,12 +20,12 @@
#include "file.h"
#include "string-private.h"
#include "ipp-private.h"
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
#else
# include <unistd.h>
# include <fcntl.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
diff --git a/cups/testppd.c b/cups/testppd.c
index c7187c2..a127a79 100644
--- a/cups/testppd.c
+++ b/cups/testppd.c
@@ -21,12 +21,12 @@
#include "cups-private.h"
#include "ppd-private.h"
#include <sys/stat.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <io.h>
#else
# include <unistd.h>
# include <fcntl.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#include <math.h>
diff --git a/cups/testsnmp.c b/cups/testsnmp.c
index 4026a28..9e168ab 100644
--- a/cups/testsnmp.c
+++ b/cups/testsnmp.c
@@ -1,7 +1,7 @@
/*
* SNMP test program for CUPS.
*
- * Copyright 2008-2014 by Apple Inc.
+ * Copyright 2008-2018 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -27,7 +27,7 @@
static void print_packet(cups_snmp_t *packet, void *data);
static int show_oid(int fd, const char *community,
http_addr_t *addr, const char *s, int walk);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
/*
diff --git a/cups/thread-private.h b/cups/thread-private.h
index 79d2438..ae8163d 100644
--- a/cups/thread-private.h
+++ b/cups/thread-private.h
@@ -46,7 +46,7 @@ typedef pthread_key_t _cups_threadkey_t;
# define _cupsThreadGetData(k) pthread_getspecific(k)
# define _cupsThreadSetData(k,p) pthread_setspecific(k,p)
-# elif defined(WIN32) /* Windows threading */
+# elif defined(_WIN32) /* Windows threading */
# include <winsock2.h>
# include <windows.h>
typedef void *(__stdcall *_cups_thread_func_t)(void *arg);
diff --git a/cups/thread.c b/cups/thread.c
index b59918b..7ffc2ec 100644
--- a/cups/thread.c
+++ b/cups/thread.c
@@ -208,7 +208,7 @@ _cupsThreadWait(_cups_thread_t thread) /* I - Thread ID */
}
-#elif defined(WIN32)
+#elif defined(_WIN32)
# include <process.h>
diff --git a/cups/tls-darwin.c b/cups/tls-darwin.c
index 9aa316b..c4f0ccb 100644
--- a/cups/tls-darwin.c
+++ b/cups/tls-darwin.c
@@ -1228,14 +1228,16 @@ _httpTLSStart(http_t *http) /* I - HTTP connection */
kTLSProtocol1,
kTLSProtocol11,
kTLSProtocol12,
- kTLSProtocol12, /* TODO: update to 1.3 when 1.3 is supported */
- kTLSProtocol12 /* TODO: update to 1.3 when 1.3 is supported */
+ kTLSProtocol13
};
- error = SSLSetProtocolVersionMin(http->tls, protocols[tls_min_version]);
- DEBUG_printf(("4_httpTLSStart: SSLSetProtocolVersionMin(%d), error=%d", protocols[tls_min_version], (int)error));
+ if (tls_min_version < _HTTP_TLS_MAX)
+ {
+ error = SSLSetProtocolVersionMin(http->tls, protocols[tls_min_version]);
+ DEBUG_printf(("4_httpTLSStart: SSLSetProtocolVersionMin(%d), error=%d", protocols[tls_min_version], (int)error));
+ }
- if (!error)
+ if (!error && tls_max_version < _HTTP_TLS_MAX)
{
error = SSLSetProtocolVersionMax(http->tls, protocols[tls_max_version]);
DEBUG_printf(("4_httpTLSStart: SSLSetProtocolVersionMax(%d), error=%d", protocols[tls_max_version], (int)error));
diff --git a/cups/tls-gnutls.c b/cups/tls-gnutls.c
index 68bacc6..606b45a 100644
--- a/cups/tls-gnutls.c
+++ b/cups/tls-gnutls.c
@@ -399,7 +399,7 @@ httpCredentialsAreValidForName(
for (i = 0; i < count; i ++)
{
rserial_size = sizeof(rserial);
- if (!gnutls_x509_crl_get_crt_serial(tls_crl, (unsigned)i, rserial, &rserial_size, NULL) && cserial_size == rserial_size && !memcmp(cserial, rserial, (int)rserial_size))
+ if (!gnutls_x509_crl_get_crt_serial(tls_crl, (unsigned)i, rserial, &rserial_size, NULL) && cserial_size == rserial_size && !memcmp(cserial, rserial, rserial_size))
{
result = 0;
break;
diff --git a/cups/tls.c b/cups/tls.c
index f3dd092..2539a09 100644
--- a/cups/tls.c
+++ b/cups/tls.c
@@ -23,13 +23,13 @@
#include "cups-private.h"
#include <fcntl.h>
#include <math.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <tchar.h>
#else
# include <signal.h>
# include <sys/time.h>
# include <sys/resource.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#ifdef HAVE_POLL
# include <poll.h>
#endif /* HAVE_POLL */
diff --git a/cups/tlscheck.c b/cups/tlscheck.c
index fa8fdd5..d16bf1e 100644
--- a/cups/tlscheck.c
+++ b/cups/tlscheck.c
@@ -97,6 +97,21 @@ main(int argc, /* I - Number of command-line arguments */
tls_min_version = _HTTP_TLS_1_0;
tls_max_version = _HTTP_TLS_1_0;
}
+ else if (!strcmp(argv[i], "--tls11"))
+ {
+ tls_min_version = _HTTP_TLS_1_1;
+ tls_max_version = _HTTP_TLS_1_1;
+ }
+ else if (!strcmp(argv[i], "--tls12"))
+ {
+ tls_min_version = _HTTP_TLS_1_2;
+ tls_max_version = _HTTP_TLS_1_2;
+ }
+ else if (!strcmp(argv[i], "--tls13"))
+ {
+ tls_min_version = _HTTP_TLS_1_3;
+ tls_max_version = _HTTP_TLS_1_3;
+ }
else if (!strcmp(argv[i], "--rc4"))
{
tls_options |= _HTTP_TLS_ALLOW_RC4;
@@ -744,6 +759,9 @@ usage(void)
puts(" --no-tls10 Disable TLS/1.0");
puts(" --rc4 Allow RC4 encryption");
puts(" --tls10 Only use TLS/1.0");
+ puts(" --tls11 Only use TLS/1.1");
+ puts(" --tls12 Only use TLS/1.2");
+ puts(" --tls13 Only use TLS/1.3");
puts(" --verbose Be verbose");
puts(" -4 Connect using IPv4 addresses only");
puts(" -6 Connect using IPv6 addresses only");
diff --git a/cups/usersys.c b/cups/usersys.c
index 99601e4..781f27b 100644
--- a/cups/usersys.c
+++ b/cups/usersys.c
@@ -20,13 +20,13 @@
#include "cups-private.h"
#include <stdlib.h>
#include <sys/stat.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <windows.h>
#else
# include <pwd.h>
# include <termios.h>
# include <sys/utsname.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -490,12 +490,12 @@ cupsSetUserAgent(const char *user_agent)/* I - User-Agent string or @code NULL@
{
_cups_globals_t *cg = _cupsGlobals();
/* Thread globals */
-#ifdef WIN32
+#ifdef _WIN32
SYSTEM_INFO sysinfo; /* System information */
OSVERSIONINFO version; /* OS version info */
#else
struct utsname name; /* uname info */
-#endif /* WIN32 */
+#endif /* _WIN32 */
if (user_agent)
@@ -504,7 +504,7 @@ cupsSetUserAgent(const char *user_agent)/* I - User-Agent string or @code NULL@
return;
}
-#ifdef WIN32
+#ifdef _WIN32
version.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
GetVersionEx(&version);
GetNativeSystemInfo(&sysinfo);
@@ -528,7 +528,7 @@ cupsSetUserAgent(const char *user_agent)/* I - User-Agent string or @code NULL@
snprintf(cg->user_agent, sizeof(cg->user_agent),
CUPS_MINIMAL " (%s %s; %s) IPP/2.0",
name.sysname, name.release, name.machine);
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -580,7 +580,7 @@ cupsUserAgent(void)
const char * /* O - Password or @code NULL@ if none */
_cupsGetPassword(const char *prompt) /* I - Prompt string */
{
-#ifdef WIN32
+#ifdef _WIN32
HANDLE tty; /* Console handle */
DWORD mode; /* Console mode */
char passch, /* Current key press */
@@ -846,7 +846,7 @@ _cupsGetPassword(const char *prompt) /* I - Prompt string */
memset(cg->password, 0, sizeof(cg->password));
return (NULL);
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
@@ -905,7 +905,7 @@ _cupsSetDefaults(void)
# ifdef HAVE_GETEUID
if ((geteuid() == getuid() || !getuid()) && getegid() == getgid() && (home = getenv("HOME")) != NULL)
-# elif !defined(WIN32)
+# elif !defined(_WIN32)
if (getuid() && (home = getenv("HOME")) != NULL)
# else
if ((home = getenv("HOME")) != NULL)
@@ -1101,7 +1101,7 @@ cups_finalize_client_conf(
if (!cc->user[0])
{
-#ifdef WIN32
+#ifdef _WIN32
/*
* Get the current user name from the OS...
*/
@@ -1137,7 +1137,7 @@ cups_finalize_client_conf(
if (pw)
strlcpy(cc->user, pw->pw_name, sizeof(cc->user));
else
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
/*
* Use the default "unknown" user name...
diff --git a/cups/util.c b/cups/util.c
index e800449..ef1709c 100644
--- a/cups/util.c
+++ b/cups/util.c
@@ -20,11 +20,11 @@
#include "cups-private.h"
#include <fcntl.h>
#include <sys/stat.h>
-#if defined(WIN32) || defined(__EMX__)
+#if defined(_WIN32) || defined(__EMX__)
# include <io.h>
#else
# include <unistd.h>
-#endif /* WIN32 || __EMX__ */
+#endif /* _WIN32 || __EMX__ */
/*
diff --git a/cups/versioning.h b/cups/versioning.h
index 4065832..620396f 100644
--- a/cups/versioning.h
+++ b/cups/versioning.h
@@ -16,85 +16,41 @@
# define _CUPS_VERSIONING_H_
/*
- * This header defines several constants - _CUPS_DEPRECATED,
- * _CUPS_DEPRECATED_MSG, _CUPS_INTERNAL_MSG, _CUPS_API_major_minor, and
- * _CUPS_API_major_minor_patch - which add compiler-specific attributes that
- * flag functions that are deprecated, added in particular releases, or internal
- * to CUPS.
+ * This header defines several macros that add compiler-specific attributes for
+ * functions:
*
- * On macOS, the _CUPS_API_* constants are defined based on the values of
- * the MAC_OS_X_VERSION_MIN_ALLOWED and MAC_OS_X_VERSION_MAX_ALLOWED constants
- * provided by the compiler.
+ * - _CUPS_API_major_minor[_patch]: Specifies when an API became available by
+ * CUPS version.
+ * - _CUPS_DEPRECATED: Function is deprecated with no replacement.
+ * - _CUPS_DEPRECATED_MSG("message"): Function is deprecated and has a
+ * replacement.
+ * - _CUPS_FORMAT(format-index, additional-args-index): Function has a
+ * printf-style format argument followed by zero or more additional
+ * arguments. Indices start at 1.
+ * - _CUPS_INTERNAL: Function is internal with no replacement API.
+ * - _CUPS_INTERNAL_MSG("msg"): Function is internal - use specified API
+ * instead.
+ * - _CUPS_NONNULL((arg list)): Specifies the comma-separated argument indices
+ * are assumed non-NULL. Indices start at 1.
+ * - _CUPS_NORETURN: Specifies the function does not return.
+ * - _CUPS_PRIVATE: Specifies the function is private to CUPS.
+ * - _CUPS_PUBLIC: Specifies the function is public API.
*/
-# if defined(__APPLE__) && !defined(_CUPS_SOURCE) && !TARGET_OS_IOS
-# include <AvailabilityMacros.h>
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_12_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_12_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_12_AND_LATER */
-# ifndef AVAILABLE_MAC_OS_X_VERSION_10_13_AND_LATER
-# define AVAILABLE_MAC_OS_X_VERSION_10_13_AND_LATER __attribute__((unavailable))
-# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_13_AND_LATER */
-# define _CUPS_API_1_1_19 AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
-# define _CUPS_API_1_1_20 AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER
-# define _CUPS_API_1_1_21 AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER
-# define _CUPS_API_1_2 AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER
-# define _CUPS_API_1_3 AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER
-# define _CUPS_API_1_4 AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
-# define _CUPS_API_1_5 AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
-# define _CUPS_API_1_6 AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER
-# define _CUPS_API_1_7 AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER
-# define _CUPS_API_2_0 AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
-# define _CUPS_API_2_2 AVAILABLE_MAC_OS_X_VERSION_10_12_AND_LATER
-# define _CUPS_API_2_2_4 AVAILABLE_MAC_OS_X_VERSION_10_13_AND_LATER
-# define _CUPS_API_2_2_7
-# else
-# define _CUPS_API_1_1_19
-# define _CUPS_API_1_1_20
-# define _CUPS_API_1_1_21
-# define _CUPS_API_1_2
-# define _CUPS_API_1_3
-# define _CUPS_API_1_4
-# define _CUPS_API_1_5
-# define _CUPS_API_1_6
-# define _CUPS_API_1_7
-# define _CUPS_API_2_0
-# define _CUPS_API_2_2
-# define _CUPS_API_2_2_4
-# define _CUPS_API_2_2_7
-# endif /* __APPLE__ && !_CUPS_SOURCE */
-
/*
- * With GCC and Clang we can mark old APIs as "deprecated" or "unavailable" with
- * messages so you get warnings/errors are compile-time...
+ * Determine which compiler is being used and what annotation features are
+ * available...
*/
+# ifdef __APPLE__
+# include <os/availability.h>
+# endif /* __APPLE__ */
+
# ifdef __has_extension /* Clang */
# define _CUPS_HAS_DEPRECATED
+# define _CUPS_HAS_FORMAT
+# define _CUPS_HAS_NORETURN
+# define _CUPS_HAS_VISIBILITY
# if __has_extension(attribute_deprecated_with_message)
# define _CUPS_HAS_DEPRECATED_WITH_MESSAGE
# endif
@@ -104,6 +60,9 @@
# elif defined(__GNUC__) /* GCC and compatible */
# if __GNUC__ >= 3 /* GCC 3.0 or higher */
# define _CUPS_HAS_DEPRECATED
+# define _CUPS_HAS_FORMAT
+# define _CUPS_HAS_NORETURN
+# define _CUPS_HAS_VISIBILITY
# endif /* __GNUC__ >= 3 */
# if __GNUC__ >= 5 /* GCC 5.x */
# define _CUPS_HAS_DEPRECATED_WITH_MESSAGE
@@ -111,61 +70,197 @@
/* GCC 4.5 or higher */
# define _CUPS_HAS_DEPRECATED_WITH_MESSAGE
# endif /* __GNUC__ >= 5 */
+# elif defined(_WIN32)
+# define __attribute__(...)
# endif /* __has_extension */
+
+/*
+ * Define _CUPS_INTERNAL, _CUPS_PRIVATE, and _CUPS_PUBLIC visibilty macros for
+ * internal/private/public functions...
+ */
+
+# ifdef _CUPS_HAS_VISIBILITY
+# define _CUPS_INTERNAL __attribute__ ((visibility("hidden")))
+# define _CUPS_PRIVATE __attribute__ ((visibility("default")))
+# define _CUPS_PUBLIC __attribute__ ((visibility("default")))
+# else
+# define _CUPS_INTERNAL
+# define _CUPS_PRIVATE
+# define _CUPS_PUBLIC
+# endif /* _CUPS_HAS_VISIBILITY */
+
+
+/*
+ * Define _CUPS_API_major_minor[_patch] availability macros for CUPS.
+ *
+ * Note: Using any of the _CUPS_API macros automatically adds _CUPS_PUBLIC.
+ */
+
+# if defined(__APPLE__) && !defined(_CUPS_SOURCE) && !TARGET_OS_IOS
+/*
+ * On Apple operating systems, the _CUPS_API_* constants are defined using the
+ * API_ macros in <os/availability.h>.
+ *
+ * On iOS, we don't actually have libcups available directly, but the supplied
+ * libcups_static target in the Xcode project supports building on iOS 11.0 and
+ * later.
+ */
+# define _CUPS_API_1_1_19 API_AVAILABLE(macos(10.3), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_1_1_20 API_AVAILABLE(macos(10.4), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_1_1_21 API_AVAILABLE(macos(10.4), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_1_2 API_AVAILABLE(macos(10.5), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_1_3 API_AVAILABLE(macos(10.5), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_1_4 API_AVAILABLE(macos(10.6), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_1_5 API_AVAILABLE(macos(10.7), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_1_6 API_AVAILABLE(macos(10.8), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_1_7 API_AVAILABLE(macos(10.9), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_2_0 API_AVAILABLE(macos(10.10), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_2_2 API_AVAILABLE(macos(10.12), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_2_2_4 API_AVAILABLE(macos(10.13), ios(11.0)) _CUPS_PUBLIC
+# define _CUPS_API_2_2_7 API_AVAILABLE(macos(10.14), ios(11.0)) _CUPS_PUBLIC
+# else
+# define _CUPS_API_1_1_19 _CUPS_PUBLIC
+# define _CUPS_API_1_1_20 _CUPS_PUBLIC
+# define _CUPS_API_1_1_21 _CUPS_PUBLIC
+# define _CUPS_API_1_2 _CUPS_PUBLIC
+# define _CUPS_API_1_3 _CUPS_PUBLIC
+# define _CUPS_API_1_4 _CUPS_PUBLIC
+# define _CUPS_API_1_5 _CUPS_PUBLIC
+# define _CUPS_API_1_6 _CUPS_PUBLIC
+# define _CUPS_API_1_7 _CUPS_PUBLIC
+# define _CUPS_API_2_0 _CUPS_PUBLIC
+# define _CUPS_API_2_2 _CUPS_PUBLIC
+# define _CUPS_API_2_2_4 _CUPS_PUBLIC
+# define _CUPS_API_2_2_7 _CUPS_PUBLIC
+# endif /* __APPLE__ && !_CUPS_SOURCE */
+
+
+/*
+ * Define _CUPS_DEPRECATED and _CUPS_INTERNAL macros to mark old APIs as
+ * "deprecated" or "unavailable" with messages so you get warnings/errors are
+ * compile-time...
+ *
+ * Note: Using any of the _CUPS_DEPRECATED macros automatically adds
+ * _CUPS_PUBLIC.
+ */
+
# if !defined(_CUPS_HAS_DEPRECATED) || (defined(_CUPS_SOURCE) && !defined(_CUPS_NO_DEPRECATED))
/*
* Don't mark functions deprecated if the compiler doesn't support it
* or we are building CUPS source that doesn't care.
*/
-# define _CUPS_DEPRECATED
-# define _CUPS_DEPRECATED_MSG(m)
-# define _CUPS_DEPRECATED_1_6_MSG(m)
-# define _CUPS_DEPRECATED_1_7_MSG(m)
-# define _CUPS_INTERNAL_MSG(m)
+# define _CUPS_DEPRECATED _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_MSG(m) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_2_MSG(m) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_6_MSG(m) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_7_MSG(m) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_2_2_MSG(m) _CUPS_PUBLIC
+# elif defined(__APPLE__) && defined(_CUPS_NO_DEPRECATED)
+ /*
+ * Compiler supports the unavailable attribute, so use it when the code
+ * wants to exclude the use of deprecated API.
+ */
+# define _CUPS_DEPRECATED __attribute__ ((unavailable)) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_MSG(m) __attribute__ ((unavailable(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_2_MSG(m) API_DEPRECATED(m, macos(10.2,10.5)) API_UNAVAILABLE(ios) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_6_MSG(m) API_DEPRECATED(m, macos(10.2,10.8)) API_UNAVAILABLE(ios) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_7_MSG(m) API_DEPRECATED(m, macos(10.2,10.9)) API_UNAVAILABLE(ios) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_2_2_MSG(m) API_DEPRECATED(m, macos(10.2,10.12)) API_UNAVAILABLE(ios) _CUPS_PUBLIC
+
+# elif defined(__APPLE__)
+ /*
+ * Just mark things as deprecated...
+ */
+# define _CUPS_DEPRECATED __attribute__ ((deprecated)) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_MSG(m) __attribute__ ((deprecated(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_2_MSG(m) API_DEPRECATED(m, macos(10.2,10.5)) API_UNAVAILABLE(ios) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_6_MSG(m) API_DEPRECATED(m, macos(10.2,10.8)) API_UNAVAILABLE(ios) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_7_MSG(m) API_DEPRECATED(m, macos(10.2,10.9)) API_UNAVAILABLE(ios) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_2_2_MSG(m) API_DEPRECATED(m, macos(10.2,10.12)) API_UNAVAILABLE(ios) _CUPS_PUBLIC
+
# elif defined(_CUPS_HAS_UNAVAILABLE_WITH_MESSAGE) && defined(_CUPS_NO_DEPRECATED)
/*
* Compiler supports the unavailable attribute, so use it when the code
* wants to exclude the use of deprecated API.
*/
-# define _CUPS_DEPRECATED __attribute__ ((unavailable))
-# define _CUPS_DEPRECATED_MSG(m) __attribute__ ((unavailable(m)))
-# define _CUPS_DEPRECATED_1_6_MSG(m) __attribute__ ((unavailable(m)))
-# define _CUPS_DEPRECATED_1_7_MSG(m) __attribute__ ((unavailable(m)))
-# define _CUPS_INTERNAL_MSG(m) __attribute__ ((unavailable(m)))
+# define _CUPS_DEPRECATED __attribute__ ((unavailable)) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_MSG(m) __attribute__ ((unavailable(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_2_MSG(m) __attribute__ ((unavailable(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_6_MSG(m) __attribute__ ((unavailable(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_7_MSG(m) __attribute__ ((unavailable(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_2_2_MSG(m) __attribute__ ((unavailable(m))) _CUPS_PUBLIC
# else
/*
* Compiler supports the deprecated attribute, so use it.
*/
-# define _CUPS_DEPRECATED __attribute__ ((deprecated))
+# define _CUPS_DEPRECATED __attribute__ ((deprecated)) _CUPS_PUBLIC
# ifdef _CUPS_HAS_DEPRECATED_WITH_MESSAGE
-# define _CUPS_DEPRECATED_MSG(m) __attribute__ ((deprecated(m)))
+# define _CUPS_DEPRECATED_MSG(m) __attribute__ ((deprecated(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_2_MSG(m) __attribute__ ((deprecated(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_6_MSG(m) __attribute__ ((deprecated(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_7_MSG(m) __attribute__ ((deprecated(m))) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_2_2_MSG(m) __attribute__ ((deprecated(m))) _CUPS_PUBLIC
# else
-# define _CUPS_DEPRECATED_MSG(m) __attribute__ ((deprecated))
+# define _CUPS_DEPRECATED_MSG(m) __attribute__ ((deprecated)) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_2_MSG(m) __attribute__ ((deprecated)) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_6_MSG(m) __attribute__ ((deprecated)) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_1_7_MSG(m) __attribute__ ((deprecated)) _CUPS_PUBLIC
+# define _CUPS_DEPRECATED_2_2_MSG(m) __attribute__ ((deprecated)) _CUPS_PUBLIC
# endif /* _CUPS_HAS_DEPRECATED_WITH_MESSAGE */
-# if defined(MAC_OS_X_VERSION_10_8) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_8
-# define _CUPS_DEPRECATED_1_6_MSG(m) _CUPS_DEPRECATED_MSG(m)
-# else
-# define _CUPS_DEPRECATED_1_6_MSG(m)
-# endif /* MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_8 */
-# if defined(MAC_OS_X_VERSION_10_9) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_9
-# define _CUPS_DEPRECATED_1_7_MSG(m) _CUPS_DEPRECATED_MSG(m)
-# else
-# define _CUPS_DEPRECATED_1_7_MSG(m)
-# endif /* MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_9 */
-# ifdef _CUPS_SOURCE
-# define _CUPS_INTERNAL_MSG(m)
-# elif defined(_CUPS_HAS_UNAVAILABLE_WITH_MESSAGE)
-# define _CUPS_INTERNAL_MSG(m) __attribute__ ((unavailable(m)))
-# elif defined(_CUPS_HAS_DEPRECATED_WITH_MESSAGE)
-# define _CUPS_INTERNAL_MSG(m) __attribute__ ((deprecated(m)))
-# else
-# define _CUPS_INTERNAL_MSG(m) __attribute__ ((deprecated))
-# endif /* _CUPS_SOURCE */
# endif /* !_CUPS_HAS_DEPRECATED || (_CUPS_SOURCE && !_CUPS_NO_DEPRECATED) */
-# ifndef __GNUC__
-# define __attribute__(x)
-# endif /* !__GNUC__ */
+
+/*
+ * Define _CUPS_FORMAT macro for printf-style functions...
+ */
+
+# ifdef _CUPS_HAS_FORMAT
+# define _CUPS_FORMAT(a,b) __attribute__ ((__format__(__printf__, a,b)))
+# else
+# define _CUPS_FORMAT(a,b)
+# endif /* _CUPS_HAS_FORMAT */
+
+
+/*
+ * Define _CUPS_INTERNAL_MSG macro for private APIs that have (historical)
+ * public visibility.
+ *
+ * Note: Using the _CUPS_INTERNAL_MSG macro automatically adds _CUPS_PUBLIC.
+ */
+
+# ifdef _CUPS_SOURCE
+# define _CUPS_INTERNAL_MSG(m) _CUPS_PUBLIC
+# elif defined(_CUPS_HAS_UNAVAILABLE_WITH_MESSAGE)
+# define _CUPS_INTERNAL_MSG(m) __attribute__ ((unavailable(m))) _CUPS_PUBLIC
+# elif defined(_CUPS_HAS_DEPRECATED_WITH_MESSAGE)
+# define _CUPS_INTERNAL_MSG(m) __attribute__ ((deprecated(m))) _CUPS_PUBLIC
+# else
+# define _CUPS_INTERNAL_MSG(m) __attribute__ ((deprecated)) _CUPS_PUBLIC
+# endif /* _CUPS_SOURCE */
+
+
+/*
+ * Define _CUPS_NONNULL macro for functions that don't expect non-null
+ * arguments...
+ */
+
+# ifdef _CUPS_HAS_NONNULL
+# define _CUPS_NONNULL(...) __attribute__ ((nonnull(__VA_ARGS__)))
+# else
+# define _CUPS_NONNULL(...)
+# endif /* _CUPS_HAS_FORMAT */
+
+
+/*
+ * Define _CUPS_NORETURN macro for functions that don't return.
+ */
+
+# ifdef _CUPS_HAS_NORETURN
+# define _CUPS_NORETURN __attribute__ ((noreturn))
+# else
+# define _CUPS_NORETURN
+# endif /* _CUPS_HAS_NORETURN */
+
#endif /* !_CUPS_VERSIONING_H_ */
diff --git a/doc/Makefile b/doc/Makefile
index 3b1b711..243fc7c 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -1,7 +1,7 @@
#
# Documentation makefile for CUPS.
#
-# Copyright 2007-2016 by Apple Inc.
+# Copyright 2007-2018 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -236,13 +236,3 @@ uninstall-languages:
done
install-langbundle:
-
-
-#
-# Install the docset bits locally...
-#
-
-docset:
- cp $(HELPFILES) ../org.cups.docset/Contents/Resources/Documentation/help
- cp cups-printable.css ../org.cups.docset/Contents/Resources/Documentation
- cp $(HELPIMAGES) ../org.cups.docset/Contents/Resources/Documentation/images
diff --git a/doc/de/index.html.in b/doc/de/index.html.in
index e98aa4a..cbae07b 100644
--- a/doc/de/index.html.in
+++ b/doc/de/index.html.in
@@ -50,6 +50,6 @@
</div>
</div>
</div>
- <div class="footer">CUPS und das CUPS Logo sind Warenzeichen der <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2017 Apple Inc. Alle Rechte vorbehalten.</div>
+ <div class="footer">CUPS und das CUPS Logo sind Warenzeichen der <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2018 Apple Inc. Alle Rechte vorbehalten.</div>
</body>
</html>
diff --git a/doc/es/index.html.in b/doc/es/index.html.in
index 7dacdad..6c12f4f 100644
--- a/doc/es/index.html.in
+++ b/doc/es/index.html.in
@@ -50,6 +50,6 @@
</div>
</div>
</div>
- <div class="footer">CUPS y el logo de CUPS son marcas registradas de <a href="http://www.apple.com">Apple Inc.</a> Derechos de autor &copy; 2007-2017 Apple Inc. Todos los derechos reservados.</div>
+ <div class="footer">CUPS y el logo de CUPS son marcas registradas de <a href="http://www.apple.com">Apple Inc.</a> Derechos de autor &copy; 2007-2018 Apple Inc. Todos los derechos reservados.</div>
</body>
</html>
diff --git a/doc/help/api-ppd.html b/doc/help/api-ppd.html
index 7e60ec4..8549ee0 100644
--- a/doc/help/api-ppd.html
+++ b/doc/help/api-ppd.html
@@ -492,7 +492,7 @@ div.contents ul.subcontents li {
<!--
PPD API introduction for CUPS.
- Copyright 2007-2012 by Apple Inc.
+ Copyright 2007-2018 by Apple Inc.
Copyright 1997-2006 by Easy Software Products, all rights reserved.
These coded instructions, statements, and computer programs are the
@@ -504,7 +504,7 @@ div.contents ul.subcontents li {
<h2 class='title'><a name='OVERVIEW'>Overview</a></h2>
-<blockquote>The PPD API is deprecated starting in CUPS 1.6/macOS 10.8. Please use the new Job Ticket APIs in the <a href="api-cups.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
+<blockquote>The PPD API is deprecated starting in CUPS 1.6/macOS 10.8. Please use the new Job Ticket APIs in the <a href="cupspm.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
<p>The CUPS PPD API provides read-only access the data in PostScript Printer
Description ("PPD") files which are used for all printers with a driver. With
diff --git a/doc/help/cupspm.epub b/doc/help/cupspm.epub
index a73e5f6..00b5d10 100644
--- a/doc/help/cupspm.epub
+++ b/doc/help/cupspm.epub
Binary files differ
diff --git a/doc/help/man-cups-files.conf.html b/doc/help/man-cups-files.conf.html
index 6dd442e..6144a16 100644
--- a/doc/help/man-cups-files.conf.html
+++ b/doc/help/man-cups-files.conf.html
@@ -115,6 +115,9 @@ The server name may be included in filenames using the string "%s", for example:
</pre>
The default is "/var/log/cups/page_log".
+<dt><a name="PassEnv"></a><b>PassEnv </b><i>variable </i>[ ... <i>variable </i>]
+<dd style="margin-left: 5.0em">Passes the specified environment variable(s) to child processes.
+Note: the standard CUPS filter and backend environment variables cannot be overridden using this directive.
<dt><a name="RemoteRoot"></a><b>RemoteRoot </b><i>username</i>
<dd style="margin-left: 5.0em">Specifies the username that is associated with unauthenticated accesses by clients claiming to be the root user.
The default is "remroot".
@@ -136,6 +139,9 @@ macOS uses its keychain database to store certificates and keys while other plat
<dt><a name="ServerRoot"></a><b>ServerRoot </b><i>directory</i>
<dd style="margin-left: 5.0em">Specifies the directory containing the server configuration files.
The default is "/etc/cups".
+<dt><a name="SetEnv"></a><b>SetEnv </b><i>variable value</i>
+<dd style="margin-left: 5.0em">Set the specified environment variable to be passed to child processes.
+Note: the standard CUPS filter and backend environment variables cannot be overridden using this directive.
<dt><a name="StateDir"></a><b>StateDir </b><i>directory</i>
<dd style="margin-left: 5.0em">Specifies the directory to use for PID and local certificate files.
The default is "/var/run/cups" or "/etc/cups" depending on the platform.
@@ -196,7 +202,7 @@ On macOS the Font Book application manages system-installed fonts.
<a href="man-subscriptions.conf.html?TOPIC=Man+Pages"><b>subscriptions.conf</b>(5),</a>
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
-Copyright &copy; 2007-2017 by Apple Inc.
+Copyright &copy; 2007-2018 by Apple Inc.
</body>
</html>
diff --git a/doc/help/man-cupsd.conf.html b/doc/help/man-cupsd.conf.html
index 9438953..4ba6ecf 100644
--- a/doc/help/man-cupsd.conf.html
+++ b/doc/help/man-cupsd.conf.html
@@ -220,8 +220,6 @@ The default is "1048576" (1MB).
<dt><a name="MultipleOperationTimeout"></a><b>MultipleOperationTimeout </b><i>seconds</i>
<dd style="margin-left: 5.0em">Specifies the maximum amount of time to allow between files in a multiple file print job.
The default is "300" (5 minutes).
-<dt><a name="PassEnv"></a><b>PassEnv </b><i>variable </i>[ ... <i>variable </i>]
-<dd style="margin-left: 5.0em">Passes the specified environment variable(s) to child processes.
<dt><a name="Policy"></a><b>&lt;Policy </b><i>name</i><b>> </b>... <b>&lt;/Policy></b>
<dd style="margin-left: 5.0em">Specifies access control for the named policy.
<dt><a name="Port"></a><b>Port </b><i>number</i>
@@ -273,8 +271,6 @@ command.
command.
"Full" reports "CUPS 2.0.0 (UNAME) IPP/2.0".
The default is "Minimal".
-<dt><a name="SetEnv"></a><b>SetEnv </b><i>variable value</i>
-<dd style="margin-left: 5.0em">Set the specified environment variable to be passed to child processes.
<dt><a name="SSLListen"></a><b>SSLListen </b><i>ipv4-address</i><b>:</b><i>port</i>
<dd style="margin-left: 5.0em"><dt><b>SSLListen [</b><i>ipv6-address</i><b>]:</b><i>port</i>
<dd style="margin-left: 5.0em"><dt><b>SSLListen *:</b><i>port</i>
diff --git a/doc/help/man-lpadmin.html b/doc/help/man-lpadmin.html
index 58c078e..c3bfa72 100644
--- a/doc/help/man-lpadmin.html
+++ b/doc/help/man-lpadmin.html
@@ -146,7 +146,8 @@ command to get a list of supported device URIs and schemes.
<dt><b>-D "</b><i>info</i><b>"</b>
<dd style="margin-left: 5.0em">Provides a textual description of the destination.
<dt><b>-E</b>
-<dd style="margin-left: 5.0em">Enables the destination and accepts jobs; this is the same as running the
+<dd style="margin-left: 5.0em">When specified before the <b>-d</b>, <b>-p</b>, or <b>-x</b> options, forces the use of TLS encryption on the connection to the scheduler.
+Otherwise, enables the destination and accepts jobs; this is the same as running the
<a href="man-cupsaccept.html?TOPIC=Man+Pages"><b>cupsaccept</b>(8)</a>
and
<a href="man-cupsenable.html?TOPIC=Man+Pages"><b>cupsenable</b>(8)</a>
@@ -161,6 +162,7 @@ Finally, the CUPS version of <b>lpadmin</b> may ask the user for an access passw
This differs from the System V version which requires the root user to execute this command.
<h2 class="title"><a name="NOTES">Notes</a></h2>
The CUPS version of <b>lpadmin</b> does not support all of the System V or Solaris printing system configuration options.
+<p>The double meaning of the <b>-E</b> option is an unfortunate historical oddity.
<h2 class="title"><a name="EXAMPLE">Example</a></h2>
Create an IPP Everywhere print queue:
<pre class="man">
@@ -175,7 +177,7 @@ Create an IPP Everywhere print queue:
<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1),</a>
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
-Copyright &copy; 2007-2017 by Apple Inc.
+Copyright &copy; 2007-2018 by Apple Inc.
</body>
</html>
diff --git a/doc/index.html.in b/doc/index.html.in
index f14021f..0cb0164 100644
--- a/doc/index.html.in
+++ b/doc/index.html.in
@@ -50,6 +50,6 @@
</div>
</div>
</div>
- <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2017 Apple Inc. All rights reserved.</div>
+ <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2018 Apple Inc. All rights reserved.</div>
</body>
</html>
diff --git a/doc/ja/index.html.in b/doc/ja/index.html.in
index ad2f960..08549f9 100644
--- a/doc/ja/index.html.in
+++ b/doc/ja/index.html.in
@@ -50,6 +50,6 @@
</div>
</div>
</div>
- <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2017 Apple Inc. All rights reserved.</div>
+ <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2018 Apple Inc. All rights reserved.</div>
</body>
</html>
diff --git a/doc/pt_BR/index.html.in b/doc/pt_BR/index.html.in
index 0f50244..ace8226 100644
--- a/doc/pt_BR/index.html.in
+++ b/doc/pt_BR/index.html.in
@@ -14,7 +14,7 @@
<ul>
<li><a href="http://www.cups.org/" target="_blank">CUPS.org</a></li>
<li><a class="active" href="/">In&iacute;cio</a></li>
- <li><a href="/admin">Administrar&ccedil;&atilde;o</a></li>
+ <li><a href="/admin">Administração</a></li>
<li><a href="/classes/">Classes</a></li>
<li><a href="/help/">Ajuda</a></li>
<li><a href="/jobs/">Trabalhos</a></li>
@@ -51,6 +51,6 @@
</div>
</div>
</div>
- <div class="footer">CUPS e o logo do CUPS s&atilde;o marcas registradas da <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2017 Apple Inc. Todos os direitos reservados.</div>
+ <div class="footer">CUPS e o logo do CUPS s&atilde;o marcas registradas da <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2018 Apple Inc. Todos os direitos reservados.</div>
</body>
</html>
diff --git a/doc/ru/index.html.in b/doc/ru/index.html.in
index e91a8f4..7bfc5a3 100644
--- a/doc/ru/index.html.in
+++ b/doc/ru/index.html.in
@@ -51,6 +51,6 @@
</div>
</div>
</div>
- <div class="footer">CUPS а также логотип CUPS являются зарегистрированными торговыми марками <A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2017) компании Apple Inc. Все права защищены.</div>
+ <div class="footer">CUPS а также логотип CUPS являются зарегистрированными торговыми марками <A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2018) компании Apple Inc. Все права защищены.</div>
</body>
</html>
diff --git a/filter/Makefile b/filter/Makefile
index 02aab14..74fd46f 100644
--- a/filter/Makefile
+++ b/filter/Makefile
@@ -218,6 +218,7 @@ apihelp:
commandtops: commandtops.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ commandtops.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -227,6 +228,7 @@ commandtops: commandtops.o ../cups/$(LIBCUPS)
gziptoany: gziptoany.o ../Makedefs ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ gziptoany.o $(LIBZ) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -235,8 +237,9 @@ gziptoany: gziptoany.o ../Makedefs ../cups/$(LIBCUPS)
libcupsimage.so.2 libcupsimage.sl.2: $(IMAGEOBJS)
echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS) $(DSOLIBS) \
+ $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS) $(DSOLIBS) \
-L../cups $(LINKCUPS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
$(RM) `basename $@ .2`
$(LN) $@ `basename $@ .2`
@@ -247,34 +250,23 @@ libcupsimage.so.2 libcupsimage.sl.2: $(IMAGEOBJS)
libcupsimage.2.dylib: $(IMAGEOBJS) $(LIBCUPSIMAGEORDER)
echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
+ $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \
-install_name $(libdir)/$@ \
-current_version 2.3.0 \
-compatibility_version 2.0.0 \
$(IMAGEOBJS) $(DSOLIBS) -L../cups $(LINKCUPS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
$(RM) libcupsimage.dylib
$(LN) $@ libcupsimage.dylib
#
-# libcupsimage_s.a
-#
-
-libcupsimage_s.a: $(IMAGEOBJS) libcupsimage_s.exp
- echo Linking $@...
- $(DSO) $(DSOFLAGS) -Wl,-berok,-bexport:libcupsimage_s.exp \
- -o libcupsimage_s.o $(IMAGEOBJS) $(DSOLIBS)
- $(RM) $@
- $(AR) $(ARFLAGS) $@ libcupsimage_s.o
-
-
-#
# libcupsimage.la
#
libcupsimage.la: $(IMAGEOBJS)
echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS:.o=.lo) $(DSOLIBS) \
+ $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS:.o=.lo) $(DSOLIBS) \
-L../cups $(LINKCUPS) \
-rpath $(LIBDIR) -version-info 2:3
@@ -297,6 +289,7 @@ libcupsimage.a: $(IMAGEOBJS)
pstops: pstops.o common.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ pstops.o common.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -306,6 +299,7 @@ pstops: pstops.o common.o ../cups/$(LIBCUPS)
rastertoepson: rastertoepson.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ rastertoepson.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -315,6 +309,7 @@ rastertoepson: rastertoepson.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
rastertohp: rastertohp.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ rastertohp.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -324,6 +319,7 @@ rastertohp: rastertohp.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
rastertolabel: rastertolabel.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ rastertolabel.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -333,12 +329,14 @@ rastertolabel: rastertolabel.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
rastertopwg: rastertopwg.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ rastertopwg.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
rastertopwg-static: rastertopwg.o ../cups/$(LIBCUPSSTATIC) libcupsimage.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ rastertopwg.o libcupsimage.a \
../cups/$(LIBCUPSSTATIC) $(IMGLIBS) $(DSOLIBS) $(COMMONLIBS) \
$(SSLLIBS) $(DNSSDLIBS) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -350,6 +348,7 @@ testclient: testclient.o ../cups/$(LIBCUPSSTATIC) libcupsimage.a
$(LD_CC) $(LDFLAGS) -o $@ testclient.o \
libcupsimage.a ../cups/$(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -361,6 +360,7 @@ testraster: testraster.o ../cups/$(LIBCUPSSTATIC) libcupsimage.a
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testraster.o libcupsimage.a \
../cups/$(LIBCUPSSTATIC) $(IMGLIBS) $(DSOLIBS) $(COMMONLIBS) \
$(SSLLIBS) $(DNSSDLIBS) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running raster API tests...
./testraster
@@ -372,6 +372,7 @@ testraster: testraster.o ../cups/$(LIBCUPSSTATIC) libcupsimage.a
rasterbench: rasterbench.o libcupsimage.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ rasterbench.o libcupsimage.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/filter/pstops.c b/filter/pstops.c
index 65a9db9..fab60d9 100644
--- a/filter/pstops.c
+++ b/filter/pstops.c
@@ -162,8 +162,7 @@ static ssize_t copy_trailer(cups_file_t *fp, pstops_doc_t *doc,
ssize_t linelen, size_t linesize);
static void do_prolog(pstops_doc_t *doc, ppd_file_t *ppd);
static void do_setup(pstops_doc_t *doc, ppd_file_t *ppd);
-static void doc_printf(pstops_doc_t *doc, const char *format, ...)
- __attribute__ ((__format__ (__printf__, 2, 3)));
+static void doc_printf(pstops_doc_t *doc, const char *format, ...) _CUPS_FORMAT(2, 3);
static void doc_puts(pstops_doc_t *doc, const char *s);
static void doc_write(pstops_doc_t *doc, const char *s, size_t len);
static void end_nup(pstops_doc_t *doc, int number);
diff --git a/filter/raster.c b/filter/raster.c
index edb650d..3ff0300 100644
--- a/filter/raster.c
+++ b/filter/raster.c
@@ -2132,11 +2132,11 @@ cups_read_fd(void *ctx, /* I - File descriptor as pointer */
ssize_t count; /* Number of bytes read */
-#ifdef WIN32 /* Sigh */
+#ifdef _WIN32 /* Sigh */
while ((count = read(fd, buf, (unsigned)bytes)) < 0)
#else
while ((count = read(fd, buf, bytes)) < 0)
-#endif /* WIN32 */
+#endif /* _WIN32 */
if (errno != EINTR && errno != EAGAIN)
{
DEBUG_printf(("8cups_read_fd: %s", strerror(errno)));
@@ -2213,11 +2213,11 @@ cups_write_fd(void *ctx, /* I - File descriptor pointer */
ssize_t count; /* Number of bytes written */
-#ifdef WIN32 /* Sigh */
+#ifdef _WIN32 /* Sigh */
while ((count = write(fd, buf, (unsigned)bytes)) < 0)
#else
while ((count = write(fd, buf, bytes)) < 0)
-#endif /* WIN32 */
+#endif /* _WIN32 */
if (errno != EINTR && errno != EAGAIN)
{
DEBUG_printf(("8cups_write_fd: %s", strerror(errno)));
diff --git a/filter/rastertoepson.c b/filter/rastertoepson.c
index 4efe669..3de491f 100644
--- a/filter/rastertoepson.c
+++ b/filter/rastertoepson.c
@@ -1,7 +1,7 @@
/*
* EPSON ESC/P and ESC/P2 filter for CUPS.
*
- * Copyright 2007-2015 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1993-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -307,7 +307,7 @@ StartPage(
if (DotBytes)
{
- if ((LineBuffers[0] = calloc((size_t)DotBytes, header->cupsWidth * (size_t)(Shingling + 1))) == NULL)
+ if ((LineBuffers[0] = calloc((size_t)DotBytes, (header->cupsWidth + 7) * (size_t)(Shingling + 1))) == NULL)
{
fputs("ERROR: Unable to allocate memory\n", stderr);
exit(1);
diff --git a/filter/rastertolabel.c b/filter/rastertolabel.c
index 4e49181..6ad6c62 100644
--- a/filter/rastertolabel.c
+++ b/filter/rastertolabel.c
@@ -305,7 +305,7 @@ StartPage(ppd_file_t *ppd, /* I - PPD file */
header->HWResolution[1], header->cupsHeight,
header->NumCopies);
printf("PAGE-WIDTH %u\r\n", header->cupsWidth);
- printf("PAGE-HEIGHT %u\r\n", header->cupsWidth);
+ printf("PAGE-HEIGHT %u\r\n", header->cupsHeight);
break;
case INTELLITECH_PCL :
@@ -374,7 +374,7 @@ StartPage(ppd_file_t *ppd, /* I - PPD file */
if (header->cupsCompression != ~0U)
/* inPrintDensity */
- printf("\033&d%uA", 30 * header->cupsCompression / 100 - 15);
+ printf("\033&d%dA", 30 * header->cupsCompression / 100 - 15);
if ((choice = ppdFindMarkedChoice(ppd, "inPrintMode")) != NULL)
{
diff --git a/locale/Makefile b/locale/Makefile
index 41cac35..4032776 100644
--- a/locale/Makefile
+++ b/locale/Makefile
@@ -161,6 +161,7 @@ checkpo: checkpo.o ../cups/$(LIBCUPSSTATIC)
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o checkpo checkpo.o \
../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
$(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
checkall: checkpo
./checkpo *.po *.strings
@@ -178,6 +179,7 @@ po2strings: po2strings.o ../cups/$(LIBCUPSSTATIC)
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o po2strings po2strings.o \
../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
$(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -190,6 +192,7 @@ po2strings: po2strings.o ../cups/$(LIBCUPSSTATIC)
strings2po: strings2po.o
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o strings2po strings2po.o
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/locale/cups.pot b/locale/cups.pot
index 9bfe18c..46edb9d 100644
--- a/locale/cups.pot
+++ b/locale/cups.pot
@@ -26,9 +26,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: CUPS 2.2.8\n"
+"Project-Id-Version: CUPS 2.2.9\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1136,7 +1136,7 @@ msgstr ""
msgid " -E Test with encryption using HTTP Upgrade to TLS."
msgstr ""
-#: scheduler/main.c:2104
+#: scheduler/main.c:2106
msgid " -F Run in the foreground but detach from console."
msgstr ""
@@ -1220,7 +1220,7 @@ msgstr ""
msgid " -c cups-files.conf Set cups-files.conf file to use."
msgstr ""
-#: scheduler/main.c:2102
+#: scheduler/main.c:2104
msgid " -c cupsd.conf Set cupsd.conf file to use."
msgstr ""
@@ -1244,7 +1244,7 @@ msgstr ""
msgid " -e Use every filter from the PPD file."
msgstr ""
-#: scheduler/main.c:2103
+#: scheduler/main.c:2105
msgid " -f Run in the foreground."
msgstr ""
@@ -1252,7 +1252,7 @@ msgstr ""
msgid " -f filename Set default request filename."
msgstr ""
-#: scheduler/main.c:2105
+#: scheduler/main.c:2107
msgid " -h Show this usage message."
msgstr ""
@@ -1288,7 +1288,7 @@ msgstr ""
msgid " -l Produce plain text output."
msgstr ""
-#: scheduler/main.c:2107
+#: scheduler/main.c:2109
msgid " -l Run cupsd on demand."
msgstr ""
@@ -1356,7 +1356,7 @@ msgstr ""
msgid " -s Print service name if true."
msgstr ""
-#: scheduler/main.c:2109
+#: scheduler/main.c:2111
msgid " -s cups-files.conf Set cups-files.conf file to use."
msgstr ""
@@ -1368,7 +1368,7 @@ msgstr ""
msgid " -t Test PPDs instead of generating them."
msgstr ""
-#: scheduler/main.c:2110
+#: scheduler/main.c:2112
msgid " -t Test the configuration file."
msgstr ""
@@ -1555,182 +1555,182 @@ msgstr ""
msgid " PASS"
msgstr ""
-#: cups/ipp.c:5226
+#: cups/ipp.c:5145
#, c-format
msgid "\"%s\": Bad URI value \"%s\" - %s (RFC 8011 section 5.1.6)."
msgstr ""
-#: cups/ipp.c:5233
+#: cups/ipp.c:5152
#, c-format
msgid "\"%s\": Bad URI value \"%s\" - bad length %d (RFC 8011 section 5.1.6)."
msgstr ""
-#: cups/ipp.c:4850
+#: cups/ipp.c:4763
#, c-format
msgid "\"%s\": Bad attribute name - bad length %d (RFC 8011 section 5.1.4)."
msgstr ""
-#: cups/ipp.c:4842
+#: cups/ipp.c:4755
#, c-format
msgid "\"%s\": Bad attribute name - invalid character (RFC 8011 section 5.1.4)."
msgstr ""
-#: cups/ipp.c:4868
+#: cups/ipp.c:4781
#, c-format
msgid "\"%s\": Bad boolen value %d (RFC 8011 section 5.1.21)."
msgstr ""
-#: cups/ipp.c:5285
+#: cups/ipp.c:5204
#, c-format
msgid "\"%s\": Bad charset value \"%s\" - bad characters (RFC 8011 section 5.1.8)."
msgstr ""
-#: cups/ipp.c:5294
+#: cups/ipp.c:5213
#, c-format
msgid "\"%s\": Bad charset value \"%s\" - bad length %d (RFC 8011 section 5.1.8)."
msgstr ""
-#: cups/ipp.c:4968
+#: cups/ipp.c:4881
#, c-format
msgid "\"%s\": Bad dateTime UTC hours %u (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4976
+#: cups/ipp.c:4889
#, c-format
msgid "\"%s\": Bad dateTime UTC minutes %u (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4960
+#: cups/ipp.c:4873
#, c-format
msgid "\"%s\": Bad dateTime UTC sign '%c' (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4920
+#: cups/ipp.c:4833
#, c-format
msgid "\"%s\": Bad dateTime day %u (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4952
+#: cups/ipp.c:4865
#, c-format
msgid "\"%s\": Bad dateTime deciseconds %u (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4928
+#: cups/ipp.c:4841
#, c-format
msgid "\"%s\": Bad dateTime hours %u (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4936
+#: cups/ipp.c:4849
#, c-format
msgid "\"%s\": Bad dateTime minutes %u (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4912
+#: cups/ipp.c:4825
#, c-format
msgid "\"%s\": Bad dateTime month %u (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4944
+#: cups/ipp.c:4857
#, c-format
msgid "\"%s\": Bad dateTime seconds %u (RFC 8011 section 5.1.15)."
msgstr ""
-#: cups/ipp.c:4882
+#: cups/ipp.c:4795
#, c-format
msgid "\"%s\": Bad enum value %d - out of range (RFC 8011 section 5.1.5)."
msgstr ""
-#: cups/ipp.c:5205
+#: cups/ipp.c:5124
#, c-format
msgid "\"%s\": Bad keyword value \"%s\" - bad length %d (RFC 8011 section 5.1.4)."
msgstr ""
-#: cups/ipp.c:5196
+#: cups/ipp.c:5115
#, c-format
msgid "\"%s\": Bad keyword value \"%s\" - invalid character (RFC 8011 section 5.1.4)."
msgstr ""
-#: cups/ipp.c:5394
+#: cups/ipp.c:5313
#, c-format
msgid "\"%s\": Bad mimeMediaType value \"%s\" - bad characters (RFC 8011 section 5.1.10)."
msgstr ""
-#: cups/ipp.c:5404
+#: cups/ipp.c:5323
#, c-format
msgid "\"%s\": Bad mimeMediaType value \"%s\" - bad length %d (RFC 8011 section 5.1.10)."
msgstr ""
-#: cups/ipp.c:5169
+#: cups/ipp.c:5087
#, c-format
msgid "\"%s\": Bad name value \"%s\" - bad UTF-8 sequence (RFC 8011 section 5.1.3)."
msgstr ""
-#: cups/ipp.c:5164
+#: cups/ipp.c:5082
#, c-format
msgid "\"%s\": Bad name value \"%s\" - bad control character (PWG 5100.14 section 8.1)."
msgstr ""
-#: cups/ipp.c:5176
+#: cups/ipp.c:5095
#, c-format
msgid "\"%s\": Bad name value \"%s\" - bad length %d (RFC 8011 section 5.1.3)."
msgstr ""
-#: cups/ipp.c:5340
+#: cups/ipp.c:5259
#, c-format
msgid "\"%s\": Bad naturalLanguage value \"%s\" - bad characters (RFC 8011 section 5.1.9)."
msgstr ""
-#: cups/ipp.c:5350
+#: cups/ipp.c:5269
#, c-format
msgid "\"%s\": Bad naturalLanguage value \"%s\" - bad length %d (RFC 8011 section 5.1.9)."
msgstr ""
-#: cups/ipp.c:4896
+#: cups/ipp.c:4809
#, c-format
msgid "\"%s\": Bad octetString value - bad length %d (RFC 8011 section 5.1.20)."
msgstr ""
-#: cups/ipp.c:5039
+#: cups/ipp.c:4952
#, c-format
msgid "\"%s\": Bad rangeOfInteger value %d-%d - lower greater than upper (RFC 8011 section 5.1.14)."
msgstr ""
-#: cups/ipp.c:5020
+#: cups/ipp.c:4933
#, c-format
msgid "\"%s\": Bad resolution value %dx%d%s - bad units value (RFC 8011 section 5.1.16)."
msgstr ""
-#: cups/ipp.c:4989
+#: cups/ipp.c:4902
#, c-format
msgid "\"%s\": Bad resolution value %dx%d%s - cross feed resolution must be positive (RFC 8011 section 5.1.16)."
msgstr ""
-#: cups/ipp.c:5004
+#: cups/ipp.c:4917
#, c-format
msgid "\"%s\": Bad resolution value %dx%d%s - feed resolution must be positive (RFC 8011 section 5.1.16)."
msgstr ""
-#: cups/ipp.c:5107
+#: cups/ipp.c:5022
#, c-format
msgid "\"%s\": Bad text value \"%s\" - bad UTF-8 sequence (RFC 8011 section 5.1.2)."
msgstr ""
-#: cups/ipp.c:5102
+#: cups/ipp.c:5017
#, c-format
msgid "\"%s\": Bad text value \"%s\" - bad control character (PWG 5100.14 section 8.3)."
msgstr ""
-#: cups/ipp.c:5114
+#: cups/ipp.c:5030
#, c-format
msgid "\"%s\": Bad text value \"%s\" - bad length %d (RFC 8011 section 5.1.2)."
msgstr ""
-#: cups/ipp.c:5256
+#: cups/ipp.c:5175
#, c-format
msgid "\"%s\": Bad uriScheme value \"%s\" - bad characters (RFC 8011 section 5.1.7)."
msgstr ""
-#: cups/ipp.c:5265
+#: cups/ipp.c:5184
#, c-format
msgid "\"%s\": Bad uriScheme value \"%s\" - bad length %d (RFC 8011 section 5.1.7)."
msgstr ""
@@ -1788,7 +1788,7 @@ msgstr ""
msgid "%s accepting requests since %s"
msgstr ""
-#: scheduler/ipp.c:10357
+#: scheduler/ipp.c:10349
#, c-format
msgid "%s cannot be changed."
msgstr ""
@@ -1845,10 +1845,10 @@ msgid "%s: %-33.33s [job %d localhost]"
msgstr ""
#. TRANSLATORS: Message is "subject: error"
-#: cups/langprintf.c:75 scheduler/cupsfilter.c:724 systemv/lpadmin.c:799
-#: systemv/lpadmin.c:850 systemv/lpadmin.c:900 systemv/lpadmin.c:956
-#: systemv/lpadmin.c:1054 systemv/lpadmin.c:1106 systemv/lpadmin.c:1162
-#: systemv/lpadmin.c:1600
+#: cups/langprintf.c:75 scheduler/cupsfilter.c:724 systemv/lpadmin.c:801
+#: systemv/lpadmin.c:852 systemv/lpadmin.c:902 systemv/lpadmin.c:958
+#: systemv/lpadmin.c:1056 systemv/lpadmin.c:1108 systemv/lpadmin.c:1150
+#: systemv/lpadmin.c:1164 systemv/lpadmin.c:1614
#, c-format
msgid "%s: %s"
msgstr ""
@@ -1858,7 +1858,7 @@ msgstr ""
msgid "%s: %s failed: %s"
msgstr ""
-#: systemv/lpadmin.c:1223
+#: systemv/lpadmin.c:1225
#, c-format
msgid "%s: Bad printer URI \"%s\"."
msgstr ""
@@ -2120,13 +2120,13 @@ msgstr ""
#: berkeley/lpq.c:87 berkeley/lpr.c:68 berkeley/lprm.c:65 systemv/cancel.c:79
#: systemv/cupsaccept.c:89 systemv/cupsaddsmb.c:78 systemv/lp.c:99
-#: systemv/lpadmin.c:250 systemv/lpinfo.c:192 systemv/lpmove.c:70
+#: systemv/lpadmin.c:251 systemv/lpinfo.c:192 systemv/lpmove.c:70
#: systemv/lpstat.c:91 test/ipptool.c:285 test/ipptool.c:329
#, c-format
msgid "%s: Sorry, no encryption support."
msgstr ""
-#: systemv/lpadmin.c:1230
+#: systemv/lpadmin.c:1232
#, c-format
msgid "%s: Unable to connect to \"%s:%d\": %s"
msgstr ""
@@ -2142,7 +2142,7 @@ msgstr ""
msgid "%s: Unable to contact server."
msgstr ""
-#: systemv/lpadmin.c:1255
+#: systemv/lpadmin.c:1262
#, c-format
msgid "%s: Unable to create PPD file: %s"
msgstr ""
@@ -2167,12 +2167,17 @@ msgstr ""
msgid "%s: Unable to open PPD file: %s on line %d."
msgstr ""
+#: systemv/lpadmin.c:1247
+#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
#: scheduler/cupsfilter.c:381
#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr ""
-#: systemv/lpadmin.c:1214
+#: systemv/lpadmin.c:1216
#, c-format
msgid "%s: Unable to resolve \"%s\"."
msgstr ""
@@ -2573,7 +2578,7 @@ msgstr ""
msgid "2-Hole Punch (Reverse Portrait)"
msgstr ""
-#: cups/ppd-cache.c:3711 ppdc/sample.c:262
+#: cups/ppd-cache.c:3735 ppdc/sample.c:262
msgid "2-Sided Printing"
msgstr ""
@@ -3077,11 +3082,11 @@ msgstr ""
msgid "?Invalid help command unknown."
msgstr ""
-#: cgi-bin/admin.c:2352
+#: cgi-bin/admin.c:2353
msgid "A Samba password is required to export printer drivers"
msgstr ""
-#: cgi-bin/admin.c:2348
+#: cgi-bin/admin.c:2349
msgid "A Samba username is required to export printer drivers"
msgstr ""
@@ -3235,7 +3240,7 @@ msgstr ""
msgid "Accept Jobs"
msgstr ""
-#: cups/http-support.c:1352
+#: cups/http-support.c:1498
msgid "Accepted"
msgstr ""
@@ -3260,23 +3265,23 @@ msgstr ""
msgid "Address"
msgstr ""
-#: cgi-bin/admin.c:184 cgi-bin/admin.c:258 cgi-bin/admin.c:2729
+#: cgi-bin/admin.c:184 cgi-bin/admin.c:258 cgi-bin/admin.c:2730
msgid "Administration"
msgstr ""
-#: cups/ppd-cache.c:3472
+#: cups/ppd-cache.c:3483
msgid "Advanced Photo Paper"
msgstr ""
-#: cups/ppd-cache.c:3386
+#: cups/ppd-cache.c:3396
msgid "Alternate"
msgstr ""
-#: cups/ppd-cache.c:3394
+#: cups/ppd-cache.c:3404
msgid "Alternate Roll"
msgstr ""
-#: cups/ppd-cache.c:3466
+#: cups/ppd-cache.c:3477
msgid "Aluminum"
msgstr ""
@@ -3292,19 +3297,19 @@ msgstr ""
msgid "Applicator"
msgstr ""
-#: cups/ppd-cache.c:3500
+#: cups/ppd-cache.c:3511
msgid "Archival Envelope"
msgstr ""
-#: cups/ppd-cache.c:3512
+#: cups/ppd-cache.c:3523
msgid "Archival Fabric"
msgstr ""
-#: cups/ppd-cache.c:3589
+#: cups/ppd-cache.c:3600
msgid "Archival Paper"
msgstr ""
-#: cups/ppd-cache.c:3561
+#: cups/ppd-cache.c:3572
msgid "Archival Photo Paper"
msgstr ""
@@ -3313,12 +3318,12 @@ msgstr ""
msgid "Attempt to set %s printer-state to bad value %d."
msgstr ""
-#: scheduler/ipp.c:5463 scheduler/ipp.c:5489
+#: scheduler/ipp.c:5455 scheduler/ipp.c:5481
#, c-format
msgid "Attribute \"%s\" is in the wrong group."
msgstr ""
-#: scheduler/ipp.c:5465 scheduler/ipp.c:5491
+#: scheduler/ipp.c:5457 scheduler/ipp.c:5483
#, c-format
msgid "Attribute \"%s\" is the wrong value type."
msgstr ""
@@ -3328,7 +3333,7 @@ msgstr ""
msgid "Attribute groups are out of order (%x < %x)."
msgstr ""
-#: cups/ppd-cache.c:3384 cups/ppd-cache.c:3467 cups/ppd-cache.c:3771
+#: cups/ppd-cache.c:3394 cups/ppd-cache.c:3478 cups/ppd-cache.c:3801
msgid "Automatic"
msgstr ""
@@ -3380,20 +3385,24 @@ msgstr ""
msgid "B9"
msgstr ""
-#: cups/ppd-cache.c:3468
+#: cups/ppd-cache.c:3479
msgid "Back Print Film"
msgstr ""
-#: scheduler/ipp.c:10366
+#: scheduler/ipp.c:10358
#, c-format
msgid "Bad '%s' value."
msgstr ""
-#: scheduler/ipp.c:11314
+#: scheduler/ipp.c:11306
#, c-format
msgid "Bad 'document-format' value \"%s\"."
msgstr ""
+#: cups/ppd.c:337
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
#: cups/dest.c:1654
msgid "Bad NULL dests pointer"
msgstr ""
@@ -3427,7 +3436,7 @@ msgstr ""
msgid "Bad PPD file."
msgstr ""
-#: cups/http-support.c:1370
+#: cups/http-support.c:1516
msgid "Bad Request"
msgstr ""
@@ -3439,7 +3448,7 @@ msgstr ""
msgid "Bad UIConstraints"
msgstr ""
-#: cups/hash.c:53 cups/http-support.c:1464
+#: cups/hash.c:53 cups/http-support.c:1610
msgid "Bad arguments to function"
msgstr ""
@@ -3452,7 +3461,7 @@ msgstr ""
msgid "Bad custom parameter"
msgstr ""
-#: cups/http-support.c:1604 scheduler/ipp.c:2378
+#: cups/http-support.c:1750 scheduler/ipp.c:2378
#, c-format
msgid "Bad device-uri \"%s\"."
msgstr ""
@@ -3462,12 +3471,12 @@ msgstr ""
msgid "Bad device-uri scheme \"%s\"."
msgstr ""
-#: scheduler/ipp.c:8512 scheduler/ipp.c:8530 scheduler/ipp.c:9758
+#: scheduler/ipp.c:8504 scheduler/ipp.c:8522 scheduler/ipp.c:9750
#, c-format
msgid "Bad document-format \"%s\"."
msgstr ""
-#: scheduler/ipp.c:9776
+#: scheduler/ipp.c:9768
#, c-format
msgid "Bad document-format-default \"%s\"."
msgstr ""
@@ -3476,7 +3485,7 @@ msgstr ""
msgid "Bad filename buffer"
msgstr ""
-#: cups/http-support.c:1473
+#: cups/http-support.c:1619
msgid "Bad hostname/address in URI"
msgstr ""
@@ -3489,7 +3498,7 @@ msgstr ""
msgid "Bad job-name value: Wrong type or count."
msgstr ""
-#: scheduler/ipp.c:10404
+#: scheduler/ipp.c:10396
msgid "Bad job-priority value."
msgstr ""
@@ -3502,29 +3511,29 @@ msgstr ""
msgid "Bad job-sheets value type."
msgstr ""
-#: scheduler/ipp.c:10434
+#: scheduler/ipp.c:10426
msgid "Bad job-state value."
msgstr ""
-#: scheduler/ipp.c:3014 scheduler/ipp.c:3476 scheduler/ipp.c:6294
-#: scheduler/ipp.c:6441 scheduler/ipp.c:7938 scheduler/ipp.c:8210
-#: scheduler/ipp.c:9076 scheduler/ipp.c:9300 scheduler/ipp.c:9652
-#: scheduler/ipp.c:10265
+#: scheduler/ipp.c:3014 scheduler/ipp.c:3476 scheduler/ipp.c:6286
+#: scheduler/ipp.c:6433 scheduler/ipp.c:7930 scheduler/ipp.c:8202
+#: scheduler/ipp.c:9068 scheduler/ipp.c:9292 scheduler/ipp.c:9644
+#: scheduler/ipp.c:10257
#, c-format
msgid "Bad job-uri \"%s\"."
msgstr ""
-#: scheduler/ipp.c:2064 scheduler/ipp.c:5814
+#: scheduler/ipp.c:2064 scheduler/ipp.c:5806
#, c-format
msgid "Bad notify-pull-method \"%s\"."
msgstr ""
-#: scheduler/ipp.c:2028 scheduler/ipp.c:5778
+#: scheduler/ipp.c:2028 scheduler/ipp.c:5770
#, c-format
msgid "Bad notify-recipient-uri \"%s\"."
msgstr ""
-#: scheduler/ipp.c:5889
+#: scheduler/ipp.c:5881
#, c-format
msgid "Bad notify-user-data \"%s\"."
msgstr ""
@@ -3544,7 +3553,7 @@ msgstr ""
msgid "Bad page-ranges values %d-%d."
msgstr ""
-#: cups/http-support.c:1470
+#: cups/http-support.c:1616
msgid "Bad port number in URI"
msgstr ""
@@ -3572,19 +3581,19 @@ msgstr ""
msgid "Bad request version number %d.%d."
msgstr ""
-#: cups/http-support.c:1467
+#: cups/http-support.c:1613
msgid "Bad resource in URI"
msgstr ""
-#: cups/http-support.c:1479
+#: cups/http-support.c:1625
msgid "Bad scheme in URI"
msgstr ""
-#: cgi-bin/admin.c:1468
+#: cgi-bin/admin.c:1469
msgid "Bad subscription ID"
msgstr ""
-#: cups/http-support.c:1476
+#: cups/http-support.c:1622
msgid "Bad username in URI"
msgstr ""
@@ -3592,7 +3601,7 @@ msgstr ""
msgid "Bad value string"
msgstr ""
-#: cups/http-support.c:1482
+#: cups/http-support.c:1628
msgid "Bad/empty URI"
msgstr ""
@@ -3600,7 +3609,7 @@ msgstr ""
msgid "Bale"
msgstr ""
-#: cgi-bin/admin.c:3274 cgi-bin/admin.c:3520
+#: cgi-bin/admin.c:3275 cgi-bin/admin.c:3521
msgid "Banners"
msgstr ""
@@ -3624,7 +3633,7 @@ msgstr ""
msgid "Bind (Reverse Portrait)"
msgstr ""
-#: cups/ppd-cache.c:3501
+#: cups/ppd-cache.c:3512
msgid "Bond Envelope"
msgstr ""
@@ -3632,7 +3641,7 @@ msgstr ""
msgid "Bond Paper"
msgstr ""
-#: cups/ppd-cache.c:3996
+#: cups/ppd-cache.c:4061
msgid "Booklet"
msgstr ""
@@ -3645,11 +3654,11 @@ msgstr ""
msgid "Boolean expected for waiteof option \"%s\"."
msgstr ""
-#: cups/ppd-cache.c:3397
+#: cups/ppd-cache.c:3407
msgid "Bottom"
msgstr ""
-#: cups/ppd-cache.c:3772
+#: cups/ppd-cache.c:3802
msgid "Bottom Tray"
msgstr ""
@@ -3657,7 +3666,7 @@ msgstr ""
msgid "Buffer overflow detected, aborting."
msgstr ""
-#: cups/ppd-cache.c:3471
+#: cups/ppd-cache.c:3482
msgid "CD"
msgstr ""
@@ -3673,11 +3682,11 @@ msgstr ""
msgid "Cancel Jobs"
msgstr ""
-#: cgi-bin/admin.c:1469 cgi-bin/admin.c:1508 cgi-bin/admin.c:1518
+#: cgi-bin/admin.c:1470 cgi-bin/admin.c:1509 cgi-bin/admin.c:1519
msgid "Cancel RSS Subscription"
msgstr ""
-#: backend/ipp.c:2264
+#: backend/ipp.c:2271
msgid "Canceling print job."
msgstr ""
@@ -3689,11 +3698,11 @@ msgstr ""
msgid "Cannot share a remote Kerberized printer."
msgstr ""
-#: cups/ppd-cache.c:3469
+#: cups/ppd-cache.c:3480
msgid "Cardboard"
msgstr ""
-#: cups/ppd-cache.c:3470
+#: cups/ppd-cache.c:3481
msgid "Cardstock"
msgstr ""
@@ -3701,20 +3710,20 @@ msgstr ""
msgid "Cassette"
msgstr ""
-#: cups/ppd-cache.c:3401
+#: cups/ppd-cache.c:3411
msgid "Center"
msgstr ""
-#: cups/ppd-cache.c:3773
+#: cups/ppd-cache.c:3803
msgid "Center Tray"
msgstr ""
-#: cgi-bin/admin.c:1639 cgi-bin/admin.c:1781 cgi-bin/admin.c:1794
-#: cgi-bin/admin.c:1805
+#: cgi-bin/admin.c:1640 cgi-bin/admin.c:1782 cgi-bin/admin.c:1795
+#: cgi-bin/admin.c:1806
msgid "Change Settings"
msgstr ""
-#: scheduler/ipp.c:2076 scheduler/ipp.c:5826
+#: scheduler/ipp.c:2076 scheduler/ipp.c:5818
#, c-format
msgid "Character set \"%s\" not supported."
msgstr ""
@@ -3735,24 +3744,24 @@ msgstr ""
msgid "Coat"
msgstr ""
-#: cups/ppd-cache.c:3502
+#: cups/ppd-cache.c:3513
msgid "Coated Envelope"
msgstr ""
-#: cups/ppd-cache.c:3590
+#: cups/ppd-cache.c:3601
msgid "Coated Paper"
msgstr ""
-#: cups/ppd-cache.c:3675 ppdc/sample.c:276
+#: cups/ppd-cache.c:3694 ppdc/sample.c:276
msgid "Color"
msgstr ""
-#: cups/ppd-cache.c:3651 cups/ppd-cache.c:3662 cups/ppd-cache.c:3673
-#: cups/ppd-cache.c:3683 ppdc/sample.c:274
+#: cups/ppd-cache.c:3668 cups/ppd-cache.c:3680 cups/ppd-cache.c:3692
+#: cups/ppd-cache.c:3703 ppdc/sample.c:274
msgid "Color Mode"
msgstr ""
-#: cups/ppd-cache.c:3537
+#: cups/ppd-cache.c:3548
msgid "Colored Labels"
msgstr ""
@@ -3775,19 +3784,19 @@ msgstr ""
msgid "Connecting to printer."
msgstr ""
-#: cups/http-support.c:1340
+#: cups/http-support.c:1486
msgid "Continue"
msgstr ""
-#: cups/ppd-cache.c:3485 ppdc/sample.c:360
+#: cups/ppd-cache.c:3496 ppdc/sample.c:360
msgid "Continuous"
msgstr ""
-#: cups/ppd-cache.c:3486
+#: cups/ppd-cache.c:3497
msgid "Continuous Long"
msgstr ""
-#: cups/ppd-cache.c:3487
+#: cups/ppd-cache.c:3498
msgid "Continuous Short"
msgstr ""
@@ -3795,15 +3804,15 @@ msgstr ""
msgid "Control file sent successfully."
msgstr ""
-#: backend/ipp.c:1398 backend/lpd.c:455
+#: backend/ipp.c:1405 backend/lpd.c:455
msgid "Copying print data."
msgstr ""
-#: cups/ppd-cache.c:3503
+#: cups/ppd-cache.c:3514
msgid "Cotton Envelope"
msgstr ""
-#: cups/ppd-cache.c:3591
+#: cups/ppd-cache.c:3602
msgid "Cotton Paper"
msgstr ""
@@ -3811,7 +3820,7 @@ msgstr ""
msgid "Cover"
msgstr ""
-#: cups/http-support.c:1349
+#: cups/http-support.c:1495
msgid "Created"
msgstr ""
@@ -3823,7 +3832,7 @@ msgstr ""
msgid "Credentials have expired."
msgstr ""
-#: cups/ppd.c:1152 cups/ppd.c:1192 cups/ppd.c:1437 cups/ppd.c:1540
+#: cups/ppd.c:1154 cups/ppd.c:1194 cups/ppd.c:1439 cups/ppd.c:1542
msgid "Custom"
msgstr ""
@@ -3847,7 +3856,7 @@ msgstr ""
msgid "Cutter"
msgstr ""
-#: cups/ppd-cache.c:3496
+#: cups/ppd-cache.c:3507
msgid "DVD"
msgstr ""
@@ -3863,15 +3872,15 @@ msgstr ""
msgid "Data file sent successfully."
msgstr ""
-#: cups/ppd-cache.c:3685
+#: cups/ppd-cache.c:3705
msgid "Deep Color"
msgstr ""
-#: cgi-bin/admin.c:2078 cgi-bin/admin.c:2089 cgi-bin/admin.c:2134
+#: cgi-bin/admin.c:2079 cgi-bin/admin.c:2090 cgi-bin/admin.c:2135
msgid "Delete Class"
msgstr ""
-#: cgi-bin/admin.c:2163 cgi-bin/admin.c:2174 cgi-bin/admin.c:2219
+#: cgi-bin/admin.c:2164 cgi-bin/admin.c:2175 cgi-bin/admin.c:2220
msgid "Delete Printer"
msgstr ""
@@ -3928,11 +3937,11 @@ msgstr ""
msgid "Disabled"
msgstr ""
-#: cups/ppd-cache.c:3390
+#: cups/ppd-cache.c:3400
msgid "Disc"
msgstr ""
-#: scheduler/ipp.c:6343
+#: scheduler/ipp.c:6335
#, c-format
msgid "Document #%d does not exist in job #%d."
msgstr ""
@@ -3957,16 +3966,16 @@ msgstr ""
msgid "Double Staple (Reverse Portrait)"
msgstr ""
-#: cups/ppd-cache.c:3494
+#: cups/ppd-cache.c:3505
msgid "Double Wall Cardboard"
msgstr ""
-#: cups/ppd-cache.c:4054 cups/ppd-cache.c:4056 cups/ppd-cache.c:4114
-#: cups/ppd-cache.c:4146
+#: cups/ppd-cache.c:4119 cups/ppd-cache.c:4121 cups/ppd-cache.c:4184
+#: cups/ppd-cache.c:4221
msgid "Draft"
msgstr ""
-#: cups/ppd-cache.c:3495
+#: cups/ppd-cache.c:3506
msgid "Dry Film"
msgstr ""
@@ -3986,13 +3995,13 @@ msgstr ""
msgid "EPL2 Label Printer"
msgstr ""
-#: cgi-bin/admin.c:1833 cgi-bin/admin.c:1845 cgi-bin/admin.c:1899
-#: cgi-bin/admin.c:1906 cgi-bin/admin.c:1941 cgi-bin/admin.c:1954
-#: cgi-bin/admin.c:1978 cgi-bin/admin.c:2051
+#: cgi-bin/admin.c:1834 cgi-bin/admin.c:1846 cgi-bin/admin.c:1900
+#: cgi-bin/admin.c:1907 cgi-bin/admin.c:1942 cgi-bin/admin.c:1955
+#: cgi-bin/admin.c:1979 cgi-bin/admin.c:2052
msgid "Edit Configuration File"
msgstr ""
-#: cups/ppd-cache.c:3497
+#: cups/ppd-cache.c:3508
msgid "Embossing Foil"
msgstr ""
@@ -4000,16 +4009,16 @@ msgstr ""
msgid "Empty PPD file."
msgstr ""
-#: cups/http.c:4635
+#: cups/http.c:4641
msgid "Encryption is not supported."
msgstr ""
-#: cups/ppd-cache.c:3498
+#: cups/ppd-cache.c:3509
msgid "End Board"
msgstr ""
#. TRANSLATORS: Banner/cover sheet after the print job.
-#: cgi-bin/admin.c:3545
+#: cgi-bin/admin.c:3546
msgid "Ending Banner"
msgstr ""
@@ -4025,7 +4034,7 @@ msgstr ""
msgid "Enter your username and password or the root username and password to access this page. If you are using Kerberos authentication, make sure you have a valid Kerberos ticket."
msgstr ""
-#: cups/ppd-cache.c:3389 cups/ppd-cache.c:3499
+#: cups/ppd-cache.c:3399 cups/ppd-cache.c:3510
msgid "Envelope"
msgstr ""
@@ -4249,7 +4258,7 @@ msgstr ""
msgid "Epson"
msgstr ""
-#: cgi-bin/admin.c:3588
+#: cgi-bin/admin.c:3589
msgid "Error Policy"
msgstr ""
@@ -4314,11 +4323,11 @@ msgstr ""
msgid "Every Label"
msgstr ""
-#: cups/ppd-cache.c:3477
+#: cups/ppd-cache.c:3488
msgid "Everyday Glossy Photo Paper"
msgstr ""
-#: cups/ppd-cache.c:3478
+#: cups/ppd-cache.c:3489
msgid "Everyday Matte Paper"
msgstr ""
@@ -4326,11 +4335,11 @@ msgstr ""
msgid "Executive"
msgstr ""
-#: cups/http-support.c:1398
+#: cups/http-support.c:1544
msgid "Expectation Failed"
msgstr ""
-#: cgi-bin/admin.c:2340 cgi-bin/admin.c:2359
+#: cgi-bin/admin.c:2341 cgi-bin/admin.c:2360
msgid "Export Printers to Samba"
msgstr ""
@@ -4338,7 +4347,7 @@ msgstr ""
msgid "Expressions:"
msgstr ""
-#: cups/ppd-cache.c:3479
+#: cups/ppd-cache.c:3490
msgid "Extra Heavyweight Paper"
msgstr ""
@@ -4352,19 +4361,19 @@ msgstr ""
msgid "FAIL"
msgstr ""
-#: cups/ppd-cache.c:3511
+#: cups/ppd-cache.c:3522
msgid "Fabric"
msgstr ""
-#: cups/ppd-cache.c:3774
+#: cups/ppd-cache.c:3804
msgid "Face Down"
msgstr ""
-#: cups/ppd-cache.c:3775
+#: cups/ppd-cache.c:3805
msgid "Face Up"
msgstr ""
-#: cups/ppd-cache.c:3653
+#: cups/ppd-cache.c:3670
msgid "Fast Grayscale"
msgstr ""
@@ -4402,11 +4411,11 @@ msgstr ""
msgid "File device URIs have been disabled. To enable, see the FileDevice directive in \"%s/cups-files.conf\"."
msgstr ""
-#: cups/ppd-cache.c:3518
+#: cups/ppd-cache.c:3529
msgid "Film"
msgstr ""
-#: cups/ppd-cache.c:3504
+#: cups/ppd-cache.c:3515
msgid "Fine Envelope"
msgstr ""
@@ -4416,23 +4425,23 @@ msgstr ""
msgid "Finished page %d."
msgstr ""
-#: cups/ppd-cache.c:3519
+#: cups/ppd-cache.c:3530
msgid "Flexo Base"
msgstr ""
-#: cups/ppd-cache.c:3520
+#: cups/ppd-cache.c:3531
msgid "Flexo Photo Polymer"
msgstr ""
-#: cups/ppd-cache.c:3521
+#: cups/ppd-cache.c:3532
msgid "Flute"
msgstr ""
-#: cups/ppd-cache.c:3522
+#: cups/ppd-cache.c:3533
msgid "Foil"
msgstr ""
-#: cups/ppd-cache.c:2992 cups/ppd-cache.c:3911
+#: cups/ppd-cache.c:2992 cups/ppd-cache.c:3970
msgid "Fold"
msgstr ""
@@ -4440,15 +4449,15 @@ msgstr ""
msgid "Folio"
msgstr ""
-#: cups/http-support.c:1377
+#: cups/http-support.c:1523
msgid "Forbidden"
msgstr ""
-#: cups/http-support.c:1361
+#: cups/http-support.c:1507
msgid "Found"
msgstr ""
-#: cups/ppd-cache.c:3523
+#: cups/ppd-cache.c:3534
msgid "Full Cut Tabs"
msgstr ""
@@ -4456,7 +4465,7 @@ msgstr ""
msgid "Gate Fold"
msgstr ""
-#: cups/ppd.c:783 cups/ppd.c:1341
+#: cups/ppd.c:785 cups/ppd.c:1343
msgid "General"
msgstr ""
@@ -4468,39 +4477,39 @@ msgstr ""
msgid "Get-Response-PDU uses indefinite length"
msgstr ""
-#: cups/ppd-cache.c:3524
+#: cups/ppd-cache.c:3535
msgid "Glass"
msgstr ""
-#: cups/ppd-cache.c:3525
+#: cups/ppd-cache.c:3536
msgid "Glass Colored"
msgstr ""
-#: cups/ppd-cache.c:3526
+#: cups/ppd-cache.c:3537
msgid "Glass Opaque"
msgstr ""
-#: cups/ppd-cache.c:3527
+#: cups/ppd-cache.c:3538
msgid "Glass Surfaced"
msgstr ""
-#: cups/ppd-cache.c:3528
+#: cups/ppd-cache.c:3539
msgid "Glass Textured"
msgstr ""
-#: cups/ppd-cache.c:3473
+#: cups/ppd-cache.c:3484
msgid "Glossy Brochure Paper"
msgstr ""
-#: cups/ppd-cache.c:3513
+#: cups/ppd-cache.c:3524
msgid "Glossy Fabric"
msgstr ""
-#: cups/ppd-cache.c:3538
+#: cups/ppd-cache.c:3549
msgid "Glossy Labels"
msgstr ""
-#: cups/ppd-cache.c:3489
+#: cups/ppd-cache.c:3500
msgid "Glossy Optical Disc"
msgstr ""
@@ -4508,22 +4517,22 @@ msgstr ""
msgid "Glossy Paper"
msgstr ""
-#: cups/ppd-cache.c:3563
+#: cups/ppd-cache.c:3574
msgid "Glossy Photo Paper"
msgstr ""
#: scheduler/ipp.c:2992 scheduler/ipp.c:3402 scheduler/ipp.c:3940
-#: scheduler/ipp.c:6272 scheduler/ipp.c:6419 scheduler/ipp.c:7915
-#: scheduler/ipp.c:9054 scheduler/ipp.c:9278 scheduler/ipp.c:9630
-#: scheduler/ipp.c:10243
+#: scheduler/ipp.c:6264 scheduler/ipp.c:6411 scheduler/ipp.c:7907
+#: scheduler/ipp.c:9046 scheduler/ipp.c:9270 scheduler/ipp.c:9622
+#: scheduler/ipp.c:10235
msgid "Got a printer-uri attribute but no job-id."
msgstr ""
-#: cups/ppd-cache.c:3529
+#: cups/ppd-cache.c:3540
msgid "Gravure Cylinder"
msgstr ""
-#: cups/ppd-cache.c:3664 ppdc/sample.c:275
+#: cups/ppd-cache.c:3682 ppdc/sample.c:275
msgid "Grayscale"
msgstr ""
@@ -4531,7 +4540,7 @@ msgstr ""
msgid "HP"
msgstr ""
-#: cups/ppd-cache.c:3392
+#: cups/ppd-cache.c:3402
msgid "Hagaki"
msgstr ""
@@ -4551,15 +4560,15 @@ msgstr ""
msgid "Hash buffer too small."
msgstr ""
-#: cups/ppd-cache.c:3594
+#: cups/ppd-cache.c:3605
msgid "Heavyweight Coated Paper"
msgstr ""
-#: cups/ppd-cache.c:3505
+#: cups/ppd-cache.c:3516
msgid "Heavyweight Envelope"
msgstr ""
-#: cups/ppd-cache.c:3593
+#: cups/ppd-cache.c:3604
msgid "Heavyweight Paper"
msgstr ""
@@ -4567,115 +4576,115 @@ msgstr ""
msgid "Help file not in index."
msgstr ""
-#: cups/ppd-cache.c:4059 cups/ppd-cache.c:4121 cups/ppd-cache.c:4149
+#: cups/ppd-cache.c:4126 cups/ppd-cache.c:4195 cups/ppd-cache.c:4226
msgid "High"
msgstr ""
-#: cups/ppd-cache.c:3514
+#: cups/ppd-cache.c:3525
msgid "High Gloss Fabric"
msgstr ""
-#: cups/ppd-cache.c:3539
+#: cups/ppd-cache.c:3550
msgid "High Gloss Labels"
msgstr ""
-#: cups/ppd-cache.c:3490
+#: cups/ppd-cache.c:3501
msgid "High Gloss Optical Disc"
msgstr ""
-#: cups/ppd-cache.c:3564
+#: cups/ppd-cache.c:3575
msgid "High Gloss Photo Paper"
msgstr ""
-#: cups/ipp.c:3188 cups/ipp.c:3215 cups/ipp.c:3238
+#: cups/ipp.c:3097 cups/ipp.c:3124 cups/ipp.c:3147
msgid "IPP 1setOf attribute with incompatible value tags."
msgstr ""
-#: cups/ipp.c:3151
+#: cups/ipp.c:3060
msgid "IPP attribute has no name."
msgstr ""
-#: cups/ipp.c:7012
+#: cups/ipp.c:6932
msgid "IPP attribute is not a member of the message."
msgstr ""
-#: cups/ipp.c:3597
+#: cups/ipp.c:3510
msgid "IPP begCollection value not 0 bytes."
msgstr ""
-#: cups/ipp.c:3379
+#: cups/ipp.c:3288
msgid "IPP boolean value not 1 byte."
msgstr ""
-#: cups/ipp.c:3440
+#: cups/ipp.c:3353
msgid "IPP date value not 11 bytes."
msgstr ""
-#: cups/ipp.c:3618
+#: cups/ipp.c:3531
msgid "IPP endCollection value not 0 bytes."
msgstr ""
-#: cups/ipp.c:3354
+#: cups/ipp.c:3263
msgid "IPP enum value not 4 bytes."
msgstr ""
-#: cups/ipp.c:3074
+#: cups/ipp.c:2983
msgid "IPP extension tag larger than 0x7FFFFFFF."
msgstr ""
-#: cups/ipp.c:3351
+#: cups/ipp.c:3260
msgid "IPP integer value not 4 bytes."
msgstr ""
-#: cups/ipp.c:3550
+#: cups/ipp.c:3463
msgid "IPP language length overflows value."
msgstr ""
-#: cups/ipp.c:3559
+#: cups/ipp.c:3472
msgid "IPP language length too large."
msgstr ""
-#: cups/ipp.c:3265
+#: cups/ipp.c:3174
msgid "IPP member name is not empty."
msgstr ""
-#: cups/ipp.c:3644
+#: cups/ipp.c:3557
msgid "IPP memberName value is empty."
msgstr ""
-#: cups/ipp.c:3636
+#: cups/ipp.c:3549
msgid "IPP memberName with no attribute."
msgstr ""
-#: cups/ipp.c:3134
+#: cups/ipp.c:3043
msgid "IPP name larger than 32767 bytes."
msgstr ""
-#: cups/ipp.c:3517
+#: cups/ipp.c:3430
msgid "IPP nameWithLanguage value less than minimum 4 bytes."
msgstr ""
-#: cups/ipp.c:3674
+#: cups/ipp.c:3587
msgid "IPP octetString length too large."
msgstr ""
-#: cups/ipp.c:3485
+#: cups/ipp.c:3398
msgid "IPP rangeOfInteger value not 8 bytes."
msgstr ""
-#: cups/ipp.c:3458
+#: cups/ipp.c:3371
msgid "IPP resolution value not 9 bytes."
msgstr ""
-#: cups/ipp.c:3577
+#: cups/ipp.c:3490
msgid "IPP string length overflows value."
msgstr ""
-#: cups/ipp.c:3513
+#: cups/ipp.c:3426
msgid "IPP textWithLanguage value less than minimum 4 bytes."
msgstr ""
-#: cups/ipp.c:3337
+#: cups/ipp.c:3246
msgid "IPP value larger than 32767 bytes."
msgstr ""
@@ -4703,23 +4712,23 @@ msgstr ""
msgid "Illegal whitespace character"
msgstr ""
-#: cups/ppd-cache.c:3530
+#: cups/ppd-cache.c:3541
msgid "Image Setter Paper"
msgstr ""
-#: cups/ppd-cache.c:3531
+#: cups/ppd-cache.c:3542
msgid "Imaging Cylinder"
msgstr ""
-#: cups/ppd-cache.c:3506
+#: cups/ppd-cache.c:3517
msgid "Inkjet Envelope"
msgstr ""
-#: cups/ppd-cache.c:3540
+#: cups/ppd-cache.c:3551
msgid "Inkjet Labels"
msgstr ""
-#: cups/ppd-cache.c:3595
+#: cups/ppd-cache.c:3606
msgid "Inkjet Paper"
msgstr ""
@@ -4739,7 +4748,7 @@ msgstr ""
msgid "Intellitech"
msgstr ""
-#: cups/http-support.c:1404
+#: cups/http-support.c:1550
msgid "Internal Server Error"
msgstr ""
@@ -4759,7 +4768,7 @@ msgstr ""
msgid "Internet Printing Protocol"
msgstr ""
-#: cups/ipp.c:3094
+#: cups/ipp.c:3003
msgid "Invalid group tag."
msgstr ""
@@ -4771,7 +4780,7 @@ msgstr ""
msgid "Invalid media size."
msgstr ""
-#: scheduler/ipp.c:2719 scheduler/ipp.c:7086
+#: scheduler/ipp.c:2719 scheduler/ipp.c:7078
msgid "Invalid ppd-name value."
msgstr ""
@@ -4780,7 +4789,7 @@ msgstr ""
msgid "Invalid printer command \"%s\"."
msgstr ""
-#: cups/ppd.c:1459
+#: cups/ppd.c:1461
msgid "JCL"
msgstr ""
@@ -4840,17 +4849,17 @@ msgstr ""
msgid "JIS B9"
msgstr ""
-#: scheduler/ipp.c:9350
+#: scheduler/ipp.c:9342
#, c-format
msgid "Job #%d cannot be restarted - no files."
msgstr ""
#: scheduler/ipp.c:3032 scheduler/ipp.c:3266 scheduler/ipp.c:3325
-#: scheduler/ipp.c:3504 scheduler/ipp.c:3950 scheduler/ipp.c:5931
-#: scheduler/ipp.c:6312 scheduler/ipp.c:6459 scheduler/ipp.c:6796
-#: scheduler/ipp.c:7756 scheduler/ipp.c:7778 scheduler/ipp.c:7956
-#: scheduler/ipp.c:8184 scheduler/ipp.c:8227 scheduler/ipp.c:9094
-#: scheduler/ipp.c:9318 scheduler/ipp.c:9670 scheduler/ipp.c:10283
+#: scheduler/ipp.c:3504 scheduler/ipp.c:3950 scheduler/ipp.c:5923
+#: scheduler/ipp.c:6304 scheduler/ipp.c:6451 scheduler/ipp.c:6788
+#: scheduler/ipp.c:7748 scheduler/ipp.c:7770 scheduler/ipp.c:7948
+#: scheduler/ipp.c:8176 scheduler/ipp.c:8219 scheduler/ipp.c:9086
+#: scheduler/ipp.c:9310 scheduler/ipp.c:9662 scheduler/ipp.c:10275
#, c-format
msgid "Job #%d does not exist."
msgstr ""
@@ -4870,12 +4879,12 @@ msgstr ""
msgid "Job #%d is already completed - can't cancel."
msgstr ""
-#: scheduler/ipp.c:7982 scheduler/ipp.c:8269 scheduler/ipp.c:10298
+#: scheduler/ipp.c:7974 scheduler/ipp.c:8261 scheduler/ipp.c:10290
#, c-format
msgid "Job #%d is finished and cannot be altered."
msgstr ""
-#: scheduler/ipp.c:9332
+#: scheduler/ipp.c:9324
#, c-format
msgid "Job #%d is not complete."
msgstr ""
@@ -4885,7 +4894,7 @@ msgstr ""
msgid "Job #%d is not held for authentication."
msgstr ""
-#: scheduler/ipp.c:9108
+#: scheduler/ipp.c:9100
#, c-format
msgid "Job #%d is not held."
msgstr ""
@@ -4906,7 +4915,7 @@ msgstr ""
msgid "Job Stopped"
msgstr ""
-#: scheduler/ipp.c:10412
+#: scheduler/ipp.c:10404
msgid "Job is completed and cannot be changed."
msgstr ""
@@ -4914,11 +4923,11 @@ msgstr ""
msgid "Job operation failed"
msgstr ""
-#: scheduler/ipp.c:10448 scheduler/ipp.c:10465 scheduler/ipp.c:10476
+#: scheduler/ipp.c:10440 scheduler/ipp.c:10457 scheduler/ipp.c:10468
msgid "Job state cannot be changed."
msgstr ""
-#: scheduler/ipp.c:9198
+#: scheduler/ipp.c:9190
msgid "Job subscriptions cannot be renewed."
msgstr ""
@@ -4942,7 +4951,7 @@ msgstr ""
msgid "Label Top"
msgstr ""
-#: cups/ppd-cache.c:3536
+#: cups/ppd-cache.c:3547
msgid "Labels"
msgstr ""
@@ -4950,11 +4959,11 @@ msgstr ""
msgid "Laminate"
msgstr ""
-#: cups/ppd-cache.c:3546
+#: cups/ppd-cache.c:3557
msgid "Laminating Foil"
msgstr ""
-#: scheduler/ipp.c:2085 scheduler/ipp.c:5835
+#: scheduler/ipp.c:2085 scheduler/ipp.c:5827
#, c-format
msgid "Language \"%s\" not supported."
msgstr ""
@@ -4963,11 +4972,11 @@ msgstr ""
msgid "Large Address"
msgstr ""
-#: cups/ppd-cache.c:3387
+#: cups/ppd-cache.c:3397
msgid "Large Capacity"
msgstr ""
-#: cups/ppd-cache.c:3776
+#: cups/ppd-cache.c:3806
msgid "Large Capacity Tray"
msgstr ""
@@ -4975,7 +4984,7 @@ msgstr ""
msgid "LaserJet Series PCL 4/5"
msgstr ""
-#: cups/ppd-cache.c:3399
+#: cups/ppd-cache.c:3409
msgid "Left"
msgstr ""
@@ -4983,7 +4992,7 @@ msgstr ""
msgid "Left Gate Fold"
msgstr ""
-#: cups/ppd-cache.c:3777
+#: cups/ppd-cache.c:3807
msgid "Left Tray"
msgstr ""
@@ -4999,7 +5008,7 @@ msgstr ""
msgid "Letter Oversize Long Edge"
msgstr ""
-#: cups/ppd-cache.c:3547 cups/ppd-cache.c:3596
+#: cups/ppd-cache.c:3558 cups/ppd-cache.c:3607
msgid "Letterhead"
msgstr ""
@@ -5007,11 +5016,11 @@ msgstr ""
msgid "Light"
msgstr ""
-#: cups/ppd-cache.c:3507
+#: cups/ppd-cache.c:3518
msgid "Lightweight Envelope"
msgstr ""
-#: cups/ppd-cache.c:3597
+#: cups/ppd-cache.c:3608
msgid "Lightweight Paper"
msgstr ""
@@ -5019,7 +5028,7 @@ msgstr ""
msgid "Line longer than the maximum allowed (255 characters)"
msgstr ""
-#: cgi-bin/admin.c:2377
+#: cgi-bin/admin.c:2378
msgid "List Available Printers"
msgstr ""
@@ -5027,67 +5036,67 @@ msgstr ""
msgid "Load paper."
msgstr ""
-#: scheduler/ipp.c:5544
+#: scheduler/ipp.c:5536
msgid "Local printer created."
msgstr ""
-#: cups/ppd-cache.c:3711 ppdc/sample.c:264
+#: cups/ppd-cache.c:3735 ppdc/sample.c:264
msgid "Long-Edge (Portrait)"
msgstr ""
-#: cups/http-support.c:1731
+#: cups/http-support.c:1877
msgid "Looking for printer."
msgstr ""
-#: cups/ppd-cache.c:3778
+#: cups/ppd-cache.c:3808
msgid "Mailbox 1"
msgstr ""
-#: cups/ppd-cache.c:3787
+#: cups/ppd-cache.c:3817
msgid "Mailbox 10"
msgstr ""
-#: cups/ppd-cache.c:3779
+#: cups/ppd-cache.c:3809
msgid "Mailbox 2"
msgstr ""
-#: cups/ppd-cache.c:3780
+#: cups/ppd-cache.c:3810
msgid "Mailbox 3"
msgstr ""
-#: cups/ppd-cache.c:3781
+#: cups/ppd-cache.c:3811
msgid "Mailbox 4"
msgstr ""
-#: cups/ppd-cache.c:3782
+#: cups/ppd-cache.c:3812
msgid "Mailbox 5"
msgstr ""
-#: cups/ppd-cache.c:3783
+#: cups/ppd-cache.c:3813
msgid "Mailbox 6"
msgstr ""
-#: cups/ppd-cache.c:3784
+#: cups/ppd-cache.c:3814
msgid "Mailbox 7"
msgstr ""
-#: cups/ppd-cache.c:3785
+#: cups/ppd-cache.c:3815
msgid "Mailbox 8"
msgstr ""
-#: cups/ppd-cache.c:3786
+#: cups/ppd-cache.c:3816
msgid "Mailbox 9"
msgstr ""
-#: cups/ppd-cache.c:3385
+#: cups/ppd-cache.c:3395
msgid "Main"
msgstr ""
-#: cups/ppd-cache.c:3393
+#: cups/ppd-cache.c:3403
msgid "Main Roll"
msgstr ""
-#: cups/ppd-cache.c:3388
+#: cups/ppd-cache.c:3398
msgid "Manual"
msgstr ""
@@ -5095,35 +5104,35 @@ msgstr ""
msgid "Manual Feed"
msgstr ""
-#: cups/ppd-cache.c:3474
+#: cups/ppd-cache.c:3485
msgid "Matte Brochure Paper"
msgstr ""
-#: cups/ppd-cache.c:3475
+#: cups/ppd-cache.c:3486
msgid "Matte Cover Paper"
msgstr ""
-#: cups/ppd-cache.c:3515
+#: cups/ppd-cache.c:3526
msgid "Matte Fabric"
msgstr ""
-#: cups/ppd-cache.c:3541
+#: cups/ppd-cache.c:3552
msgid "Matte Labels"
msgstr ""
-#: cups/ppd-cache.c:3491
+#: cups/ppd-cache.c:3502
msgid "Matte Optical Disc"
msgstr ""
-#: cups/ppd-cache.c:3565
+#: cups/ppd-cache.c:3576
msgid "Matte Photo Paper"
msgstr ""
-#: cups/ppd.c:830 cups/ppd.c:1396
+#: cups/ppd.c:832 cups/ppd.c:1398
msgid "Media Size"
msgstr ""
-#: cups/ppd.c:834 cups/ppd.c:1400 ppdc/sample.c:254
+#: cups/ppd.c:836 cups/ppd.c:1402 ppdc/sample.c:254
msgid "Media Source"
msgstr ""
@@ -5131,7 +5140,7 @@ msgstr ""
msgid "Media Tracking"
msgstr ""
-#: cups/ppd.c:832 cups/ppd.c:1398 ppdc/sample.c:280
+#: cups/ppd.c:834 cups/ppd.c:1400 ppdc/sample.c:280
msgid "Media Type"
msgstr ""
@@ -5143,35 +5152,35 @@ msgstr ""
msgid "Memory allocation error"
msgstr ""
-#: cups/ppd-cache.c:3548
+#: cups/ppd-cache.c:3559
msgid "Metal"
msgstr ""
-#: cups/ppd-cache.c:3549
+#: cups/ppd-cache.c:3560
msgid "Metal Glossy"
msgstr ""
-#: cups/ppd-cache.c:3550
+#: cups/ppd-cache.c:3561
msgid "Metal High Gloss"
msgstr ""
-#: cups/ppd-cache.c:3551
+#: cups/ppd-cache.c:3562
msgid "Metal Matte"
msgstr ""
-#: cups/ppd-cache.c:3552
+#: cups/ppd-cache.c:3563
msgid "Metal Satin"
msgstr ""
-#: cups/ppd-cache.c:3553
+#: cups/ppd-cache.c:3564
msgid "Metal Semi Gloss"
msgstr ""
-#: cups/ppd-cache.c:3481
+#: cups/ppd-cache.c:3492
msgid "Mid-Weight Paper"
msgstr ""
-#: cups/ppd-cache.c:3396 cups/ppd-cache.c:3788
+#: cups/ppd-cache.c:3406 cups/ppd-cache.c:3818
msgid "Middle"
msgstr ""
@@ -5179,6 +5188,10 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr ""
+#: cups/ppd.c:338
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
#: cups/ppd.c:317
msgid "Missing PPD-Adobe-4.x header"
msgstr ""
@@ -5187,7 +5200,7 @@ msgstr ""
msgid "Missing asterisk in column 1"
msgstr ""
-#: scheduler/ipp.c:6335
+#: scheduler/ipp.c:6327
msgid "Missing document-number attribute."
msgstr ""
@@ -5196,13 +5209,13 @@ msgstr ""
msgid "Missing double quote on line %d."
msgstr ""
-#: cgi-bin/admin.c:710 cgi-bin/admin.c:2090 cgi-bin/admin.c:2175
-#: cgi-bin/admin.c:2769 cgi-bin/admin.c:3023 cgi-bin/admin.c:3134
-#: cgi-bin/admin.c:3844
+#: cgi-bin/admin.c:710 cgi-bin/admin.c:2091 cgi-bin/admin.c:2176
+#: cgi-bin/admin.c:2770 cgi-bin/admin.c:3024 cgi-bin/admin.c:3135
+#: cgi-bin/admin.c:3845
msgid "Missing form variable"
msgstr ""
-#: scheduler/ipp.c:9724
+#: scheduler/ipp.c:9716
msgid "Missing last-document attribute in request."
msgstr ""
@@ -5214,7 +5227,7 @@ msgstr ""
msgid "Missing media-size in media-col."
msgstr ""
-#: scheduler/ipp.c:6936
+#: scheduler/ipp.c:6928
msgid "Missing notify-subscription-ids attribute."
msgstr ""
@@ -5226,7 +5239,7 @@ msgstr ""
msgid "Missing requesting-user-name attribute."
msgstr ""
-#: scheduler/ipp.c:5461 scheduler/ipp.c:5487
+#: scheduler/ipp.c:5453 scheduler/ipp.c:5479
#, c-format
msgid "Missing required attribute \"%s\"."
msgstr ""
@@ -5235,11 +5248,11 @@ msgstr ""
msgid "Missing required attributes."
msgstr ""
-#: cups/http-support.c:1494
+#: cups/http-support.c:1640
msgid "Missing resource in URI"
msgstr ""
-#: cups/http-support.c:1488
+#: cups/http-support.c:1634
msgid "Missing scheme in URI"
msgstr ""
@@ -5281,7 +5294,7 @@ msgstr ""
msgid "Modify Printer"
msgstr ""
-#: cups/ppd-cache.c:3554
+#: cups/ppd-cache.c:3565
msgid "Mounting Tape"
msgstr ""
@@ -5293,15 +5306,15 @@ msgstr ""
msgid "Move Job"
msgstr ""
-#: cups/http-support.c:1358
+#: cups/http-support.c:1504
msgid "Moved Permanently"
msgstr ""
-#: cups/ppd-cache.c:3555
+#: cups/ppd-cache.c:3566
msgid "Multi Layer"
msgstr ""
-#: cups/ppd-cache.c:3556
+#: cups/ppd-cache.c:3567
msgid "Multi Part Form"
msgstr ""
@@ -5321,15 +5334,15 @@ msgstr ""
msgid "Multi-Hole Punch (Reverse Portrait)"
msgstr ""
-#: cups/ppd-cache.c:3403
+#: cups/ppd-cache.c:3413
msgid "Multipurpose"
msgstr ""
-#: cups/ppd-cache.c:3480
+#: cups/ppd-cache.c:3491
msgid "Multipurpose Paper"
msgstr ""
-#: cups/ppd-cache.c:3789
+#: cups/ppd-cache.c:3819
msgid "My Mailbox"
msgstr ""
@@ -5357,11 +5370,11 @@ msgstr ""
msgid "New credentials are older than stored credentials."
msgstr ""
-#: cups/ppd.c:1987
+#: cups/ppd.c:2010
msgid "No"
msgstr ""
-#: cups/http-support.c:1355
+#: cups/http-support.c:1501
msgid "No Content"
msgstr ""
@@ -5381,7 +5394,7 @@ msgstr ""
msgid "No Windows printer drivers are installed."
msgstr ""
-#: cups/request.c:553 cups/request.c:913
+#: cups/request.c:553 cups/request.c:925
msgid "No active connection"
msgstr ""
@@ -5410,11 +5423,11 @@ msgstr ""
msgid "No community name"
msgstr ""
-#: scheduler/ipp.c:6135
+#: scheduler/ipp.c:6127
msgid "No default printer."
msgstr ""
-#: cgi-bin/ipp-var.c:422 scheduler/ipp.c:7516
+#: cgi-bin/ipp-var.c:422 scheduler/ipp.c:7508
msgid "No destinations added."
msgstr ""
@@ -5430,7 +5443,7 @@ msgstr ""
msgid "No error-status"
msgstr ""
-#: scheduler/ipp.c:8474 scheduler/ipp.c:9738
+#: scheduler/ipp.c:8466 scheduler/ipp.c:9730
msgid "No file in print request."
msgstr ""
@@ -5459,15 +5472,15 @@ msgstr ""
msgid "No printer-uri found for class"
msgstr ""
-#: scheduler/ipp.c:6542
+#: scheduler/ipp.c:6534
msgid "No printer-uri in request."
msgstr ""
-#: cups/http.c:2244
+#: cups/http.c:2245
msgid "No request URI."
msgstr ""
-#: cups/http.c:2261
+#: cups/http.c:2262
msgid "No request protocol version."
msgstr ""
@@ -5483,11 +5496,11 @@ msgstr ""
msgid "No stored credentials, not valid for name."
msgstr ""
-#: scheduler/ipp.c:5720
+#: scheduler/ipp.c:5712
msgid "No subscription attributes in request."
msgstr ""
-#: scheduler/ipp.c:7855
+#: scheduler/ipp.c:7847
msgid "No subscriptions found."
msgstr ""
@@ -5507,20 +5520,20 @@ msgstr ""
msgid "Non-continuous (Web sensing)"
msgstr ""
-#: cups/ppd-cache.c:3867 cups/ppd-cache.c:3914 cups/ppd-cache.c:3961
+#: cups/ppd-cache.c:3923 cups/ppd-cache.c:3973 cups/ppd-cache.c:4023
msgid "None"
msgstr ""
-#: cups/ppd-cache.c:4057 cups/ppd-cache.c:4117 cups/ppd-cache.c:4147
+#: cups/ppd-cache.c:4123 cups/ppd-cache.c:4189 cups/ppd-cache.c:4223
#: ppdc/sample.c:238
msgid "Normal"
msgstr ""
-#: cups/http-support.c:1380
+#: cups/http-support.c:1526
msgid "Not Found"
msgstr ""
-#: cups/http-support.c:1392
+#: cups/http-support.c:1538
msgid "Not Implemented"
msgstr ""
@@ -5528,15 +5541,15 @@ msgstr ""
msgid "Not Installed"
msgstr ""
-#: cups/http-support.c:1367
+#: cups/http-support.c:1513
msgid "Not Modified"
msgstr ""
-#: cups/http-support.c:1395
+#: cups/http-support.c:1541
msgid "Not Supported"
msgstr ""
-#: scheduler/ipp.c:1520 scheduler/ipp.c:11009
+#: scheduler/ipp.c:1520 scheduler/ipp.c:11001
msgid "Not allowed to print."
msgstr ""
@@ -5548,15 +5561,15 @@ msgstr ""
msgid "Note: this program only validates the DSC comments, not the PostScript itself."
msgstr ""
-#: cups/http-support.c:1346 cups/http-support.c:1485 cups/ppd.c:313
+#: cups/http-support.c:1492 cups/http-support.c:1631 cups/ppd.c:313
msgid "OK"
msgstr ""
-#: cups/ppd-cache.c:3711 ppdc/sample.c:263
+#: cups/ppd-cache.c:3735 ppdc/sample.c:263
msgid "Off (1-Sided)"
msgstr ""
-#: cups/ppd-cache.c:3476
+#: cups/ppd-cache.c:3487
msgid "Office Recycled Paper"
msgstr ""
@@ -5568,7 +5581,7 @@ msgstr ""
msgid "Online Help"
msgstr ""
-#: scheduler/ipp.c:5440
+#: scheduler/ipp.c:5432
msgid "Only local users can create a local printer."
msgstr ""
@@ -5585,11 +5598,11 @@ msgstr ""
msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
msgstr ""
-#: cgi-bin/admin.c:3615
+#: cgi-bin/admin.c:3616
msgid "Operation Policy"
msgstr ""
-#: cups/ppd-cache.c:3488
+#: cups/ppd-cache.c:3499
msgid "Optical Disc"
msgstr ""
@@ -5598,11 +5611,11 @@ msgstr ""
msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
msgstr ""
-#: cgi-bin/admin.c:3265 cgi-bin/admin.c:3349
+#: cgi-bin/admin.c:3266 cgi-bin/admin.c:3350
msgid "Options Installed"
msgstr ""
-#: scheduler/cupsfilter.c:1480 scheduler/main.c:2101 systemv/cupsaddsmb.c:276
+#: scheduler/cupsfilter.c:1480 scheduler/main.c:2103 systemv/cupsaddsmb.c:276
#: systemv/cupsctl.c:196 systemv/cupstestdsc.c:421 systemv/cupstestppd.c:3859
#: test/ippfind.c:2802 test/ipptool.c:5063 ppdc/ppdc.cxx:430
#: ppdc/ppdhtml.cxx:177 ppdc/ppdi.cxx:123 ppdc/ppdmerge.cxx:361
@@ -5610,7 +5623,7 @@ msgstr ""
msgid "Options:"
msgstr ""
-#: cups/ppd-cache.c:3557
+#: cups/ppd-cache.c:3568
msgid "Other"
msgstr ""
@@ -5622,7 +5635,7 @@ msgstr ""
msgid "Out of memory."
msgstr ""
-#: cups/ppd.c:836 cups/ppd.c:1402
+#: cups/ppd.c:838 cups/ppd.c:1404
msgid "Output Mode"
msgstr ""
@@ -5678,7 +5691,7 @@ msgstr ""
msgid "Packet does not start with SEQUENCE"
msgstr ""
-#: cups/ppd-cache.c:3558
+#: cups/ppd-cache.c:3569
msgid "Paper"
msgstr ""
@@ -5710,7 +5723,7 @@ msgstr ""
msgid "ParamCustominTearInterval"
msgstr ""
-#: cups/auth.c:224 cups/auth.c:480
+#: cups/auth.c:222 cups/auth.c:370
#, c-format
msgid "Password for %s on %s? "
msgstr ""
@@ -5732,15 +5745,15 @@ msgstr ""
msgid "Peel-Off"
msgstr ""
-#: cups/ppd-cache.c:3542
+#: cups/ppd-cache.c:3553
msgid "Permanent Labels"
msgstr ""
-#: cups/ppd-cache.c:3391 ppdc/sample.c:160
+#: cups/ppd-cache.c:3401 ppdc/sample.c:160
msgid "Photo"
msgstr ""
-#: cups/ppd-cache.c:3562
+#: cups/ppd-cache.c:3573
msgid "Photo Film"
msgstr ""
@@ -5748,71 +5761,71 @@ msgstr ""
msgid "Photo Labels"
msgstr ""
-#: cups/ppd-cache.c:3559 cups/ppd-cache.c:3560
+#: cups/ppd-cache.c:3570 cups/ppd-cache.c:3571
msgid "Photo Paper"
msgstr ""
-#: cups/ppd-cache.c:3532 cups/ppd-cache.c:3534
+#: cups/ppd-cache.c:3543 cups/ppd-cache.c:3545
msgid "Photo Paper Plus Glossy II"
msgstr ""
-#: cups/ppd-cache.c:3533 cups/ppd-cache.c:3535
+#: cups/ppd-cache.c:3544 cups/ppd-cache.c:3546
msgid "Photo Paper Pro Platinum"
msgstr ""
-#: cups/ppd-cache.c:3508
+#: cups/ppd-cache.c:3519
msgid "Plain Envelope"
msgstr ""
-#: cups/ppd-cache.c:3588 ppdc/sample.c:281
+#: cups/ppd-cache.c:3599 ppdc/sample.c:281
msgid "Plain Paper"
msgstr ""
-#: cups/ppd-cache.c:3568
+#: cups/ppd-cache.c:3579
msgid "Plastic"
msgstr ""
-#: cups/ppd-cache.c:3569
+#: cups/ppd-cache.c:3580
msgid "Plastic Archival"
msgstr ""
-#: cups/ppd-cache.c:3570
+#: cups/ppd-cache.c:3581
msgid "Plastic Colored"
msgstr ""
-#: cups/ppd-cache.c:3571
+#: cups/ppd-cache.c:3582
msgid "Plastic Glossy"
msgstr ""
-#: cups/ppd-cache.c:3572
+#: cups/ppd-cache.c:3583
msgid "Plastic High Gloss"
msgstr ""
-#: cups/ppd-cache.c:3573
+#: cups/ppd-cache.c:3584
msgid "Plastic Matte"
msgstr ""
-#: cups/ppd-cache.c:3574
+#: cups/ppd-cache.c:3585
msgid "Plastic Satin"
msgstr ""
-#: cups/ppd-cache.c:3575
+#: cups/ppd-cache.c:3586
msgid "Plastic Semi Gloss"
msgstr ""
-#: cups/ppd-cache.c:3576
+#: cups/ppd-cache.c:3587
msgid "Plate"
msgstr ""
-#: cgi-bin/admin.c:3283 cgi-bin/admin.c:3564
+#: cgi-bin/admin.c:3284 cgi-bin/admin.c:3565
msgid "Policies"
msgstr ""
-#: cups/ppd-cache.c:3577
+#: cups/ppd-cache.c:3588
msgid "Polyester"
msgstr ""
-#: cgi-bin/admin.c:3290 cgi-bin/admin.c:3633 cgi-bin/admin.c:3646
+#: cgi-bin/admin.c:3291 cgi-bin/admin.c:3634 cgi-bin/admin.c:3647
msgid "Port Monitor"
msgstr ""
@@ -5840,19 +5853,19 @@ msgstr ""
msgid "Poster Fold"
msgstr ""
-#: cups/ppd-cache.c:3578
+#: cups/ppd-cache.c:3589
msgid "Pre Cut Tabs"
msgstr ""
-#: cups/ppd-cache.c:3482
+#: cups/ppd-cache.c:3493
msgid "Premium Inkjet Paper"
msgstr ""
-#: cups/ppd-cache.c:3483
+#: cups/ppd-cache.c:3494
msgid "Premium Photo Glossy Paper"
msgstr ""
-#: cups/ppd-cache.c:3484
+#: cups/ppd-cache.c:3495
msgid "Premium Presentation Matte Paper"
msgstr ""
@@ -5860,11 +5873,11 @@ msgstr ""
msgid "Preparing to print."
msgstr ""
-#: cups/ppd-cache.c:3509
+#: cups/ppd-cache.c:3520
msgid "Preprinted Envelope"
msgstr ""
-#: cups/ppd-cache.c:3598
+#: cups/ppd-cache.c:3609
msgid "Preprinted Paper"
msgstr ""
@@ -5880,7 +5893,7 @@ msgstr ""
msgid "Print Mode"
msgstr ""
-#: cups/ppd-cache.c:4052 cups/ppd-cache.c:4110 cups/ppd-cache.c:4144
+#: cups/ppd-cache.c:4117 cups/ppd-cache.c:4179 cups/ppd-cache.c:4219
msgid "Print Quality"
msgstr ""
@@ -5912,19 +5925,19 @@ msgstr ""
msgid "Print file sent."
msgstr ""
-#: backend/ipp.c:2238
+#: backend/ipp.c:2245
msgid "Print job canceled at printer."
msgstr ""
-#: backend/ipp.c:2230
+#: backend/ipp.c:2237
msgid "Print job too large."
msgstr ""
-#: backend/ipp.c:1699
+#: backend/ipp.c:1706
msgid "Print job was not accepted."
msgstr ""
-#: scheduler/ipp.c:5506
+#: scheduler/ipp.c:5498
#, c-format
msgid "Printer \"%s\" already exists."
msgstr ""
@@ -5953,15 +5966,15 @@ msgstr ""
msgid "Printer Settings"
msgstr ""
-#: backend/ipp.c:2233
+#: backend/ipp.c:2240
msgid "Printer cannot print supplied content."
msgstr ""
-#: backend/ipp.c:2236
+#: backend/ipp.c:2243
msgid "Printer cannot print with supplied options."
msgstr ""
-#: cups/ppd-cache.c:4171
+#: cups/ppd-cache.c:4248
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
@@ -5979,11 +5992,11 @@ msgstr ""
msgid "Printing page %d, %u%% complete."
msgstr ""
-#: cups/ppd-cache.c:3007 cups/ppd-cache.c:3958
+#: cups/ppd-cache.c:3007 cups/ppd-cache.c:4020
msgid "Punch"
msgstr ""
-#: cups/ppd-cache.c:3599
+#: cups/ppd-cache.c:3610
msgid "Punched Paper"
msgstr ""
@@ -5991,7 +6004,7 @@ msgstr ""
msgid "Quarto"
msgstr ""
-#: scheduler/ipp.c:1515 scheduler/ipp.c:11004
+#: scheduler/ipp.c:1515 scheduler/ipp.c:10996
msgid "Quota limit reached."
msgstr ""
@@ -5999,11 +6012,11 @@ msgstr ""
msgid "Rank Owner Job File(s) Total Size"
msgstr ""
-#: cups/ppd-cache.c:3402
+#: cups/ppd-cache.c:3412
msgid "Rear"
msgstr ""
-#: cups/ppd-cache.c:3790
+#: cups/ppd-cache.c:3820
msgid "Rear Tray"
msgstr ""
@@ -6025,11 +6038,11 @@ msgstr ""
msgid "Reprint After Error"
msgstr ""
-#: cups/http-support.c:1383
+#: cups/http-support.c:1529
msgid "Request Entity Too Large"
msgstr ""
-#: cups/ppd.c:838 cups/ppd.c:1404 ppdc/sample.c:231
+#: cups/ppd.c:840 cups/ppd.c:1406 ppdc/sample.c:231
msgid "Resolution"
msgstr ""
@@ -6049,7 +6062,7 @@ msgstr ""
msgid "Rewind"
msgstr ""
-#: cups/ppd-cache.c:3400
+#: cups/ppd-cache.c:3410
msgid "Right"
msgstr ""
@@ -6057,51 +6070,51 @@ msgstr ""
msgid "Right Gate Fold"
msgstr ""
-#: cups/ppd-cache.c:3791
+#: cups/ppd-cache.c:3821
msgid "Right Tray"
msgstr ""
-#: cups/ppd-cache.c:3579
+#: cups/ppd-cache.c:3590
msgid "Roll"
msgstr ""
-#: cups/ppd-cache.c:3424
+#: cups/ppd-cache.c:3434
msgid "Roll 1"
msgstr ""
-#: cups/ppd-cache.c:3433
+#: cups/ppd-cache.c:3443
msgid "Roll 10"
msgstr ""
-#: cups/ppd-cache.c:3425
+#: cups/ppd-cache.c:3435
msgid "Roll 2"
msgstr ""
-#: cups/ppd-cache.c:3426
+#: cups/ppd-cache.c:3436
msgid "Roll 3"
msgstr ""
-#: cups/ppd-cache.c:3427
+#: cups/ppd-cache.c:3437
msgid "Roll 4"
msgstr ""
-#: cups/ppd-cache.c:3428
+#: cups/ppd-cache.c:3438
msgid "Roll 5"
msgstr ""
-#: cups/ppd-cache.c:3429
+#: cups/ppd-cache.c:3439
msgid "Roll 6"
msgstr ""
-#: cups/ppd-cache.c:3430
+#: cups/ppd-cache.c:3440
msgid "Roll 7"
msgstr ""
-#: cups/ppd-cache.c:3431
+#: cups/ppd-cache.c:3441
msgid "Roll 8"
msgstr ""
-#: cups/ppd-cache.c:3432
+#: cups/ppd-cache.c:3442
msgid "Roll 9"
msgstr ""
@@ -6114,7 +6127,7 @@ msgstr ""
msgid "SEQUENCE uses indefinite length"
msgstr ""
-#: cups/http-support.c:1407
+#: cups/http-support.c:1553
msgid "SSL/TLS Negotiation Error"
msgstr ""
@@ -6122,43 +6135,43 @@ msgstr ""
msgid "Saddle Stitch"
msgstr ""
-#: cups/ppd-cache.c:3543
+#: cups/ppd-cache.c:3554
msgid "Satin Labels"
msgstr ""
-#: cups/ppd-cache.c:3492
+#: cups/ppd-cache.c:3503
msgid "Satin Optical Disc"
msgstr ""
-#: cups/ppd-cache.c:3566
+#: cups/ppd-cache.c:3577
msgid "Satin Photo Paper"
msgstr ""
-#: cups/ppd-cache.c:3580
+#: cups/ppd-cache.c:3591
msgid "Screen"
msgstr ""
-#: cups/ppd-cache.c:3581
+#: cups/ppd-cache.c:3592
msgid "Screen Paged"
msgstr ""
-#: cups/ppd-cache.c:3544
+#: cups/ppd-cache.c:3555
msgid "Security Labels"
msgstr ""
-#: cups/http-support.c:1364
+#: cups/http-support.c:1510
msgid "See Other"
msgstr ""
-#: scheduler/ipp.c:7140 scheduler/ipp.c:7159
+#: scheduler/ipp.c:7132 scheduler/ipp.c:7151
msgid "See remote printer."
msgstr ""
-#: cups/ppd-cache.c:3582
+#: cups/ppd-cache.c:3593
msgid "Self Adhesive"
msgstr ""
-#: cups/ppd-cache.c:3583
+#: cups/ppd-cache.c:3594
msgid "Self Adhesive Film"
msgstr ""
@@ -6166,19 +6179,19 @@ msgstr ""
msgid "Self-signed credentials are blocked."
msgstr ""
-#: cups/ppd-cache.c:3516
+#: cups/ppd-cache.c:3527
msgid "Semi-Gloss Fabric"
msgstr ""
-#: cups/ppd-cache.c:3545
+#: cups/ppd-cache.c:3556
msgid "Semi-Gloss Labels"
msgstr ""
-#: cups/ppd-cache.c:3493
+#: cups/ppd-cache.c:3504
msgid "Semi-Gloss Optical Disc"
msgstr ""
-#: cups/ppd-cache.c:3567
+#: cups/ppd-cache.c:3578
msgid "Semi-Gloss Photo Paper"
msgstr ""
@@ -6206,28 +6219,28 @@ msgstr ""
msgid "Server credentials not set."
msgstr ""
-#: cups/http-support.c:1401
+#: cups/http-support.c:1547
msgid "Service Unavailable"
msgstr ""
-#: cgi-bin/admin.c:2770 cgi-bin/admin.c:2816 cgi-bin/admin.c:2973
-#: cgi-bin/admin.c:2992
+#: cgi-bin/admin.c:2771 cgi-bin/admin.c:2817 cgi-bin/admin.c:2974
+#: cgi-bin/admin.c:2993
msgid "Set Allowed Users"
msgstr ""
-#: cgi-bin/admin.c:3019
+#: cgi-bin/admin.c:3020
msgid "Set As Server Default"
msgstr ""
-#: cgi-bin/admin.c:3119
+#: cgi-bin/admin.c:3120
msgid "Set Class Options"
msgstr ""
-#: cgi-bin/admin.c:3119 cgi-bin/admin.c:3293 cgi-bin/admin.c:3675
+#: cgi-bin/admin.c:3120 cgi-bin/admin.c:3294 cgi-bin/admin.c:3676
msgid "Set Printer Options"
msgstr ""
-#: cgi-bin/admin.c:3845 cgi-bin/admin.c:3889 cgi-bin/admin.c:3907
+#: cgi-bin/admin.c:3846 cgi-bin/admin.c:3890 cgi-bin/admin.c:3908
msgid "Set Publishing"
msgstr ""
@@ -6235,23 +6248,23 @@ msgstr ""
msgid "Shipping Address"
msgstr ""
-#: cups/ppd-cache.c:3711 ppdc/sample.c:265
+#: cups/ppd-cache.c:3735 ppdc/sample.c:265
msgid "Short-Edge (Landscape)"
msgstr ""
-#: cups/ppd-cache.c:3584
+#: cups/ppd-cache.c:3595
msgid "Shrink Foil"
msgstr ""
-#: cups/ppd-cache.c:3398
+#: cups/ppd-cache.c:3408
msgid "Side"
msgstr ""
-#: cups/ppd-cache.c:3792
+#: cups/ppd-cache.c:3822
msgid "Side Tray"
msgstr ""
-#: cups/ppd-cache.c:3585
+#: cups/ppd-cache.c:3596
msgid "Single Face"
msgstr ""
@@ -6287,11 +6300,11 @@ msgstr ""
msgid "Single Staple (Reverse Portrait)"
msgstr ""
-#: cups/ppd-cache.c:3586
+#: cups/ppd-cache.c:3597
msgid "Single Wall Cardboard"
msgstr ""
-#: cups/ppd-cache.c:3587
+#: cups/ppd-cache.c:3598
msgid "Sleeve"
msgstr ""
@@ -6304,43 +6317,43 @@ msgstr ""
msgid "Spooling job, %.0f%% complete."
msgstr ""
-#: cups/ppd-cache.c:3793
+#: cups/ppd-cache.c:3823
msgid "Stacker 1"
msgstr ""
-#: cups/ppd-cache.c:3802
+#: cups/ppd-cache.c:3832
msgid "Stacker 10"
msgstr ""
-#: cups/ppd-cache.c:3794
+#: cups/ppd-cache.c:3824
msgid "Stacker 2"
msgstr ""
-#: cups/ppd-cache.c:3795
+#: cups/ppd-cache.c:3825
msgid "Stacker 3"
msgstr ""
-#: cups/ppd-cache.c:3796
+#: cups/ppd-cache.c:3826
msgid "Stacker 4"
msgstr ""
-#: cups/ppd-cache.c:3797
+#: cups/ppd-cache.c:3827
msgid "Stacker 5"
msgstr ""
-#: cups/ppd-cache.c:3798
+#: cups/ppd-cache.c:3828
msgid "Stacker 6"
msgstr ""
-#: cups/ppd-cache.c:3799
+#: cups/ppd-cache.c:3829
msgid "Stacker 7"
msgstr ""
-#: cups/ppd-cache.c:3800
+#: cups/ppd-cache.c:3830
msgid "Stacker 8"
msgstr ""
-#: cups/ppd-cache.c:3801
+#: cups/ppd-cache.c:3831
msgid "Stacker 9"
msgstr ""
@@ -6348,7 +6361,7 @@ msgstr ""
msgid "Standard"
msgstr ""
-#: cups/ppd-cache.c:3029 cups/ppd-cache.c:3864
+#: cups/ppd-cache.c:3029 cups/ppd-cache.c:3920
msgid "Staple"
msgstr ""
@@ -6373,7 +6386,7 @@ msgid "Staple Edge (Reverse Portrait)"
msgstr ""
#. TRANSLATORS: Banner/cover sheet before the print job.
-#: cgi-bin/admin.c:3536
+#: cgi-bin/admin.c:3537
msgid "Starting Banner"
msgstr ""
@@ -6387,8 +6400,8 @@ msgstr ""
msgid "Statement"
msgstr ""
-#: scheduler/ipp.c:3599 scheduler/ipp.c:6952 scheduler/ipp.c:7662
-#: scheduler/ipp.c:9186
+#: scheduler/ipp.c:3599 scheduler/ipp.c:6944 scheduler/ipp.c:7654
+#: scheduler/ipp.c:9178
#, c-format
msgid "Subscription #%d does not exist."
msgstr ""
@@ -6409,11 +6422,11 @@ msgstr ""
msgid "Super B/A3"
msgstr ""
-#: cups/http-support.c:1343
+#: cups/http-support.c:1489
msgid "Switching Protocols"
msgstr ""
-#: cups/ppd-cache.c:3600
+#: cups/ppd-cache.c:3611
msgid "Tab Stock"
msgstr ""
@@ -6446,8 +6459,8 @@ msgstr ""
msgid "The \"%s\" attribute is required for print jobs."
msgstr ""
-#: scheduler/ipp.c:6613 scheduler/ipp.c:6693 scheduler/ipp.c:6706
-#: scheduler/ipp.c:6718 scheduler/ipp.c:6733
+#: scheduler/ipp.c:6605 scheduler/ipp.c:6685 scheduler/ipp.c:6698
+#: scheduler/ipp.c:6710 scheduler/ipp.c:6725
#, c-format
msgid "The %s attribute cannot be provided with job-ids."
msgstr ""
@@ -6457,17 +6470,17 @@ msgstr ""
msgid "The '%s' Job Status attribute cannot be supplied in a job creation request."
msgstr ""
-#: scheduler/ipp.c:5240
+#: scheduler/ipp.c:5232
#, c-format
msgid "The '%s' operation attribute cannot be supplied in a Create-Job request."
msgstr ""
-#: scheduler/ipp.c:7182
+#: scheduler/ipp.c:7174
#, c-format
msgid "The PPD file \"%s\" could not be found."
msgstr ""
-#: scheduler/ipp.c:7171
+#: scheduler/ipp.c:7163
#, c-format
msgid "The PPD file \"%s\" could not be opened: %s"
msgstr ""
@@ -6501,7 +6514,7 @@ msgstr ""
msgid "The notify-lease-duration attribute cannot be used with job subscriptions."
msgstr ""
-#: scheduler/ipp.c:2095 scheduler/ipp.c:5845
+#: scheduler/ipp.c:2095 scheduler/ipp.c:5837
#, c-format
msgid "The notify-user-data value is too large (%d > 63 octets)."
msgstr ""
@@ -6522,8 +6535,8 @@ msgstr ""
msgid "The printer did not respond."
msgstr ""
-#: backend/ipp.c:775 backend/ipp.c:965 backend/ipp.c:1079 backend/ipp.c:1501
-#: backend/ipp.c:1671 backend/lpd.c:896 backend/socket.c:359
+#: backend/ipp.c:775 backend/ipp.c:965 backend/ipp.c:1079 backend/ipp.c:1508
+#: backend/ipp.c:1678 backend/lpd.c:896 backend/socket.c:359
#: backend/usb-unix.c:122 backend/usb-unix.c:412 backend/usb-unix.c:495
msgid "The printer is in use."
msgstr ""
@@ -6578,13 +6591,13 @@ msgid "The printer name may only contain up to 127 printable characters and may
msgstr ""
#: scheduler/ipp.c:774 scheduler/ipp.c:1057 scheduler/ipp.c:3238
-#: scheduler/ipp.c:3419 scheduler/ipp.c:5223 scheduler/ipp.c:5679
-#: scheduler/ipp.c:6013 scheduler/ipp.c:6579 scheduler/ipp.c:7386
-#: scheduler/ipp.c:7442 scheduler/ipp.c:7768 scheduler/ipp.c:8043
-#: scheduler/ipp.c:8132 scheduler/ipp.c:8165 scheduler/ipp.c:8489
-#: scheduler/ipp.c:8896 scheduler/ipp.c:8978 scheduler/ipp.c:10152
-#: scheduler/ipp.c:10614 scheduler/ipp.c:10967 scheduler/ipp.c:11049
-#: scheduler/ipp.c:11378
+#: scheduler/ipp.c:3419 scheduler/ipp.c:5215 scheduler/ipp.c:5671
+#: scheduler/ipp.c:6005 scheduler/ipp.c:6571 scheduler/ipp.c:7378
+#: scheduler/ipp.c:7434 scheduler/ipp.c:7760 scheduler/ipp.c:8035
+#: scheduler/ipp.c:8124 scheduler/ipp.c:8157 scheduler/ipp.c:8481
+#: scheduler/ipp.c:8888 scheduler/ipp.c:8970 scheduler/ipp.c:10144
+#: scheduler/ipp.c:10606 scheduler/ipp.c:10959 scheduler/ipp.c:11041
+#: scheduler/ipp.c:11370
msgid "The printer or class does not exist."
msgstr ""
@@ -6637,12 +6650,12 @@ msgstr ""
msgid "The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to enable it."
msgstr ""
-#: scheduler/ipp.c:6677
+#: scheduler/ipp.c:6669
#, c-format
msgid "The which-jobs value \"%s\" is not supported."
msgstr ""
-#: scheduler/ipp.c:5942
+#: scheduler/ipp.c:5934
msgid "There are too many subscriptions."
msgstr ""
@@ -6669,23 +6682,23 @@ msgstr ""
msgid "Too many printer-state-reasons values (%d > %d)."
msgstr ""
-#: cups/ppd-cache.c:3395
+#: cups/ppd-cache.c:3405
msgid "Top"
msgstr ""
-#: cups/ppd-cache.c:3803
+#: cups/ppd-cache.c:3833
msgid "Top Tray"
msgstr ""
-#: cups/ppd-cache.c:3601
+#: cups/ppd-cache.c:3612
msgid "Tractor"
msgstr ""
-#: cups/ppd-cache.c:3602
+#: cups/ppd-cache.c:3613
msgid "Transfer"
msgstr ""
-#: cups/ppd-cache.c:3603 ppdc/sample.c:284
+#: cups/ppd-cache.c:3614 ppdc/sample.c:284
msgid "Transparency"
msgstr ""
@@ -6693,83 +6706,83 @@ msgstr ""
msgid "Tray"
msgstr ""
-#: cups/ppd-cache.c:3404 cups/ppd-cache.c:3804 ppdc/sample.c:256
+#: cups/ppd-cache.c:3414 cups/ppd-cache.c:3834 ppdc/sample.c:256
msgid "Tray 1"
msgstr ""
-#: cups/ppd-cache.c:3413 cups/ppd-cache.c:3813
+#: cups/ppd-cache.c:3423 cups/ppd-cache.c:3843
msgid "Tray 10"
msgstr ""
-#: cups/ppd-cache.c:3414
+#: cups/ppd-cache.c:3424
msgid "Tray 11"
msgstr ""
-#: cups/ppd-cache.c:3415
+#: cups/ppd-cache.c:3425
msgid "Tray 12"
msgstr ""
-#: cups/ppd-cache.c:3416
+#: cups/ppd-cache.c:3426
msgid "Tray 13"
msgstr ""
-#: cups/ppd-cache.c:3417
+#: cups/ppd-cache.c:3427
msgid "Tray 14"
msgstr ""
-#: cups/ppd-cache.c:3418
+#: cups/ppd-cache.c:3428
msgid "Tray 15"
msgstr ""
-#: cups/ppd-cache.c:3419
+#: cups/ppd-cache.c:3429
msgid "Tray 16"
msgstr ""
-#: cups/ppd-cache.c:3420
+#: cups/ppd-cache.c:3430
msgid "Tray 17"
msgstr ""
-#: cups/ppd-cache.c:3421
+#: cups/ppd-cache.c:3431
msgid "Tray 18"
msgstr ""
-#: cups/ppd-cache.c:3422
+#: cups/ppd-cache.c:3432
msgid "Tray 19"
msgstr ""
-#: cups/ppd-cache.c:3405 cups/ppd-cache.c:3805 ppdc/sample.c:257
+#: cups/ppd-cache.c:3415 cups/ppd-cache.c:3835 ppdc/sample.c:257
msgid "Tray 2"
msgstr ""
-#: cups/ppd-cache.c:3423
+#: cups/ppd-cache.c:3433
msgid "Tray 20"
msgstr ""
-#: cups/ppd-cache.c:3406 cups/ppd-cache.c:3806 ppdc/sample.c:258
+#: cups/ppd-cache.c:3416 cups/ppd-cache.c:3836 ppdc/sample.c:258
msgid "Tray 3"
msgstr ""
-#: cups/ppd-cache.c:3407 cups/ppd-cache.c:3807 ppdc/sample.c:259
+#: cups/ppd-cache.c:3417 cups/ppd-cache.c:3837 ppdc/sample.c:259
msgid "Tray 4"
msgstr ""
-#: cups/ppd-cache.c:3408 cups/ppd-cache.c:3808
+#: cups/ppd-cache.c:3418 cups/ppd-cache.c:3838
msgid "Tray 5"
msgstr ""
-#: cups/ppd-cache.c:3409 cups/ppd-cache.c:3809
+#: cups/ppd-cache.c:3419 cups/ppd-cache.c:3839
msgid "Tray 6"
msgstr ""
-#: cups/ppd-cache.c:3410 cups/ppd-cache.c:3810
+#: cups/ppd-cache.c:3420 cups/ppd-cache.c:3840
msgid "Tray 7"
msgstr ""
-#: cups/ppd-cache.c:3411 cups/ppd-cache.c:3811
+#: cups/ppd-cache.c:3421 cups/ppd-cache.c:3841
msgid "Tray 8"
msgstr ""
-#: cups/ppd-cache.c:3412 cups/ppd-cache.c:3812
+#: cups/ppd-cache.c:3422 cups/ppd-cache.c:3842
msgid "Tray 9"
msgstr ""
@@ -6789,7 +6802,7 @@ msgstr ""
msgid "Triple Staple (Reverse Portrait)"
msgstr ""
-#: cups/ppd-cache.c:3604
+#: cups/ppd-cache.c:3615
msgid "Triple Wall Cardboard"
msgstr ""
@@ -6798,11 +6811,11 @@ msgstr ""
msgid "Trust on first use is disabled."
msgstr ""
-#: cups/http-support.c:1386
+#: cups/http-support.c:1532
msgid "URI Too Long"
msgstr ""
-#: cups/http-support.c:1461
+#: cups/http-support.c:1607
msgid "URI too large"
msgstr ""
@@ -6842,7 +6855,7 @@ msgstr ""
msgid "US Letter Small"
msgstr ""
-#: cgi-bin/admin.c:1943 cgi-bin/admin.c:1956 cgi-bin/admin.c:1980
+#: cgi-bin/admin.c:1944 cgi-bin/admin.c:1957 cgi-bin/admin.c:1981
msgid "Unable to access cupsd.conf file"
msgstr ""
@@ -6858,7 +6871,7 @@ msgstr ""
msgid "Unable to add class"
msgstr ""
-#: backend/ipp.c:1858
+#: backend/ipp.c:1865
msgid "Unable to add document to print job."
msgstr ""
@@ -6867,7 +6880,7 @@ msgstr ""
msgid "Unable to add job for destination \"%s\"."
msgstr ""
-#: cgi-bin/admin.c:1034 cgi-bin/admin.c:1403
+#: cgi-bin/admin.c:1034 cgi-bin/admin.c:1404
msgid "Unable to add printer"
msgstr ""
@@ -6883,32 +6896,32 @@ msgstr ""
msgid "Unable to allocate memory for pages array"
msgstr ""
-#: cgi-bin/admin.c:1509
+#: cgi-bin/admin.c:1510
msgid "Unable to cancel RSS subscription"
msgstr ""
-#: backend/ipp.c:2143 backend/ipp.c:2675
+#: backend/ipp.c:2150 backend/ipp.c:2682
msgid "Unable to cancel print job."
msgstr ""
-#: cgi-bin/admin.c:2974
+#: cgi-bin/admin.c:2975
msgid "Unable to change printer"
msgstr ""
-#: cgi-bin/admin.c:3890
+#: cgi-bin/admin.c:3891
msgid "Unable to change printer-is-shared attribute"
msgstr ""
-#: cgi-bin/admin.c:1641 cgi-bin/admin.c:1783
+#: cgi-bin/admin.c:1642 cgi-bin/admin.c:1784
msgid "Unable to change server settings"
msgstr ""
-#: cups/ipp.c:5384
+#: cups/ipp.c:5303
#, c-format
msgid "Unable to compile mimeMediaType regular expression: %s."
msgstr ""
-#: cups/ipp.c:5330
+#: cups/ipp.c:5249
#, c-format
msgid "Unable to compile naturalLanguage regular expression: %s."
msgstr ""
@@ -6917,11 +6930,11 @@ msgstr ""
msgid "Unable to configure printer options."
msgstr ""
-#: cups/adminutil.c:899 cups/request.c:1050
+#: cups/adminutil.c:899 cups/request.c:1062
msgid "Unable to connect to host."
msgstr ""
-#: backend/ipp.c:732 backend/ipp.c:1277 backend/lpd.c:856 backend/socket.c:319
+#: backend/ipp.c:732 backend/ipp.c:1284 backend/lpd.c:856 backend/socket.c:319
#: backend/usb-unix.c:108
msgid "Unable to contact printer, queuing on next printer in class."
msgstr ""
@@ -6968,23 +6981,23 @@ msgstr ""
msgid "Unable to create printer-uri"
msgstr ""
-#: scheduler/ipp.c:5516
+#: scheduler/ipp.c:5508
msgid "Unable to create printer."
msgstr ""
-#: cups/tls-darwin.c:1482 cups/tls-gnutls.c:1494
+#: cups/tls-darwin.c:1484 cups/tls-gnutls.c:1494
msgid "Unable to create server credentials."
msgstr ""
-#: cgi-bin/admin.c:1834 cgi-bin/admin.c:1846 scheduler/cupsfilter.c:1288
+#: cgi-bin/admin.c:1835 cgi-bin/admin.c:1847 scheduler/cupsfilter.c:1288
msgid "Unable to create temporary file"
msgstr ""
-#: cgi-bin/admin.c:2137
+#: cgi-bin/admin.c:2138
msgid "Unable to delete class"
msgstr ""
-#: cgi-bin/admin.c:2222
+#: cgi-bin/admin.c:2223
msgid "Unable to delete printer"
msgstr ""
@@ -6992,39 +7005,39 @@ msgstr ""
msgid "Unable to do maintenance command"
msgstr ""
-#: cgi-bin/admin.c:1958
+#: cgi-bin/admin.c:1959
msgid "Unable to edit cupsd.conf files larger than 1MB"
msgstr ""
-#: cups/tls-darwin.c:1670
+#: cups/tls-darwin.c:1672
msgid "Unable to establish a secure connection to host (certificate chain invalid)."
msgstr ""
-#: cups/tls-darwin.c:1660
+#: cups/tls-darwin.c:1662
msgid "Unable to establish a secure connection to host (certificate not yet valid)."
msgstr ""
-#: cups/tls-darwin.c:1655
+#: cups/tls-darwin.c:1657
msgid "Unable to establish a secure connection to host (expired certificate)."
msgstr ""
-#: cups/tls-darwin.c:1665
+#: cups/tls-darwin.c:1667
msgid "Unable to establish a secure connection to host (host name mismatch)."
msgstr ""
-#: cups/tls-darwin.c:1675
+#: cups/tls-darwin.c:1677
msgid "Unable to establish a secure connection to host (peer dropped connection before responding)."
msgstr ""
-#: cups/tls-darwin.c:1650
+#: cups/tls-darwin.c:1652
msgid "Unable to establish a secure connection to host (self-signed certificate)."
msgstr ""
-#: cups/tls-darwin.c:1645
+#: cups/tls-darwin.c:1647
msgid "Unable to establish a secure connection to host (untrusted certificate)."
msgstr ""
-#: cups/tls-darwin.c:1708 cups/tls-sspi.c:1283 cups/tls-sspi.c:1300
+#: cups/tls-darwin.c:1710 cups/tls-sspi.c:1283 cups/tls-sspi.c:1300
msgid "Unable to establish a secure connection to host."
msgstr ""
@@ -7032,15 +7045,15 @@ msgstr ""
msgid "Unable to find destination for job"
msgstr ""
-#: cups/http-support.c:1955
+#: cups/http-support.c:2101
msgid "Unable to find printer."
msgstr ""
-#: cups/tls-darwin.c:1495
+#: cups/tls-darwin.c:1497
msgid "Unable to find server credentials."
msgstr ""
-#: backend/ipp.c:3338
+#: backend/ipp.c:3345
msgid "Unable to get backend exit status."
msgstr ""
@@ -7052,11 +7065,11 @@ msgstr ""
msgid "Unable to get class status"
msgstr ""
-#: cgi-bin/admin.c:1297
+#: cgi-bin/admin.c:1298
msgid "Unable to get list of printer drivers"
msgstr ""
-#: cgi-bin/admin.c:2824
+#: cgi-bin/admin.c:2825
msgid "Unable to get printer attributes"
msgstr ""
@@ -7100,7 +7113,7 @@ msgstr ""
msgid "Unable to modify class"
msgstr ""
-#: cgi-bin/admin.c:1033 cgi-bin/admin.c:1402
+#: cgi-bin/admin.c:1033 cgi-bin/admin.c:1403
msgid "Unable to modify printer"
msgstr ""
@@ -7112,11 +7125,11 @@ msgstr ""
msgid "Unable to move jobs"
msgstr ""
-#: cgi-bin/admin.c:3170 cups/ppd.c:314
+#: cgi-bin/admin.c:3171 cups/ppd.c:314
msgid "Unable to open PPD file"
msgstr ""
-#: cgi-bin/admin.c:2592
+#: cgi-bin/admin.c:2593
msgid "Unable to open cupsd.conf file:"
msgstr ""
@@ -7124,7 +7137,7 @@ msgstr ""
msgid "Unable to open device file"
msgstr ""
-#: scheduler/ipp.c:6356
+#: scheduler/ipp.c:6348
#, c-format
msgid "Unable to open document #%d in job #%d."
msgstr ""
@@ -7133,7 +7146,7 @@ msgstr ""
msgid "Unable to open help file."
msgstr ""
-#: backend/ipp.c:386 backend/ipp.c:1598 backend/ipp.c:1811 backend/lpd.c:479
+#: backend/ipp.c:386 backend/ipp.c:1605 backend/ipp.c:1818 backend/lpd.c:479
#: backend/socket.c:147 backend/usb.c:229 filter/gziptoany.c:71
#: filter/pstops.c:268
msgid "Unable to open print file"
@@ -7153,7 +7166,7 @@ msgstr ""
msgid "Unable to read print data."
msgstr ""
-#: scheduler/ipp.c:8648 scheduler/ipp.c:9891
+#: scheduler/ipp.c:8640 scheduler/ipp.c:9883
msgid "Unable to rename job document file."
msgstr ""
@@ -7183,19 +7196,19 @@ msgstr ""
msgid "Unable to set Windows printer driver (%d)."
msgstr ""
-#: cgi-bin/admin.c:3791
+#: cgi-bin/admin.c:3792
msgid "Unable to set options"
msgstr ""
-#: cgi-bin/admin.c:3061
+#: cgi-bin/admin.c:3062
msgid "Unable to set server default"
msgstr ""
-#: backend/ipp.c:3197 backend/ipp.c:3274 backend/ipp.c:3282
+#: backend/ipp.c:3204 backend/ipp.c:3281 backend/ipp.c:3289
msgid "Unable to start backend process."
msgstr ""
-#: cgi-bin/admin.c:1896
+#: cgi-bin/admin.c:1897
msgid "Unable to upload cupsd.conf file"
msgstr ""
@@ -7212,15 +7225,15 @@ msgstr ""
msgid "Unable to write uncompressed print data: %s"
msgstr ""
-#: cups/http-support.c:1374
+#: cups/http-support.c:1520
msgid "Unauthorized"
msgstr ""
-#: cgi-bin/admin.c:3487
+#: cgi-bin/admin.c:3488
msgid "Units"
msgstr ""
-#: cups/http-support.c:1414 cups/http-support.c:1498 cups/ppd.c:341
+#: cups/http-support.c:1560 cups/http-support.c:1644 cups/ppd.c:343
msgid "Unknown"
msgstr ""
@@ -7267,29 +7280,29 @@ msgstr ""
msgid "Unknown print mode: \"%s\"."
msgstr ""
-#: scheduler/ipp.c:10836
+#: scheduler/ipp.c:10828
#, c-format
msgid "Unknown printer-error-policy \"%s\"."
msgstr ""
-#: scheduler/ipp.c:10819
+#: scheduler/ipp.c:10811
#, c-format
msgid "Unknown printer-op-policy \"%s\"."
msgstr ""
-#: cups/http.c:2293
+#: cups/http.c:2294
msgid "Unknown request method."
msgstr ""
-#: cups/http.c:2313
+#: cups/http.c:2314
msgid "Unknown request version."
msgstr ""
-#: cups/http-support.c:1491
+#: cups/http-support.c:1637
msgid "Unknown scheme in URI"
msgstr ""
-#: cups/http-addrlist.c:821
+#: cups/http-addrlist.c:822
msgid "Unknown service name."
msgstr ""
@@ -7298,21 +7311,21 @@ msgstr ""
msgid "Unknown version option value: \"%s\"."
msgstr ""
-#: scheduler/ipp.c:11295
+#: scheduler/ipp.c:11287
#, c-format
msgid "Unsupported 'compression' value \"%s\"."
msgstr ""
-#: scheduler/ipp.c:11325
+#: scheduler/ipp.c:11317
#, c-format
msgid "Unsupported 'document-format' value \"%s\"."
msgstr ""
-#: scheduler/ipp.c:7995 scheduler/ipp.c:10378 scheduler/ipp.c:11339
+#: scheduler/ipp.c:7987 scheduler/ipp.c:10370 scheduler/ipp.c:11331
msgid "Unsupported 'job-hold-until' value."
msgstr ""
-#: scheduler/ipp.c:11355
+#: scheduler/ipp.c:11347
msgid "Unsupported 'job-name' value."
msgstr ""
@@ -7321,17 +7334,17 @@ msgstr ""
msgid "Unsupported character set \"%s\"."
msgstr ""
-#: scheduler/ipp.c:8455 scheduler/ipp.c:9703
+#: scheduler/ipp.c:8447 scheduler/ipp.c:9695
#, c-format
msgid "Unsupported compression \"%s\"."
msgstr ""
-#: scheduler/ipp.c:8591 scheduler/ipp.c:9856
+#: scheduler/ipp.c:8583 scheduler/ipp.c:9848
#, c-format
msgid "Unsupported document-format \"%s\"."
msgstr ""
-#: scheduler/ipp.c:9839
+#: scheduler/ipp.c:9831
#, c-format
msgid "Unsupported document-format \"%s/%s\"."
msgstr ""
@@ -7373,11 +7386,11 @@ msgstr ""
msgid "Unsupported value type"
msgstr ""
-#: cups/http-support.c:1389
+#: cups/http-support.c:1535
msgid "Upgrade Required"
msgstr ""
-#: systemv/lpadmin.c:662
+#: systemv/lpadmin.c:664
msgid ""
"Usage:\n"
"\n"
@@ -7405,7 +7418,7 @@ msgstr ""
msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
msgstr ""
-#: scheduler/main.c:2100
+#: scheduler/main.c:2102
msgid "Usage: cupsd [options]"
msgstr ""
@@ -7481,7 +7494,7 @@ msgstr ""
msgid "VarBind uses indefinite length"
msgstr ""
-#: cups/ppd-cache.c:3592
+#: cups/ppd-cache.c:3603
msgid "Vellum Paper"
msgstr ""
@@ -7489,7 +7502,7 @@ msgstr ""
msgid "Version uses indefinite length"
msgstr ""
-#: backend/ipp.c:1978
+#: backend/ipp.c:1985
msgid "Waiting for job to complete."
msgstr ""
@@ -7505,23 +7518,23 @@ msgstr ""
msgid "Warning, no Windows 2000 printer drivers are installed."
msgstr ""
-#: cups/ppd-cache.c:3517
+#: cups/ppd-cache.c:3528
msgid "Waterproof Fabric"
msgstr ""
-#: cups/http-support.c:1410
+#: cups/http-support.c:1556
msgid "Web Interface is Disabled"
msgstr ""
-#: cups/ppd-cache.c:3605
+#: cups/ppd-cache.c:3616
msgid "Wet Film"
msgstr ""
-#: cups/ppd-cache.c:3510
+#: cups/ppd-cache.c:3521
msgid "Windowed Envelope"
msgstr ""
-#: cups/ppd.c:1985
+#: cups/ppd.c:2008
msgid "Yes"
msgstr ""
@@ -7554,11 +7567,11 @@ msgstr ""
msgid "completed"
msgstr ""
-#: scheduler/ipp.c:6228
+#: scheduler/ipp.c:6220
msgid "cups-deviced failed to execute."
msgstr ""
-#: scheduler/ipp.c:7114 scheduler/ipp.c:7353
+#: scheduler/ipp.c:7106 scheduler/ipp.c:7345
msgid "cups-driverd failed to execute."
msgstr ""
@@ -7586,36 +7599,36 @@ msgstr ""
msgid "cupsctl: Unknown option \"-%c\""
msgstr ""
-#: scheduler/main.c:178
+#: scheduler/main.c:171
msgid "cupsd: Expected config filename after \"-c\" option."
msgstr ""
-#: scheduler/main.c:274
+#: scheduler/main.c:267
msgid "cupsd: Expected cups-files.conf filename after \"-s\" option."
msgstr ""
-#: scheduler/main.c:248
+#: scheduler/main.c:241
msgid "cupsd: On-demand support not compiled in, running in normal mode."
msgstr ""
-#: scheduler/main.c:285
+#: scheduler/main.c:278
msgid "cupsd: Relative cups-files.conf filename not allowed."
msgstr ""
-#: scheduler/main.c:209 scheduler/main.c:216
+#: scheduler/main.c:202 scheduler/main.c:209
msgid "cupsd: Unable to get current directory."
msgstr ""
-#: scheduler/main.c:341 scheduler/main.c:350
+#: scheduler/main.c:334 scheduler/main.c:343
msgid "cupsd: Unable to get path to cups-files.conf file."
msgstr ""
-#: scheduler/main.c:323
+#: scheduler/main.c:316
#, c-format
msgid "cupsd: Unknown argument \"%s\" - aborting."
msgstr ""
-#: scheduler/main.c:316
+#: scheduler/main.c:309
#, c-format
msgid "cupsd: Unknown option \"%c\" - aborting."
msgstr ""
@@ -7823,15 +7836,15 @@ msgstr ""
msgid "ipptool: Unknown option \"-%c\"."
msgstr ""
-#: scheduler/ipp.c:8121
+#: scheduler/ipp.c:8113
msgid "job-printer-uri attribute missing."
msgstr ""
-#: systemv/lpadmin.c:124 systemv/lpadmin.c:380
+#: systemv/lpadmin.c:125 systemv/lpadmin.c:380
msgid "lpadmin: Class name can only contain printable characters."
msgstr ""
-#: systemv/lpadmin.c:214
+#: systemv/lpadmin.c:215
#, c-format
msgid "lpadmin: Expected PPD after \"-%c\" option."
msgstr ""
@@ -7844,7 +7857,7 @@ msgstr ""
msgid "lpadmin: Expected class after \"-r\" option."
msgstr ""
-#: systemv/lpadmin.c:114
+#: systemv/lpadmin.c:115
msgid "lpadmin: Expected class name after \"-c\" option."
msgstr ""
@@ -7860,7 +7873,7 @@ msgstr ""
msgid "lpadmin: Expected file type(s) after \"-I\" option."
msgstr ""
-#: systemv/lpadmin.c:193
+#: systemv/lpadmin.c:194
msgid "lpadmin: Expected hostname after \"-h\" option."
msgstr ""
@@ -7884,7 +7897,7 @@ msgstr ""
msgid "lpadmin: Expected printer after \"-p\" option."
msgstr ""
-#: systemv/lpadmin.c:156
+#: systemv/lpadmin.c:157
msgid "lpadmin: Expected printer name after \"-d\" option."
msgstr ""
@@ -7892,21 +7905,21 @@ msgstr ""
msgid "lpadmin: Expected printer or class after \"-x\" option."
msgstr ""
-#: systemv/lpadmin.c:969
+#: systemv/lpadmin.c:971
msgid "lpadmin: No member names were seen."
msgstr ""
-#: systemv/lpadmin.c:756
+#: systemv/lpadmin.c:758
#, c-format
msgid "lpadmin: Printer %s is already a member of class %s."
msgstr ""
-#: systemv/lpadmin.c:983
+#: systemv/lpadmin.c:985
#, c-format
msgid "lpadmin: Printer %s is not a member of class %s."
msgstr ""
-#: systemv/lpadmin.c:165 systemv/lpadmin.c:333 systemv/lpadmin.c:533
+#: systemv/lpadmin.c:166 systemv/lpadmin.c:333 systemv/lpadmin.c:533
msgid "lpadmin: Printer name can only contain printable characters."
msgstr ""
@@ -7914,24 +7927,24 @@ msgstr ""
msgid "lpadmin: Raw queues are deprecated and will stop working in a future version of CUPS."
msgstr ""
-#: systemv/lpadmin.c:232
+#: systemv/lpadmin.c:233
msgid "lpadmin: System V interface scripts are no longer supported for security reasons."
msgstr ""
-#: systemv/lpadmin.c:98
+#: systemv/lpadmin.c:99
msgid ""
"lpadmin: Unable to add a printer to the class:\n"
" You must specify a printer name first."
msgstr ""
-#: systemv/lpadmin.c:90 systemv/lpadmin.c:140 systemv/lpadmin.c:262
+#: systemv/lpadmin.c:91 systemv/lpadmin.c:141 systemv/lpadmin.c:263
#: systemv/lpadmin.c:346 systemv/lpadmin.c:395 systemv/lpadmin.c:507
#: systemv/lpadmin.c:646
#, c-format
msgid "lpadmin: Unable to connect to server: %s"
msgstr ""
-#: systemv/lpadmin.c:1446
+#: systemv/lpadmin.c:1460
msgid "lpadmin: Unable to create temporary file"
msgstr ""
@@ -7941,12 +7954,12 @@ msgid ""
" You must specify a printer name first."
msgstr ""
-#: systemv/lpadmin.c:1438
+#: systemv/lpadmin.c:1452
#, c-format
msgid "lpadmin: Unable to open PPD \"%s\": %s on line %d."
msgstr ""
-#: systemv/lpadmin.c:1458
+#: systemv/lpadmin.c:1472
#, c-format
msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
msgstr ""
@@ -8069,16 +8082,16 @@ msgstr ""
msgid "no system default destination"
msgstr ""
-#: scheduler/ipp.c:5913
+#: scheduler/ipp.c:5905
msgid "notify-events not specified."
msgstr ""
-#: scheduler/ipp.c:2049 scheduler/ipp.c:5799
+#: scheduler/ipp.c:2049 scheduler/ipp.c:5791
#, c-format
msgid "notify-recipient-uri URI \"%s\" is already used."
msgstr ""
-#: scheduler/ipp.c:2039 scheduler/ipp.c:5789
+#: scheduler/ipp.c:2039 scheduler/ipp.c:5781
#, c-format
msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
msgstr ""
@@ -8122,7 +8135,7 @@ msgstr ""
msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2673
+#: ppdc/ppdc-source.cxx:2674
#, c-format
msgid "ppdc: Choice found on line %d of %s with no Option."
msgstr ""
@@ -8182,7 +8195,7 @@ msgstr ""
msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2859
+#: ppdc/ppdc-source.cxx:2860
#, c-format
msgid "ppdc: Expected driver type keyword following DriverType on line %d of %s."
msgstr ""
@@ -8227,7 +8240,7 @@ msgstr ""
msgid "ppdc: Expected name after %s on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3231
+#: ppdc/ppdc-source.cxx:3232
#, c-format
msgid "ppdc: Expected name after FileName on line %d of %s."
msgstr ""
@@ -8237,22 +8250,22 @@ msgstr ""
msgid "ppdc: Expected name after Font on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3062
+#: ppdc/ppdc-source.cxx:3063
#, c-format
msgid "ppdc: Expected name after Manufacturer on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3095
+#: ppdc/ppdc-source.cxx:3096
#, c-format
msgid "ppdc: Expected name after MediaSize on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3185
+#: ppdc/ppdc-source.cxx:3186
#, c-format
msgid "ppdc: Expected name after ModelName on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3248
+#: ppdc/ppdc-source.cxx:3249
#, c-format
msgid "ppdc: Expected name after PCFileName on line %d of %s."
msgstr ""
@@ -8327,12 +8340,12 @@ msgstr ""
msgid "ppdc: Expected status after Font on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2748
+#: ppdc/ppdc-source.cxx:2749
#, c-format
msgid "ppdc: Expected string after Copyright on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3351
+#: ppdc/ppdc-source.cxx:3352
#, c-format
msgid "ppdc: Expected string after Version on line %d of %s."
msgstr ""
@@ -8418,9 +8431,9 @@ msgstr ""
msgid "ppdc: No message catalog provided for locale %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:1606 ppdc/ppdc-source.cxx:2836
-#: ppdc/ppdc-source.cxx:2922 ppdc/ppdc-source.cxx:3015
-#: ppdc/ppdc-source.cxx:3148 ppdc/ppdc-source.cxx:3281
+#: ppdc/ppdc-source.cxx:1606 ppdc/ppdc-source.cxx:2837
+#: ppdc/ppdc-source.cxx:2923 ppdc/ppdc-source.cxx:3016
+#: ppdc/ppdc-source.cxx:3149 ppdc/ppdc-source.cxx:3282
#, c-format
msgid "ppdc: Option %s defined in two different groups on line %d of %s."
msgstr ""
@@ -8495,7 +8508,7 @@ msgstr ""
msgid "ppdc: Unexpected text on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:2878
+#: ppdc/ppdc-source.cxx:2879
#, c-format
msgid "ppdc: Unknown driver type %s on line %d of %s."
msgstr ""
@@ -8505,7 +8518,7 @@ msgstr ""
msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
msgstr ""
-#: ppdc/ppdc-source.cxx:3108
+#: ppdc/ppdc-source.cxx:3109
#, c-format
msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
msgstr ""
@@ -8515,7 +8528,7 @@ msgstr ""
msgid "ppdc: Unknown message catalog format for \"%s\"."
msgstr ""
-#: ppdc/ppdc-source.cxx:3362
+#: ppdc/ppdc-source.cxx:3363
#, c-format
msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
msgstr ""
diff --git a/locale/cups.strings b/locale/cups.strings
index 952b10e..6a708f2 100644
--- a/locale/cups.strings
+++ b/locale/cups.strings
@@ -426,6 +426,7 @@
"%s: Unable to open \"%s\": %s" = "%s: Unable to open “%s”: %s";
"%s: Unable to open %s: %s" = "%s: Unable to open %s: %s";
"%s: Unable to open PPD file: %s on line %d." = "%s: Unable to open PPD file: %s on line %d.";
+"%s: Unable to query printer: %s" = "%s: Unable to query printer: %s";
"%s: Unable to read MIME database from \"%s\" or \"%s\"." = "%s: Unable to read MIME database from “%s” or “%s”.";
"%s: Unable to resolve \"%s\"." = "%s: Unable to resolve “%s”.";
"%s: Unknown argument \"%s\"." = "%s: Unknown argument “%s”.";
@@ -727,6 +728,7 @@
"Back Print Film" = "Back Print Film";
"Bad '%s' value." = "Bad ‘%s’ value.";
"Bad 'document-format' value \"%s\"." = "Bad ‘document-format’ value “%s”.";
+"Bad CloseUI/JCLCloseUI" = "Bad CloseUI/JCLCloseUI";
"Bad NULL dests pointer" = "Bad NULL dests pointer";
"Bad OpenGroup" = "Bad OpenGroup";
"Bad OpenUI/JCLOpenUI" = "Bad OpenUI/JCLOpenUI";
@@ -1152,6 +1154,7 @@
"Mid-Weight Paper" = "Mid-Weight Paper";
"Middle" = "Middle";
"Missing CloseGroup" = "Missing CloseGroup";
+"Missing CloseUI/JCLCloseUI" = "Missing CloseUI/JCLCloseUI";
"Missing PPD-Adobe-4.x header" = "Missing PPD-Adobe-4.x header";
"Missing asterisk in column 1" = "Missing asterisk in column 1";
"Missing document-number attribute." = "Missing document-number attribute.";
diff --git a/locale/cups_ca.po b/locale/cups_ca.po
index 30c3d23..248c4f2 100644
--- a/locale/cups_ca.po
+++ b/locale/cups_ca.po
@@ -32,7 +32,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.4.6\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2012-09-29 11:21+0200\n"
"Last-Translator: Àngel Mompó <mecatxis@gmail.com>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
@@ -1893,6 +1893,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s: no es pot obrir el fitxer PPD: %s a la línia %d."
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr "%s: no es pot llegir la base de dades MIME de «%s» o «%s»."
@@ -2826,6 +2830,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr ""
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "El punter de dests NULL és incorrecte"
@@ -4175,6 +4182,9 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr "Falta el CloseGroup"
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "Falta la capçalera PPD-ADOBE-4.x"
diff --git a/locale/cups_cs.po b/locale/cups_cs.po
index feec1cb..a271091 100644
--- a/locale/cups_cs.po
+++ b/locale/cups_cs.po
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2012-09-14 10:26+0100\n"
"Last-Translator: Jan Bartos <jan.bartos@madeta.cz>\n"
"Language-Team: Czech\n"
@@ -1708,6 +1708,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr ""
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr ""
@@ -2634,6 +2638,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr ""
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "Neplatný ukazatel NULL"
@@ -3970,6 +3977,9 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr ""
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "Chybějící záhlaví PPD-Adobe-4.x"
diff --git a/locale/cups_de.po b/locale/cups_de.po
index 69b8430..1d3e2c3 100644
--- a/locale/cups_de.po
+++ b/locale/cups_de.po
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.0\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2017-10-25 14:57+0200\n"
"Last-Translator: Michael Weghorn <m.weghorn@posteo.de>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1778,6 +1778,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s: Öffnen der PPD Datei: %s in Zeile %d."
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr "%s: Lesen der MIME Datenbank von \"%s\" oder \"%s\" nicht möglich."
@@ -2710,6 +2714,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr "Fehlerhafter 'document-format' Wert \"%s\"."
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "Ungültiger NULL-Dests-Pointer"
@@ -4051,6 +4058,9 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr "Fehlendes CloseGroup"
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "PPD-Adobe-4.x Header fehlt"
diff --git a/locale/cups_es.po b/locale/cups_es.po
index 3566a66..0a8aa18 100644
--- a/locale/cups_es.po
+++ b/locale/cups_es.po
@@ -16,7 +16,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.2\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2016-06-26 21:17+0100\n"
"Last-Translator: Juan Pablo González Riopedre <jpgriopedre@yahoo.es>\n"
"Language-Team: Spanish\n"
@@ -1923,6 +1923,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s: No se ha podido abrir el archivo PPD: %s en la línea %d."
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr "%s: No se pudo leer base de datos MIME desde \"%s\" o \"%s\"."
@@ -2856,6 +2860,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr "Valor 'document-format' \"%s\" incorrecto."
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "Puntero destino NULLincorrecto"
@@ -4202,6 +4209,9 @@ msgstr "Medio"
msgid "Missing CloseGroup"
msgstr "Falta CloseGroup"
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "Falta cabecera PPD-Adobe-4.x"
diff --git a/locale/cups_fr.po b/locale/cups_fr.po
index ea3d554..8e0f4fa 100644
--- a/locale/cups_fr.po
+++ b/locale/cups_fr.po
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2012-12-12 11:12+0100\n"
"Last-Translator: Stéphane Blondon <stephane.blondon@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1768,6 +1768,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s : impossible d'ouvrir le fichier PPD : %s sur la ligne %d."
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr ""
@@ -2694,6 +2698,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr ""
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "Pointeur de dests NULL incorrect"
@@ -4032,6 +4039,9 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr ""
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "Entête PPD-Adobe-4.x manquant"
diff --git a/locale/cups_it.po b/locale/cups_it.po
index 1d5ee1d..d83fa97 100644
--- a/locale/cups_it.po
+++ b/locale/cups_it.po
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2013-07-14 12:00+0200\n"
"Last-Translator: Giovanni Scafora <giovanni@archlinux.org>\n"
"Language-Team: Arch Linux Italian Team <giovanni@archlinux.org>\n"
@@ -1921,6 +1921,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s: non è possibile aprire il file PPD: %s alla riga %d."
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr ""
"%s: non è possibile leggere il database del MIME da \"%s\" oppure da \"%s\"."
@@ -2852,6 +2856,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr "Il valore di 'document-format' non è valido \"%s\"."
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "Le destinazioni del puntatore NULL non sono valide"
@@ -4200,6 +4207,9 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr "Manca CloseGroup"
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "Manca la libreria di PPD-Adobe-4.x"
diff --git a/locale/cups_ja.po b/locale/cups_ja.po
index 7949b4a..af7852b 100644
--- a/locale/cups_ja.po
+++ b/locale/cups_ja.po
@@ -28,7 +28,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.0\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2014-11-15 19:27+0900\n"
"Last-Translator: OPFC TRANSCUPS <opfc-transcups@sourceforge.jp>\n"
"Language-Team: OPFC TRANSCUPS <opfc-transcups@sourceforge.jp>\n"
@@ -1891,6 +1891,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s: PPD ファイルを開けません: %s の %d 行目"
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr ""
"%s: \"%s\" または \"%s\" から MIME データベースを読み取ることができません。"
@@ -2822,6 +2826,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr "誤った 'document-format' の値です \"%s\"。"
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "不正な NULL 送信先ポインター"
@@ -4174,6 +4181,9 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr "CloseGroup がありません"
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "PPD-Adobe-4.x ヘッダーがありません"
diff --git a/locale/cups_pt_BR.po b/locale/cups_pt_BR.po
index 136728a..3be06c4 100644
--- a/locale/cups_pt_BR.po
+++ b/locale/cups_pt_BR.po
@@ -40,7 +40,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.1.2\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2016-01-31 16:45-0200\n"
"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>\n"
"Language-Team: Brazilian Portuguese <traducao-cups-pt-br@googlegroups.com>\n"
@@ -1926,6 +1926,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s: Não foi possível abrir o arquivo PPD: %s na linha %d."
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr "%s: Não foi possível ler o banco de dados MIME de \"%s\" ou \"%s\"."
@@ -2856,6 +2860,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr "Valor de \"document-format\" inválido \"%s\"."
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "Ponteiro de destinatário NULO inválido"
@@ -4203,6 +4210,9 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr "Faltando CloseGroup"
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "Faltando cabeçalho PPD-Adobe-4.x"
diff --git a/locale/cups_ru.po b/locale/cups_ru.po
index 0bad416..790b54a 100644
--- a/locale/cups_ru.po
+++ b/locale/cups_ru.po
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.0\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2015-01-28 12:00-0800\n"
"Last-Translator: Aleksandr Proklov\n"
"Language-Team: PuppyRus Linux Team\n"
@@ -1862,6 +1862,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%s: Не удается открыть PPD-файл: %s в строке %d."
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr "%s: Не удается прочитать базу данных MIME из \"%s\" или \"%s\"."
@@ -2790,6 +2794,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr ""
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "Неверный указатель NULL dests"
@@ -4131,6 +4138,9 @@ msgstr ""
msgid "Missing CloseGroup"
msgstr "Пропущен CloseGroup"
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "Отсутствует заголовок PPD-Adobe-4.x"
diff --git a/locale/cups_zh_CN.po b/locale/cups_zh_CN.po
index 454ab10..d9ef006 100644
--- a/locale/cups_zh_CN.po
+++ b/locale/cups_zh_CN.po
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: https://github.com/apple/cups/issues\n"
-"POT-Creation-Date: 2018-06-05 11:58-0400\n"
+"POT-Creation-Date: 2018-09-28 11:22-0400\n"
"PO-Revision-Date: 2017-06-11 12:38+0800\n"
"Last-Translator: Mingcong Bai <jeffbai@aosc.xyz>\n"
"Language-Team: \n"
@@ -1841,6 +1841,10 @@ msgid "%s: Unable to open PPD file: %s on line %d."
msgstr "%1$s:无法打开 PPD 文件:行 %3$d 上的 %2$s。"
#, c-format
+msgid "%s: Unable to query printer: %s"
+msgstr ""
+
+#, c-format
msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
msgstr "%s:无法从“%s”或“%s”读取 MIME 数据库。"
@@ -2767,6 +2771,9 @@ msgstr ""
msgid "Bad 'document-format' value \"%s\"."
msgstr "无效的“document-format”值“%s”。"
+msgid "Bad CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Bad NULL dests pointer"
msgstr "无效的 NULL 目标指针"
@@ -4113,6 +4120,9 @@ msgstr "中间"
msgid "Missing CloseGroup"
msgstr "缺少 CloseGroup"
+msgid "Missing CloseUI/JCLCloseUI"
+msgstr ""
+
msgid "Missing PPD-Adobe-4.x header"
msgstr "缺少 PPD-Adobe-4.x 文件头"
diff --git a/man/cups-files.conf.man.in b/man/cups-files.conf.man.in
index 6ac4e72..f5e6a9f 100644
--- a/man/cups-files.conf.man.in
+++ b/man/cups-files.conf.man.in
@@ -1,7 +1,7 @@
.\"
.\" cups-files.conf man page for CUPS.
.\"
-.\" Copyright 2007-2017 by Apple Inc.
+.\" Copyright 2007-2018 by Apple Inc.
.\" Copyright 1997-2006 by Easy Software Products.
.\"
.\" These coded instructions, statements, and computer programs are the
@@ -10,7 +10,7 @@
.\" 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/".
.\"
-.TH cups-files.conf 5 "CUPS" "21 September 2017" "Apple Inc."
+.TH cups-files.conf 5 "CUPS" "25 February 2018 " "Apple Inc."
.SH NAME
cups\-files.conf \- file and directory configuration file for cups
.SH DESCRIPTION
@@ -284,4 +284,4 @@ Specifies the SMB service configuration file to update.
.BR subscriptions.conf (5),
CUPS Online Help (http://localhost:631/help)
.SH COPYRIGHT
-Copyright \[co] 2007-2017 by Apple Inc.
+Copyright \[co] 2007-2018 by Apple Inc.
diff --git a/man/lpadmin.man b/man/lpadmin.man
index c4f01ec..4ef7090 100644
--- a/man/lpadmin.man
+++ b/man/lpadmin.man
@@ -10,7 +10,7 @@
.\" 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/".
.\"
-.TH lpadmin 8 "CUPS" "19 March 2018" "Apple Inc."
+.TH lpadmin 8 "CUPS" "19 August 2018" "Apple Inc."
.SH NAME
lpadmin \- configure cups printers and classes
.SH SYNOPSIS
@@ -182,7 +182,8 @@ command to get a list of supported device URIs and schemes.
Provides a textual description of the destination.
.TP 5
.B \-E
-Enables the destination and accepts jobs; this is the same as running the
+When specified before the \fB\-d\fR, \fB\-p\fR, or \fB\-x\fR options, forces the use of TLS encryption on the connection to the scheduler.
+Otherwise, enables the destination and accepts jobs; this is the same as running the
.BR cupsaccept (8)
and
.BR cupsenable (8)
@@ -197,6 +198,8 @@ Finally, the CUPS version of \fBlpadmin\fR may ask the user for an access passwo
This differs from the System V version which requires the root user to execute this command.
.SH NOTES
The CUPS version of \fBlpadmin\fR does not support all of the System V or Solaris printing system configuration options.
+.PP
+The double meaning of the \fB\-E\fR option is an unfortunate historical oddity.
.SH EXAMPLE
Create an IPP Everywhere print queue:
.nf
@@ -211,4 +214,4 @@ Create an IPP Everywhere print queue:
.BR lpoptions (1),
CUPS Online Help (http://localhost:631/help)
.SH COPYRIGHT
-Copyright \[co] 2007-2017 by Apple Inc.
+Copyright \[co] 2007-2018 by Apple Inc.
diff --git a/monitor/Makefile b/monitor/Makefile
index 75b911b..0e26bd6 100644
--- a/monitor/Makefile
+++ b/monitor/Makefile
@@ -122,6 +122,7 @@ uninstall:
bcp: bcp.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ bcp.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -131,6 +132,7 @@ bcp: bcp.o ../cups/$(LIBCUPS)
tbcp: tbcp.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ tbcp.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/notifier/Makefile b/notifier/Makefile
index ffed312..f98fb3f 100644
--- a/notifier/Makefile
+++ b/notifier/Makefile
@@ -124,6 +124,7 @@ depend:
dbus: dbus.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o dbus dbus.o $(DBUS_NOTIFIERLIBS) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -133,6 +134,7 @@ dbus: dbus.o ../cups/$(LIBCUPS)
mailto: mailto.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o mailto mailto.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -142,6 +144,7 @@ mailto: mailto.o ../cups/$(LIBCUPS)
rss: rss.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o rss rss.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -151,6 +154,7 @@ rss: rss.o ../cups/$(LIBCUPS)
testnotify: testnotify.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o testnotify testnotify.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
$(OBJS): ../Makedefs
diff --git a/packaging/cups.spec b/packaging/cups.spec
index da84b48..b83b968 100644
--- a/packaging/cups.spec
+++ b/packaging/cups.spec
@@ -43,12 +43,12 @@
Summary: CUPS
Name: cups
-Version: 2.2.8
+Version: 2.2.9
Release: 0
Epoch: 1
License: GPL
Group: System Environment/Daemons
-Source: https://github.com/apple/cups/releases/download/v2.2.8/cups-2.2.8-source.tar.gz
+Source: https://github.com/apple/cups/releases/download/v2.2.9/cups-2.2.9-source.tar.gz
Url: http://www.cups.org
Packager: Anonymous <anonymous@example.com>
Vendor: Example Corp
diff --git a/ppdc/Makefile b/ppdc/Makefile
index b91c9ec..e563988 100644
--- a/ppdc/Makefile
+++ b/ppdc/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for the CUPS PPD Compiler.
#
-# Copyright 2007-2017 by Apple Inc.
+# Copyright 2007-2018 by Apple Inc.
# Copyright 2002-2006 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
@@ -52,7 +52,6 @@ OBJS = \
ppdpo.o \
testcatalog.o
LIBTARGETS = \
- $(LIBCUPSPPDC) \
libcupsppdc.a
UNITTARGETS = \
ppdc-static \
@@ -102,7 +101,6 @@ clean:
$(RM) $(TARGETS) $(UNITTARGETS) genstrings
$(RM) -r ppd ppd2
$(RM) sample-import.drv sample.c test.drv
- $(RM) libcupsppdc.so libcupsppdc.dylib
#
@@ -153,40 +151,13 @@ install-exec:
#
install-headers:
- if test "x$(privateinclude)" != x; then \
- echo Installing private header files into $(PRIVATEINCLUDE)...; \
- $(INSTALL_DIR) -m 755 $(PRIVATEINCLUDE); \
- $(INSTALL_DATA) ppdc.h $(PRIVATEINCLUDE); \
- fi
#
# Install libraries...
#
-install-libs: $(INSTALLSTATIC)
- echo Installing libraries in $(LIBDIR)...
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) $(LIBCUPSPPDC) $(LIBDIR)
- if test $(LIBCUPSPPDC) = "libcupsppdc.so.1"; then \
- $(RM) $(LIBDIR)/`basename $(LIBCUPSPPDC) .1`; \
- $(LN) $(LIBCUPSPPDC) $(LIBDIR)/`basename $(LIBCUPSPPDC) .1`; \
- fi
- if test $(LIBCUPSPPDC) = "libcupsppdc.1.dylib"; then \
- $(RM) $(LIBDIR)/libcupsppdc.dylib; \
- $(LN) $(LIBCUPSPPDC) $(LIBDIR)/libcupsppdc.dylib; \
- fi
- if test "x$(SYMROOT)" != "x"; then \
- $(INSTALL_DIR) $(SYMROOT); \
- cp $(LIBCUPSPPDC) $(SYMROOT); \
- dsymutil $(SYMROOT)/$(LIBCUPSPPDC); \
- fi
-
-installstatic:
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) -m 755 libcupsppdc.a $(LIBDIR)
- $(RANLIB) $(LIBDIR)/libcupsppdc.a
- $(CHMOD) 555 $(LIBDIR)/libcupsppdc.a
+install-libs:
#
@@ -199,16 +170,6 @@ uninstall:
done
$(RM) $(DATADIR)/drv/sample.drv
$(RMDIR) $(DATADIR)/drv
- $(RM) $(LIBDIR)/libcupsppdc.1.dylib
- $(RM) $(LIBDIR)/libcupsppdc.a
- $(RM) $(LIBDIR)/libcupsppdc.dylib
- $(RM) $(LIBDIR)/libcupsppdc.so
- $(RM) $(LIBDIR)/libcupsppdc.so.1
- -$(RMDIR) $(LIBDIR)
- -if test "x$(privateinclude)" != x; then \
- $(RM) $(PRIVATEINCLUDE)/ppdc.h; \
- $(RMDIR) $(PRIVATEINCLUDE); \
- fi
#
@@ -236,9 +197,10 @@ genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \
# ppdc, the PPD compiler.
#
-ppdc: ppdc.o $(LIBCUPSPPDC) ../cups/$(LIBCUPS)
+ppdc: ppdc.o libcupsppdc.a ../cups/$(LIBCUPS)
echo Linking $@...
- $(LD_CXX) $(LDFLAGS) -o $@ ppdc.o -L. -lcupsppdc $(LIBS)
+ $(LD_CXX) $(LDFLAGS) -o $@ ppdc.o libcupsppdc.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
ppdc-static: ppdc.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) foo.drv foo-fr.po
@@ -246,6 +208,7 @@ ppdc-static: ppdc.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) foo.drv foo-fr.po
$(LD_CXX) $(ARCHFLAGS) $(LDFLAGS) -o ppdc-static ppdc.o libcupsppdc.a \
../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
$(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Testing PPD compiler...
./ppdc-static -l en,fr -I ../data foo.drv
./ppdc-static -l en,fr -z -I ../data foo.drv
@@ -255,18 +218,20 @@ ppdc-static: ppdc.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) foo.drv foo-fr.po
# ppdhtml, the PPD to HTML utility.
#
-ppdhtml: ppdhtml.o $(LIBCUPSPPDC) ../cups/$(LIBCUPS)
+ppdhtml: ppdhtml.o libcupsppdc.a ../cups/$(LIBCUPS)
echo Linking $@...
- $(LD_CXX) $(LDFLAGS) -o $@ ppdhtml.o -L. -lcupsppdc $(LIBS)
+ $(LD_CXX) $(LDFLAGS) -o $@ ppdhtml.o libcupsppdc.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# ppdi, import PPD files.
#
-ppdi: ppdi.o $(LIBCUPSPPDC) ../cups/$(LIBCUPS)
+ppdi: ppdi.o libcupsppdc.a ../cups/$(LIBCUPS)
echo Linking $@...
- $(LD_CXX) $(LDFLAGS) -o $@ ppdi.o -L. -lcupsppdc $(LIBS)
+ $(LD_CXX) $(LDFLAGS) -o $@ ppdi.o libcupsppdc.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
ppdi-static: ppdc-static ppdi.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC)
@@ -274,6 +239,7 @@ ppdi-static: ppdc-static ppdi.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC)
$(LD_CXX) $(ARCHFLAGS) $(LDFLAGS) -o ppdi-static ppdi.o libcupsppdc.a \
../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
$(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Testing PPD importer...
$(RM) -r ppd ppd2 sample-import.drv
./ppdc-static -l en -I ../data sample.drv
@@ -294,15 +260,17 @@ ppdi-static: ppdc-static ppdi.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC)
ppdmerge: ppdmerge.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CXX) $(LDFLAGS) -o $@ ppdmerge.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# ppdpo, create message catalog files.
#
-ppdpo: ppdpo.o $(LIBCUPSPPDC) ../cups/$(LIBCUPS)
+ppdpo: ppdpo.o libcupsppdc.a ../cups/$(LIBCUPS)
echo Linking $@...
- $(LD_CXX) $(LDFLAGS) -o $@ ppdpo.o -L. -lcupsppdc $(LIBS)
+ $(LD_CXX) $(LDFLAGS) -o $@ ppdpo.o libcupsppdc.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -314,45 +282,7 @@ testcatalog: testcatalog.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC)
$(LD_CXX) $(LDFLAGS) -o $@ testcatalog.o libcupsppdc.a \
../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
$(COMMONLIBS) $(LIBZ)
-
-
-#
-# libcupsppdc.so.1
-#
-
-libcupsppdc.so.1: $(LIBOBJS) ../cups/$(LIBCUPS)
- echo Linking $@...
- $(DSOXX) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LINKCUPS)
- $(RM) `basename $@ .1`
- $(LN) $@ `basename $@ .1`
-
-
-#
-# libcupsppdc.1.dylib
-#
-
-libcupsppdc.1.dylib: $(LIBOBJS) ../cups/$(LIBCUPS)
- echo Creating export list for $@...
- nm -gm $(LIBOBJS) | grep "__text" | grep -v weak | awk '{print $$NF}' | sort >t.exp
- echo Linking $@...
- $(DSOXX) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
- -install_name $(libdir)/$@ \
- -current_version 1.0.0 \
- -compatibility_version 1.0.0 \
- -exported_symbols_list t.exp \
- $(LIBOBJS) $(LINKCUPS) $(COMMONLIBS)
- $(RM) libcupsppdc.dylib t.exp
- $(LN) $@ libcupsppdc.dylib
-
-
-#
-# libcupsppdc.la
-#
-
-libcupsppdc.la: $(LIBOBJS) ../cups/$(LIBCUPS)
- echo Linking $@...
- $(LD_CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
- -version-info 1:0 $(LINKCUPS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/ppdc/ppdc-driver.cxx b/ppdc/ppdc-driver.cxx
index 242924b..2b6940e 100644
--- a/ppdc/ppdc-driver.cxx
+++ b/ppdc/ppdc-driver.cxx
@@ -1,7 +1,7 @@
//
// PPD file compiler definitions for the CUPS PPD Compiler.
//
-// Copyright 2007-2014 by Apple Inc.
+// Copyright 2007-2018 by Apple Inc.
// Copyright 2002-2006 by Easy Software Products.
//
// These coded instructions, statements, and computer programs are the
@@ -1107,7 +1107,10 @@ ppdcDriver::write_ppd_file(
cupsFilePrintf(fp, "*End%s", lf);
}
- cupsFilePrintf(fp, "*CloseUI: *%s%s", o->name->value, lf);
+ if (o->section == PPDC_SECTION_JCL)
+ cupsFilePrintf(fp, "*JCLCloseUI: *%s%s", o->name->value, lf);
+ else
+ cupsFilePrintf(fp, "*CloseUI: *%s%s", o->name->value, lf);
snprintf(custom, sizeof(custom), "Custom%s", o->name->value);
if ((a = find_attr(custom, "True")) != NULL)
diff --git a/ppdc/ppdc-source.cxx b/ppdc/ppdc-source.cxx
index 7b77c2e..5add810 100644
--- a/ppdc/ppdc-source.cxx
+++ b/ppdc/ppdc-source.cxx
@@ -1,7 +1,7 @@
//
// Source class for the CUPS PPD Compiler.
//
-// Copyright 2007-2014 by Apple Inc.
+// Copyright 2007-2018 by Apple Inc.
// Copyright 2002-2007 by Easy Software Products.
//
// These coded instructions, statements, and computer programs are the
@@ -23,9 +23,9 @@
#include "data/epson.h"
#include "data/hp.h"
#include "data/label.h"
-#ifndef WIN32
+#ifndef _WIN32
# include <sys/utsname.h>
-#endif // !WIN32
+#endif // !_WIN32
//
@@ -73,7 +73,7 @@ ppdcSource::ppdcSource(const char *f, // I - File to read
vars->add(new ppdcVariable("CUPS_VERSION_MINOR", MAKE_STRING(CUPS_VERSION_MINOR)));
vars->add(new ppdcVariable("CUPS_VERSION_PATCH", MAKE_STRING(CUPS_VERSION_PATCH)));
-#ifdef WIN32
+#ifdef _WIN32
vars->add(new ppdcVariable("PLATFORM_NAME", "Windows"));
vars->add(new ppdcVariable("PLATFORM_ARCH", "X86"));
@@ -90,7 +90,7 @@ ppdcSource::ppdcSource(const char *f, // I - File to read
vars->add(new ppdcVariable("PLATFORM_NAME", "unknown"));
vars->add(new ppdcVariable("PLATFORM_ARCH", "unknown"));
}
-#endif // WIN32
+#endif // _WIN32
if (f)
read_file(f, ffp);
@@ -2669,6 +2669,7 @@ ppdcSource::scan_file(ppdcFile *fp, // I - File to read
// Add it to the current option...
if (!o)
{
+ c->release();
_cupsLangPrintf(stderr,
_("ppdc: Choice found on line %d of %s with no "
"Option."), fp->line, fp->filename);
diff --git a/ppdc/sample.drv b/ppdc/sample.drv
index 58c6475..ec86338 100644
--- a/ppdc/sample.drv
+++ b/ppdc/sample.drv
@@ -458,35 +458,35 @@ Version "2.1"
Option "inPrintDensity/Print Density" PickOne DocumentSetup 20.0
*Choice "Default/Printer Default" "<</cupsCompression -1>>setpagedevice"
Choice "-15/-15" "<</cupsCompression 0>>setpagedevice"
- Choice "-14/-14" "<</cupsCompression 3>>setpagedevice"
- Choice "-13/-13" "<</cupsCompression 6>>setpagedevice"
+ Choice "-14/-14" "<</cupsCompression 4>>setpagedevice"
+ Choice "-13/-13" "<</cupsCompression 7>>setpagedevice"
Choice "-12/-12" "<</cupsCompression 10>>setpagedevice"
- Choice "-11/-11" "<</cupsCompression 13>>setpagedevice"
- Choice "-10/-10" "<</cupsCompression 16>>setpagedevice"
+ Choice "-11/-11" "<</cupsCompression 14>>setpagedevice"
+ Choice "-10/-10" "<</cupsCompression 17>>setpagedevice"
Choice "-9/-9" "<</cupsCompression 20>>setpagedevice"
- Choice "-8/-8" "<</cupsCompression 23>>setpagedevice"
- Choice "-7/-7" "<</cupsCompression 26>>setpagedevice"
+ Choice "-8/-8" "<</cupsCompression 24>>setpagedevice"
+ Choice "-7/-7" "<</cupsCompression 27>>setpagedevice"
Choice "-6/-6" "<</cupsCompression 30>>setpagedevice"
- Choice "-5/-5" "<</cupsCompression 33>>setpagedevice"
- Choice "-4/-4" "<</cupsCompression 36>>setpagedevice"
+ Choice "-5/-5" "<</cupsCompression 34>>setpagedevice"
+ Choice "-4/-4" "<</cupsCompression 37>>setpagedevice"
Choice "-3/-3" "<</cupsCompression 40>>setpagedevice"
- Choice "-2/-2" "<</cupsCompression 43>>setpagedevice"
- Choice "-1/-1" "<</cupsCompression 46>>setpagedevice"
+ Choice "-2/-2" "<</cupsCompression 44>>setpagedevice"
+ Choice "-1/-1" "<</cupsCompression 47>>setpagedevice"
Choice "0/0" "<</cupsCompression 50>>setpagedevice"
- Choice "1/1" "<</cupsCompression 53>>setpagedevice"
- Choice "2/2" "<</cupsCompression 56>>setpagedevice"
+ Choice "1/1" "<</cupsCompression 54>>setpagedevice"
+ Choice "2/2" "<</cupsCompression 57>>setpagedevice"
Choice "3/3" "<</cupsCompression 60>>setpagedevice"
- Choice "4/4" "<</cupsCompression 63>>setpagedevice"
- Choice "5/5" "<</cupsCompression 66>>setpagedevice"
+ Choice "4/4" "<</cupsCompression 64>>setpagedevice"
+ Choice "5/5" "<</cupsCompression 67>>setpagedevice"
Choice "6/6" "<</cupsCompression 70>>setpagedevice"
- Choice "7/7" "<</cupsCompression 73>>setpagedevice"
- Choice "8/8" "<</cupsCompression 76>>setpagedevice"
+ Choice "7/7" "<</cupsCompression 74>>setpagedevice"
+ Choice "8/8" "<</cupsCompression 77>>setpagedevice"
Choice "9/9" "<</cupsCompression 80>>setpagedevice"
- Choice "10/10" "<</cupsCompression 83>>setpagedevice"
- Choice "11/11" "<</cupsCompression 86>>setpagedevice"
+ Choice "10/10" "<</cupsCompression 84>>setpagedevice"
+ Choice "11/11" "<</cupsCompression 87>>setpagedevice"
Choice "12/12" "<</cupsCompression 90>>setpagedevice"
- Choice "13/13" "<</cupsCompression 93>>setpagedevice"
- Choice "14/14" "<</cupsCompression 96>>setpagedevice"
+ Choice "13/13" "<</cupsCompression 94>>setpagedevice"
+ Choice "14/14" "<</cupsCompression 97>>setpagedevice"
Choice "15/15" "<</cupsCompression 100>>setpagedevice"
Option "inPrintRate/Print Speed" PickOne DocumentSetup 20.0
*Choice "Default/Printer Default" "<</cupsRowFeed 0>>setpagedevice"
diff --git a/scheduler/Makefile b/scheduler/Makefile
index 0178934..02f7e0e 100644
--- a/scheduler/Makefile
+++ b/scheduler/Makefile
@@ -1,7 +1,7 @@
#
# Scheduler Makefile for CUPS.
#
-# Copyright 2007-2017 by Apple Inc.
+# Copyright 2007-2018 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -59,9 +59,8 @@ CXXOBJS = \
cups-driverd.o
OBJS = \
$(COBJS) \
- $(LD_CXXOBJS)
+ $(CXXOBJS)
LIBTARGETS = \
- $(LIBCUPSMIME) \
libcupsmime.a
UNITTARGETS = \
@@ -111,7 +110,6 @@ unittests: $(UNITTARGETS)
clean:
$(RM) $(OBJS)
$(RM) $(TARGETS) $(UNITTARGETS) convert
- $(RM) libcupsmime.so libcupsmime.dylib
#
@@ -241,40 +239,13 @@ install-exec:
#
install-headers:
- if test "x$(privateinclude)" != x; then \
- echo Installing private header files into $(PRIVATEINCLUDE)...; \
- $(INSTALL_DIR) -m 755 $(PRIVATEINCLUDE); \
- $(INSTALL_DATA) mime.h $(PRIVATEINCLUDE); \
- fi
#
# Install libraries...
#
-install-libs: $(INSTALLSTATIC)
- echo Installing libraries in $(LIBDIR)...
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) $(LIBCUPSMIME) $(LIBDIR)
- if test $(LIBCUPSMIME) = "libcupsmime.so.1"; then \
- $(RM) $(LIBDIR)/`basename $(LIBCUPSMIME) .1`; \
- $(LN) $(LIBCUPSMIME) $(LIBDIR)/`basename $(LIBCUPSMIME) .1`; \
- fi
- if test $(LIBCUPSMIME) = "libcupsmime.1.dylib"; then \
- $(RM) $(LIBDIR)/libcupsmime.dylib; \
- $(LN) $(LIBCUPSMIME) $(LIBDIR)/libcupsmime.dylib; \
- fi
- if test "x$(SYMROOT)" != "x"; then \
- $(INSTALL_DIR) $(SYMROOT); \
- cp $(LIBCUPSMIME) $(SYMROOT); \
- dsymutil $(SYMROOT)/$(LIBCUPSMIME); \
- fi
-
-installstatic:
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) -m 755 libcupsmime.a $(LIBDIR)
- $(RANLIB) $(LIBDIR)/libcupsmime.a
- $(CHMOD) 555 $(LIBDIR)/libcupsmime.a
+install-libs:
#
@@ -301,16 +272,6 @@ uninstall:
-$(RMDIR) $(REQUESTS)
-$(RMDIR) $(LOGDIR)
-$(RMDIR) $(CACHEDIR)
- $(RM) $(LIBDIR)/libcupsmime.1.dylib
- $(RM) $(LIBDIR)/libcupsmime.a
- $(RM) $(LIBDIR)/libcupsmime.dylib
- $(RM) $(LIBDIR)/libcupsmime.so
- $(RM) $(LIBDIR)/libcupsmime.so.1
- -$(RMDIR) $(LIBDIR)
- -if test "x$(privateinclude)" != x; then \
- $(RM) $(PRIVATEINCLUDE)/mime.h; \
- $(RMDIR) $(PRIVATEINCLUDE); \
- fi
if test "x$(INITDIR)" != x; then \
echo Uninstalling init scripts...; \
$(RM) $(BUILDROOT)$(INITDIR)/init.d/cups; \
@@ -354,12 +315,13 @@ uninstall:
# Make the scheduler executable, "cupsd".
#
-cupsd: $(CUPSDOBJS) $(LIBCUPSMIME) ../cups/$(LIBCUPS)
+cupsd: $(CUPSDOBJS) libcupsmime.a ../cups/$(LIBCUPS)
echo Linking $@...
- $(LD_CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) -L. -lcupsmime \
+ $(LD_CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) libcupsmime.a \
$(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
$(LIBPAPER) $(LIBMALLOC) $(SERVERLIBS) $(ONDEMANDLIBS) \
$(DNSSDLIBS) $(LIBS) $(LIBGSSAPI) $(LIBWRAP)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
cupsd-static: $(CUPSDOBJS) libcupsmime.a ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
@@ -368,23 +330,26 @@ cupsd-static: $(CUPSDOBJS) libcupsmime.a ../cups/$(LIBCUPSSTATIC)
../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(LIBZ) $(LIBPAPER) \
$(LIBMALLOC) $(SERVERLIBS) $(ONDEMANDLIBS) $(DNSSDLIBS) \
$(LIBGSSAPI) $(LIBWRAP)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# Make the cupsfilter utility.
#
-cupsfilter: cupsfilter.o $(LIBCUPSMIME) ../cups/$(LIBCUPS)
+cupsfilter: cupsfilter.o libcupsmime.a ../cups/$(LIBCUPS)
echo Linking $@...
- $(LD_CC) $(LDFLAGS) -o cupsfilter cupsfilter.o -L. -lcupsmime $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o cupsfilter cupsfilter.o libcupsmime.a $(LIBS)
$(RM) convert
$(LN) cupsfilter convert
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
cupsfilter-static: cupsfilter.o libcupsmime.a ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o cupsfilter-static cupsfilter.o libcupsmime.a \
../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(LIBZ) $(SSLLIBS) \
$(DNSSDLIBS) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -394,16 +359,18 @@ cupsfilter-static: cupsfilter.o libcupsmime.a ../cups/$(LIBCUPSSTATIC)
cups-deviced: cups-deviced.o util.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o cups-deviced cups-deviced.o util.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
# Make the driver daemon, "cups-driverd".
#
-cups-driverd: cups-driverd.o util.o ../cups/$(LIBCUPS) ../ppdc/$(LIBCUPSPPDC)
+cups-driverd: cups-driverd.o util.o ../cups/$(LIBCUPS) ../ppdc/libcupsppdc.a
echo Linking $@...
$(LD_CXX) $(LDFLAGS) -o cups-driverd cups-driverd.o util.o \
- -L../ppdc -lcupsppdc $(LIBS)
+ ../ppdc/libcupsppdc.a $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -413,6 +380,7 @@ cups-driverd: cups-driverd.o util.o ../cups/$(LIBCUPS) ../ppdc/$(LIBCUPSPPDC)
cups-exec: cups-exec.o
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o cups-exec cups-exec.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -422,43 +390,7 @@ cups-exec: cups-exec.o
cups-lpd: cups-lpd.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o cups-lpd cups-lpd.o $(LIBS)
-
-
-#
-# libcupsmime.so.1
-#
-
-libcupsmime.so.1: $(LIBOBJS)
- echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBS)
- $(RM) `basename $@ .1`
- $(LN) $@ `basename $@ .1`
-
-
-#
-# libcupsmime.1.dylib
-#
-
-libcupsmime.1.dylib: $(LIBOBJS) libcupsmime.exp
- echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
- -install_name $(libdir)/$@ \
- -current_version 1.0.0 \
- -compatibility_version 1.0.0 \
- -exported_symbols_list libcupsmime.exp \
- $(LIBOBJS) $(LIBS)
- $(RM) libcupsmime.dylib
- $(LN) $@ libcupsmime.dylib
-
-
-#
-# libcupsmime.la
-#
-
-libcupsmime.la: $(LIBOBJS)
- echo Linking $@...
- $(LD_CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
- -version-info 1:0 $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -480,6 +412,7 @@ testlpd: testlpd.o ../cups/$(LIBCUPSSTATIC) cups-lpd
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o testlpd testlpd.o ../cups/$(LIBCUPSSTATIC) \
$(COMMONLIBS) $(LIBZ) $(SSLLIBS) $(DNSSDLIBS) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -491,6 +424,7 @@ testmime: testmime.o libcupsmime.a ../cups/$(LIBCUPSSTATIC)
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testmime.o libcupsmime.a \
../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(LIBZ) $(SSLLIBS) \
$(DNSSDLIBS) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Running MIME tests...
./testmime
@@ -503,6 +437,7 @@ testspeed: testspeed.o ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o testspeed testspeed.o ../cups/$(LIBCUPSSTATIC) \
$(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -513,6 +448,7 @@ testsub: testsub.o ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o testsub testsub.o ../cups/$(LIBCUPSSTATIC) \
$(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) $(LIBGSSAPI)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/scheduler/client.c b/scheduler/client.c
index 0719700..a21b909 100644
--- a/scheduler/client.c
+++ b/scheduler/client.c
@@ -2413,7 +2413,7 @@ cupsdSendHeader(
#ifdef HAVE_AUTHORIZATION_H
if (!_cups_strncasecmp(name, "@AUTHKEY(", 9))
{
- snprintf(auth_key, auth_size, ", AuthRef key=\"%s\"", name + 9);
+ snprintf(auth_key, auth_size, ", AuthRef key=\"%s\", Local trc=\"y\"", name + 9);
need_local = 0;
/* end parenthesis is stripped in conf.c */
break;
@@ -2424,11 +2424,10 @@ cupsdSendHeader(
{
#ifdef HAVE_AUTHORIZATION_H
if (SystemGroupAuthKey)
- snprintf(auth_key, auth_size, ", AuthRef key=\"%s\"", SystemGroupAuthKey);
+ snprintf(auth_key, auth_size, ", AuthRef key=\"%s\", Local trc=\"y\"", SystemGroupAuthKey);
else
-#else
- strlcpy(auth_key, ", Local trc=\"y\"", auth_size);
#endif /* HAVE_AUTHORIZATION_H */
+ strlcpy(auth_key, ", Local trc=\"y\"", auth_size);
need_local = 0;
break;
}
diff --git a/scheduler/conf.h b/scheduler/conf.h
index 873c370..b608367 100644
--- a/scheduler/conf.h
+++ b/scheduler/conf.h
@@ -1,7 +1,7 @@
/*
* Configuration file definitions for the CUPS scheduler.
*
- * Copyright 2007-2016 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -279,20 +279,16 @@ extern int cupsdCheckProgram(const char *filename, cupsd_printer_t *p);
extern int cupsdDefaultAuthType(void);
extern void cupsdFreeAliases(cups_array_t *aliases);
extern char *cupsdGetDateTime(struct timeval *t, cupsd_time_t format);
-extern int cupsdLogClient(cupsd_client_t *con, int level,
- const char *message, ...)
- __attribute__((__format__(__printf__, 3, 4)));
+extern int cupsdLogClient(cupsd_client_t *con, int level, const char *message, ...) _CUPS_FORMAT(3, 4);
extern void cupsdLogFCMessage(void *context, _cups_fc_result_t result,
const char *message);
#ifdef HAVE_GSSAPI
extern int cupsdLogGSSMessage(int level, OM_uint32 major_status,
OM_uint32 minor_status,
- const char *message, ...);
+ const char *message, ...) _CUPS_FORMAT(4, 5);
#endif /* HAVE_GSSAPI */
-extern int cupsdLogJob(cupsd_job_t *job, int level, const char *message,
- ...) __attribute__((__format__(__printf__, 3, 4)));
-extern int cupsdLogMessage(int level, const char *message, ...)
- __attribute__ ((__format__ (__printf__, 2, 3)));
+extern int cupsdLogJob(cupsd_job_t *job, int level, const char *message, ...) _CUPS_FORMAT(3, 4);
+extern int cupsdLogMessage(int level, const char *message, ...) _CUPS_FORMAT(2, 3);
extern int cupsdLogPage(cupsd_job_t *job, const char *page);
extern int cupsdLogRequest(cupsd_client_t *con, http_status_t code);
extern int cupsdReadConfiguration(void);
diff --git a/scheduler/cups-deviced.c b/scheduler/cups-deviced.c
index 13efa54..42eaa59 100644
--- a/scheduler/cups-deviced.c
+++ b/scheduler/cups-deviced.c
@@ -1,7 +1,7 @@
/*
* Device scanning mini-daemon for CUPS.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -312,7 +312,7 @@ main(int argc, /* I - Number of command-line args */
break;
}
}
- while (bpipe->ptr && memchr(bpipe->ptr, '\n', (size_t)(bpipe->end - bpipe->ptr)));
+ while (_cupsFilePeekAhead(bpipe, '\n'));
}
}
diff --git a/scheduler/cups-driverd.cxx b/scheduler/cups-driverd.cxx
index 45e6e65..e6684a1 100644
--- a/scheduler/cups-driverd.cxx
+++ b/scheduler/cups-driverd.cxx
@@ -157,7 +157,7 @@ static ppd_info_t *add_ppd(const char *filename, const char *name,
size_t size, int model_number, int type,
const char *scheme);
static int cat_drv(const char *name, int request_id);
-static int cat_ppd(const char *name, int request_id);
+static void cat_ppd(const char *name, int request_id);
static int cat_static(const char *name, int request_id);
static int cat_tar(const char *name, int request_id);
static int compare_inodes(struct stat *a, struct stat *b);
@@ -167,12 +167,12 @@ static int compare_names(const ppd_info_t *p0,
const ppd_info_t *p1);
static int compare_ppds(const ppd_info_t *p0,
const ppd_info_t *p1);
-static int dump_ppds_dat(const char *filename);
+static void dump_ppds_dat(const char *filename);
static void free_array(cups_array_t *a);
static cups_file_t *get_file(const char *name, int request_id,
const char *subdir, char *buffer,
size_t bufsize, char **subfile);
-static int list_ppds(int request_id, int limit, const char *opt);
+static void list_ppds(int request_id, int limit, const char *opt);
static int load_drivers(cups_array_t *include,
cups_array_t *exclude);
static int load_drv(const char *filename, const char *name,
@@ -208,13 +208,13 @@ main(int argc, /* I - Number of command-line args */
*/
if (argc == 3 && !strcmp(argv[1], "cat"))
- return (cat_ppd(argv[2], 0));
+ cat_ppd(argv[2], 0);
else if ((argc == 2 || argc == 3) && !strcmp(argv[1], "dump"))
- return (dump_ppds_dat(argv[2]));
+ dump_ppds_dat(argv[2]);
else if (argc == 4 && !strcmp(argv[1], "get"))
- return (cat_ppd(argv[3], atoi(argv[2])));
+ cat_ppd(argv[3], atoi(argv[2]));
else if (argc == 5 && !strcmp(argv[1], "list"))
- return (list_ppds(atoi(argv[2]), atoi(argv[3]), argv[4]));
+ list_ppds(atoi(argv[2]), atoi(argv[3]), argv[4]);
else
{
fputs("Usage: cups-driverd cat ppd-name\n", stderr);
@@ -432,7 +432,7 @@ cat_drv(const char *name, /* I - PPD name */
* 'cat_ppd()' - Copy a PPD file to stdout.
*/
-static int /* O - Exit code */
+static void
cat_ppd(const char *name, /* I - PPD name */
int request_id) /* I - Request ID for response? */
{
@@ -449,7 +449,7 @@ cat_ppd(const char *name, /* I - PPD name */
if (strstr(name, "../"))
{
fputs("ERROR: Invalid PPD name.\n", stderr);
- return (1);
+ exit(1);
}
strlcpy(scheme, name, sizeof(scheme));
@@ -479,11 +479,11 @@ cat_ppd(const char *name, /* I - PPD name */
puts("Content-Type: application/ipp\n");
if (!scheme[0])
- return (cat_static(name, request_id));
+ exit(cat_static(name, request_id));
else if (!strcmp(scheme, "drv"))
- return (cat_drv(name, request_id));
+ exit(cat_drv(name, request_id));
else if (!strcmp(scheme, "file"))
- return (cat_tar(name, request_id));
+ exit(cat_tar(name, request_id));
else
{
/*
@@ -521,7 +521,7 @@ cat_ppd(const char *name, /* I - PPD name */
cupsdSendIPPTrailer();
}
- return (1);
+ exit(1);
}
/*
@@ -551,15 +551,15 @@ cat_ppd(const char *name, /* I - PPD name */
fprintf(stderr, "ERROR: [cups-driverd] Unable to execute \"%s\" - %s\n",
line, strerror(errno));
- return (1);
+ exit(1);
}
}
/*
- * Return with no errors...
+ * Exit with no errors...
*/
- return (0);
+ exit(0);
}
@@ -782,7 +782,7 @@ compare_ppds(const ppd_info_t *p0, /* I - First PPD file */
* 'dump_ppds_dat()' - Dump the contents of the ppds.dat file.
*/
-static int /* O - Exit status */
+static void
dump_ppds_dat(const char *filename) /* I - Filename */
{
char temp[1024]; /* ppds.dat filename */
@@ -814,7 +814,7 @@ dump_ppds_dat(const char *filename) /* I - Filename */
ppd->record.make_and_model, ppd->record.device_id,
ppd->record.scheme);
- return (0);
+ exit(0);
}
@@ -1008,7 +1008,7 @@ get_file(const char *name, /* I - Name */
* 'list_ppds()' - List PPD files.
*/
-static int /* O - Exit code */
+static void
list_ppds(int request_id, /* I - Request ID */
int limit, /* I - Limit */
const char *opt) /* I - Option argument */
@@ -1570,7 +1570,7 @@ list_ppds(int request_id, /* I - Request ID */
if (request_id)
cupsdSendIPPTrailer();
- return (0);
+ exit(0);
}
diff --git a/scheduler/cups-exec.c b/scheduler/cups-exec.c
index aab43a7..6a3c745 100644
--- a/scheduler/cups-exec.c
+++ b/scheduler/cups-exec.c
@@ -1,7 +1,7 @@
/*
* Sandbox helper for CUPS.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -37,7 +37,7 @@
* Local functions...
*/
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
/*
diff --git a/scheduler/cupsd.h b/scheduler/cupsd.h
index ad37bee..54d2a4f 100644
--- a/scheduler/cupsd.h
+++ b/scheduler/cupsd.h
@@ -1,7 +1,7 @@
/*
* Main header file for the CUPS scheduler.
*
- * Copyright 2007-2016 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -30,11 +30,11 @@
#include <sys/stat.h>
#include <sys/wait.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <direct.h>
#else
# include <unistd.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#include "mime.h"
@@ -171,8 +171,7 @@ VAR int OnDemand VALUE(0);
extern void cupsdInitEnv(void);
extern int cupsdLoadEnv(char *envp[], int envmax);
extern void cupsdSetEnv(const char *name, const char *value);
-extern void cupsdSetEnvf(const char *name, const char *value, ...)
- __attribute__ ((__format__ (__printf__, 2, 3)));
+extern void cupsdSetEnvf(const char *name, const char *value, ...) _CUPS_FORMAT(2, 3);
extern void cupsdUpdateEnv(void);
/* file.c */
@@ -196,8 +195,7 @@ extern char *cupsdMakeUUID(const char *name, int number,
char *buffer, size_t bufsize);
extern void cupsdReleaseSignals(void);
extern void cupsdSetString(char **s, const char *v);
-extern void cupsdSetStringf(char **s, const char *f, ...)
- __attribute__ ((__format__ (__printf__, 2, 3)));
+extern void cupsdSetStringf(char **s, const char *f, ...) _CUPS_FORMAT(2, 3);
/* process.c */
extern void *cupsdCreateProfile(int job_id, int allow_networking);
diff --git a/scheduler/cupsfilter.c b/scheduler/cupsfilter.c
index 596b491..0d1fdb9 100644
--- a/scheduler/cupsfilter.c
+++ b/scheduler/cupsfilter.c
@@ -1,7 +1,7 @@
/*
* Filtering program for CUPS.
*
- * Copyright 2007-2016 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -82,7 +82,7 @@ static int open_pipe(int *fds);
static int read_cups_files_conf(const char *filename);
static void set_string(char **s, const char *val);
static void sighandler(int sig);
-static void usage(const char *opt) __attribute__((noreturn));
+static void usage(const char *opt) _CUPS_NORETURN;
/*
diff --git a/scheduler/ipp.c b/scheduler/ipp.c
index d1c6a89..6ea3e37 100644
--- a/scheduler/ipp.c
+++ b/scheduler/ipp.c
@@ -118,9 +118,7 @@ static void save_auth_info(cupsd_client_t *con, cupsd_job_t *job,
static void send_document(cupsd_client_t *con, ipp_attribute_t *uri);
static void send_http_error(cupsd_client_t *con, http_status_t status,
cupsd_printer_t *printer);
-static void send_ipp_status(cupsd_client_t *con, ipp_status_t status,
- const char *message, ...)
- __attribute__((__format__(__printf__, 3, 4)));
+static void send_ipp_status(cupsd_client_t *con, ipp_status_t status, const char *message, ...) _CUPS_FORMAT(3, 4);
static void set_default(cupsd_client_t *con, ipp_attribute_t *uri);
static void set_job_attrs(cupsd_client_t *con, ipp_attribute_t *uri);
static void set_printer_attrs(cupsd_client_t *con, ipp_attribute_t *uri);
@@ -253,7 +251,7 @@ cupsdProcessIPPRequest(
*/
attr = con->request->attrs;
- if (attr && attr->name && !strcmp(attr->name, "attributes-charset") && (attr->value_tag & IPP_TAG_MASK) == IPP_TAG_CHARSET)
+ if (attr && attr->name && !strcmp(attr->name, "attributes-charset") && (attr->value_tag & IPP_TAG_MASK) == IPP_TAG_CHARSET && attr->group_tag == IPP_TAG_OPERATION)
charset = attr;
else
charset = NULL;
@@ -261,7 +259,7 @@ cupsdProcessIPPRequest(
if (attr)
attr = attr->next;
- if (attr && attr->name && !strcmp(attr->name, "attributes-natural-language") && (attr->value_tag & IPP_TAG_MASK) == IPP_TAG_LANGUAGE)
+ if (attr && attr->name && !strcmp(attr->name, "attributes-natural-language") && (attr->value_tag & IPP_TAG_MASK) == IPP_TAG_LANGUAGE && attr->group_tag == IPP_TAG_OPERATION)
{
language = attr;
@@ -279,12 +277,12 @@ cupsdProcessIPPRequest(
else
language = NULL;
- if ((attr = ippFindAttribute(con->request, "printer-uri", IPP_TAG_URI)) != NULL)
+ if ((attr = ippFindAttribute(con->request, "printer-uri", IPP_TAG_URI)) != NULL && attr->group_tag == IPP_TAG_OPERATION)
uri = attr;
- else if ((attr = ippFindAttribute(con->request, "job-uri", IPP_TAG_URI)) != NULL)
+ else if ((attr = ippFindAttribute(con->request, "job-uri", IPP_TAG_URI)) != NULL && attr->group_tag == IPP_TAG_OPERATION)
uri = attr;
- else if (con->request->request.op.operation_id == CUPS_GET_PPD)
- uri = ippFindAttribute(con->request, "ppd-name", IPP_TAG_NAME);
+ else if (con->request->request.op.operation_id == CUPS_GET_PPD && (attr = ippFindAttribute(con->request, "ppd-name", IPP_TAG_NAME)) != NULL && attr->group_tag == IPP_TAG_OPERATION)
+ uri = attr;
else
uri = NULL;
@@ -4809,10 +4807,10 @@ copy_job_attrs(cupsd_client_t *con, /* I - Client connection */
ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_INTEGER, "job-k-octets", job->koctets);
if (job->name && (!ra || cupsArrayFind(ra, "job-name")))
- ippAddString(con->response, IPP_TAG_JOB, IPP_CONST_TAG(IPP_TAG_NAME), "job-name", NULL, job->name);
+ ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_NAME, "job-name", NULL, job->name);
if (job->username && (!ra || cupsArrayFind(ra, "job-originating-user-name")))
- ippAddString(con->response, IPP_TAG_JOB, IPP_CONST_TAG(IPP_TAG_NAME), "job-originating-user-name", NULL, job->username);
+ ippAddString(con->response, IPP_TAG_JOB, IPP_TAG_NAME, "job-originating-user-name", NULL, job->username);
if (!ra || cupsArrayFind(ra, "job-state"))
ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_ENUM, "job-state", (int)job->state_value);
@@ -4957,12 +4955,9 @@ copy_printer_attrs(
};
if (printer->type & CUPS_PRINTER_CLASS)
- ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME | IPP_TAG_COPY,
- "printer-error-policy-supported", NULL, "retry-current-job");
+ ippAddString(con->response, IPP_TAG_PRINTER, IPP_CONST_TAG(IPP_TAG_NAME), "printer-error-policy-supported", NULL, "retry-current-job");
else
- ippAddStrings(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME | IPP_TAG_COPY,
- "printer-error-policy-supported",
- sizeof(errors) / sizeof(errors[0]), NULL, errors);
+ ippAddStrings(con->response, IPP_TAG_PRINTER, IPP_CONST_TAG(IPP_TAG_NAME), "printer-error-policy-supported", sizeof(errors) / sizeof(errors[0]), NULL, errors);
}
if (!ra || cupsArrayFind(ra, "printer-icons"))
@@ -5107,9 +5102,7 @@ copy_subscription_attrs(
* Simple event list...
*/
- ippAddString(con->response, IPP_TAG_SUBSCRIPTION,
- (ipp_tag_t)(IPP_TAG_KEYWORD | IPP_TAG_COPY),
- "notify-events", NULL, name);
+ ippAddString(con->response, IPP_TAG_SUBSCRIPTION, IPP_CONST_TAG(IPP_TAG_KEYWORD), "notify-events", NULL, name);
}
else
{
@@ -5121,15 +5114,12 @@ copy_subscription_attrs(
if (sub->mask & mask)
count ++;
- attr = ippAddStrings(con->response, IPP_TAG_SUBSCRIPTION,
- (ipp_tag_t)(IPP_TAG_KEYWORD | IPP_TAG_COPY),
- "notify-events", count, NULL, NULL);
+ attr = ippAddStrings(con->response, IPP_TAG_SUBSCRIPTION, IPP_CONST_TAG(IPP_TAG_KEYWORD), "notify-events", count, NULL, NULL);
for (mask = 1, count = 0; mask < CUPSD_EVENT_ALL; mask <<= 1)
if (sub->mask & mask)
{
- attr->values[count].string.text =
- (char *)cupsdEventName((cupsd_eventmask_t)mask);
+ attr->values[count].string.text = (char *)cupsdEventName((cupsd_eventmask_t)mask);
count ++;
}
@@ -5881,7 +5871,7 @@ create_subscriptions(
{
char temp[64]; /* Temporary string */
- memcpy(temp, user_data->values[0].unknown.data, user_data->values[0].unknown.length);
+ memcpy(temp, user_data->values[0].unknown.data, (size_t)user_data->values[0].unknown.length);
temp[user_data->values[0].unknown.length] = '\0';
if (httpSeparateURI(HTTP_URI_CODING_ALL, temp, scheme, sizeof(scheme), userpass, sizeof(userpass), host, sizeof(host), &port, resource, sizeof(resource)) < HTTP_URI_OK)
diff --git a/scheduler/job.c b/scheduler/job.c
index ed8267d..554e092 100644
--- a/scheduler/job.c
+++ b/scheduler/job.c
@@ -3330,8 +3330,14 @@ finalize_job(cupsd_job_t *job, /* I - Job */
job_state == IPP_JOB_COMPLETED)
{
job_state = IPP_JOB_ABORTED;
- message = "Job aborted due to backend errors; please consult "
- "the error_log file for details.";
+
+ if (ErrorLog)
+ {
+ snprintf(buffer, sizeof(buffer), "Job aborted due to backend errors; please consult the %s file for details.", ErrorLog);
+ message = buffer;
+ }
+ else
+ message = "Job aborted due to backend errors.";
ippSetString(job->attrs, &job->reasons, 0, "aborted-by-system");
}
@@ -3339,8 +3345,14 @@ finalize_job(cupsd_job_t *job, /* I - Job */
{
job_state = IPP_JOB_PENDING;
printer_state = IPP_PRINTER_STOPPED;
- message = "Printer stopped due to backend errors; please "
- "consult the error_log file for details.";
+
+ if (ErrorLog)
+ {
+ snprintf(buffer, sizeof(buffer), "Printer stopped due to backend errors; please consult the %s file for details.", ErrorLog);
+ message = buffer;
+ }
+ else
+ message = "Printer stopped due to backend errors.";
ippSetString(job->attrs, &job->reasons, 0, "none");
}
@@ -3378,15 +3390,20 @@ finalize_job(cupsd_job_t *job, /* I - Job */
ippSetString(job->attrs, &job->reasons, 0,
"job-hold-until-specified");
- message = "Job held indefinitely due to backend errors; please "
- "consult the error_log file for details.";
+
+ if (ErrorLog)
+ {
+ snprintf(buffer, sizeof(buffer), "Job held indefinitely due to backend errors; please consult the %s file for details.", ErrorLog);
+ message = buffer;
+ }
+ else
+ message = "Job held indefinitely due to backend errors.";
}
else if (!strcmp(reason, "account-info-needed"))
{
cupsdSetJobHoldUntil(job, "indefinite", 0);
- message = "Job held indefinitely - account information is "
- "required.";
+ message = "Job held indefinitely - account information is required.";
}
else if (!strcmp(reason, "account-closed"))
{
@@ -3398,8 +3415,7 @@ finalize_job(cupsd_job_t *job, /* I - Job */
{
cupsdSetJobHoldUntil(job, "indefinite", 0);
- message = "Job held indefinitely - account limit has been "
- "reached.";
+ message = "Job held indefinitely - account limit has been reached.";
}
else
{
@@ -3418,8 +3434,14 @@ finalize_job(cupsd_job_t *job, /* I - Job */
*/
printer_state = IPP_PRINTER_STOPPED;
- message = "Printer stopped due to backend errors; please "
- "consult the error_log file for details.";
+
+ if (ErrorLog)
+ {
+ snprintf(buffer, sizeof(buffer), "Printer stopped due to backend errors; please consult the %s file for details.", ErrorLog);
+ message = buffer;
+ }
+ else
+ message = "Printer stopped due to backend errors.";
if (job_state == IPP_JOB_COMPLETED)
{
@@ -3516,8 +3538,14 @@ finalize_job(cupsd_job_t *job, /* I - Job */
if (job_state == IPP_JOB_COMPLETED)
{
job_state = IPP_JOB_STOPPED;
- message = "Job stopped due to filter errors; please consult the "
- "error_log file for details.";
+
+ if (ErrorLog)
+ {
+ snprintf(buffer, sizeof(buffer), "Job stopped due to filter errors; please consult the %s file for details.", ErrorLog);
+ message = buffer;
+ }
+ else
+ message = "Job stopped due to filter errors.";
if (WIFSIGNALED(job->status))
ippSetString(job->attrs, &job->reasons, 0, "cups-filter-crashed");
diff --git a/scheduler/job.h b/scheduler/job.h
index 54f5092..eb59029 100644
--- a/scheduler/job.h
+++ b/scheduler/job.h
@@ -1,7 +1,7 @@
/*
* Print job definitions for the CUPS scheduler.
*
- * Copyright 2007-2015 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -164,12 +164,7 @@ extern void cupsdSaveJob(cupsd_job_t *job);
extern void cupsdSetJobHoldUntil(cupsd_job_t *job,
const char *when, int update);
extern void cupsdSetJobPriority(cupsd_job_t *job, int priority);
-extern void cupsdSetJobState(cupsd_job_t *job,
- ipp_jstate_t newstate,
- cupsd_jobaction_t action,
- const char *message, ...)
- __attribute__((__format__(__printf__,
- 4, 5)));
+extern void cupsdSetJobState(cupsd_job_t *job, ipp_jstate_t newstate, cupsd_jobaction_t action, const char *message, ...) _CUPS_FORMAT(4, 5);
extern void cupsdStopAllJobs(cupsd_jobaction_t action,
int kill_delay);
extern int cupsdTimeoutJob(cupsd_job_t *job);
diff --git a/scheduler/log.c b/scheduler/log.c
index 5dbb0ba..bab9187 100644
--- a/scheduler/log.c
+++ b/scheduler/log.c
@@ -1,7 +1,7 @@
/*
* Log file routines for the CUPS scheduler.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -568,56 +568,15 @@ cupsdLogJob(cupsd_job_t *job, /* I - Job */
if (level > LogLevel && LogDebugHistory <= 0)
return (1);
-#ifdef HAVE_SYSTEMD_SD_JOURNAL_H
- if (!strcmp(ErrorLog, "syslog"))
- {
- cupsd_printer_t *printer = job ? (job->printer ? job->printer : (job->dest ? cupsdFindDest(job->dest) : NULL)) : NULL;
- static const char * const job_states[] =
- { /* job-state strings */
- "Pending",
- "PendingHeld",
- "Processing",
- "ProcessingStopped",
- "Canceled",
- "Aborted",
- "Completed"
- };
-
- va_start(ap, message);
-
- do
- {
- va_copy(ap2, ap);
- status = format_log_line(message, ap2);
- va_end(ap2);
- }
- while (status == 0);
-
- va_end(ap);
-
- if (job)
- sd_journal_send("MESSAGE=%s", log_line,
- "PRIORITY=%i", log_levels[level],
- PWG_Event"=JobStateChanged",
- PWG_ServiceURI"=%s", printer ? printer->uri : "",
- PWG_JobID"=%d", job->id,
- PWG_JobState"=%s", job->state_value < IPP_JSTATE_PENDING ? "" : job_states[job->state_value - IPP_JSTATE_PENDING],
- PWG_JobImpressionsCompleted"=%d", ippGetInteger(job->impressions, 0),
- NULL);
- else
- sd_journal_send("MESSAGE=%s", log_line,
- "PRIORITY=%i", log_levels[level],
- NULL);
-
- return (1);
- }
-#endif /* HAVE_SYSTEMD_SD_JOURNAL_H */
-
/*
* Format and write the log message...
*/
+#ifdef HAVE_SYSTEMD_SD_JOURNAL_H
+ if (job && strcmp(ErrorLog, "syslog"))
+#else
if (job)
+#endif /* HAVE_SYSTEMD_SD_JOURNAL_H */
snprintf(jobmsg, sizeof(jobmsg), "[Job %d] %s", job->id, message);
else
strlcpy(jobmsg, message, sizeof(jobmsg));
@@ -676,7 +635,43 @@ cupsdLogJob(cupsd_job_t *job, /* I - Job */
return (1);
}
else if (level <= LogLevel)
+ {
+#ifdef HAVE_SYSTEMD_SD_JOURNAL_H
+ if (!strcmp(ErrorLog, "syslog"))
+ {
+ cupsd_printer_t *printer = job ? (job->printer ? job->printer : (job->dest ? cupsdFindDest(job->dest) : NULL)) : NULL;
+ static const char * const job_states[] =
+ { /* job-state strings */
+ "Pending",
+ "PendingHeld",
+ "Processing",
+ "ProcessingStopped",
+ "Canceled",
+ "Aborted",
+ "Completed"
+ };
+
+ if (job)
+ sd_journal_send("MESSAGE=%s", log_line,
+ "PRIORITY=%i", log_levels[level],
+ PWG_Event"=JobStateChanged",
+ PWG_ServiceURI"=%s", printer ? printer->uri : "",
+ PWG_JobID"=%d", job->id,
+ PWG_JobState"=%s", job->state_value < IPP_JSTATE_PENDING ? "" : job_states[job->state_value - IPP_JSTATE_PENDING],
+ PWG_JobImpressionsCompleted"=%d", ippGetInteger(job->impressions, 0),
+ NULL);
+ else
+ sd_journal_send("MESSAGE=%s", log_line,
+ "PRIORITY=%i", log_levels[level],
+ NULL);
+
+ return (1);
+ }
+ else
+#endif /* HAVE_SYSTEMD_SD_JOURNAL_H */
+
return (cupsdWriteErrorLog(level, log_line));
+ }
else
return (1);
}
@@ -1050,7 +1045,7 @@ cupsdLogRequest(cupsd_client_t *con, /* I - Request to log */
* Filter requests as needed...
*/
- if (AccessLogLevel == CUPSD_ACCESSLOG_NONE)
+ if (AccessLogLevel == CUPSD_ACCESSLOG_NONE || !AccessLog)
return (1);
else if (AccessLogLevel < CUPSD_ACCESSLOG_ALL)
{
diff --git a/scheduler/main.c b/scheduler/main.c
index acf0316..a61592c 100644
--- a/scheduler/main.c
+++ b/scheduler/main.c
@@ -1,7 +1,7 @@
/*
* Main loop for the CUPS scheduler.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -18,6 +18,9 @@
#define _MAIN_C_
#include "cupsd.h"
#include <sys/resource.h>
+#ifdef __APPLE__
+# include <xpc/xpc.h>
+#endif /* __APPLE__ */
#ifdef HAVE_ASL_H
# include <asl.h>
#elif defined(HAVE_SYSTEMD_SD_JOURNAL_H)
@@ -69,7 +72,7 @@ static void sigterm_handler(int sig);
static long select_timeout(int fds);
static void service_checkin(void);
static void service_checkout(int shutdown);
-static void usage(int status) __attribute__((noreturn));
+static void usage(int status) _CUPS_NORETURN;
/*
@@ -151,16 +154,6 @@ main(int argc, /* I - Number of command-line args */
fg = 0;
-#ifdef HAVE_LAUNCHD
- if (getenv("CUPSD_LAUNCHD"))
- {
- OnDemand = 1;
- fg = 1;
- close_all = 0;
- disconnect = 0;
- }
-#endif /* HAVE_LAUNCHD */
-
for (i = 1; i < argc; i ++)
if (argv[i][0] == '-')
for (opt = argv[i] + 1; *opt != '\0'; opt ++)
@@ -1470,9 +1463,16 @@ process_children(void)
(!job->filters[i] && WIFEXITED(old_status)))
{ /* Backend and filter didn't crash */
if (job->filters[i])
+ {
job->status = status; /* Filter failed */
+ }
else
+ {
job->status = -status; /* Backend failed */
+
+ if (job->current_file < job->num_files)
+ cupsdSetJobState(job, IPP_JOB_ABORTED, CUPSD_JOB_FORCE, "Canceling multi-file job due to backend failure.");
+ }
}
if (job->state_value == IPP_JOB_PROCESSING &&
@@ -1946,6 +1946,10 @@ service_checkin(void)
service_add_listener(ld_sockets[i], (int)i);
free(ld_sockets);
+
+# ifdef __APPLE__
+ xpc_transaction_begin();
+# endif /* __APPLE__ */
}
#elif defined(HAVE_SYSTEMD)
@@ -2084,6 +2088,11 @@ service_checkout(int shutdown) /* I - Shutting down? */
else
cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to create KeepAlive/PID file \"%s\": %s", pidfile, strerror(errno));
}
+
+# ifdef __APPLE__
+ if (OnDemand && shutdown)
+ xpc_transaction_end();
+# endif /* __APPLE__ */
}
diff --git a/scheduler/mime-private.h b/scheduler/mime-private.h
index f8168de..ed9bbc1 100644
--- a/scheduler/mime-private.h
+++ b/scheduler/mime-private.h
@@ -1,7 +1,7 @@
/*
* Private MIME type/conversion database definitions for CUPS.
*
- * Copyright 2011 by Apple Inc.
+ * Copyright 2011-2018 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -29,8 +29,7 @@ extern "C" {
* Prototypes...
*/
-extern void _mimeError(mime_t *mime, const char *format, ...)
- __attribute__ ((__format__ (__printf__, 2, 3)));
+extern void _mimeError(mime_t *mime, const char *format, ...) _CUPS_FORMAT(2, 3);
# ifdef __cplusplus
diff --git a/scheduler/org.cups.cupsd.plist b/scheduler/org.cups.cupsd.plist
index 8e1d0e9..20ff05d 100644
--- a/scheduler/org.cups.cupsd.plist
+++ b/scheduler/org.cups.cupsd.plist
@@ -8,8 +8,6 @@
<string>Adaptive</string>
<key>EnableTransactions</key>
<true/>
- <key>EnablePressuredExit</key>
- <false/>
<key>ExitTimeOut</key>
<integer>60</integer>
<key>KeepAlive</key>
diff --git a/scheduler/sysman.c b/scheduler/sysman.c
index 46eb39a..42a8d1c 100644
--- a/scheduler/sysman.c
+++ b/scheduler/sysman.c
@@ -1,7 +1,7 @@
/*
* System management functions for the CUPS scheduler.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -18,7 +18,6 @@
#include "cupsd.h"
#ifdef __APPLE__
-# include <xpc/xpc.h>
# include <IOKit/pwr_mgt/IOPMLib.h>
#endif /* __APPLE__ */
@@ -129,7 +128,6 @@ cupsdSetBusyState(int working) /* I - Doing significant work? */
"Active clients, printing jobs, and dirty files"
};
#ifdef __APPLE__
- static int tran = 0; /* Current busy transaction */
static IOPMAssertionID keep_awake = 0;/* Keep the system awake while printing */
#endif /* __APPLE__ */
@@ -168,24 +166,9 @@ cupsdSetBusyState(int working) /* I - Doing significant work? */
*/
if (newbusy != busy)
- {
busy = newbusy;
#ifdef __APPLE__
- if (busy && !tran)
- {
- xpc_transaction_begin();
- tran = 1;
- }
- else if (!busy && tran)
- {
- xpc_transaction_end();
- tran = 0;
- }
-#endif /* __APPLE__ */
- }
-
-#ifdef __APPLE__
if (cupsArrayCount(PrintingJobs) > 0 && !keep_awake)
{
cupsdLogMessage(CUPSD_LOG_DEBUG, "Asserting NetworkClientActive.");
diff --git a/scheduler/testlpd.c b/scheduler/testlpd.c
index 748f479..3257ad3 100644
--- a/scheduler/testlpd.c
+++ b/scheduler/testlpd.c
@@ -1,7 +1,7 @@
/*
* cups-lpd test program for CUPS.
*
- * Copyright 2007-2015 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -29,12 +29,12 @@
*/
static int do_command(int outfd, int infd, const char *command);
-static int print_job(int outfd, int infd, char *dest, char **args) __attribute__((nonnull(4)));
+static int print_job(int outfd, int infd, char *dest, char **args) _CUPS_NONNULL((4));
static int print_waiting(int outfd, int infd, char *dest);
-static int remove_job(int outfd, int infd, char *dest, char **args) __attribute__((nonnull(4)));
-static int status_long(int outfd, int infd, char *dest, char **args) __attribute__((nonnull(4)));
-static int status_short(int outfd, int infd, char *dest, char **args) __attribute__((nonnull(4)));
-static void usage(void) __attribute__((noreturn));
+static int remove_job(int outfd, int infd, char *dest, char **args) _CUPS_NONNULL((4));
+static int status_long(int outfd, int infd, char *dest, char **args) _CUPS_NONNULL((4));
+static int status_short(int outfd, int infd, char *dest, char **args) _CUPS_NONNULL((4));
+static void usage(void) _CUPS_NORETURN;
/*
diff --git a/scheduler/testspeed.c b/scheduler/testspeed.c
index c1863b2..a190e74 100644
--- a/scheduler/testspeed.c
+++ b/scheduler/testspeed.c
@@ -1,7 +1,7 @@
/*
* Scheduler speed test for CUPS.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2005 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -31,7 +31,7 @@
static int do_test(const char *server, int port,
http_encryption_t encryption, int requests,
const char *opstring, int verbose);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
/*
diff --git a/scheduler/testsub.c b/scheduler/testsub.c
index 755e9b3..35cd3b6 100644
--- a/scheduler/testsub.c
+++ b/scheduler/testsub.c
@@ -1,7 +1,7 @@
/*
* Scheduler notification tester for CUPS.
*
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 2006-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -35,7 +35,7 @@ static int terminate = 0;
static void print_attributes(ipp_t *ipp, int indent);
static void sigterm_handler(int sig);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
/*
diff --git a/scheduler/type.c b/scheduler/type.c
index d1b0a41..3ff1951 100644
--- a/scheduler/type.c
+++ b/scheduler/type.c
@@ -1087,7 +1087,7 @@ mime_check_rules(
break;
case MIME_MAGIC_LOCALE :
-#if defined(WIN32) || defined(__EMX__) || defined(__APPLE__)
+#if defined(_WIN32) || defined(__EMX__) || defined(__APPLE__)
result = !strcmp(rules->value.localev, setlocale(LC_ALL, ""));
#else
result = !strcmp(rules->value.localev, setlocale(LC_MESSAGES, ""));
diff --git a/systemv/Makefile b/systemv/Makefile
index a9edd56..9bacd4c 100644
--- a/systemv/Makefile
+++ b/systemv/Makefile
@@ -159,6 +159,7 @@ uninstall:
cancel: cancel.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o cancel cancel.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -168,6 +169,7 @@ cancel: cancel.o ../cups/$(LIBCUPS)
cupsaccept: cupsaccept.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o cupsaccept cupsaccept.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
for file in accept cupsenable cupsdisable cupsreject reject; do \
$(RM) $$file; \
$(LN) cupsaccept $$file; \
@@ -181,6 +183,7 @@ cupsaccept: cupsaccept.o ../cups/$(LIBCUPS)
cupsaddsmb: cupsaddsmb.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o cupsaddsmb cupsaddsmb.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -190,6 +193,7 @@ cupsaddsmb: cupsaddsmb.o ../cups/$(LIBCUPS)
cupsctl: cupsctl.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o cupsctl cupsctl.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -199,6 +203,7 @@ cupsctl: cupsctl.o ../cups/$(LIBCUPS)
cupstestdsc: cupstestdsc.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ cupstestdsc.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -208,11 +213,13 @@ cupstestdsc: cupstestdsc.o ../cups/$(LIBCUPS)
cupstestppd: cupstestppd.o ../cups/$(LIBCUPS) ../filter/$(LIBCUPSIMAGE)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ cupstestppd.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
cupstestppd-static: cupstestppd.o ../cups/$(LIBCUPSSTATIC) ../filter/libcupsimage.a
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ cupstestppd.o ../filter/libcupsimage.a \
../cups/$(LIBCUPSSTATIC) $(IMGLIBS) $(LIBGSSAPI) $(LIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -222,6 +229,7 @@ cupstestppd-static: cupstestppd.o ../cups/$(LIBCUPSSTATIC) ../filter/libcupsimag
lp: lp.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lp lp.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -231,6 +239,7 @@ lp: lp.o ../cups/$(LIBCUPS)
lpadmin: lpadmin.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpadmin lpadmin.o $(LIBZ) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -240,6 +249,7 @@ lpadmin: lpadmin.o ../cups/$(LIBCUPS)
lpinfo: lpinfo.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpinfo lpinfo.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -249,6 +259,7 @@ lpinfo: lpinfo.o ../cups/$(LIBCUPS)
lpmove: lpmove.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpmove lpmove.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -258,6 +269,7 @@ lpmove: lpmove.o ../cups/$(LIBCUPS)
lpoptions: lpoptions.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpoptions lpoptions.o $(LIBZ) $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -267,6 +279,7 @@ lpoptions: lpoptions.o ../cups/$(LIBCUPS)
lpstat: lpstat.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o lpstat lpstat.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/systemv/cupsaddsmb.c b/systemv/cupsaddsmb.c
index 0e63b9d..5e458d5 100644
--- a/systemv/cupsaddsmb.c
+++ b/systemv/cupsaddsmb.c
@@ -1,7 +1,7 @@
/*
* "cupsaddsmb" command for CUPS.
*
- * Copyright 2007-2012 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 2001-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -37,7 +37,7 @@ const char *SAMBAUser,
*/
int export_dest(http_t *http, const char *dest);
-void usage(void) __attribute__((noreturn));
+void usage(void) _CUPS_NORETURN;
/*
diff --git a/systemv/cupsctl.c b/systemv/cupsctl.c
index c9ab991..c60c218 100644
--- a/systemv/cupsctl.c
+++ b/systemv/cupsctl.c
@@ -1,7 +1,7 @@
/*
* Scheduler control program for CUPS.
*
- * Copyright 2007-2012 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 2006-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -25,7 +25,7 @@
* Local functions...
*/
-static void usage(const char *opt) __attribute__((noreturn));
+static void usage(const char *opt) _CUPS_NORETURN;
/*
diff --git a/systemv/cupstestdsc.c b/systemv/cupstestdsc.c
index 84c4e98..093b77b 100644
--- a/systemv/cupstestdsc.c
+++ b/systemv/cupstestdsc.c
@@ -1,7 +1,7 @@
/*
* DSC test program for CUPS.
*
- * Copyright 2007-2010 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 2006 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -27,7 +27,7 @@
*/
static int check_file(const char *filename);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
/*
diff --git a/systemv/cupstestppd.c b/systemv/cupstestppd.c
index 9344c51..c154af2 100644
--- a/systemv/cupstestppd.c
+++ b/systemv/cupstestppd.c
@@ -1,7 +1,7 @@
/*
* PPD test program for CUPS.
*
- * Copyright 2007-2016 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -24,9 +24,9 @@
#include <cups/ppd-private.h>
#include <cups/raster.h>
#include <math.h>
-#ifdef WIN32
+#ifdef _WIN32
# define X_OK 0
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
@@ -107,7 +107,7 @@ static int check_translations(ppd_file_t *ppd, int errors, int verbose,
int warn);
static void show_conflicts(ppd_file_t *ppd, const char *prefix);
static int test_raster(ppd_file_t *ppd, int verbose);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
static int valid_path(const char *keyword, const char *path, int errors,
int verbose, int warn);
static int valid_utf8(const char *s);
diff --git a/systemv/lpadmin.c b/systemv/lpadmin.c
index 1ea0d33..6828f8a 100644
--- a/systemv/lpadmin.c
+++ b/systemv/lpadmin.c
@@ -38,7 +38,7 @@ static cups_ptype_t get_printer_type(http_t *http, char *printer, char *uri,
size_t urisize);
static int set_printer_options(http_t *http, char *printer,
int num_options, cups_option_t *options,
- char *file);
+ char *file, int enable);
static int validate_name(const char *name);
@@ -56,6 +56,7 @@ main(int argc, /* I - Number of command-line arguments */
*pclass, /* Printer class name */
*opt, /* Option pointer */
*val; /* Pointer to allow/deny value */
+ int enable = 0; /* Enable/resume printer? */
int num_options; /* Number of options */
cups_option_t *options; /* Options */
char *file, /* New PPD file */
@@ -265,8 +266,7 @@ main(int argc, /* I - Number of command-line arguments */
}
}
- if (enable_printer(http, printer))
- return (1);
+ enable = 1;
break;
case 'm' : /* Use the specified standard script/PPD file */
@@ -649,9 +649,11 @@ main(int argc, /* I - Number of command-line arguments */
}
}
- if (set_printer_options(http, printer, num_options, options, file))
+ if (set_printer_options(http, printer, num_options, options, file, enable))
return (1);
}
+ else if (enable && enable_printer(http, printer))
+ return (1);
if (evefile[0])
unlink(evefile);
@@ -1127,33 +1129,33 @@ enable_printer(http_t *http, /* I - Server connection */
DEBUG_printf(("enable_printer(%p, \"%s\")\n", http, printer));
/*
- * Build a IPP_OP_CUPS_ADD_MODIFY_PRINTER or IPP_OP_CUPS_ADD_MODIFY_CLASS request, which
+ * Send IPP_OP_ENABLE_PRINTER and IPP_OP_RESUME_PRINTER requests, which
* require the following attributes:
*
* attributes-charset
* attributes-natural-language
* printer-uri
* requesting-user-name
- * printer-state
- * printer-is-accepting-jobs
*/
- if (get_printer_type(http, printer, uri, sizeof(uri)) & CUPS_PRINTER_CLASS)
- request = ippNewRequest(IPP_OP_CUPS_ADD_MODIFY_CLASS);
- else
- request = ippNewRequest(IPP_OP_CUPS_ADD_MODIFY_PRINTER);
+ request = ippNewRequest(IPP_OP_ENABLE_PRINTER);
- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI,
- "printer-uri", NULL, uri);
- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME,
- "requesting-user-name", NULL, cupsUser());
- ippAddInteger(request, IPP_TAG_PRINTER, IPP_TAG_ENUM, "printer-state",
- IPP_PSTATE_IDLE);
- ippAddBoolean(request, IPP_TAG_PRINTER, "printer-is-accepting-jobs", 1);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, uri);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name", NULL, cupsUser());
- /*
- * Do the request and get back a response...
- */
+ ippDelete(cupsDoRequest(http, request, "/admin/"));
+
+ if (cupsLastError() > IPP_STATUS_OK_CONFLICTING)
+ {
+ _cupsLangPrintf(stderr, _("%s: %s"), "lpadmin", cupsLastErrorString());
+
+ return (1);
+ }
+
+ request = ippNewRequest(IPP_OP_RESUME_PRINTER);
+
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, uri);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name", NULL, cupsUser());
ippDelete(cupsDoRequest(http, request, "/admin/"));
@@ -1163,8 +1165,8 @@ enable_printer(http_t *http, /* I - Server connection */
return (1);
}
- else
- return (0);
+
+ return (0);
}
@@ -1240,7 +1242,12 @@ get_printer_ppd(
ippAddStrings(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD, "requested-attributes", sizeof(pattrs) / sizeof(pattrs[0]), NULL, pattrs);
response = cupsDoRequest(http, request, resource);
- if (_ppdCreateFromIPP(buffer, bufsize, response))
+ if (cupsLastError() >= IPP_STATUS_REDIRECTION_OTHER_SITE)
+ {
+ _cupsLangPrintf(stderr, _("%s: Unable to query printer: %s"), "lpadmin", cupsLastErrorString());
+ buffer[0] = '\0';
+ }
+ else if (_ppdCreateFromIPP(buffer, bufsize, response))
{
if (!cupsGetOption("printer-geo-location", *num_options, *options) && (attr = ippFindAttribute(response, "printer-geo-location", IPP_TAG_URI)) != NULL)
*num_options = cupsAddOption("printer-geo-location", ippGetString(attr, 0, NULL), *num_options, options);
@@ -1333,7 +1340,8 @@ set_printer_options(
char *printer, /* I - Printer */
int num_options, /* I - Number of options */
cups_option_t *options, /* I - Options */
- char *file) /* I - PPD file/interface script */
+ char *file, /* I - PPD file */
+ int enable) /* I - Enable printer? */
{
ipp_t *request; /* IPP Request */
const char *ppdfile; /* PPD filename */
@@ -1379,6 +1387,12 @@ set_printer_options(
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, uri);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name", NULL, cupsUser());
+ if (enable)
+ {
+ ippAddInteger(request, IPP_TAG_PRINTER, IPP_TAG_ENUM, "printer-state", IPP_PSTATE_IDLE);
+ ippAddBoolean(request, IPP_TAG_PRINTER, "printer-is-accepting-jobs", 1);
+ }
+
/*
* Add the options...
*/
diff --git a/systemv/lpoptions.c b/systemv/lpoptions.c
index 76a6d78..fceab6d 100644
--- a/systemv/lpoptions.c
+++ b/systemv/lpoptions.c
@@ -1,7 +1,7 @@
/*
* Printer option program for CUPS.
*
- * Copyright 2007-2016 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -25,7 +25,7 @@
static void list_group(ppd_file_t *ppd, ppd_group_t *group);
static void list_options(cups_dest_t *dest);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
/*
diff --git a/templates/admin.tmpl b/templates/admin.tmpl
index 101f960..ae83399 100644
--- a/templates/admin.tmpl
+++ b/templates/admin.tmpl
@@ -79,19 +79,3 @@
</FORM>}
</div>
</div>
-
-<div class="row">
- <H2 CLASS="title">RSS Subscriptions</H2>
-
- <P>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Add RSS Subscription"></FORM>
- </P>
-
- {notify_subscription_id?<TABLE CLASS="list" SUMMARY="RSS Subscriptions">
- <THEAD><TR><TH>Name</TH><TH>Events</TH><TH>Queue Name</TH></TR></THEAD>
- <TBODY>{[notify_subscription_id]
- <TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Cancel RSS Subscription"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:All Queues}</TD></TR>}
- </TBODY>
- </TABLE>:}
-</div> \ No newline at end of file
diff --git a/templates/choose-model.tmpl b/templates/choose-model.tmpl
index ee9338c..e916cf8 100644
--- a/templates/choose-model.tmpl
+++ b/templates/choose-model.tmpl
@@ -39,6 +39,7 @@
<TD>
<SELECT NAME="PPD_NAME" SIZE="10">
{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Current Driver - {current_make_and_model}</OPTION>:}
+{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model} - IPP Everywhere &trade;</OPTION>:}
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
}</SELECT>
</TD>
diff --git a/templates/de/admin.tmpl b/templates/de/admin.tmpl
index fb2851a..c5fed72 100644
--- a/templates/de/admin.tmpl
+++ b/templates/de/admin.tmpl
@@ -79,19 +79,3 @@
</FORM>}
</div>
</div>
-
-<div class="row">
- <H2 CLASS="title">RSS-Abonnements</H2>
-
- <P>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="RSS-Abonnement hinzufügen"></FORM>
- </P>
-
- {notify_subscription_id?<TABLE CLASS="list" SUMMARY="RSS-Abonnements">
- <THEAD><TR><TH>Name</TH><TH>Ereignis</TH><TH>Warteschlange</TH></TR></THEAD>
- <TBODY>{[notify_subscription_id]
- <TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="RSS-Abonnement beenden"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Alle Warteschlangen}</TD></TR>}
- </TBODY>
- </TABLE>:}
-</div>
diff --git a/templates/de/choose-model.tmpl b/templates/de/choose-model.tmpl
index cb9b6f3..7c853fa 100644
--- a/templates/de/choose-model.tmpl
+++ b/templates/de/choose-model.tmpl
@@ -39,6 +39,7 @@ Drucker {?printer_is_shared=?nicht:{?printer_is_shared=0?nicht:}} im Netzwerk fr
<TD>
<SELECT NAME="PPD_NAME" SIZE="10">
{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Aktueller Treiber - {current_make_and_model}</OPTION>:}
+{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model} - IPP Everywhere &trade;</OPTION>:}
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
}</SELECT>
</TD>
diff --git a/templates/de/trailer.tmpl b/templates/de/trailer.tmpl
index e3a12bf..54f03ac 100644
--- a/templates/de/trailer.tmpl
+++ b/templates/de/trailer.tmpl
@@ -1,5 +1,5 @@
</div>
</div>
- <div class="footer">CUPS und das CUPS-Logo sind Warenzeichen der <a href="https://www.apple.com/">Apple Inc.</a> Copyright &copy; 2007-2017 Apple Inc. Alle Rechte vorbehalten.</div>
+ <div class="footer">CUPS und das CUPS-Logo sind Warenzeichen der <a href="https://www.apple.com/">Apple Inc.</a> Copyright &copy; 2007-2018 Apple Inc. Alle Rechte vorbehalten.</div>
</body>
</html>
diff --git a/templates/es/admin.tmpl b/templates/es/admin.tmpl
index 097c65c..edc0adf 100644
--- a/templates/es/admin.tmpl
+++ b/templates/es/admin.tmpl
@@ -79,19 +79,3 @@
</FORM>}
</div>
</div>
-
-<div class="row">
- <H2 CLASS="title">Subscripciones RSS</H2>
-
- <P>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="A&ntilde;adir subscripci&oacute;n RSS"></FORM>
- </P>
-
- {notify_subscription_id?<TABLE CLASS="list" SUMMARY="Subscripciones RSS">
- <THEAD><TR><TH>Nombre</TH><TH>Eventos</TH><TH>Nombre de la cola</TH></TR></THEAD>
- <TBODY>{[notify_subscription_id]
- <TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Cancelar subscripci&oacute;n RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Todas las colas}</TD></TR>}
- </TBODY>
- </TABLE>:}
-</div>
diff --git a/templates/es/choose-model.tmpl b/templates/es/choose-model.tmpl
index 8a5a4ba..bb8f3f5 100644
--- a/templates/es/choose-model.tmpl
+++ b/templates/es/choose-model.tmpl
@@ -39,6 +39,7 @@
<TD>
<SELECT NAME="PPD_NAME" SIZE="10">
{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Controlador actual - {current_make_and_model}</OPTION>:}
+{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model} - IPP Everywhere &trade;</OPTION>:}
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
}</SELECT>
</TD>
diff --git a/templates/es/trailer.tmpl b/templates/es/trailer.tmpl
index 4baa71d..399189e 100644
--- a/templates/es/trailer.tmpl
+++ b/templates/es/trailer.tmpl
@@ -1,5 +1,5 @@
</div>
</div>
- <div class="footer">CUPS y el logo de CUPS son marcas registradas de <a href="http://www.apple.com">Apple Inc.</a> Derechos de autor &copy; 2007-2017 Apple Inc. Todos los derechos reservados.</div>
+ <div class="footer">CUPS y el logo de CUPS son marcas registradas de <a href="http://www.apple.com">Apple Inc.</a> Derechos de autor &copy; 2007-2018 Apple Inc. Todos los derechos reservados.</div>
</body>
</html>
diff --git a/templates/fr/admin.tmpl b/templates/fr/admin.tmpl
index 2fcd9c5..6e80265 100644
--- a/templates/fr/admin.tmpl
+++ b/templates/fr/admin.tmpl
@@ -79,19 +79,3 @@
</FORM>}
</div>
</div>
-
-<div class="row">
- <H2 CLASS="title">Abonnements RSS</H2>
-
- <P>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Ajouter un abonnement RSS"></FORM>
- </P>
-
- {notify_subscription_id?<TABLE CLASS="list" SUMMARY="Abonnements RSS">
- <THEAD><TR><TH>Nom</TH><TH>Év&eacute;nements</TH><TH>Nom de la file</TH></TR></THEAD>
- <TBODY>{[notify_subscription_id]
- <TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Annuler l'abonnement RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Toutes les files}</TD></TR>}
- </TBODY>
- </TABLE>:}
-</div>
diff --git a/templates/fr/choose-model.tmpl b/templates/fr/choose-model.tmpl
index 1e154f1..63ddabf 100644
--- a/templates/fr/choose-model.tmpl
+++ b/templates/fr/choose-model.tmpl
@@ -39,6 +39,7 @@
<TD>
<SELECT NAME="PPD_NAME" SIZE="10">
{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Pilote actuel - {current_make_and_model}</OPTION>:}
+{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model} - IPP Everywhere &trade;</OPTION>:}
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
}</SELECT>
</TD>
diff --git a/templates/fr/trailer.tmpl b/templates/fr/trailer.tmpl
index 632632a..907155e 100644
--- a/templates/fr/trailer.tmpl
+++ b/templates/fr/trailer.tmpl
@@ -1,5 +1,5 @@
</div>
</div>
- <div class="footer">CUPS et le logo CUPS sont des marques d&eacute;pos&eacute;es de <a href="http://www.apple.com">Apple Inc.</a> CUPS est sous copyright 2007-2017 Apple Inc. Tous droits r&eacute;serv&eacute;s.</div>
+ <div class="footer">CUPS et le logo CUPS sont des marques d&eacute;pos&eacute;es de <a href="http://www.apple.com">Apple Inc.</a> CUPS est sous copyright 2007-2018 Apple Inc. Tous droits r&eacute;serv&eacute;s.</div>
</body>
</html>
diff --git a/templates/ja/admin.tmpl b/templates/ja/admin.tmpl
index 13d6f13..3443297 100644
--- a/templates/ja/admin.tmpl
+++ b/templates/ja/admin.tmpl
@@ -79,19 +79,3 @@
</FORM>}
</div>
</div>
-
-<div class="row">
- <H2 CLASS="title">RSS 購読</H2>
-
- <P>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="RSS 購読の追加"></FORM>
- </P>
-
- {notify_subscription_id?<TABLE CLASS="list" SUMMARY="RSS 購読">
- <THEAD><TR><TH>名前</TH><TH>イベント</TH><TH>キュー名</TH></TR></THEAD>
- <TBODY>{[notify_subscription_id]
- <TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="RSS 購読のキャンセル"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:すべてのキュー}</TD></TR>}
- </TBODY>
- </TABLE>:}
-</div> \ No newline at end of file
diff --git a/templates/ja/choose-model.tmpl b/templates/ja/choose-model.tmpl
index daf1375..2054cef 100644
--- a/templates/ja/choose-model.tmpl
+++ b/templates/ja/choose-model.tmpl
@@ -39,6 +39,7 @@
<TD>
<SELECT NAME="PPD_NAME" SIZE="10">
{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>現在のドライバー - {current_make_and_model}</OPTION>:}
+{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model} - IPP Everywhere &trade;</OPTION>:}
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
}</SELECT>
</TD>
diff --git a/templates/ja/trailer.tmpl b/templates/ja/trailer.tmpl
index 4f5ec07..04a205e 100644
--- a/templates/ja/trailer.tmpl
+++ b/templates/ja/trailer.tmpl
@@ -1,5 +1,5 @@
</div>
</div>
- <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2017 Apple Inc. All rights reserved.</div>
+ <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2018 Apple Inc. All rights reserved.</div>
</body>
</html>
diff --git a/templates/pt_BR/admin.tmpl b/templates/pt_BR/admin.tmpl
index b847bef..c7095e1 100644
--- a/templates/pt_BR/admin.tmpl
+++ b/templates/pt_BR/admin.tmpl
@@ -79,19 +79,3 @@
</FORM>}
</div>
</div>
-
-<div class="row">
- <H2 CLASS="title">Inscri&ccedil;&otilde;es RSS</H2>
-
- <P>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Adicionar inscri&ccedil;&atilde;o RSS"></FORM>
- </P>
-
- {notify_subscription_id?<TABLE CLASS="list" SUMMARY="Inscri&ccedil;&otilde;es RSS">
- <THEAD><TR><TH>Nome</TH><TH>Eventos</TH><TH>Nome da fila</TH></TR></THEAD>
- <TBODY>{[notify_subscription_id]
- <TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Cancelar inscri&ccedil;&atilde;o RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Todas as filas}</TD></TR>}
- </TBODY>
- </TABLE>:}
-</div>
diff --git a/templates/pt_BR/choose-model.tmpl b/templates/pt_BR/choose-model.tmpl
index 55d8bd8..2dc68ab 100644
--- a/templates/pt_BR/choose-model.tmpl
+++ b/templates/pt_BR/choose-model.tmpl
@@ -39,6 +39,7 @@
<TD>
<SELECT NAME="PPD_NAME" SIZE="10">
{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Driver atual - {current_make_and_model}</OPTION>:}
+{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model} - IPP Everywhere &trade;</OPTION>:}
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
}</SELECT>
</TD>
diff --git a/templates/pt_BR/header.tmpl.in b/templates/pt_BR/header.tmpl.in
index d9124a6..4263b77 100644
--- a/templates/pt_BR/header.tmpl.in
+++ b/templates/pt_BR/header.tmpl.in
@@ -31,7 +31,7 @@
<ul>
<li><a href="http://www.cups.org/" target="_blank">CUPS.org</a></li>
<li><a href="/">In&iacute;cio</a></li>
- <li><a {SECTION=admin?class="active" :}href="/admin">Administrar&ccedil;&atilde;o</a></li>
+ <li><a {SECTION=admin?class="active" :}href="/admin">Administração</a></li>
<li><a {SECTION=classes?class="active" :}href="/classes/">Classes</a></li>
<li><a {SECTION=help?class="active" :}href="/help/">Ajuda</a></li>
<li><a {SECTION=jobs?class="active" :}href="/jobs/">Trabalhos</a></li>
diff --git a/templates/pt_BR/jobs-header.tmpl b/templates/pt_BR/jobs-header.tmpl
index 7b97719..91f061a 100644
--- a/templates/pt_BR/jobs-header.tmpl
+++ b/templates/pt_BR/jobs-header.tmpl
@@ -1,5 +1,5 @@
{?which_jobs=?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="SUBMIT" VALUE="Mostrar trabalhos ativos"></FORM>}
-{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="conclu&iacute;dos"><INPUT TYPE="SUBMIT" VALUE="Mostrar trabalhos conclu&iacute;dos"></FORM>}
+{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="completed"><INPUT TYPE="SUBMIT" VALUE="Mostrar trabalhos conclu&iacute;dos"></FORM>}
{?which_jobs=all?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="all"><INPUT TYPE="SUBMIT" VALUE="Mostrar todos trabalhos"></FORM>}
<P ALIGN="CENTER">{?which_jobs=?Jobs listed in print order; held jobs appear first.:{which_jobs=Jobs listed in ascending order.?:Jobs listed in descending order.}}</P>
diff --git a/templates/pt_BR/trailer.tmpl b/templates/pt_BR/trailer.tmpl
index c4b40fc..d1a1e64 100644
--- a/templates/pt_BR/trailer.tmpl
+++ b/templates/pt_BR/trailer.tmpl
@@ -1,5 +1,5 @@
</div>
</div>
- <div class="footer">CUPS e sua logo s&atilde;o marcas registradas da <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2017 Apple Inc. Todos os direitos reservados.</div>
+ <div class="footer">CUPS e sua logo s&atilde;o marcas registradas da <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2018 Apple Inc. Todos os direitos reservados.</div>
</body>
</html>
diff --git a/templates/ru/admin.tmpl b/templates/ru/admin.tmpl
index 49a168c..a54e541 100644
--- a/templates/ru/admin.tmpl
+++ b/templates/ru/admin.tmpl
@@ -66,7 +66,7 @@
<P><A HREF="/admin/?ADVANCEDSETTINGS=YES">Дополнительные параметры <SMALL>&#x25b6;</SMALL></A><BR>
<INPUT TYPE="HIDDEN" NAME="OP" VALUE="config-server">
<INPUT TYPE="CHECKBOX" NAME="SHARE_PRINTERS" {?share_printers}> Разрешить совместный доступ к принтерам, подключенным к этой системе<BR>
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Разрешить печать из
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="CHECKBOX" NAME="REMOTE_ANY" {?remote_any}> Разрешить печать из
интернет<BR>
<INPUT TYPE="CHECKBOX" NAME="REMOTE_ADMIN" {?remote_admin}> Разрешить удаленное администрирование<BR>
{have_gssapi?<INPUT TYPE="CHECKBOX" NAME="KERBEROS" {?kerberos}> Разрешить аутентификацию Kerberos (<A HREF="/help/kerberos.html?TOPIC=Getting+Started">FAQ</A>)<BR>:}
@@ -78,20 +78,4 @@
</FORM>}
</div>
-</div>
-
-<div class="row">
- <H2 CLASS="title">Подписка по RSS</H2>
-
- <P>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="add-rss-subscription"><INPUT TYPE="SUBMIT" VALUE="Добавить подписку по RSS"></FORM>
- </P>
-
- {notify_subscription_id?<TABLE CLASS="list" SUMMARY="Подписки по RSS">
- <THEAD><TR><TH>Название</TH><TH>События</TH><TH>Очередь</TH></TR></THEAD>
- <TBODY>{[notify_subscription_id]
- <TR><TD><A HREF="{notify_recipient_uri}">{notify_recipient_name}</A><BR>
- <FORM ACTION="/admin/" METHOD="POST"><INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}"><INPUT TYPE="HIDDEN" NAME="OP" VALUE="cancel-subscription"><INPUT TYPE="HIDDEN" NAME="notify_subscription_id" VALUE="{notify_subscription_id}"><INPUT TYPE="SUBMIT" VALUE="Отменить подписку по RSS"></FORM>&nbsp;</TD><TD>{notify_events}</TD><TD NOWRAP>&nbsp;{notify_printer_name?{notify_printer_name}:Все очереди}</TD></TR>}
- </TBODY>
- </TABLE>:}
</div> \ No newline at end of file
diff --git a/templates/ru/choose-model.tmpl b/templates/ru/choose-model.tmpl
index 2f0d6d9..c352a73 100644
--- a/templates/ru/choose-model.tmpl
+++ b/templates/ru/choose-model.tmpl
@@ -39,6 +39,7 @@
<TD>
<SELECT NAME="PPD_NAME" SIZE="10">
{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Текущий драйвер - {current_make_and_model}</OPTION>:}
+{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model} - IPP Everywhere &trade;</OPTION>:}
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
}</SELECT>
</TD>
diff --git a/templates/ru/trailer.tmpl b/templates/ru/trailer.tmpl
index 985a4b0..0da4298 100644
--- a/templates/ru/trailer.tmpl
+++ b/templates/ru/trailer.tmpl
@@ -1,6 +1,6 @@
</div>
</div>
<div class="footer">CUPS, а так же логотип CUPS являются зарегистрированными торговыми марками
-<A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2017) компании Apple Inc. Все права защищены.</div>
+<A HREF="http://www.apple.com">Apple Inc.</A> Авторские права на CUPS принадлежат (2007-2018) компании Apple Inc. Все права защищены.</div>
</body>
</html>
diff --git a/templates/trailer.tmpl b/templates/trailer.tmpl
index 4f5ec07..04a205e 100644
--- a/templates/trailer.tmpl
+++ b/templates/trailer.tmpl
@@ -1,5 +1,5 @@
</div>
</div>
- <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2017 Apple Inc. All rights reserved.</div>
+ <div class="footer">CUPS and the CUPS logo are trademarks of <a href="http://www.apple.com">Apple Inc.</a> Copyright &copy; 2007-2018 Apple Inc. All rights reserved.</div>
</body>
</html>
diff --git a/test/5.1-lpadmin.sh b/test/5.1-lpadmin.sh
index 07f1d5a..7efc398 100644
--- a/test/5.1-lpadmin.sh
+++ b/test/5.1-lpadmin.sh
@@ -2,20 +2,17 @@
#
# Test the lpadmin command.
#
-# Copyright 2007-2013 by Apple Inc.
-# Copyright 1997-2005 by Easy Software Products, all rights reserved.
+# Copyright © 2007-2018 by Apple Inc.
+# Copyright © 1997-2005 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "Add Printer Test"
echo ""
echo " lpadmin -p Test3 -v file:/dev/null -E -m drv:///sample.drv/deskjet.ppd"
-$VALGRIND ../systemv/lpadmin -p Test3 -v file:/dev/null -E -m drv:///sample.drv/deskjet.ppd 2>&1
+$runcups $VALGRIND ../systemv/lpadmin -p Test3 -v file:/dev/null -E -m drv:///sample.drv/deskjet.ppd 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -32,7 +29,7 @@ echo ""
echo "Modify Printer Test"
echo ""
echo " lpadmin -p Test3 -v file:/tmp/Test3 -o PageSize=A4"
-$VALGRIND ../systemv/lpadmin -p Test3 -v file:/tmp/Test3 -o PageSize=A4 2>&1
+$runcups $VALGRIND ../systemv/lpadmin -p Test3 -v file:/tmp/Test3 -o PageSize=A4 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -44,7 +41,7 @@ echo ""
echo "Delete Printer Test"
echo ""
echo " lpadmin -x Test3"
-$VALGRIND ../systemv/lpadmin -x Test3 2>&1
+$runcups $VALGRIND ../systemv/lpadmin -x Test3 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -55,8 +52,8 @@ echo ""
echo "Add Shared Printer Test"
echo ""
-echo " lpadmin -p Test3 -E -v ipp://localhost:$IPP_PORT/printers/Test2 -m raw"
-$VALGRIND ../systemv/lpadmin -p Test3 -E -v ipp://localhost:$IPP_PORT/printers/Test2 -m raw 2>&1
+echo " lpadmin -p Test3 -E -v ipp://localhost:$IPP_PORT/printers/Test2 -m everywhere"
+$runcups $VALGRIND ../systemv/lpadmin -p Test3 -E -v ipp://localhost:$IPP_PORT/printers/Test2 -m everywhere 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
diff --git a/test/5.2-lpc.sh b/test/5.2-lpc.sh
index 857e885..155a157 100644
--- a/test/5.2-lpc.sh
+++ b/test/5.2-lpc.sh
@@ -2,20 +2,17 @@
#
# Test the lpc command.
#
-# Copyright 2007 by Apple Inc.
-# Copyright 1997-2005 by Easy Software Products, all rights reserved.
+# Copyright © 2007 by Apple Inc.
+# Copyright © 1997-2005 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "LPC Test"
echo ""
echo " lpc status"
-$VALGRIND ../berkeley/lpc status 2>&1
+$runcups $VALGRIND ../berkeley/lpc status 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
diff --git a/test/5.3-lpq.sh b/test/5.3-lpq.sh
index 4c0e849..02ddbd9 100644
--- a/test/5.3-lpq.sh
+++ b/test/5.3-lpq.sh
@@ -2,20 +2,17 @@
#
# Test the lpq command.
#
-# Copyright 2007 by Apple Inc.
-# Copyright 1997-2005 by Easy Software Products, all rights reserved.
+# Copyright © 2007 by Apple Inc.
+# Copyright © 1997-2005 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "LPQ Test"
echo ""
echo " lpq -P Test1"
-$VALGRIND ../berkeley/lpq -P Test1 2>&1
+$runcups $VALGRIND ../berkeley/lpq -P Test1 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
diff --git a/test/5.4-lpstat.sh b/test/5.4-lpstat.sh
index 6dbd44a..ba5246d 100644
--- a/test/5.4-lpstat.sh
+++ b/test/5.4-lpstat.sh
@@ -2,20 +2,17 @@
#
# Test the lpstat command.
#
-# Copyright 2007-2017 by Apple Inc.
-# Copyright 1997-2005 by Easy Software Products, all rights reserved.
+# Copyright © 2007-2017 by Apple Inc.
+# Copyright © 1997-2005 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "LPSTAT Basic Test"
echo ""
echo " lpstat -t"
-$VALGRIND ../systemv/lpstat -t 2>&1
+$runcups $VALGRIND ../systemv/lpstat -t 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -27,7 +24,7 @@ echo ""
echo "LPSTAT Enumeration Test"
echo ""
echo " lpstat -e"
-printers="`$VALGRIND ../systemv/lpstat -e 2>&1`"
+printers="`$runcups $VALGRIND ../systemv/lpstat -e 2>&1`"
if test $? != 0 -o "x$printers" = x; then
echo " FAILED"
exit 1
@@ -42,7 +39,7 @@ echo ""
echo "LPSTAT Get Host Test"
echo ""
echo " lpstat -H"
-server="`$VALGRIND ../systemv/lpstat -H 2>&1`"
+server="`$runcups $VALGRIND ../systemv/lpstat -H 2>&1`"
if test $? != 0 -o "x$server" != x$CUPS_SERVER; then
echo " FAILED ($server)"
exit 1
diff --git a/test/5.5-lp.sh b/test/5.5-lp.sh
index 71fc418..ba7c5f9 100644
--- a/test/5.5-lp.sh
+++ b/test/5.5-lp.sh
@@ -2,20 +2,17 @@
#
# Test the lp command.
#
-# Copyright 2007-2014 by Apple Inc.
-# Copyright 1997-2005 by Easy Software Products, all rights reserved.
+# Copyright © 2007-2014 by Apple Inc.
+# Copyright © 1997-2005 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "LP Default Test"
echo ""
echo " lp testfile.pdf"
-$VALGRIND ../systemv/lp testfile.pdf 2>&1
+$runcups $VALGRIND ../systemv/lp testfile.pdf 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -27,7 +24,7 @@ echo ""
echo "LP Destination Test"
echo ""
echo " lp -d Test3 -o fit-to-page testfile.jpg"
-$VALGRIND ../systemv/lp -d Test3 -o fit-to-page testfile.jpg 2>&1
+$runcups $VALGRIND ../systemv/lp -d Test3 -o fit-to-page testfile.jpg 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -39,7 +36,7 @@ echo ""
echo "LP Options Test"
echo ""
echo " lp -d Test1 -P 1-4 -o job-sheets=classified,classified testfile.pdf"
-$VALGRIND ../systemv/lp -d Test1 -P 1-4 -o job-sheets=classified,classified testfile.pdf 2>&1
+$runcups $VALGRIND ../systemv/lp -d Test1 -P 1-4 -o job-sheets=classified,classified testfile.pdf 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -57,13 +54,13 @@ pids=""
while test $i -lt $1; do
j=1
while test $j -le $2; do
- $VALGRIND ../systemv/lp -d test-$j testfile.jpg 2>&1
+ $runcups $VALGRIND ../systemv/lp -d test-$j testfile.jpg 2>&1
j=`expr $j + 1`
done
- $VALGRIND ../systemv/lp -d Test1 testfile.jpg 2>&1 &
+ $runcups $VALGRIND ../systemv/lp -d Test1 testfile.jpg 2>&1 &
pids="$pids $!"
- $VALGRIND ../systemv/lp -d Test2 testfile.jpg 2>&1 &
+ $runcups $VALGRIND ../systemv/lp -d Test2 testfile.jpg 2>&1 &
pids="$pids $!"
i=`expr $i + 1`
@@ -82,7 +79,7 @@ echo ""
echo "LPSTAT Completed Jobs Order Test"
echo ""
echo " lpstat -W completed -o"
-$VALGRIND ../systemv/lpstat -W completed -o | tee $BASE/lpstat-completed.txt
+$runcups $VALGRIND ../systemv/lpstat -W completed -o | tee $BASE/lpstat-completed.txt
if test "`uniq -d $BASE/lpstat-completed.txt`" != ""; then
echo " FAILED"
exit 1
diff --git a/test/5.6-lpr.sh b/test/5.6-lpr.sh
index d3280d2..1a19083 100644
--- a/test/5.6-lpr.sh
+++ b/test/5.6-lpr.sh
@@ -2,20 +2,17 @@
#
# Test the lpr command.
#
-# Copyright 2007-2014 by Apple Inc.
-# Copyright 1997-2005 by Easy Software Products, all rights reserved.
+# Copyright © 2007-2014 by Apple Inc.
+# Copyright © 1997-2005 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "LPR Default Test"
echo ""
echo " lpr testfile.pdf"
-$VALGRIND ../berkeley/lpr testfile.pdf 2>&1
+$runcups $VALGRIND ../berkeley/lpr testfile.pdf 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -27,7 +24,7 @@ echo ""
echo "LPR Destination Test"
echo ""
echo " lpr -P Test3 -o fit-to-page testfile.jpg"
-$VALGRIND ../berkeley/lpr -P Test3 -o fit-to-page testfile.jpg 2>&1
+$runcups $VALGRIND ../berkeley/lpr -P Test3 -o fit-to-page testfile.jpg 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -39,7 +36,7 @@ echo ""
echo "LPR Options Test"
echo ""
echo " lpr -P Test1 -o number-up=4 -o job-sheets=standard,none testfile.pdf"
-$VALGRIND ../berkeley/lpr -P Test1 -o number-up=4 -o job-sheets=standard,none testfile.pdf 2>&1
+$runcups $VALGRIND ../berkeley/lpr -P Test1 -o number-up=4 -o job-sheets=standard,none testfile.pdf 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -57,13 +54,13 @@ pids=""
while test $i -lt $1; do
j=1
while test $j -le $2; do
- $VALGRIND ../berkeley/lpr -P test-$j testfile.jpg 2>&1
+ $runcups $VALGRIND ../berkeley/lpr -P test-$j testfile.jpg 2>&1
j=`expr $j + 1`
done
- $VALGRIND ../berkeley/lpr -P Test1 testfile.jpg 2>&1 &
+ $runcups $VALGRIND ../berkeley/lpr -P Test1 testfile.jpg 2>&1 &
pids="$pids $!"
- $VALGRIND ../berkeley/lpr -P Test2 testfile.jpg 2>&1 &
+ $runcups $VALGRIND ../berkeley/lpr -P Test2 testfile.jpg 2>&1 &
pids="$pids $!"
i=`expr $i + 1`
diff --git a/test/5.7-lprm.sh b/test/5.7-lprm.sh
index e456ec0..29251f9 100644
--- a/test/5.7-lprm.sh
+++ b/test/5.7-lprm.sh
@@ -2,22 +2,19 @@
#
# Test the lprm command.
#
-# Copyright 2007-2011 by Apple Inc.
-# Copyright 1997-2005 by Easy Software Products, all rights reserved.
+# Copyright © 2007-2011 by Apple Inc.
+# Copyright © 1997-2005 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "LPRM Current Test"
echo ""
echo " lpr -o job-hold-until=indefinite testfile.jpg"
-$VALGRIND ../berkeley/lpr -o job-hold-until=indefinite testfile.jpg 2>&1
+$runcups $VALGRIND ../berkeley/lpr -o job-hold-until=indefinite testfile.jpg 2>&1
echo " lprm"
-$VALGRIND ../berkeley/lprm 2>&1
+$runcups $VALGRIND ../berkeley/lprm 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -29,9 +26,9 @@ echo ""
echo "LPRM Destination Test"
echo ""
echo " lpr -P Test1 -o job-hold-until=indefinite testfile.jpg"
-$VALGRIND ../berkeley/lpr -P Test1 -o job-hold-until=indefinite testfile.jpg 2>&1
+$runcups $VALGRIND ../berkeley/lpr -P Test1 -o job-hold-until=indefinite testfile.jpg 2>&1
echo " lprm Test1"
-$VALGRIND ../berkeley/lprm Test1 2>&1
+$runcups $VALGRIND ../berkeley/lprm Test1 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
diff --git a/test/5.8-cancel.sh b/test/5.8-cancel.sh
index 28bc0fe..bd7cf5f 100644
--- a/test/5.8-cancel.sh
+++ b/test/5.8-cancel.sh
@@ -2,22 +2,19 @@
#
# Test the cancel command.
#
-# Copyright 2007-2013 by Apple Inc.
-# Copyright 1997-2006 by Easy Software Products, all rights reserved.
+# 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
-# 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "Cancel Destination Test"
echo ""
echo " lp -d Test1 -o job-hold-until=indefinite testfile.jpg"
-$VALGRIND ../systemv/lp -d Test1 -o job-hold-until=indefinite testfile.jpg 2>&1
+$runcups $VALGRIND ../systemv/lp -d Test1 -o job-hold-until=indefinite testfile.jpg 2>&1
echo " cancel Test1"
-$VALGRIND ../systemv/cancel Test1 2>&1
+$runcups $VALGRIND ../systemv/cancel Test1 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -29,7 +26,7 @@ echo ""
echo "Cancel All Test"
echo ""
echo " cancel -a"
-$VALGRIND ../systemv/cancel -a 2>&1
+$runcups $VALGRIND ../systemv/cancel -a 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -41,7 +38,7 @@ echo ""
echo "Purge All Test"
echo ""
echo " cancel -a -x"
-$VALGRIND ../systemv/cancel -a -x 2>&1
+$runcups $VALGRIND ../systemv/cancel -a -x 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
diff --git a/test/5.9-lpinfo.sh b/test/5.9-lpinfo.sh
index 9cf6ceb..7d67fe3 100644
--- a/test/5.9-lpinfo.sh
+++ b/test/5.9-lpinfo.sh
@@ -2,20 +2,17 @@
#
# Test the lpinfo command.
#
-# Copyright 2007-2011 by Apple Inc.
-# Copyright 1997-2005 by Easy Software Products, all rights reserved.
+# Copyright © 2007-2011 by Apple Inc.
+# Copyright © 1997-2005 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
echo "LPINFO Devices Test"
echo ""
echo " lpinfo -v"
-$VALGRIND ../systemv/lpinfo -v 2>&1
+$runcups $VALGRIND ../systemv/lpinfo -v 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -27,7 +24,7 @@ echo ""
echo "LPINFO Drivers Test"
echo ""
echo " lpinfo -m"
-$VALGRIND ../systemv/lpinfo -m 2>&1
+$runcups $VALGRIND ../systemv/lpinfo -m 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
@@ -39,7 +36,7 @@ echo ""
echo "LPINFO Drivers Test"
echo ""
echo " lpinfo -m | grep -q sample.drv"
-$VALGRIND ../systemv/lpinfo -m | grep -q sample.drv 2>&1
+$runcups $VALGRIND ../systemv/lpinfo -m | grep -q sample.drv 2>&1
if test $? != 0; then
echo " FAILED"
exit 1
diff --git a/test/Makefile b/test/Makefile
index 03a552e..f74361d 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -1,7 +1,7 @@
#
# IPP test makefile for CUPS.
#
-# Copyright 2007-2017 by Apple Inc.
+# Copyright 2007-2018 by Apple Inc.
# Copyright 1997-2006 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -88,7 +88,7 @@ unittests:
clean:
$(RM) $(TARGETS) $(OBJS)
- $(RM) ippserver ippserver-shared ipptool-static
+ $(RM) ippfind-static ippserver ippserver-shared ipptool-static
#
@@ -184,9 +184,11 @@ local: ippserver ippserver-shared ipptool-static
ippfind: ippfind.o ../cups/$(LIBCUPS) ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ ippfind.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
echo Linking $@-static...
$(LD_CC) $(LDFLAGS) -o $@-static ippfind.o ../cups/$(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@-static
#
@@ -197,6 +199,7 @@ ippserver: ippserver.o ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ ippserver.o ../cups/$(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -206,6 +209,7 @@ ippserver: ippserver.o ../cups/$(LIBCUPSSTATIC)
ippserver-shared: ippserver.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ ippserver.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -215,6 +219,7 @@ ippserver-shared: ippserver.o ../cups/$(LIBCUPS)
ipptool: ipptool.o ../cups/$(LIBCUPS)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ ipptool.o $(LIBS)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
@@ -225,6 +230,7 @@ ipptool-static: ipptool.o ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
$(LD_CC) $(LDFLAGS) -o $@ ipptool.o ../cups/$(LIBCUPSSTATIC) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+ $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
#
diff --git a/test/ipp-everywhere.test b/test/ipp-everywhere.test
index ee1ac0d..071d9ea 100644
--- a/test/ipp-everywhere.test
+++ b/test/ipp-everywhere.test
@@ -179,7 +179,7 @@ INCLUDE "ipp-2.0.test"
# Test printing all sample documents
{
NAME "Print color.jpg-4x6 @ 150dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/color.jpg-4x6-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/color.jpg-4x6-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -191,7 +191,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-150dpi-20150616/black-1/color.jpg-4x6-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/color.jpg-4x6-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -199,7 +199,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/color.jpg-4x6-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/color.jpg-4x6-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -214,7 +214,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/black-1/color.jpg-4x6-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/color.jpg-4x6-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -222,7 +222,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/color.jpg-4x6-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/color.jpg-4x6-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -237,7 +237,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/black-1/color.jpg-4x6-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/color.jpg-4x6-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -245,7 +245,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -257,7 +257,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -265,7 +265,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -280,7 +280,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -288,7 +288,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -303,7 +303,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/color.jpg-4x6-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -311,7 +311,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -323,7 +323,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -331,7 +331,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -346,7 +346,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -354,7 +354,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -369,7 +369,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/color.jpg-4x6-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -377,7 +377,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -389,7 +389,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -397,7 +397,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -412,7 +412,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -420,7 +420,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -435,7 +435,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/color.jpg-4x6-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -443,7 +443,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, srgb-16"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
@@ -455,7 +455,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-150dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -463,7 +463,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, srgb-16, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -478,7 +478,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -486,7 +486,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 150dpi, srgb-16, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -501,7 +501,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-16/color.jpg-4x6-srgb-16-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -509,7 +509,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/color.jpg-4x6-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/color.jpg-4x6-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -521,7 +521,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-180dpi-20150616/black-1/color.jpg-4x6-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/color.jpg-4x6-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -529,7 +529,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/color.jpg-4x6-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/color.jpg-4x6-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -544,7 +544,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/black-1/color.jpg-4x6-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/color.jpg-4x6-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -552,7 +552,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/color.jpg-4x6-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/color.jpg-4x6-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -567,7 +567,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/black-1/color.jpg-4x6-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/color.jpg-4x6-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -575,7 +575,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -587,7 +587,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -595,7 +595,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -610,7 +610,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -618,7 +618,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -633,7 +633,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/color.jpg-4x6-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -641,7 +641,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -653,7 +653,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -661,7 +661,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -676,7 +676,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -684,7 +684,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -699,7 +699,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/color.jpg-4x6-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -707,7 +707,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -719,7 +719,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -727,7 +727,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -742,7 +742,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -750,7 +750,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -765,7 +765,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/color.jpg-4x6-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -773,7 +773,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, srgb-16"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
@@ -785,7 +785,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-180dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -793,7 +793,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, srgb-16, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -808,7 +808,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -816,7 +816,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 180dpi, srgb-16, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -831,7 +831,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-16/color.jpg-4x6-srgb-16-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -839,7 +839,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/color.jpg-4x6-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/color.jpg-4x6-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -851,7 +851,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-300dpi-20150616/black-1/color.jpg-4x6-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/color.jpg-4x6-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -859,7 +859,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/color.jpg-4x6-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/color.jpg-4x6-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -874,7 +874,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/black-1/color.jpg-4x6-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/color.jpg-4x6-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -882,7 +882,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/color.jpg-4x6-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/color.jpg-4x6-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -897,7 +897,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/black-1/color.jpg-4x6-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/color.jpg-4x6-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -905,7 +905,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -917,7 +917,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -925,7 +925,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -940,7 +940,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -948,7 +948,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -963,7 +963,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/color.jpg-4x6-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -971,7 +971,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -983,7 +983,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -991,7 +991,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1006,7 +1006,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1014,7 +1014,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1029,7 +1029,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/color.jpg-4x6-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1037,7 +1037,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -1049,7 +1049,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1057,7 +1057,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1072,7 +1072,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1080,7 +1080,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1095,7 +1095,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/color.jpg-4x6-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1103,7 +1103,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, srgb-16"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
@@ -1115,7 +1115,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-300dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1123,7 +1123,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, srgb-16, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1138,7 +1138,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1146,7 +1146,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 300dpi, srgb-16, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1161,7 +1161,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-16/color.jpg-4x6-srgb-16-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1169,7 +1169,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/color.jpg-4x6-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/color.jpg-4x6-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -1181,7 +1181,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-360dpi-20150616/black-1/color.jpg-4x6-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/color.jpg-4x6-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1189,7 +1189,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/color.jpg-4x6-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/color.jpg-4x6-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1204,7 +1204,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/black-1/color.jpg-4x6-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/color.jpg-4x6-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1212,7 +1212,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/color.jpg-4x6-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/color.jpg-4x6-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1227,7 +1227,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/black-1/color.jpg-4x6-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/color.jpg-4x6-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1235,7 +1235,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -1247,7 +1247,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1255,7 +1255,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1270,7 +1270,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1278,7 +1278,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1293,7 +1293,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/color.jpg-4x6-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1301,7 +1301,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -1313,7 +1313,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1321,7 +1321,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1336,7 +1336,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1344,7 +1344,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1359,7 +1359,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/color.jpg-4x6-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1367,7 +1367,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -1379,7 +1379,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1387,7 +1387,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1402,7 +1402,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1410,7 +1410,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1425,7 +1425,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/color.jpg-4x6-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1433,7 +1433,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, srgb-16"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
@@ -1445,7 +1445,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-360dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1453,7 +1453,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, srgb-16, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1468,7 +1468,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1476,7 +1476,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 360dpi, srgb-16, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1491,7 +1491,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-16/color.jpg-4x6-srgb-16-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1499,7 +1499,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/color.jpg-4x6-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/color.jpg-4x6-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -1511,7 +1511,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-600dpi-20150616/black-1/color.jpg-4x6-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/color.jpg-4x6-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1519,7 +1519,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/color.jpg-4x6-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/color.jpg-4x6-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1534,7 +1534,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/black-1/color.jpg-4x6-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/color.jpg-4x6-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1542,7 +1542,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/color.jpg-4x6-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/color.jpg-4x6-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1557,7 +1557,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/black-1/color.jpg-4x6-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/color.jpg-4x6-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1565,7 +1565,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -1577,7 +1577,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1585,7 +1585,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1600,7 +1600,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1608,7 +1608,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1623,7 +1623,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/color.jpg-4x6-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1631,7 +1631,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -1643,7 +1643,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1651,7 +1651,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1666,7 +1666,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1674,7 +1674,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1689,7 +1689,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/color.jpg-4x6-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1697,7 +1697,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -1709,7 +1709,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1717,7 +1717,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1732,7 +1732,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1740,7 +1740,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1755,7 +1755,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/color.jpg-4x6-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1763,7 +1763,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, srgb-16"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
@@ -1775,7 +1775,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-600dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1783,7 +1783,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, srgb-16, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1798,7 +1798,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1806,7 +1806,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 600dpi, srgb-16, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1821,7 +1821,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-16/color.jpg-4x6-srgb-16-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1829,7 +1829,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/color.jpg-4x6-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/color.jpg-4x6-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -1841,7 +1841,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-720dpi-20150616/black-1/color.jpg-4x6-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/color.jpg-4x6-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1849,7 +1849,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/color.jpg-4x6-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/color.jpg-4x6-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1864,7 +1864,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/black-1/color.jpg-4x6-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/color.jpg-4x6-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1872,7 +1872,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/color.jpg-4x6-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/color.jpg-4x6-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1887,7 +1887,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/black-1/color.jpg-4x6-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/color.jpg-4x6-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1895,7 +1895,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -1907,7 +1907,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1915,7 +1915,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1930,7 +1930,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1938,7 +1938,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -1953,7 +1953,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/color.jpg-4x6-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1961,7 +1961,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -1973,7 +1973,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -1981,7 +1981,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -1996,7 +1996,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2004,7 +2004,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2019,7 +2019,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/color.jpg-4x6-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2027,7 +2027,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -2039,7 +2039,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2047,7 +2047,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2062,7 +2062,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2070,7 +2070,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2085,7 +2085,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/color.jpg-4x6-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2093,7 +2093,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, srgb-16"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
@@ -2105,7 +2105,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "color.jpg-4x6"
- FILE pwg-raster-samples-720dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2113,7 +2113,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, srgb-16, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2128,7 +2128,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "color.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2136,7 +2136,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print color.jpg-4x6 @ 720dpi, srgb-16, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_16
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2151,7 +2151,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "color.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-16/color.jpg-4x6-srgb-16-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2159,7 +2159,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/document-a4-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/document-a4-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -2171,7 +2171,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-150dpi-20150616/black-1/document-a4-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/document-a4-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2179,7 +2179,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/document-a4-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/document-a4-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2194,7 +2194,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/black-1/document-a4-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/document-a4-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2202,7 +2202,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/document-a4-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/document-a4-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2217,7 +2217,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/black-1/document-a4-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/document-a4-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2225,7 +2225,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/document-a4-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/document-a4-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -2237,7 +2237,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/document-a4-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/document-a4-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2245,7 +2245,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/document-a4-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/document-a4-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2260,7 +2260,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/document-a4-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/document-a4-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2268,7 +2268,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/document-a4-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/document-a4-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2283,7 +2283,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/document-a4-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/document-a4-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2291,7 +2291,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/document-a4-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/document-a4-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -2303,7 +2303,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/document-a4-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/document-a4-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2311,7 +2311,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/document-a4-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/document-a4-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2326,7 +2326,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/document-a4-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/document-a4-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2334,7 +2334,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/document-a4-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/document-a4-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2349,7 +2349,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/document-a4-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/document-a4-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2357,7 +2357,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/document-a4-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/document-a4-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -2369,7 +2369,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/document-a4-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/document-a4-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2377,7 +2377,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/document-a4-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/document-a4-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2392,7 +2392,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/document-a4-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/document-a4-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2400,7 +2400,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 150dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/document-a4-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/document-a4-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2415,7 +2415,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/document-a4-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/document-a4-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2423,7 +2423,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/document-a4-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/document-a4-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -2435,7 +2435,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-180dpi-20150616/black-1/document-a4-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/document-a4-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2443,7 +2443,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/document-a4-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/document-a4-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2458,7 +2458,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/black-1/document-a4-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/document-a4-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2466,7 +2466,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/document-a4-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/document-a4-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2481,7 +2481,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/black-1/document-a4-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/document-a4-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2489,7 +2489,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/document-a4-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/document-a4-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -2501,7 +2501,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/document-a4-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/document-a4-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2509,7 +2509,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/document-a4-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/document-a4-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2524,7 +2524,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/document-a4-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/document-a4-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2532,7 +2532,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/document-a4-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/document-a4-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2547,7 +2547,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/document-a4-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/document-a4-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2555,7 +2555,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/document-a4-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/document-a4-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -2567,7 +2567,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/document-a4-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/document-a4-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2575,7 +2575,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/document-a4-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/document-a4-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2590,7 +2590,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/document-a4-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/document-a4-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2598,7 +2598,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/document-a4-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/document-a4-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2613,7 +2613,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/document-a4-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/document-a4-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2621,7 +2621,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/document-a4-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/document-a4-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -2633,7 +2633,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/document-a4-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/document-a4-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2641,7 +2641,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/document-a4-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/document-a4-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2656,7 +2656,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/document-a4-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/document-a4-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2664,7 +2664,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 180dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/document-a4-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/document-a4-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2679,7 +2679,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/document-a4-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/document-a4-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2687,7 +2687,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/document-a4-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/document-a4-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -2699,7 +2699,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-300dpi-20150616/black-1/document-a4-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/document-a4-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2707,7 +2707,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/document-a4-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/document-a4-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2722,7 +2722,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/black-1/document-a4-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/document-a4-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2730,7 +2730,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/document-a4-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/document-a4-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2745,7 +2745,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/black-1/document-a4-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/document-a4-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2753,7 +2753,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/document-a4-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/document-a4-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -2765,7 +2765,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/document-a4-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/document-a4-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2773,7 +2773,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/document-a4-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/document-a4-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2788,7 +2788,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/document-a4-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/document-a4-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2796,7 +2796,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/document-a4-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/document-a4-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2811,7 +2811,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/document-a4-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/document-a4-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2819,7 +2819,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/document-a4-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/document-a4-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -2831,7 +2831,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/document-a4-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/document-a4-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2839,7 +2839,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/document-a4-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/document-a4-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2854,7 +2854,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/document-a4-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/document-a4-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2862,7 +2862,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/document-a4-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/document-a4-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2877,7 +2877,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/document-a4-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/document-a4-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2885,7 +2885,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/document-a4-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/document-a4-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -2897,7 +2897,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/document-a4-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/document-a4-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2905,7 +2905,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/document-a4-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/document-a4-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2920,7 +2920,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/document-a4-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/document-a4-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2928,7 +2928,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 300dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/document-a4-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/document-a4-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -2943,7 +2943,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/document-a4-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/document-a4-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2951,7 +2951,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/document-a4-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/document-a4-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -2963,7 +2963,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-360dpi-20150616/black-1/document-a4-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/document-a4-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2971,7 +2971,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/document-a4-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/document-a4-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -2986,7 +2986,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/black-1/document-a4-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/document-a4-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -2994,7 +2994,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/document-a4-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/document-a4-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3009,7 +3009,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/black-1/document-a4-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/document-a4-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3017,7 +3017,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/document-a4-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/document-a4-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -3029,7 +3029,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/document-a4-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/document-a4-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3037,7 +3037,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/document-a4-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/document-a4-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3052,7 +3052,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/document-a4-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/document-a4-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3060,7 +3060,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/document-a4-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/document-a4-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3075,7 +3075,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/document-a4-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/document-a4-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3083,7 +3083,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/document-a4-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/document-a4-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -3095,7 +3095,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/document-a4-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/document-a4-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3103,7 +3103,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/document-a4-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/document-a4-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3118,7 +3118,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/document-a4-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/document-a4-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3126,7 +3126,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/document-a4-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/document-a4-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3141,7 +3141,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/document-a4-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/document-a4-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3149,7 +3149,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/document-a4-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/document-a4-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -3161,7 +3161,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/document-a4-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/document-a4-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3169,7 +3169,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/document-a4-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/document-a4-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3184,7 +3184,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/document-a4-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/document-a4-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3192,7 +3192,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 360dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/document-a4-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/document-a4-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3207,7 +3207,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/document-a4-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/document-a4-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3215,7 +3215,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/document-a4-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/document-a4-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -3227,7 +3227,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-600dpi-20150616/black-1/document-a4-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/document-a4-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3235,7 +3235,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/document-a4-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/document-a4-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3250,7 +3250,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/black-1/document-a4-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/document-a4-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3258,7 +3258,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/document-a4-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/document-a4-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3273,7 +3273,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/black-1/document-a4-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/document-a4-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3281,7 +3281,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/document-a4-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/document-a4-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -3293,7 +3293,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/document-a4-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/document-a4-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3301,7 +3301,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/document-a4-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/document-a4-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3316,7 +3316,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/document-a4-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/document-a4-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3324,7 +3324,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/document-a4-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/document-a4-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3339,7 +3339,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/document-a4-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/document-a4-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3347,7 +3347,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/document-a4-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/document-a4-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -3359,7 +3359,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/document-a4-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/document-a4-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3367,7 +3367,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/document-a4-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/document-a4-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3382,7 +3382,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/document-a4-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/document-a4-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3390,7 +3390,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/document-a4-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/document-a4-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3405,7 +3405,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/document-a4-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/document-a4-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3413,7 +3413,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/document-a4-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/document-a4-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -3425,7 +3425,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/document-a4-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/document-a4-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3433,7 +3433,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/document-a4-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/document-a4-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3448,7 +3448,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/document-a4-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/document-a4-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3456,7 +3456,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 600dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/document-a4-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/document-a4-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3471,7 +3471,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/document-a4-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/document-a4-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3479,7 +3479,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/document-a4-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/document-a4-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -3491,7 +3491,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-720dpi-20150616/black-1/document-a4-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/document-a4-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3499,7 +3499,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/document-a4-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/document-a4-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3514,7 +3514,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/black-1/document-a4-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/document-a4-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3522,7 +3522,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/document-a4-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/document-a4-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3537,7 +3537,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/black-1/document-a4-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/document-a4-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3545,7 +3545,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/document-a4-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/document-a4-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -3557,7 +3557,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/document-a4-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/document-a4-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3565,7 +3565,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/document-a4-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/document-a4-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3580,7 +3580,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/document-a4-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/document-a4-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3588,7 +3588,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/document-a4-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/document-a4-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3603,7 +3603,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/document-a4-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/document-a4-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3611,7 +3611,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/document-a4-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/document-a4-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -3623,7 +3623,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/document-a4-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/document-a4-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3631,7 +3631,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/document-a4-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/document-a4-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3646,7 +3646,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/document-a4-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/document-a4-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3654,7 +3654,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/document-a4-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/document-a4-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3669,7 +3669,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/document-a4-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/document-a4-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3677,7 +3677,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/document-a4-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/document-a4-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -3689,7 +3689,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-a4"
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/document-a4-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/document-a4-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3697,7 +3697,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/document-a4-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/document-a4-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3712,7 +3712,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/document-a4-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/document-a4-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3720,7 +3720,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-a4 @ 720dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/document-a4-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/document-a4-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3735,7 +3735,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/document-a4-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/document-a4-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3743,7 +3743,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/document-letter-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/document-letter-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -3755,7 +3755,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-150dpi-20150616/black-1/document-letter-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/document-letter-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3763,7 +3763,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/document-letter-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/document-letter-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3778,7 +3778,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/black-1/document-letter-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/document-letter-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3786,7 +3786,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/document-letter-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/document-letter-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3801,7 +3801,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/black-1/document-letter-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/document-letter-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3809,7 +3809,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/document-letter-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/document-letter-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -3821,7 +3821,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/document-letter-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/document-letter-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3829,7 +3829,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/document-letter-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/document-letter-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3844,7 +3844,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/document-letter-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/document-letter-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3852,7 +3852,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/document-letter-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/document-letter-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3867,7 +3867,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/document-letter-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/document-letter-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3875,7 +3875,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/document-letter-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/document-letter-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -3887,7 +3887,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/document-letter-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/document-letter-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3895,7 +3895,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/document-letter-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/document-letter-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3910,7 +3910,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/document-letter-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/document-letter-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3918,7 +3918,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/document-letter-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/document-letter-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3933,7 +3933,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/document-letter-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/document-letter-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3941,7 +3941,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/document-letter-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/document-letter-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -3953,7 +3953,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/document-letter-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/document-letter-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3961,7 +3961,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/document-letter-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/document-letter-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -3976,7 +3976,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/document-letter-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/document-letter-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -3984,7 +3984,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 150dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/document-letter-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/document-letter-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -3999,7 +3999,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/document-letter-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/document-letter-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4007,7 +4007,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/document-letter-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/document-letter-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -4019,7 +4019,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-180dpi-20150616/black-1/document-letter-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/document-letter-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4027,7 +4027,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/document-letter-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/document-letter-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4042,7 +4042,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/black-1/document-letter-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/document-letter-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4050,7 +4050,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/document-letter-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/document-letter-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4065,7 +4065,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/black-1/document-letter-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/document-letter-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4073,7 +4073,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/document-letter-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/document-letter-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -4085,7 +4085,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/document-letter-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/document-letter-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4093,7 +4093,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/document-letter-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/document-letter-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4108,7 +4108,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/document-letter-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/document-letter-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4116,7 +4116,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/document-letter-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/document-letter-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4131,7 +4131,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/document-letter-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/document-letter-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4139,7 +4139,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/document-letter-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/document-letter-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -4151,7 +4151,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/document-letter-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/document-letter-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4159,7 +4159,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/document-letter-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/document-letter-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4174,7 +4174,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/document-letter-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/document-letter-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4182,7 +4182,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/document-letter-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/document-letter-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4197,7 +4197,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/document-letter-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/document-letter-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4205,7 +4205,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/document-letter-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/document-letter-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -4217,7 +4217,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/document-letter-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/document-letter-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4225,7 +4225,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/document-letter-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/document-letter-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4240,7 +4240,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/document-letter-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/document-letter-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4248,7 +4248,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 180dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/document-letter-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/document-letter-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4263,7 +4263,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/document-letter-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/document-letter-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4271,7 +4271,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/document-letter-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/document-letter-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -4283,7 +4283,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-300dpi-20150616/black-1/document-letter-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/document-letter-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4291,7 +4291,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/document-letter-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/document-letter-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4306,7 +4306,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/black-1/document-letter-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/document-letter-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4314,7 +4314,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/document-letter-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/document-letter-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4329,7 +4329,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/black-1/document-letter-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/document-letter-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4337,7 +4337,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/document-letter-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/document-letter-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -4349,7 +4349,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/document-letter-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/document-letter-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4357,7 +4357,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/document-letter-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/document-letter-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4372,7 +4372,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/document-letter-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/document-letter-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4380,7 +4380,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/document-letter-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/document-letter-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4395,7 +4395,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/document-letter-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/document-letter-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4403,7 +4403,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/document-letter-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/document-letter-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -4415,7 +4415,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/document-letter-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/document-letter-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4423,7 +4423,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/document-letter-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/document-letter-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4438,7 +4438,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/document-letter-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/document-letter-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4446,7 +4446,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/document-letter-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/document-letter-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4461,7 +4461,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/document-letter-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/document-letter-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4469,7 +4469,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/document-letter-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/document-letter-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -4481,7 +4481,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/document-letter-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/document-letter-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4489,7 +4489,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/document-letter-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/document-letter-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4504,7 +4504,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/document-letter-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/document-letter-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4512,7 +4512,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 300dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/document-letter-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/document-letter-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4527,7 +4527,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/document-letter-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/document-letter-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4535,7 +4535,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/document-letter-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/document-letter-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -4547,7 +4547,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-360dpi-20150616/black-1/document-letter-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/document-letter-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4555,7 +4555,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/document-letter-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/document-letter-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4570,7 +4570,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/black-1/document-letter-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/document-letter-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4578,7 +4578,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/document-letter-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/document-letter-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4593,7 +4593,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/black-1/document-letter-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/document-letter-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4601,7 +4601,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/document-letter-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/document-letter-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -4613,7 +4613,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/document-letter-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/document-letter-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4621,7 +4621,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/document-letter-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/document-letter-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4636,7 +4636,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/document-letter-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/document-letter-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4644,7 +4644,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/document-letter-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/document-letter-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4659,7 +4659,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/document-letter-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/document-letter-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4667,7 +4667,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/document-letter-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/document-letter-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -4679,7 +4679,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/document-letter-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/document-letter-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4687,7 +4687,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/document-letter-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/document-letter-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4702,7 +4702,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/document-letter-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/document-letter-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4710,7 +4710,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/document-letter-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/document-letter-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4725,7 +4725,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/document-letter-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/document-letter-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4733,7 +4733,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/document-letter-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/document-letter-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -4745,7 +4745,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/document-letter-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/document-letter-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4753,7 +4753,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/document-letter-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/document-letter-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4768,7 +4768,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/document-letter-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/document-letter-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4776,7 +4776,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 360dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/document-letter-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/document-letter-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4791,7 +4791,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/document-letter-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/document-letter-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4799,7 +4799,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/document-letter-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/document-letter-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -4811,7 +4811,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-600dpi-20150616/black-1/document-letter-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/document-letter-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4819,7 +4819,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/document-letter-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/document-letter-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4834,7 +4834,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/black-1/document-letter-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/document-letter-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4842,7 +4842,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/document-letter-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/document-letter-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4857,7 +4857,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/black-1/document-letter-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/document-letter-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4865,7 +4865,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/document-letter-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/document-letter-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -4877,7 +4877,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/document-letter-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/document-letter-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4885,7 +4885,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/document-letter-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/document-letter-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4900,7 +4900,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/document-letter-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/document-letter-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4908,7 +4908,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/document-letter-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/document-letter-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4923,7 +4923,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/document-letter-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/document-letter-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4931,7 +4931,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/document-letter-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/document-letter-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -4943,7 +4943,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/document-letter-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/document-letter-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4951,7 +4951,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/document-letter-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/document-letter-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -4966,7 +4966,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/document-letter-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/document-letter-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4974,7 +4974,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/document-letter-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/document-letter-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -4989,7 +4989,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/document-letter-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/document-letter-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -4997,7 +4997,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/document-letter-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/document-letter-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -5009,7 +5009,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/document-letter-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/document-letter-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5017,7 +5017,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/document-letter-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/document-letter-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5032,7 +5032,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/document-letter-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/document-letter-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5040,7 +5040,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 600dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/document-letter-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/document-letter-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5055,7 +5055,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/document-letter-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/document-letter-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5063,7 +5063,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/document-letter-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/document-letter-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -5075,7 +5075,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-720dpi-20150616/black-1/document-letter-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/document-letter-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5083,7 +5083,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/document-letter-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/document-letter-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5098,7 +5098,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/black-1/document-letter-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/document-letter-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5106,7 +5106,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/document-letter-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/document-letter-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5121,7 +5121,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/black-1/document-letter-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/document-letter-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5129,7 +5129,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/document-letter-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/document-letter-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -5141,7 +5141,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/document-letter-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/document-letter-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5149,7 +5149,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/document-letter-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/document-letter-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5164,7 +5164,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/document-letter-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/document-letter-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5172,7 +5172,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/document-letter-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/document-letter-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5187,7 +5187,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/document-letter-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/document-letter-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5195,7 +5195,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/document-letter-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/document-letter-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -5207,7 +5207,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/document-letter-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/document-letter-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5215,7 +5215,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/document-letter-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/document-letter-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5230,7 +5230,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/document-letter-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/document-letter-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5238,7 +5238,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/document-letter-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/document-letter-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5253,7 +5253,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/document-letter-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/document-letter-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5261,7 +5261,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/document-letter-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/document-letter-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -5273,7 +5273,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "document-letter"
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/document-letter-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/document-letter-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5281,7 +5281,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/document-letter-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/document-letter-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5296,7 +5296,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "document-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/document-letter-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/document-letter-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5304,7 +5304,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print document-letter @ 720dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/document-letter-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/document-letter-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5319,7 +5319,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "document-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/document-letter-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/document-letter-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5327,7 +5327,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/gray.jpg-4x6-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/gray.jpg-4x6-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -5339,7 +5339,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-150dpi-20150616/black-1/gray.jpg-4x6-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/gray.jpg-4x6-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5347,7 +5347,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/gray.jpg-4x6-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/gray.jpg-4x6-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5362,7 +5362,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/black-1/gray.jpg-4x6-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/gray.jpg-4x6-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5370,7 +5370,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/gray.jpg-4x6-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/gray.jpg-4x6-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5385,7 +5385,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/black-1/gray.jpg-4x6-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/gray.jpg-4x6-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5393,7 +5393,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -5405,7 +5405,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5413,7 +5413,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5428,7 +5428,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5436,7 +5436,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5451,7 +5451,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/gray.jpg-4x6-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5459,7 +5459,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -5471,7 +5471,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5479,7 +5479,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5494,7 +5494,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5502,7 +5502,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 150dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5517,7 +5517,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/gray.jpg-4x6-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5525,7 +5525,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/gray.jpg-4x6-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/gray.jpg-4x6-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -5537,7 +5537,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-180dpi-20150616/black-1/gray.jpg-4x6-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/gray.jpg-4x6-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5545,7 +5545,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/gray.jpg-4x6-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/gray.jpg-4x6-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5560,7 +5560,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/black-1/gray.jpg-4x6-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/gray.jpg-4x6-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5568,7 +5568,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/gray.jpg-4x6-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/gray.jpg-4x6-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5583,7 +5583,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/black-1/gray.jpg-4x6-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/gray.jpg-4x6-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5591,7 +5591,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -5603,7 +5603,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5611,7 +5611,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5626,7 +5626,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5634,7 +5634,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5649,7 +5649,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/gray.jpg-4x6-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5657,7 +5657,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -5669,7 +5669,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5677,7 +5677,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5692,7 +5692,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5700,7 +5700,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 180dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5715,7 +5715,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/gray.jpg-4x6-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5723,7 +5723,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/gray.jpg-4x6-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/gray.jpg-4x6-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -5735,7 +5735,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-300dpi-20150616/black-1/gray.jpg-4x6-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/gray.jpg-4x6-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5743,7 +5743,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/gray.jpg-4x6-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/gray.jpg-4x6-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5758,7 +5758,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/black-1/gray.jpg-4x6-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/gray.jpg-4x6-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5766,7 +5766,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/gray.jpg-4x6-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/gray.jpg-4x6-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5781,7 +5781,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/black-1/gray.jpg-4x6-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/gray.jpg-4x6-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5789,7 +5789,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -5801,7 +5801,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5809,7 +5809,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5824,7 +5824,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5832,7 +5832,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5847,7 +5847,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/gray.jpg-4x6-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5855,7 +5855,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -5867,7 +5867,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5875,7 +5875,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5890,7 +5890,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5898,7 +5898,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 300dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5913,7 +5913,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/gray.jpg-4x6-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5921,7 +5921,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/gray.jpg-4x6-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/gray.jpg-4x6-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -5933,7 +5933,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-360dpi-20150616/black-1/gray.jpg-4x6-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/gray.jpg-4x6-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5941,7 +5941,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/gray.jpg-4x6-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/gray.jpg-4x6-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -5956,7 +5956,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/black-1/gray.jpg-4x6-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/gray.jpg-4x6-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5964,7 +5964,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/gray.jpg-4x6-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/gray.jpg-4x6-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -5979,7 +5979,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/black-1/gray.jpg-4x6-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/gray.jpg-4x6-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -5987,7 +5987,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -5999,7 +5999,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6007,7 +6007,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6022,7 +6022,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6030,7 +6030,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6045,7 +6045,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/gray.jpg-4x6-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6053,7 +6053,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -6065,7 +6065,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6073,7 +6073,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6088,7 +6088,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6096,7 +6096,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 360dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6111,7 +6111,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/gray.jpg-4x6-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6119,7 +6119,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/gray.jpg-4x6-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/gray.jpg-4x6-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -6131,7 +6131,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-600dpi-20150616/black-1/gray.jpg-4x6-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/gray.jpg-4x6-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6139,7 +6139,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/gray.jpg-4x6-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/gray.jpg-4x6-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6154,7 +6154,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/black-1/gray.jpg-4x6-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/gray.jpg-4x6-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6162,7 +6162,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/gray.jpg-4x6-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/gray.jpg-4x6-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6177,7 +6177,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/black-1/gray.jpg-4x6-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/gray.jpg-4x6-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6185,7 +6185,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -6197,7 +6197,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6205,7 +6205,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6220,7 +6220,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6228,7 +6228,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6243,7 +6243,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/gray.jpg-4x6-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6251,7 +6251,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -6263,7 +6263,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6271,7 +6271,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6286,7 +6286,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6294,7 +6294,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 600dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6309,7 +6309,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/gray.jpg-4x6-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6317,7 +6317,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/gray.jpg-4x6-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/gray.jpg-4x6-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -6329,7 +6329,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-720dpi-20150616/black-1/gray.jpg-4x6-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/gray.jpg-4x6-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6337,7 +6337,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/gray.jpg-4x6-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/gray.jpg-4x6-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6352,7 +6352,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/black-1/gray.jpg-4x6-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/gray.jpg-4x6-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6360,7 +6360,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/gray.jpg-4x6-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/gray.jpg-4x6-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6375,7 +6375,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/black-1/gray.jpg-4x6-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/gray.jpg-4x6-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6383,7 +6383,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -6395,7 +6395,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6403,7 +6403,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6418,7 +6418,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6426,7 +6426,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6441,7 +6441,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/gray.jpg-4x6-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6449,7 +6449,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -6461,7 +6461,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "gray.jpg-4x6"
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6469,7 +6469,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6484,7 +6484,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "gray.jpg-4x6"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6492,7 +6492,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print gray.jpg-4x6 @ 720dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6507,7 +6507,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "gray.jpg-4x6"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/gray.jpg-4x6-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6515,7 +6515,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/onepage-a4-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/onepage-a4-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -6527,7 +6527,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-150dpi-20150616/black-1/onepage-a4-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/onepage-a4-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6535,7 +6535,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/onepage-a4-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/onepage-a4-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6550,7 +6550,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/black-1/onepage-a4-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/onepage-a4-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6558,7 +6558,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/onepage-a4-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/onepage-a4-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6573,7 +6573,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/black-1/onepage-a4-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/onepage-a4-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6581,7 +6581,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -6593,7 +6593,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6601,7 +6601,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6616,7 +6616,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6624,7 +6624,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6639,7 +6639,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/onepage-a4-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6647,7 +6647,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/onepage-a4-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/onepage-a4-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -6659,7 +6659,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/onepage-a4-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/onepage-a4-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6667,7 +6667,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/onepage-a4-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/onepage-a4-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6682,7 +6682,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/onepage-a4-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/onepage-a4-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6690,7 +6690,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/onepage-a4-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/onepage-a4-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6705,7 +6705,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/onepage-a4-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/onepage-a4-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6713,7 +6713,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/onepage-a4-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/onepage-a4-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -6725,7 +6725,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/onepage-a4-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/onepage-a4-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6733,7 +6733,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/onepage-a4-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/onepage-a4-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6748,7 +6748,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/onepage-a4-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/onepage-a4-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6756,7 +6756,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 150dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/onepage-a4-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/onepage-a4-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6771,7 +6771,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/onepage-a4-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/onepage-a4-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6779,7 +6779,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/onepage-a4-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/onepage-a4-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -6791,7 +6791,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-180dpi-20150616/black-1/onepage-a4-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/onepage-a4-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6799,7 +6799,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/onepage-a4-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/onepage-a4-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6814,7 +6814,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/black-1/onepage-a4-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/onepage-a4-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6822,7 +6822,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/onepage-a4-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/onepage-a4-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6837,7 +6837,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/black-1/onepage-a4-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/onepage-a4-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6845,7 +6845,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -6857,7 +6857,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6865,7 +6865,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6880,7 +6880,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6888,7 +6888,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6903,7 +6903,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/onepage-a4-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6911,7 +6911,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/onepage-a4-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/onepage-a4-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -6923,7 +6923,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/onepage-a4-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/onepage-a4-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6931,7 +6931,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/onepage-a4-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/onepage-a4-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -6946,7 +6946,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/onepage-a4-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/onepage-a4-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6954,7 +6954,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/onepage-a4-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/onepage-a4-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -6969,7 +6969,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/onepage-a4-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/onepage-a4-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6977,7 +6977,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/onepage-a4-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/onepage-a4-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -6989,7 +6989,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/onepage-a4-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/onepage-a4-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -6997,7 +6997,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/onepage-a4-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/onepage-a4-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7012,7 +7012,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/onepage-a4-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/onepage-a4-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7020,7 +7020,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 180dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/onepage-a4-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/onepage-a4-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7035,7 +7035,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/onepage-a4-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/onepage-a4-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7043,7 +7043,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/onepage-a4-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/onepage-a4-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -7055,7 +7055,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-300dpi-20150616/black-1/onepage-a4-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/onepage-a4-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7063,7 +7063,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/onepage-a4-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/onepage-a4-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7078,7 +7078,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/black-1/onepage-a4-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/onepage-a4-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7086,7 +7086,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/onepage-a4-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/onepage-a4-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7101,7 +7101,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/black-1/onepage-a4-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/onepage-a4-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7109,7 +7109,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -7121,7 +7121,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7129,7 +7129,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7144,7 +7144,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7152,7 +7152,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7167,7 +7167,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/onepage-a4-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7175,7 +7175,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/onepage-a4-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/onepage-a4-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -7187,7 +7187,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/onepage-a4-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/onepage-a4-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7195,7 +7195,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/onepage-a4-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/onepage-a4-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7210,7 +7210,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/onepage-a4-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/onepage-a4-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7218,7 +7218,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/onepage-a4-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/onepage-a4-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7233,7 +7233,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/onepage-a4-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/onepage-a4-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7241,7 +7241,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/onepage-a4-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/onepage-a4-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -7253,7 +7253,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/onepage-a4-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/onepage-a4-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7261,7 +7261,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/onepage-a4-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/onepage-a4-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7276,7 +7276,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/onepage-a4-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/onepage-a4-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7284,7 +7284,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 300dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/onepage-a4-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/onepage-a4-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7299,7 +7299,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/onepage-a4-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/onepage-a4-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7307,7 +7307,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/onepage-a4-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/onepage-a4-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -7319,7 +7319,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-360dpi-20150616/black-1/onepage-a4-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/onepage-a4-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7327,7 +7327,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/onepage-a4-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/onepage-a4-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7342,7 +7342,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/black-1/onepage-a4-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/onepage-a4-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7350,7 +7350,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/onepage-a4-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/onepage-a4-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7365,7 +7365,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/black-1/onepage-a4-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/onepage-a4-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7373,7 +7373,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -7385,7 +7385,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7393,7 +7393,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7408,7 +7408,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7416,7 +7416,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7431,7 +7431,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/onepage-a4-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7439,7 +7439,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/onepage-a4-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/onepage-a4-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -7451,7 +7451,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/onepage-a4-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/onepage-a4-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7459,7 +7459,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/onepage-a4-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/onepage-a4-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7474,7 +7474,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/onepage-a4-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/onepage-a4-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7482,7 +7482,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/onepage-a4-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/onepage-a4-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7497,7 +7497,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/onepage-a4-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/onepage-a4-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7505,7 +7505,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/onepage-a4-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/onepage-a4-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -7517,7 +7517,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/onepage-a4-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/onepage-a4-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7525,7 +7525,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/onepage-a4-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/onepage-a4-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7540,7 +7540,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/onepage-a4-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/onepage-a4-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7548,7 +7548,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 360dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/onepage-a4-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/onepage-a4-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7563,7 +7563,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/onepage-a4-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/onepage-a4-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7571,7 +7571,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/onepage-a4-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/onepage-a4-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -7583,7 +7583,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-600dpi-20150616/black-1/onepage-a4-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/onepage-a4-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7591,7 +7591,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/onepage-a4-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/onepage-a4-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7606,7 +7606,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/black-1/onepage-a4-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/onepage-a4-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7614,7 +7614,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/onepage-a4-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/onepage-a4-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7629,7 +7629,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/black-1/onepage-a4-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/onepage-a4-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7637,7 +7637,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -7649,7 +7649,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7657,7 +7657,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7672,7 +7672,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7680,7 +7680,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7695,7 +7695,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/onepage-a4-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7703,7 +7703,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/onepage-a4-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/onepage-a4-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -7715,7 +7715,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/onepage-a4-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/onepage-a4-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7723,7 +7723,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/onepage-a4-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/onepage-a4-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7738,7 +7738,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/onepage-a4-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/onepage-a4-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7746,7 +7746,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/onepage-a4-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/onepage-a4-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7761,7 +7761,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/onepage-a4-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/onepage-a4-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7769,7 +7769,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/onepage-a4-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/onepage-a4-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -7781,7 +7781,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/onepage-a4-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/onepage-a4-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7789,7 +7789,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/onepage-a4-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/onepage-a4-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7804,7 +7804,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/onepage-a4-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/onepage-a4-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7812,7 +7812,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 600dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/onepage-a4-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/onepage-a4-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7827,7 +7827,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/onepage-a4-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/onepage-a4-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7835,7 +7835,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/onepage-a4-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/onepage-a4-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -7847,7 +7847,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-720dpi-20150616/black-1/onepage-a4-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/onepage-a4-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7855,7 +7855,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/onepage-a4-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/onepage-a4-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7870,7 +7870,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/black-1/onepage-a4-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/onepage-a4-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7878,7 +7878,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/onepage-a4-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/onepage-a4-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7893,7 +7893,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/black-1/onepage-a4-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/onepage-a4-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7901,7 +7901,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -7913,7 +7913,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7921,7 +7921,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -7936,7 +7936,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7944,7 +7944,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -7959,7 +7959,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/onepage-a4-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7967,7 +7967,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/onepage-a4-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/onepage-a4-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -7979,7 +7979,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/onepage-a4-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/onepage-a4-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -7987,7 +7987,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/onepage-a4-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/onepage-a4-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8002,7 +8002,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/onepage-a4-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/onepage-a4-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8010,7 +8010,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/onepage-a4-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/onepage-a4-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8025,7 +8025,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/onepage-a4-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/onepage-a4-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8033,7 +8033,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/onepage-a4-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/onepage-a4-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -8045,7 +8045,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-a4"
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/onepage-a4-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/onepage-a4-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8053,7 +8053,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/onepage-a4-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/onepage-a4-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8068,7 +8068,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-a4"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/onepage-a4-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/onepage-a4-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8076,7 +8076,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-a4 @ 720dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/onepage-a4-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/onepage-a4-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8091,7 +8091,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-a4"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/onepage-a4-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/onepage-a4-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8099,7 +8099,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/onepage-letter-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/onepage-letter-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -8111,7 +8111,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-150dpi-20150616/black-1/onepage-letter-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/onepage-letter-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8119,7 +8119,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/onepage-letter-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/onepage-letter-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8134,7 +8134,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/black-1/onepage-letter-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/onepage-letter-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8142,7 +8142,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/black-1/onepage-letter-black-1-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/black-1/onepage-letter-black-1-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8157,7 +8157,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/black-1/onepage-letter-black-1-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/black-1/onepage-letter-black-1-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8165,7 +8165,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -8177,7 +8177,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8185,7 +8185,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8200,7 +8200,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8208,7 +8208,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8223,7 +8223,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/cmyk-8/onepage-letter-cmyk-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8231,7 +8231,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/onepage-letter-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/onepage-letter-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -8243,7 +8243,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/onepage-letter-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/onepage-letter-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8251,7 +8251,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/onepage-letter-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/onepage-letter-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8266,7 +8266,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/onepage-letter-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/onepage-letter-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8274,7 +8274,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/sgray-8/onepage-letter-sgray-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/sgray-8/onepage-letter-sgray-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8289,7 +8289,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/sgray-8/onepage-letter-sgray-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/sgray-8/onepage-letter-sgray-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8297,7 +8297,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/onepage-letter-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/onepage-letter-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -8309,7 +8309,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/onepage-letter-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/onepage-letter-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8317,7 +8317,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/onepage-letter-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/onepage-letter-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8332,7 +8332,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/onepage-letter-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/onepage-letter-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8340,7 +8340,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 150dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-150dpi-20150616/srgb-8/onepage-letter-srgb-8-150dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-150dpi/srgb-8/onepage-letter-srgb-8-150dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_150DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8355,7 +8355,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-150dpi-20150616/srgb-8/onepage-letter-srgb-8-150dpi.pwg
+ FILE pwg-raster-samples-150dpi/srgb-8/onepage-letter-srgb-8-150dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8363,7 +8363,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/onepage-letter-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/onepage-letter-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -8375,7 +8375,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-180dpi-20150616/black-1/onepage-letter-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/onepage-letter-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8383,7 +8383,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/onepage-letter-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/onepage-letter-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8398,7 +8398,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/black-1/onepage-letter-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/onepage-letter-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8406,7 +8406,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/black-1/onepage-letter-black-1-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/black-1/onepage-letter-black-1-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8421,7 +8421,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/black-1/onepage-letter-black-1-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/black-1/onepage-letter-black-1-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8429,7 +8429,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -8441,7 +8441,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8449,7 +8449,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8464,7 +8464,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8472,7 +8472,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8487,7 +8487,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/cmyk-8/onepage-letter-cmyk-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8495,7 +8495,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/onepage-letter-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/onepage-letter-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -8507,7 +8507,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/onepage-letter-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/onepage-letter-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8515,7 +8515,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/onepage-letter-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/onepage-letter-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8530,7 +8530,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/onepage-letter-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/onepage-letter-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8538,7 +8538,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/sgray-8/onepage-letter-sgray-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/sgray-8/onepage-letter-sgray-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8553,7 +8553,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/sgray-8/onepage-letter-sgray-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/sgray-8/onepage-letter-sgray-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8561,7 +8561,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/onepage-letter-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/onepage-letter-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -8573,7 +8573,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/onepage-letter-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/onepage-letter-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8581,7 +8581,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/onepage-letter-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/onepage-letter-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8596,7 +8596,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/onepage-letter-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/onepage-letter-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8604,7 +8604,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 180dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-180dpi-20150616/srgb-8/onepage-letter-srgb-8-180dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-180dpi/srgb-8/onepage-letter-srgb-8-180dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_180DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8619,7 +8619,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-180dpi-20150616/srgb-8/onepage-letter-srgb-8-180dpi.pwg
+ FILE pwg-raster-samples-180dpi/srgb-8/onepage-letter-srgb-8-180dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8627,7 +8627,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/onepage-letter-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/onepage-letter-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -8639,7 +8639,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-300dpi-20150616/black-1/onepage-letter-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/onepage-letter-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8647,7 +8647,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/onepage-letter-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/onepage-letter-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8662,7 +8662,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/black-1/onepage-letter-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/onepage-letter-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8670,7 +8670,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/black-1/onepage-letter-black-1-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/black-1/onepage-letter-black-1-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8685,7 +8685,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/black-1/onepage-letter-black-1-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/black-1/onepage-letter-black-1-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8693,7 +8693,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -8705,7 +8705,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8713,7 +8713,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8728,7 +8728,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8736,7 +8736,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8751,7 +8751,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/cmyk-8/onepage-letter-cmyk-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8759,7 +8759,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/onepage-letter-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/onepage-letter-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -8771,7 +8771,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/onepage-letter-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/onepage-letter-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8779,7 +8779,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/onepage-letter-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/onepage-letter-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8794,7 +8794,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/onepage-letter-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/onepage-letter-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8802,7 +8802,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/sgray-8/onepage-letter-sgray-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/sgray-8/onepage-letter-sgray-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8817,7 +8817,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/sgray-8/onepage-letter-sgray-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/sgray-8/onepage-letter-sgray-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8825,7 +8825,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/onepage-letter-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/onepage-letter-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -8837,7 +8837,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/onepage-letter-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/onepage-letter-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8845,7 +8845,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/onepage-letter-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/onepage-letter-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8860,7 +8860,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/onepage-letter-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/onepage-letter-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8868,7 +8868,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 300dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-300dpi-20150616/srgb-8/onepage-letter-srgb-8-300dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-300dpi/srgb-8/onepage-letter-srgb-8-300dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_300DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8883,7 +8883,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-300dpi-20150616/srgb-8/onepage-letter-srgb-8-300dpi.pwg
+ FILE pwg-raster-samples-300dpi/srgb-8/onepage-letter-srgb-8-300dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8891,7 +8891,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/onepage-letter-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/onepage-letter-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -8903,7 +8903,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-360dpi-20150616/black-1/onepage-letter-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/onepage-letter-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8911,7 +8911,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/onepage-letter-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/onepage-letter-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8926,7 +8926,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/black-1/onepage-letter-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/onepage-letter-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8934,7 +8934,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/black-1/onepage-letter-black-1-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/black-1/onepage-letter-black-1-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -8949,7 +8949,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/black-1/onepage-letter-black-1-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/black-1/onepage-letter-black-1-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8957,7 +8957,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -8969,7 +8969,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -8977,7 +8977,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -8992,7 +8992,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9000,7 +9000,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9015,7 +9015,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/cmyk-8/onepage-letter-cmyk-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9023,7 +9023,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/onepage-letter-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/onepage-letter-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -9035,7 +9035,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/onepage-letter-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/onepage-letter-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9043,7 +9043,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/onepage-letter-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/onepage-letter-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9058,7 +9058,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/onepage-letter-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/onepage-letter-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9066,7 +9066,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/sgray-8/onepage-letter-sgray-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/sgray-8/onepage-letter-sgray-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9081,7 +9081,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/sgray-8/onepage-letter-sgray-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/sgray-8/onepage-letter-sgray-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9089,7 +9089,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/onepage-letter-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/onepage-letter-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -9101,7 +9101,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/onepage-letter-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/onepage-letter-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9109,7 +9109,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/onepage-letter-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/onepage-letter-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9124,7 +9124,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/onepage-letter-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/onepage-letter-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9132,7 +9132,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 360dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-360dpi-20150616/srgb-8/onepage-letter-srgb-8-360dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-360dpi/srgb-8/onepage-letter-srgb-8-360dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_360DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9147,7 +9147,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-360dpi-20150616/srgb-8/onepage-letter-srgb-8-360dpi.pwg
+ FILE pwg-raster-samples-360dpi/srgb-8/onepage-letter-srgb-8-360dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9155,7 +9155,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/onepage-letter-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/onepage-letter-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -9167,7 +9167,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-600dpi-20150616/black-1/onepage-letter-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/onepage-letter-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9175,7 +9175,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/onepage-letter-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/onepage-letter-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9190,7 +9190,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/black-1/onepage-letter-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/onepage-letter-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9198,7 +9198,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/black-1/onepage-letter-black-1-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/black-1/onepage-letter-black-1-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9213,7 +9213,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/black-1/onepage-letter-black-1-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/black-1/onepage-letter-black-1-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9221,7 +9221,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -9233,7 +9233,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9241,7 +9241,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9256,7 +9256,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9264,7 +9264,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9279,7 +9279,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/cmyk-8/onepage-letter-cmyk-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9287,7 +9287,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/onepage-letter-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/onepage-letter-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -9299,7 +9299,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/onepage-letter-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/onepage-letter-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9307,7 +9307,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/onepage-letter-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/onepage-letter-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9322,7 +9322,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/onepage-letter-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/onepage-letter-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9330,7 +9330,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/sgray-8/onepage-letter-sgray-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/sgray-8/onepage-letter-sgray-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9345,7 +9345,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/sgray-8/onepage-letter-sgray-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/sgray-8/onepage-letter-sgray-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9353,7 +9353,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/onepage-letter-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/onepage-letter-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -9365,7 +9365,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/onepage-letter-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/onepage-letter-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9373,7 +9373,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/onepage-letter-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/onepage-letter-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9388,7 +9388,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/onepage-letter-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/onepage-letter-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9396,7 +9396,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 600dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-600dpi-20150616/srgb-8/onepage-letter-srgb-8-600dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-600dpi/srgb-8/onepage-letter-srgb-8-600dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_600DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9411,7 +9411,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-600dpi-20150616/srgb-8/onepage-letter-srgb-8-600dpi.pwg
+ FILE pwg-raster-samples-600dpi/srgb-8/onepage-letter-srgb-8-600dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9419,7 +9419,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, black-1"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/onepage-letter-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/onepage-letter-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
@@ -9431,7 +9431,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-720dpi-20150616/black-1/onepage-letter-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/onepage-letter-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9439,7 +9439,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, black-1, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/onepage-letter-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/onepage-letter-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9454,7 +9454,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/black-1/onepage-letter-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/onepage-letter-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9462,7 +9462,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, black-1, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/black-1/onepage-letter-black-1-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/black-1/onepage-letter-black-1-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_BLACK_1
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9477,7 +9477,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/black-1/onepage-letter-black-1-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/black-1/onepage-letter-black-1-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9485,7 +9485,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, cmyk-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
@@ -9497,7 +9497,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9505,7 +9505,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, cmyk-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9520,7 +9520,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9528,7 +9528,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, cmyk-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_CMYK_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9543,7 +9543,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/cmyk-8/onepage-letter-cmyk-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9551,7 +9551,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, sgray-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/onepage-letter-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/onepage-letter-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
@@ -9563,7 +9563,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/onepage-letter-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/onepage-letter-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9571,7 +9571,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, sgray-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/onepage-letter-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/onepage-letter-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9586,7 +9586,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/onepage-letter-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/onepage-letter-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9594,7 +9594,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, sgray-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/sgray-8/onepage-letter-sgray-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/sgray-8/onepage-letter-sgray-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SGRAY_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9609,7 +9609,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/sgray-8/onepage-letter-sgray-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/sgray-8/onepage-letter-sgray-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9617,7 +9617,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, srgb-8"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/onepage-letter-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/onepage-letter-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
@@ -9629,7 +9629,7 @@ INCLUDE "ipp-2.0.test"
ATTR name requesting-user-name $user
ATTR mimeMediaType document-format image/pwg-raster
ATTR name job-name "onepage-letter"
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/onepage-letter-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/onepage-letter-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9637,7 +9637,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, srgb-8, deflate"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/onepage-letter-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/onepage-letter-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_DEFLATE
@@ -9652,7 +9652,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression deflate
ATTR name job-name "onepage-letter"
COMPRESSION deflate
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/onepage-letter-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/onepage-letter-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
@@ -9660,7 +9660,7 @@ INCLUDE "ipp-2.0.test"
{
NAME "Print onepage-letter @ 720dpi, srgb-8, gzip"
- SKIP-IF-MISSING pwg-raster-samples-720dpi-20150616/srgb-8/onepage-letter-srgb-8-720dpi.pwg
+ SKIP-IF-MISSING pwg-raster-samples-720dpi/srgb-8/onepage-letter-srgb-8-720dpi.pwg
SKIP-IF-NOT-DEFINED HAVE_720DPI
SKIP-IF-NOT-DEFINED HAVE_SRGB_8
SKIP-IF-NOT-DEFINED HAVE_GZIP
@@ -9675,7 +9675,7 @@ INCLUDE "ipp-2.0.test"
ATTR keyword compression gzip
ATTR name job-name "onepage-letter"
COMPRESSION gzip
- FILE pwg-raster-samples-720dpi-20150616/srgb-8/onepage-letter-srgb-8-720dpi.pwg
+ FILE pwg-raster-samples-720dpi/srgb-8/onepage-letter-srgb-8-720dpi.pwg
STATUS successful-ok
STATUS server-error-busy REPEAT-MATCH
diff --git a/test/ippfind.c b/test/ippfind.c
index 2c93873..012609d 100644
--- a/test/ippfind.c
+++ b/test/ippfind.c
@@ -3,7 +3,7 @@
* commands such as IPP and Bonjour conformance tests. This tool is
* inspired by the UNIX "find" command, thus its name.
*
- * Copyright 2008-2015 by Apple Inc.
+ * Copyright 2008-2018 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -20,12 +20,12 @@
#define _CUPS_NO_DEPRECATED
#include <cups/cups-private.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <process.h>
# include <sys/timeb.h>
#else
# include <sys/wait.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#include <regex.h>
#ifdef HAVE_DNSSD
# include <dns_sd.h>
@@ -39,9 +39,9 @@
# define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX
#endif /* HAVE_DNSSD */
-#ifndef WIN32
+#ifndef _WIN32
extern char **environ; /* Process environment variables */
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
@@ -156,7 +156,7 @@ static void DNSSD_API browse_callback(DNSServiceRef sdRef,
const char *serviceName,
const char *regtype,
const char *replyDomain, void *context)
- __attribute__((nonnull(1,5,6,7,8)));
+ _CUPS_NONNULL((1,5,6,7,8));
static void DNSSD_API browse_local_callback(DNSServiceRef sdRef,
DNSServiceFlags flags,
uint32_t interfaceIndex,
@@ -165,7 +165,7 @@ static void DNSSD_API browse_local_callback(DNSServiceRef sdRef,
const char *regtype,
const char *replyDomain,
void *context)
- __attribute__((nonnull(1,5,6,7,8)));
+ _CUPS_NONNULL((1,5,6,7,8));
#elif defined(HAVE_AVAHI)
static void browse_callback(AvahiServiceBrowser *browser,
AvahiIfIndex interface,
@@ -191,7 +191,7 @@ static ippfind_srv_t *get_service(cups_array_t *services,
const char *serviceName,
const char *regtype,
const char *replyDomain)
- __attribute__((nonnull(1,2,3,4)));
+ _CUPS_NONNULL((1,2,3,4));
static double get_time(void);
static int list_service(ippfind_srv_t *service);
static ippfind_expr_t *new_expr(ippfind_op_t op, int invert,
@@ -207,7 +207,7 @@ static void DNSSD_API resolve_callback(DNSServiceRef sdRef,
uint16_t txtLen,
const unsigned char *txtRecord,
void *context)
- __attribute__((nonnull(1,5,6,9, 10)));
+ _CUPS_NONNULL((1,5,6,9, 10));
#elif defined(HAVE_AVAHI)
static int poll_callback(struct pollfd *pollfds,
unsigned int num_pollfds, int timeout,
@@ -227,8 +227,8 @@ static void resolve_callback(AvahiServiceResolver *res,
void *context);
#endif /* HAVE_DNSSD */
static void set_service_uri(ippfind_srv_t *service);
-static void show_usage(void) __attribute__((noreturn));
-static void show_version(void) __attribute__((noreturn));
+static void show_usage(void) _CUPS_NORETURN;
+static void show_version(void) _CUPS_NORETURN;
/*
@@ -1766,10 +1766,10 @@ dnssd_error_string(int error) /* I - Error number */
case kDNSServiceErr_PollingMode :
return ("Service polling mode error.");
-#ifndef WIN32
+#ifndef _WIN32
case kDNSServiceErr_Timeout :
return ("Service timeout.");
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
}
# elif defined(HAVE_AVAHI)
@@ -1920,10 +1920,10 @@ exec_program(ippfind_srv_t *service, /* I - Service */
int i, /* Looping var */
myenvc, /* Number of environment variables */
status; /* Exit status of program */
-#ifndef WIN32
+#ifndef _WIN32
char program[1024]; /* Program to execute */
int pid; /* Process ID */
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
@@ -2058,7 +2058,7 @@ exec_program(ippfind_srv_t *service, /* I - Service */
myargv[i] = strdup(args[i]);
}
-#ifdef WIN32
+#ifdef _WIN32
if (getenv("IPPFIND_DEBUG"))
{
printf("\nProgram:\n %s\n", args[0]);
@@ -2121,7 +2121,7 @@ exec_program(ippfind_srv_t *service, /* I - Service */
while (wait(&status) != pid)
;
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
* Free memory...
@@ -2139,14 +2139,14 @@ exec_program(ippfind_srv_t *service, /* I - Service */
if (getenv("IPPFIND_DEBUG"))
{
-#ifdef WIN32
+#ifdef _WIN32
printf("Exit Status: %d\n", status);
#else
if (WIFEXITED(status))
printf("Exit Status: %d\n", WEXITSTATUS(status));
else
printf("Terminating Signal: %d\n", WTERMSIG(status));
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
return (status == 0);
@@ -2220,7 +2220,7 @@ get_service(cups_array_t *services, /* I - Service array */
static double
get_time(void)
{
-#ifdef WIN32
+#ifdef _WIN32
struct _timeb curtime; /* Current Windows time */
_ftime(&curtime);
@@ -2234,7 +2234,7 @@ get_time(void)
return (0.0);
else
return (curtime.tv_sec + 0.000001 * curtime.tv_usec);
-#endif /* WIN32 */
+#endif /* _WIN32 */
}
diff --git a/test/ippserver.c b/test/ippserver.c
index 38b304f..237727e 100644
--- a/test/ippserver.c
+++ b/test/ippserver.c
@@ -1,7 +1,7 @@
/*
* Sample IPP Everywhere server for CUPS.
*
- * Copyright 2010-2017 by Apple Inc.
+ * Copyright 2010-2018 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -37,7 +37,7 @@
#include <limits.h>
#include <sys/stat.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <fcntl.h>
# include <io.h>
# include <process.h>
@@ -51,7 +51,7 @@ extern char **environ;
# include <sys/fcntl.h>
# include <sys/wait.h>
# include <poll.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#ifdef HAVE_DNSSD
# include <dns_sd.h>
@@ -411,8 +411,7 @@ static void html_escape(_ipp_client_t *client, const char *s,
static void html_footer(_ipp_client_t *client);
static void html_header(_ipp_client_t *client, const char *title);
static void html_printf(_ipp_client_t *client, const char *format,
- ...) __attribute__((__format__(__printf__,
- 2, 3)));
+ ...) _CUPS_FORMAT(2, 3);
static void ipp_cancel_job(_ipp_client_t *client);
static void ipp_close_job(_ipp_client_t *client);
static void ipp_create_job(_ipp_client_t *client);
@@ -437,14 +436,12 @@ static int register_printer(_ipp_printer_t *printer, const char *location, cons
static int respond_http(_ipp_client_t *client, http_status_t code,
const char *content_coding,
const char *type, size_t length);
-static void respond_ipp(_ipp_client_t *client, ipp_status_t status,
- const char *message, ...)
- __attribute__ ((__format__ (__printf__, 3, 4)));
+static void respond_ipp(_ipp_client_t *client, ipp_status_t status, const char *message, ...) _CUPS_FORMAT(3, 4);
static void respond_unsupported(_ipp_client_t *client,
ipp_attribute_t *attr);
static void run_printer(_ipp_printer_t *printer);
static char *time_string(time_t tv, char *buffer, size_t bufsize);
-static void usage(int status) __attribute__((noreturn));
+static void usage(int status) _CUPS_NORETURN;
static int valid_doc_attributes(_ipp_client_t *client);
static int valid_job_attributes(_ipp_client_t *client);
@@ -652,7 +649,7 @@ main(int argc, /* I - Number of command-line args */
if (!port)
{
-#ifdef WIN32
+#ifdef _WIN32
/*
* Windows is almost always used as a single user system, so use a default
* port number of 8631.
@@ -666,7 +663,7 @@ main(int argc, /* I - Number of command-line args */
*/
port = 8000 + ((int)getuid() % 1000);
-#endif /* WIN32 */
+#endif /* _WIN32 */
fprintf(stderr, "Listening on port %d.\n", port);
}
@@ -675,7 +672,7 @@ main(int argc, /* I - Number of command-line args */
{
const char *tmpdir; /* Temporary directory */
-#ifdef WIN32
+#ifdef _WIN32
if ((tmpdir = getenv("TEMP")) == NULL)
tmpdir = "C:/TEMP";
#elif defined(__APPLE__) && !TARGET_OS_IOS
@@ -684,7 +681,7 @@ main(int argc, /* I - Number of command-line args */
#else
if ((tmpdir = getenv("TMPDIR")) == NULL)
tmpdir = "/tmp";
-#endif /* WIN32 */
+#endif /* _WIN32 */
snprintf(directory, sizeof(directory), "%s/ippserver.%d", tmpdir, (int)getpid());
@@ -1280,9 +1277,9 @@ create_printer(const char *servername, /* I - Server hostname (NULL for default)
{
int i, j; /* Looping vars */
_ipp_printer_t *printer; /* Printer */
-#ifndef WIN32
+#ifndef _WIN32
char path[1024]; /* Full path to command */
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
char uri[1024], /* Printer URI */
#ifdef HAVE_SSL
securi[1024], /* Secure printer URI */
@@ -1484,7 +1481,7 @@ create_printer(const char *servername, /* I - Server hostname (NULL for default)
};
-#ifndef WIN32
+#ifndef _WIN32
/*
* If a command was specified, make sure it exists and is executable...
*/
@@ -1510,7 +1507,7 @@ create_printer(const char *servername, /* I - Server hostname (NULL for default)
command = path;
}
}
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
* Allocate memory for the printer...
@@ -2481,9 +2478,9 @@ filter_cb(_ipp_filter_t *filter, /* I - Filter parameters */
* Filter attributes as needed...
*/
-#ifndef WIN32 /* Avoid MS compiler bug */
+#ifndef _WIN32 /* Avoid MS compiler bug */
(void)dst;
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
ipp_tag_t group = ippGetGroupTag(attr);
const char *name = ippGetName(attr);
@@ -6032,13 +6029,13 @@ process_job(_ipp_job_t *job) /* I - Job */
ipp_attribute_t *attr; /* Job attribute */
char val[1280], /* IPP_NAME=value */
*valptr; /* Pointer into string */
-#ifndef WIN32
+#ifndef _WIN32
int mypipe[2]; /* Pipe for stderr */
char line[2048], /* Line from stderr */
*ptr, /* Pointer into line */
*endptr; /* End of line */
ssize_t bytes; /* Bytes read */
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
fprintf(stderr, "Running command \"%s %s\".\n", job->printer->command,
job->filename);
@@ -6096,7 +6093,7 @@ process_job(_ipp_job_t *job) /* I - Job */
* Now run the program...
*/
-#ifdef WIN32
+#ifdef _WIN32
status = _spawnvpe(_P_WAIT, job->printer->command, myargv, myenvp);
#else
@@ -6206,20 +6203,20 @@ process_job(_ipp_job_t *job) /* I - Job */
while (wait(&status) < 0);
# endif /* HAVE_WAITPID */
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
if (status)
{
-#ifndef WIN32
+#ifndef _WIN32
if (WIFEXITED(status))
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
fprintf(stderr, "Command \"%s\" exited with status %d.\n",
job->printer->command, WEXITSTATUS(status));
-#ifndef WIN32
+#ifndef _WIN32
else
fprintf(stderr, "Command \"%s\" terminated with signal %d.\n",
job->printer->command, WTERMSIG(status));
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
job->state = IPP_JSTATE_ABORTED;
}
else if (status < 0)
diff --git a/test/ipptool.c b/test/ipptool.c
index 9c57ca2..703e681 100644
--- a/test/ipptool.c
+++ b/test/ipptool.c
@@ -1,7 +1,7 @@
/*
* ipptool command for CUPS.
*
- * Copyright 2007-2017 by Apple Inc.
+ * Copyright 2007-2018 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -21,7 +21,7 @@
#include <cups/file-private.h>
#include <regex.h>
#include <sys/stat.h>
-#ifdef WIN32
+#ifdef _WIN32
# include <windows.h>
# ifndef R_OK
# define R_OK 0
@@ -29,7 +29,7 @@
#else
# include <signal.h>
# include <termios.h>
-#endif /* WIN32 */
+#endif /* _WIN32 */
#ifndef O_BINARY
# define O_BINARY 0
#endif /* !O_BINARY */
@@ -152,11 +152,11 @@ static int PasswordTries = 0; /* Number of tries with password */
* Local functions...
*/
-static void add_stringf(cups_array_t *a, const char *s, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
+static void add_stringf(cups_array_t *a, const char *s, ...) _CUPS_FORMAT(2, 3);
static int compare_uris(const char *a, const char *b);
static int compare_vars(_cups_var_t *a, _cups_var_t *b);
static int do_tests(cups_file_t *outfile, _cups_vars_t *vars, const char *testfile);
-static void expand_variables(_cups_vars_t *vars, char *dst, const char *src, size_t dstsize) __attribute__((nonnull(1,2,3)));
+static void expand_variables(_cups_vars_t *vars, char *dst, const char *src, size_t dstsize) _CUPS_NONNULL((1,2,3));
static int expect_matches(_cups_expect_t *expect, ipp_tag_t value_tag);
static ipp_t *get_collection(cups_file_t *outfile, _cups_vars_t *vars, cups_file_t *fp, int *linenum);
static char *get_filename(const char *testfile, char *dst, const char *src, size_t dstsize);
@@ -168,17 +168,17 @@ static const char *password_cb(const char *prompt);
static void pause_message(const char *message);
static void print_attr(cups_file_t *outfile, int format, ipp_attribute_t *attr, ipp_tag_t *group);
static void print_csv(cups_file_t *outfile, ipp_attribute_t *attr, int num_displayed, char **displayed, size_t *widths);
-static void print_fatal_error(cups_file_t *outfile, const char *s, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
+static void print_fatal_error(cups_file_t *outfile, const char *s, ...) _CUPS_FORMAT(2, 3);
static void print_line(cups_file_t *outfile, ipp_attribute_t *attr, int num_displayed, char **displayed, size_t *widths);
static void print_xml_header(cups_file_t *outfile);
static void print_xml_string(cups_file_t *outfile, const char *element, const char *s);
static void print_xml_trailer(cups_file_t *outfile, int success, const char *message);
static void set_variable(cups_file_t *outfile, _cups_vars_t *vars, const char *name, const char *value);
-#ifndef WIN32
+#ifndef _WIN32
static void sigterm_handler(int sig);
-#endif /* WIN32 */
+#endif /* _WIN32 */
static int timeout_cb(http_t *http, void *user_data);
-static void usage(void) __attribute__((noreturn));
+static void usage(void) _CUPS_NORETURN;
static int validate_attr(cups_file_t *outfile, cups_array_t *errors, ipp_attribute_t *attr);
static const char *with_flags_string(int flags);
static int with_value(cups_file_t *outfile, cups_array_t *errors, char *value, int flags, ipp_attribute_t *attr, char *matchbuf, size_t matchlen);
@@ -213,14 +213,14 @@ main(int argc, /* I - Number of command-line args */
/* Global data */
-#ifndef WIN32
+#ifndef _WIN32
/*
* Catch SIGINT and SIGTERM...
*/
signal(SIGINT, sigterm_handler);
signal(SIGTERM, sigterm_handler);
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
* Initialize the locale and variables...
@@ -432,9 +432,9 @@ main(int argc, /* I - Number of command-line args */
snprintf(filename, sizeof(filename), "%s.gz", argv[i]);
if (access(filename, 0) && filename[0] != '/'
-#ifdef WIN32
+#ifdef _WIN32
&& (!isalpha(filename[0] & 255) || filename[1] != ':')
-#endif /* WIN32 */
+#endif /* _WIN32 */
)
{
snprintf(filename, sizeof(filename), "%s/ipptool/%s",
@@ -650,9 +650,9 @@ main(int argc, /* I - Number of command-line args */
}
if (access(argv[i], 0) && argv[i][0] != '/'
-#ifdef WIN32
+#ifdef _WIN32
&& (!isalpha(argv[i][0] & 255) || argv[i][1] != ':')
-#endif /* WIN32 */
+#endif /* _WIN32 */
)
{
snprintf(testname, sizeof(testname), "%s/ipptool/%s", cg->cups_datadir,
@@ -2757,11 +2757,11 @@ do_tests(cups_file_t *outfile, /* I - Output file */
}
if (!Cancel && status == HTTP_STATUS_ERROR && http->error != EINVAL &&
-#ifdef WIN32
+#ifdef _WIN32
http->error != WSAETIMEDOUT)
#else
http->error != ETIMEDOUT)
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
if (httpReconnect2(http, 30000, NULL))
prev_pass = 0;
@@ -2784,11 +2784,11 @@ do_tests(cups_file_t *outfile, /* I - Output file */
}
if (!Cancel && status == HTTP_STATUS_ERROR && http->error != EINVAL &&
-#ifdef WIN32
+#ifdef _WIN32
http->error != WSAETIMEDOUT)
#else
http->error != ETIMEDOUT)
-#endif /* WIN32 */
+#endif /* _WIN32 */
{
if (httpReconnect2(http, 30000, NULL))
prev_pass = 0;
@@ -4056,9 +4056,9 @@ get_filename(const char *testfile, /* I - Current test file */
*dstptr = '\0';
}
else if (*src == '/' || !strchr(testfile, '/')
-#ifdef WIN32
+#ifdef _WIN32
|| (isalpha(*src & 255) && src[1] == ':')
-#endif /* WIN32 */
+#endif /* _WIN32 */
)
{
/*
@@ -4353,7 +4353,7 @@ password_cb(const char *prompt) /* I - Prompt (unused) */
static void
pause_message(const char *message) /* I - Message */
{
-#ifdef WIN32
+#ifdef _WIN32
HANDLE tty; /* Console handle */
DWORD mode; /* Console mode */
char key; /* Key press */
@@ -4401,7 +4401,7 @@ pause_message(const char *message) /* I - Message */
close(tty);
return;
}
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
* Display the prompt...
@@ -4409,7 +4409,7 @@ pause_message(const char *message) /* I - Message */
cupsFilePrintf(cupsFileStdout(), "%s\n---- PRESS ANY KEY ----", message);
-#ifdef WIN32
+#ifdef _WIN32
/*
* Read a key...
*/
@@ -4435,7 +4435,7 @@ pause_message(const char *message) /* I - Message */
tcsetattr(tty, TCSAFLUSH, &original);
close(tty);
-#endif /* WIN32 */
+#endif /* _WIN32 */
/*
* Erase the "press any key" prompt...
@@ -4997,7 +4997,7 @@ set_variable(cups_file_t *outfile, /* I - Output file */
}
-#ifndef WIN32
+#ifndef _WIN32
/*
* 'sigterm_handler()' - Handle SIGINT and SIGTERM.
*/
@@ -5012,7 +5012,7 @@ sigterm_handler(int sig) /* I - Signal number (unused) */
signal(SIGINT, SIG_DFL);
signal(SIGTERM, SIG_DFL);
}
-#endif /* !WIN32 */
+#endif /* !_WIN32 */
/*
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
index 056e8e5..8a263fb 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
@@ -94,40 +94,35 @@ echo ""
case "$testtype" in
0)
echo "Running in test mode (0)"
- nprinters1=0
- nprinters2=0
+ nprinters=0
pjobs=0
pprinters=0
loglevel="debug2"
;;
2)
echo "Running the medium tests (2)"
- nprinters1=10
- nprinters2=20
+ nprinters=20
pjobs=20
pprinters=10
loglevel="debug"
;;
3)
echo "Running the extreme tests (3)"
- nprinters1=500
- nprinters2=1000
+ nprinters=1000
pjobs=100
pprinters=50
loglevel="debug"
;;
4)
echo "Running the torture tests (4)"
- nprinters1=10000
- nprinters2=20000
+ nprinters=20000
pjobs=200
pprinters=100
loglevel="debug"
;;
*)
echo "Running the timid tests (1)"
- nprinters1=0
- nprinters2=0
+ nprinters=0
pjobs=10
pprinters=0
loglevel="debug2"
@@ -528,6 +523,7 @@ AccessLog $BASE/log/access_log
ErrorLog $BASE/log/error_log
PageLog $BASE/log/page_log
+PassEnv DYLD_INSERT_LIBRARIES
PassEnv DYLD_LIBRARY_PATH
PassEnv LD_LIBRARY_PATH
PassEnv LD_PRELOAD
@@ -540,13 +536,13 @@ if test $ssltype != 0 -a `uname` = Darwin; then
fi
#
-# Setup lots of test queues - half with PPD files, half without...
+# Setup lots of test queues with PPD files...
#
echo "Creating printers.conf for test..."
i=1
-while test $i -le $nprinters1; do
+while test $i -le $nprinters; do
cat >>$BASE/printers.conf <<EOF
<Printer test-$i>
Accepting Yes
@@ -564,22 +560,6 @@ EOF
i=`expr $i + 1`
done
-while test $i -le $nprinters2; do
- cat >>$BASE/printers.conf <<EOF
-<Printer test-$i>
-Accepting Yes
-DeviceURI file:/dev/null
-Info Test raw printer $i
-JobSheets none none
-Location CUPS test suite
-State Idle
-StateMessage Printer $1 is idle.
-</Printer>
-EOF
-
- i=`expr $i + 1`
-done
-
if test -f $BASE/printers.conf; then
cp $BASE/printers.conf $BASE/printers.conf.orig
else
@@ -587,58 +567,74 @@ else
fi
#
-# Setup the paths...
+# Create a helper script to run programs with...
#
echo "Setting up environment variables for test..."
if test "x$LD_LIBRARY_PATH" = x; then
- LD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc"
+ LD_LIBRARY_PATH="$root/cups:$root/filter"
else
- LD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc:$LD_LIBRARY_PATH"
+ LD_LIBRARY_PATH="$root/cups:$root/filter:$LD_LIBRARY_PATH"
fi
-export LD_LIBRARY_PATH
-
-LD_PRELOAD="$root/cups/libcups.so.2:$root/filter/libcupsimage.so.2:$root/cgi-bin/libcupscgi.so.1:$root/scheduler/libcupsmime.so.1:$root/ppdc/libcupsppdc.so.1"
+LD_PRELOAD="$root/cups/libcups.so.2:$root/filter/libcupsimage.so.2"
if test `uname` = SunOS -a -r /usr/lib/libCrun.so.1; then
LD_PRELOAD="/usr/lib/libCrun.so.1:$LD_PRELOAD"
fi
-export LD_PRELOAD
if test -f $root/cups/libcups.2.dylib; then
if test "x$DYLD_INSERT_LIBRARIES" = x; then
- DYLD_INSERT_LIBRARIES="$root/cups/libcups.2.dylib:$root/filter/libcupsimage.2.dylib:$root/cgi-bin/libcupscgi.1.dylib:$root/scheduler/libcupsmime.1.dylib:$root/ppdc/libcupsppdc.1.dylib"
+ DYLD_INSERT_LIBRARIES="$root/cups/libcups.2.dylib:$root/filter/libcupsimage.2.dylib"
else
- DYLD_INSERT_LIBRARIES="$root/cups/libcups.2.dylib:$root/filter/libcupsimage.2.dylib:$root/cgi-bin/libcupscgi.1.dylib:$root/scheduler/libcupsmime.1.dylib:$root/ppdc/libcupsppdc.1.dylib:$DYLD_INSERT_LIBRARIES"
+ DYLD_INSERT_LIBRARIES="$root/cups/libcups.2.dylib:$root/filter/libcupsimage.2.dylib:$DYLD_INSERT_LIBRARIES"
fi
-
- export DYLD_INSERT_LIBRARIES
fi
if test "x$DYLD_LIBRARY_PATH" = x; then
- DYLD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc"
+ DYLD_LIBRARY_PATH="$root/cups:$root/filter"
else
- DYLD_LIBRARY_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc:$DYLD_LIBRARY_PATH"
+ DYLD_LIBRARY_PATH="$root/cups:$root/filter:$DYLD_LIBRARY_PATH"
fi
-export DYLD_LIBRARY_PATH
-
-if test "x$SHLIB_PATH" = x; then
- SHLIB_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc"
-else
- SHLIB_PATH="$root/cups:$root/filter:$root/cgi-bin:$root/scheduler:$root/ppdc:$SHLIB_PATH"
-fi
-
-export SHLIB_PATH
-
+# These get exported because they don't have side-effects...
CUPS_DISABLE_APPLE_DEFAULT=yes; export CUPS_DISABLE_APPLE_DEFAULT
CUPS_SERVER=localhost:$port; export CUPS_SERVER
CUPS_SERVERROOT=$BASE; export CUPS_SERVERROOT
CUPS_STATEDIR=$BASE; export CUPS_STATEDIR
CUPS_DATADIR=$BASE/share; export CUPS_DATADIR
+IPP_PORT=$port; export IPP_PORT
LOCALEDIR=$BASE/share/locale; export LOCALEDIR
+echo "Creating wrapper script..."
+
+runcups="$BASE/runcups"; export runcups
+
+echo "#!/bin/sh" >$runcups
+echo "# Helper script for running CUPS test instance." >>$runcups
+echo "" >>$runcups
+echo "# Set required environment variables..." >>$runcups
+echo "CUPS_DATADIR=\"$CUPS_DATADIR\"; export CUPS_DATADIR" >>$runcups
+echo "CUPS_SERVER=\"$CUPS_SERVER\"; export CUPS_SERVER" >>$runcups
+echo "CUPS_SERVERROOT=\"$CUPS_SERVERROOT\"; export CUPS_SERVERROOT" >>$runcups
+echo "CUPS_STATEDIR=\"$CUPS_STATEDIR\"; export CUPS_STATEDIR" >>$runcups
+echo "DYLD_INSERT_LIBRARIES=\"$DYLD_INSERT_LIBRARIES\"; export DYLD_INSERT_LIBRARIES" >>$runcups
+echo "DYLD_LIBRARY_PATH=\"$DYLD_LIBRARY_PATH\"; export DYLD_LIBRARY_PATH" >>$runcups
+# IPP_PORT=$port; export IPP_PORT
+echo "LD_LIBRARY_PATH=\"$LD_LIBRARY_PATH\"; export LD_LIBRARY_PATH" >>$runcups
+echo "LD_PRELOAD=\"$LD_PRELOAD\"; export LD_PRELOAD" >>$runcups
+echo "LOCALEDIR=\"$LOCALEDIR\"; export LOCALEDIR" >>$runcups
+if test "x$CUPS_DEBUG_LEVEL" != x; then
+ echo "CUPS_DEBUG_FILTER='$CUPS_DEBUG_FILTER'; export CUPS_DEBUG_FILTER" >>$runcups
+ echo "CUPS_DEBUG_LEVEL=$CUPS_DEBUG_LEVEL; export CUPS_DEBUG_LEVEL" >>$runcups
+ echo "CUPS_DEBUG_LOG='$CUPS_DEBUG_LOG'; export CUPS_DEBUG_LOG" >>$runcups
+fi
+echo "" >>$runcups
+echo "# Run command..." >>$runcups
+echo "exec \"\$@\"" >>$runcups
+
+chmod +x $runcups
+
#
# Set a new home directory to avoid getting user options mixed in...
#
@@ -661,7 +657,7 @@ export LC_MESSAGES
#
echo "Starting scheduler:"
-echo " $VALGRIND ../scheduler/cupsd -c $BASE/cupsd.conf -f >$BASE/log/debug_log 2>&1 &"
+echo " $runcups $VALGRIND ../scheduler/cupsd -c $BASE/cupsd.conf -f >$BASE/log/debug_log 2>&1 &"
echo ""
if test `uname` = Darwin -a "x$VALGRIND" = x; then
@@ -671,9 +667,9 @@ if test `uname` = Darwin -a "x$VALGRIND" = x; then
insert="/usr/lib/libgmalloc.dylib:$DYLD_INSERT_LIBRARIES"
fi
- DYLD_INSERT_LIBRARIES="$insert" MallocStackLogging=1 ../scheduler/cupsd -c $BASE/cupsd.conf -f >$BASE/log/debug_log 2>&1 &
+ DYLD_INSERT_LIBRARIES="$insert" MallocStackLogging=1 $runcups ../scheduler/cupsd -c $BASE/cupsd.conf -f >$BASE/log/debug_log 2>&1 &
else
- $VALGRIND ../scheduler/cupsd -c $BASE/cupsd.conf -f >$BASE/log/debug_log 2>&1 &
+ $runcups $VALGRIND ../scheduler/cupsd -c $BASE/cupsd.conf -f >$BASE/log/debug_log 2>&1 &
fi
cupsd=$!
@@ -683,33 +679,6 @@ if test "x$testtype" = x0; then
echo "Scheduler is PID $cupsd and is listening on port $port."
echo ""
- # Create a helper script to run programs with...
- runcups="$BASE/runcups"
-
- echo "#!/bin/sh" >$runcups
- echo "# Helper script for running CUPS test instance." >>$runcups
- echo "" >>$runcups
- echo "# Set required environment variables..." >>$runcups
- echo "CUPS_DATADIR=\"$CUPS_DATADIR\"; export CUPS_DATADIR" >>$runcups
- echo "CUPS_SERVER=\"$CUPS_SERVER\"; export CUPS_SERVER" >>$runcups
- echo "CUPS_SERVERROOT=\"$CUPS_SERVERROOT\"; export CUPS_SERVERROOT" >>$runcups
- echo "CUPS_STATEDIR=\"$CUPS_STATEDIR\"; export CUPS_STATEDIR" >>$runcups
- echo "DYLD_LIBRARY_PATH=\"$DYLD_LIBRARY_PATH\"; export DYLD_LIBRARY_PATH" >>$runcups
- echo "LD_LIBRARY_PATH=\"$LD_LIBRARY_PATH\"; export LD_LIBRARY_PATH" >>$runcups
- echo "LD_PRELOAD=\"$LD_PRELOAD\"; export LD_PRELOAD" >>$runcups
- echo "LOCALEDIR=\"$LOCALEDIR\"; export LOCALEDIR" >>$runcups
- echo "SHLIB_PATH=\"$SHLIB_PATH\"; export SHLIB_PATH" >>$runcups
- if test "x$CUPS_DEBUG_LEVEL" != x; then
- echo "CUPS_DEBUG_FILTER='$CUPS_DEBUG_FILTER'; export CUPS_DEBUG_FILTER" >>$runcups
- echo "CUPS_DEBUG_LEVEL=$CUPS_DEBUG_LEVEL; export CUPS_DEBUG_LEVEL" >>$runcups
- echo "CUPS_DEBUG_LOG='$CUPS_DEBUG_LOG'; export CUPS_DEBUG_LOG" >>$runcups
- fi
- echo "" >>$runcups
- echo "# Run command..." >>$runcups
- echo "exec \"\$@\"" >>$runcups
-
- chmod +x $runcups
-
echo "The $runcups helper script can be used to test programs"
echo "with the server."
exit 0
@@ -725,10 +694,8 @@ else
sleep 2
fi
-IPP_PORT=$port; export IPP_PORT
-
while true; do
- running=`../systemv/lpstat -r 2>/dev/null`
+ running=`$runcups ../systemv/lpstat -r 2>/dev/null`
if test "x$running" = "xscheduler is running"; then
break
fi
@@ -765,6 +732,7 @@ fail=0
for file in 4*.test ipp-2.1.test; do
echo $ac_n "Performing $file: $ac_c"
echo "" >>$strfile
+ echo $ac_n "`date '+[%d/%b/%Y:%H:%M:%S %z]'` $ac_c" >>$strfile
if test $file = ipp-2.1.test; then
uri="ipp://localhost:$port/printers/Test1"
@@ -773,7 +741,7 @@ for file in 4*.test ipp-2.1.test; do
uri="ipp://localhost:$port/printers"
options=""
fi
- $VALGRIND ./ipptool -tI $options $uri $file >> $strfile
+ $runcups $VALGRIND ./ipptool -tI $options $uri $file >> $strfile
status=$?
if test $status != 0; then
@@ -802,7 +770,7 @@ echo " <pre>" >>$strfile
for file in 5*.sh; do
echo $ac_n "Performing $file: $ac_c"
echo "" >>$strfile
- echo "\"$file\":" >>$strfile
+ echo "`date '+[%d/%b/%Y:%H:%M:%S %z]'` \"$file\":" >>$strfile
sh $file $pjobs $pprinters >> $strfile
status=$?
@@ -829,20 +797,20 @@ fi
echo $ac_n "Performing restart test: $ac_c"
echo "" >>$strfile
-echo "\"5.10-restart\":" >>$strfile
+echo "`date '+[%d/%b/%Y:%H:%M:%S %z]'` \"5.10-restart\":" >>$strfile
kill -HUP $cupsd
while true; do
sleep 10
- running=`../systemv/lpstat -r 2>/dev/null`
+ running=`$runcups ../systemv/lpstat -r 2>/dev/null`
if test "x$running" = "xscheduler is running"; then
break
fi
done
-description="`../systemv/lpstat -l -p Test1 | grep Description | sed -e '1,$s/^[^:]*: //g'`"
+description="`$runcups ../systemv/lpstat -l -p Test1 | grep Description | sed -e '1,$s/^[^:]*: //g'`"
if test "x$description" != "xTest Printer 1"; then
echo "Failed, printer-info for Test1 is '$description', expected 'Test Printer 1'." >>$strfile
echo "FAIL (got '$description', expected 'Test Printer 1')"
@@ -918,8 +886,8 @@ fi
# Paged printed on Test3
count=`$GREP '^Test3 ' $BASE/log/page_log | awk 'BEGIN{count=0}{count=count+$7}END{print count}'`
-expected=2
-if test $count -lt $expected; then
+expected=4
+if test $count != $expected; then
echo "FAIL: Printer 'Test3' produced $count page(s), expected $expected."
echo " <p>FAIL: Printer 'Test3' produced $count page(s), expected $expected.</p>" >>$strfile
fail=`expr $fail + 1`
@@ -930,7 +898,7 @@ fi
# Requests logged
count=`wc -l $BASE/log/access_log | awk '{print $1}'`
-expected=`expr 37 + 18 + 30 + $pjobs \* 8 + $pprinters \* $pjobs \* 4`
+expected=`expr 35 + 18 + 30 + $pjobs \* 8 + $pprinters \* $pjobs \* 4`
if test $count != $expected; then
echo "FAIL: $count requests logged, expected $expected."
echo " <p>FAIL: $count requests logged, expected $expected.</p>" >>$strfile
diff --git a/test/waitjobs.sh b/test/waitjobs.sh
index dee7b1b..6e20e3c 100755
--- a/test/waitjobs.sh
+++ b/test/waitjobs.sh
@@ -2,13 +2,10 @@
#
# Script to wait for jobs to complete.
#
-# Copyright 2008-2009 by Apple Inc.
+# Copyright © 2008-2009 by Apple Inc.
#
-# 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/".
+# Licensed under Apache License v2.0. See the file "LICENSE" for more
+# information.
#
#
@@ -37,7 +34,7 @@ echo $ac_n "Waiting for jobs to complete...$ac_c"
oldjobs=0
while test $timeout -gt 0; do
- jobs=`../systemv/lpstat 2>/dev/null | wc -l | tr -d ' '`
+ jobs=`$runcups ../systemv/lpstat 2>/dev/null | wc -l | tr -d ' '`
if test $jobs = 0; then
break
fi
diff --git a/vcnet/config.h b/vcnet/config.h
index 8e06946..7f2a9de 100644
--- a/vcnet/config.h
+++ b/vcnet/config.h
@@ -52,8 +52,8 @@
/*
- * Map the POSIX strcasecmp() and strncasecmp() functions to the Win32 stricmp()
- * and strnicmp() functions...
+ * Map the POSIX strcasecmp() and strncasecmp() functions to the Win32
+ * _stricmp() and _strnicmp() functions...
*/
#define strcasecmp _stricmp
@@ -94,8 +94,8 @@ typedef unsigned long useconds_t;
* Version of software...
*/
-#define CUPS_SVERSION "CUPS v2.2.8"
-#define CUPS_MINIMAL "CUPS/2.2.8"
+#define CUPS_SVERSION "CUPS v2.2.9"
+#define CUPS_MINIMAL "CUPS/2.2.9"
/*
diff --git a/vcnet/cups.sln b/vcnet/cups.sln
index a53b963..9ffa383 100644
--- a/vcnet/cups.sln
+++ b/vcnet/cups.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2013
-VisualStudioVersion = 12.0.40629.0
+# Visual Studio 15
+VisualStudioVersion = 15.0.28010.2036
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcups2", "libcups2.vcxproj", "{CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}"
EndProject
@@ -20,83 +20,59 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ippfind", "ippfind.vcxproj"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ippserver", "ippserver.vcxproj", "{82A03BC7-0746-4B85-8908-3C7A3FAA58A9}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dnssdstub", "dnssdstub.vcxproj", "{C0899B3A-43E7-4BC3-A785-659E1FD2EA83}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Debug|Win32.ActiveCfg = Debug|Win32
- {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Debug|Win32.Build.0 = Debug|Win32
{CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Debug|x64.ActiveCfg = Debug|x64
{CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Debug|x64.Build.0 = Debug|x64
- {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Release|Win32.ActiveCfg = Release|Win32
- {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Release|Win32.Build.0 = Release|Win32
- {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Release|x64.ActiveCfg = Release|x64
- {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Release|x64.Build.0 = Release|x64
- {CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Debug|Win32.ActiveCfg = Debug|Win32
- {CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Debug|Win32.Build.0 = Debug|Win32
+ {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Release|x64.ActiveCfg = Debug|x64
+ {CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}.Release|x64.Build.0 = Debug|x64
{CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Debug|x64.ActiveCfg = Debug|x64
{CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Debug|x64.Build.0 = Debug|x64
- {CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Release|Win32.ActiveCfg = Release|Win32
- {CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Release|Win32.Build.0 = Release|Win32
- {CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Release|x64.ActiveCfg = Release|x64
- {CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Release|x64.Build.0 = Release|x64
- {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Debug|Win32.ActiveCfg = Debug|Win32
- {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Debug|Win32.Build.0 = Debug|Win32
- {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Debug|x64.ActiveCfg = Debug|Win32
- {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Release|Win32.ActiveCfg = Release|Win32
- {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Release|Win32.Build.0 = Release|Win32
- {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Release|x64.ActiveCfg = Release|Win32
- {90B0058C-8393-411F-BD3B-E2C831D4E883}.Debug|Win32.ActiveCfg = Debug|Win32
- {90B0058C-8393-411F-BD3B-E2C831D4E883}.Debug|Win32.Build.0 = Debug|Win32
- {90B0058C-8393-411F-BD3B-E2C831D4E883}.Debug|x64.ActiveCfg = Debug|Win32
- {90B0058C-8393-411F-BD3B-E2C831D4E883}.Release|Win32.ActiveCfg = Release|Win32
- {90B0058C-8393-411F-BD3B-E2C831D4E883}.Release|Win32.Build.0 = Release|Win32
- {90B0058C-8393-411F-BD3B-E2C831D4E883}.Release|x64.ActiveCfg = Release|Win32
- {6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Debug|Win32.ActiveCfg = Debug|Win32
- {6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Debug|Win32.Build.0 = Debug|Win32
+ {CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Release|x64.ActiveCfg = Debug|x64
+ {CB4AA6F2-3E84-45BE-B505-95CD375E1234}.Release|x64.Build.0 = Debug|x64
+ {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Debug|x64.ActiveCfg = Debug|x64
+ {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Debug|x64.Build.0 = Debug|x64
+ {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Release|x64.ActiveCfg = Debug|x64
+ {CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}.Release|x64.Build.0 = Debug|x64
+ {90B0058C-8393-411F-BD3B-E2C831D4E883}.Debug|x64.ActiveCfg = Debug|x64
+ {90B0058C-8393-411F-BD3B-E2C831D4E883}.Debug|x64.Build.0 = Debug|x64
+ {90B0058C-8393-411F-BD3B-E2C831D4E883}.Release|x64.ActiveCfg = Debug|x64
+ {90B0058C-8393-411F-BD3B-E2C831D4E883}.Release|x64.Build.0 = Debug|x64
{6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Debug|x64.ActiveCfg = Debug|x64
{6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Debug|x64.Build.0 = Debug|x64
- {6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Release|Win32.ActiveCfg = Release|Win32
- {6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Release|Win32.Build.0 = Release|Win32
- {6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Release|x64.ActiveCfg = Release|x64
- {6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Release|x64.Build.0 = Release|x64
- {B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Debug|Win32.ActiveCfg = Debug|Win32
- {B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Debug|Win32.Build.0 = Debug|Win32
+ {6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Release|x64.ActiveCfg = Debug|x64
+ {6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}.Release|x64.Build.0 = Debug|x64
{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Debug|x64.ActiveCfg = Debug|x64
{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Debug|x64.Build.0 = Debug|x64
- {B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|Win32.ActiveCfg = Release|Win32
- {B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|Win32.Build.0 = Release|Win32
- {B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|x64.ActiveCfg = Release|x64
- {B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|x64.Build.0 = Release|x64
- {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Debug|Win32.ActiveCfg = Debug|Win32
- {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Debug|Win32.Build.0 = Debug|Win32
+ {B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|x64.ActiveCfg = Debug|x64
+ {B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}.Release|x64.Build.0 = Debug|x64
{18950A1B-D37A-40C7-B2DF-C12986C0526E}.Debug|x64.ActiveCfg = Debug|x64
{18950A1B-D37A-40C7-B2DF-C12986C0526E}.Debug|x64.Build.0 = Debug|x64
- {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Release|Win32.ActiveCfg = Release|Win32
- {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Release|Win32.Build.0 = Release|Win32
- {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Release|x64.ActiveCfg = Release|x64
- {B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Debug|Win32.ActiveCfg = Debug|Win32
- {B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Debug|Win32.Build.0 = Debug|Win32
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Release|x64.ActiveCfg = Debug|x64
+ {18950A1B-D37A-40C7-B2DF-C12986C0526E}.Release|x64.Build.0 = Debug|x64
{B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Debug|x64.ActiveCfg = Debug|x64
{B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Debug|x64.Build.0 = Debug|x64
- {B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Release|Win32.ActiveCfg = Release|Win32
- {B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Release|Win32.Build.0 = Release|Win32
- {B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Release|x64.ActiveCfg = Release|x64
- {B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Release|x64.Build.0 = Release|x64
- {82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Debug|Win32.ActiveCfg = Debug|Win32
- {82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Debug|Win32.Build.0 = Debug|Win32
+ {B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Release|x64.ActiveCfg = Debug|x64
+ {B484DA0C-62C8-4C32-83B6-CCEB58968B85}.Release|x64.Build.0 = Debug|x64
{82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Debug|x64.ActiveCfg = Debug|x64
{82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Debug|x64.Build.0 = Debug|x64
- {82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Release|Win32.ActiveCfg = Release|Win32
- {82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Release|Win32.Build.0 = Release|Win32
- {82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Release|x64.ActiveCfg = Release|x64
- {82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Release|x64.Build.0 = Release|x64
+ {82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Release|x64.ActiveCfg = Debug|x64
+ {82A03BC7-0746-4B85-8908-3C7A3FAA58A9}.Release|x64.Build.0 = Debug|x64
+ {C0899B3A-43E7-4BC3-A785-659E1FD2EA83}.Debug|x64.ActiveCfg = Debug|x64
+ {C0899B3A-43E7-4BC3-A785-659E1FD2EA83}.Debug|x64.Build.0 = Debug|x64
+ {C0899B3A-43E7-4BC3-A785-659E1FD2EA83}.Release|x64.ActiveCfg = Debug|x64
+ {C0899B3A-43E7-4BC3-A785-659E1FD2EA83}.Release|x64.Build.0 = Debug|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {AC4F0BA1-DDA2-4C4D-A64B-ECA84022B8C2}
+ EndGlobalSection
EndGlobal
diff --git a/vcnet/cupstestppd.vcxproj b/vcnet/cupstestppd.vcxproj
index 0d1bab8..4e5f18a 100644
--- a/vcnet/cupstestppd.vcxproj
+++ b/vcnet/cupstestppd.vcxproj
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
@@ -22,20 +14,8 @@
<ProjectGuid>{6BE0CDD3-4ED7-409C-A80F-19DF73664B1F}</ProjectGuid>
<RootNamespace>cupstestppd</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
@@ -50,12 +30,6 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -66,46 +40,16 @@
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>true</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>false</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..;..\vcnet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level1</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
@@ -113,7 +57,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..;..\vcnet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -129,32 +73,13 @@
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>..;..\vcnet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level1</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<AdditionalIncludeDirectories>..;..\vcnet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level1</WarningLevel>
diff --git a/vcnet/cupstestppd.vcxproj.user b/vcnet/cupstestppd.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/cupstestppd.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/dns_sd.c b/vcnet/dns_sd.c
new file mode 100644
index 0000000..25131dd
--- /dev/null
+++ b/vcnet/dns_sd.c
@@ -0,0 +1,444 @@
+/*
+ * Dynamic wrapper for Bonjour SDK for Windows.
+ *
+ * Copyright 2018 by Apple Inc.
+ *
+ * Licensed under Apache License v2.0. See the file "LICENSE" for more
+ * information.
+ */
+
+//#include <cups/http-private.h>
+#include <cups/thread-private.h>
+#include "dns_sd.h"
+
+
+/*
+ * Pointers for functions...
+ */
+
+static int dnssd_initialized = 0;
+static _cups_mutex_t dnssd_mutex = _CUPS_MUTEX_INITIALIZER;
+static DNSServiceErrorType (*dnssd_add_record)(DNSServiceRef sdRef, DNSRecordRef *RecordRef, DNSServiceFlags flags, uint16_t rrtype, uint16_t rdlen, const void *rdata, uint32_t ttl);
+static DNSServiceErrorType (*dnssd_browse)(DNSServiceRef *sdRef, DNSServiceFlags flags, uint32_t interfaceIndex, const char *regtype, const char *domain, DNSServiceBrowseReply callBack, void *context);
+static DNSServiceErrorType (*dnssd_construct_full_name)(char * const fullName, const char * const service, const char * const regtype, const char * const domain);
+static DNSServiceErrorType (*dnssd_create_connection)(DNSServiceRef *sdRef);
+static DNSServiceErrorType (*dnssd_process_result)(DNSServiceRef sdRef);
+static DNSServiceErrorType (*dnssd_query_record)(DNSServiceRef *sdRef, DNSServiceFlags flags, uint32_t interfaceIndex, const char *fullname, uint16_t rrtype, uint16_t rrclass, DNSServiceQueryRecordReply callBack, void *context);
+static void (*dnssd_deallocate)(DNSServiceRef sdRef);
+static int (*dnssd_sock_fd)(DNSServiceRef sdRef);
+static DNSServiceErrorType (*dnssd_register)(DNSServiceRef *sdRef, DNSServiceFlags flags, uint32_t interfaceIndex, const char *name, const char *regtype, const char *domain, const char *host, uint16_t port, uint16_t txtLen, const void *txtRecord, DNSServiceRegisterReply callBack, void *context);
+static DNSServiceErrorType (*dnssd_remove_record)(DNSServiceRef sdRef, DNSRecordRef RecordRef, DNSServiceFlags flags);
+static DNSServiceErrorType (*dnssd_resolve)(DNSServiceRef *sdRef, DNSServiceFlags flags, uint32_t interfaceIndex, const char *name, const char *regtype, const char *domain, DNSServiceResolveReply callBack, void *context);
+static DNSServiceErrorType (*dnssd_update_record)(DNSServiceRef sdRef, DNSRecordRef RecordRef, DNSServiceFlags flags, uint16_t rdlen, const void *rdata, uint32_t ttl);
+
+static void (*dnssd_txt_create)(TXTRecordRef *txtRecord, uint16_t bufferLen, void *buffer);
+static void (*dnssd_txt_deallocate)(TXTRecordRef *txtRecord);
+static const void *(*dnssd_txt_get_bytes_ptr)(const TXTRecordRef *txtRecord);
+static uint16_t (*dnssd_txt_get_count)(uint16_t txtLen, const void *txtRecord);
+static uint16_t (*dnssd_txt_get_length)(const TXTRecordRef *txtRecord);
+static DNSServiceErrorType (*dnssd_txt_get_item_at_index)(uint16_t txtLen, const void *txtRecord, uint16_t itemIndex, uint16_t keyBufLen, char *key, uint8_t *valueLen, const void **value);
+static const void *(*dnssd_txt_get_value_ptr)(uint16_t txtLen, const void *txtRecord, const char *key, uint8_t *valueLen);
+static DNSServiceErrorType (*dnssd_txt_set_value)(TXTRecordRef *txtRecord, const char *key, uint8_t valueSize, const void *value);
+
+
+/*
+ * Function to initialize pointers...
+ */
+
+static void
+dnssd_init(void)
+{
+ _cupsMutexLock(&dnssd_mutex);
+ if (!dnssd_initialized)
+ {
+ HINSTANCE dll_handle = LoadLibraryA("dnssd.dll");
+
+ if (dll_handle)
+ {
+ dnssd_add_record = (DNSServiceErrorType (*)(DNSServiceRef, DNSRecordRef *, DNSServiceFlags, uint16_t, uint16_t, const void *, uint32_t))GetProcAddress(dll_handle, "DNSServiceAddRecord");
+ dnssd_browse = (DNSServiceErrorType(*)(DNSServiceRef *, DNSServiceFlags, uint32_t, const char *, const char *, DNSServiceBrowseReply, void *))GetProcAddress(dll_handle, "DNSServiceBrowse");
+ dnssd_construct_full_name = (DNSServiceErrorType(*)(char * const, const char * const, const char * const, const char * const))GetProcAddress(dll_handle, "DNSServiceConstructFullName");
+ dnssd_create_connection = (DNSServiceErrorType(*)(DNSServiceRef *))GetProcAddress(dll_handle, "DNSServiceCreateConnection");
+ dnssd_deallocate = (DNSServiceErrorType(*)(DNSServiceRef))GetProcAddress(dll_handle, "DNSServiceRefDeallocate");
+ dnssd_process_result = (DNSServiceErrorType(*)(DNSServiceRef))GetProcAddress(dll_handle, "DNSServiceProcessResult");
+ dnssd_query_record = (DNSServiceErrorType(*)(DNSServiceRef *, DNSServiceFlags, uint32_t, const char *, uint16_t, uint16_t, DNSServiceQueryRecordReply, void *))GetProcAddress(dll_handle, "DNSServiceQueryRecord");
+ dnssd_register = (DNSServiceErrorType(*)(DNSServiceRef *, DNSServiceFlags, uint32_t, const char *, const char *, const char *, const char *, uint16_t, uint16_t, const void *, DNSServiceRegisterReply, void *))GetProcAddress(dll_handle, "DNSServiceRegister");
+ dnssd_remove_record = (DNSServiceErrorType(*)(DNSServiceRef, DNSRecordRef, DNSServiceFlags))GetProcAddress(dll_handle, "DNSServiceRemoveRecord");
+ dnssd_resolve = (DNSServiceErrorType(*)(DNSServiceRef *, DNSServiceFlags, uint32_t, const char *, const char *, const char *, DNSServiceResolveReply, void *))GetProcAddress(dll_handle, "DNSServiceResolve");
+ dnssd_sock_fd = (int(*)(DNSServiceRef))GetProcAddress(dll_handle, "DNSServiceRefSockFD");
+ dnssd_update_record = (DNSServiceErrorType(*)(DNSServiceRef, DNSRecordRef, DNSServiceFlags, uint16_t, const void *, uint32_t))GetProcAddress(dll_handle, "DNSServiceUpdateRecord");
+
+ dnssd_txt_create = (void (*)(TXTRecordRef *, uint16_t, void *))GetProcAddress(dll_handle, "TXTRecordCreate");
+ dnssd_txt_deallocate = (void (*)(TXTRecordRef *))GetProcAddress(dll_handle, "TXTRecordDeallocate");
+ dnssd_txt_get_bytes_ptr = (const void *(*)(const TXTRecordRef *))GetProcAddress(dll_handle, "TXTRecordGetBytesPtr");
+ dnssd_txt_get_count = (uint16_t (*)(uint16_t, const void *))GetProcAddress(dll_handle, "TXTRecordGetCount");
+ dnssd_txt_get_item_at_index = (DNSServiceErrorType (*)(uint16_t, const void *, uint16_t, uint16_t, char *, uint8_t *, const void **))GetProcAddress(dll_handle, "TXTRecordGetItemAtIndex");
+ dnssd_txt_get_length = (uint16_t (*)(const TXTRecordRef *))GetProcAddress(dll_handle, "TXTRecordGetLength");
+ dnssd_txt_get_value_ptr = (const void *(*)(uint16_t, const void *, const char *, uint8_t *))GetProcAddress(dll_handle, "TXTRecordGetValuePtr");
+ dnssd_txt_set_value = (DNSServiceErrorType (*)(TXTRecordRef *, const char *, uint8_t, const void *))GetProcAddress(dll_handle, "TXTRecordSetValue");
+ }
+
+ dnssd_initialized = 1;
+ }
+ _cupsMutexUnlock(&dnssd_mutex);
+}
+
+
+// DNSServiceAddRecord
+DNSServiceErrorType DNSSD_API DNSServiceAddRecord
+ (
+ DNSServiceRef sdRef,
+ DNSRecordRef *RecordRef,
+ DNSServiceFlags flags,
+ uint16_t rrtype,
+ uint16_t rdlen,
+ const void *rdata,
+ uint32_t ttl
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_add_record)
+ return (*dnssd_add_record)(sdRef, RecordRef, flags, rrtype, rdlen, rdata, ttl);
+ else
+ return (-1);
+}
+
+
+// DNSServiceBrowse
+DNSServiceErrorType DNSSD_API DNSServiceBrowse
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *regtype,
+ const char *domain, /* may be NULL */
+ DNSServiceBrowseReply callBack,
+ void *context /* may be NULL */
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_browse)
+ return (*dnssd_browse)(sdRef, flags, interfaceIndex, regtype, domain, callBack, context);
+ else
+ return (-1);
+}
+
+
+// DNSServiceConstructFullName
+DNSServiceErrorType DNSSD_API DNSServiceConstructFullName
+ (
+ char * const fullName,
+ const char * const service, /* may be NULL */
+ const char * const regtype,
+ const char * const domain
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_construct_full_name)
+ return (*dnssd_construct_full_name)(fullName, service, regtype, domain);
+ else
+ return (-1);
+}
+
+
+// DNSServiceCreateConnection
+DNSServiceErrorType DNSSD_API DNSServiceCreateConnection(DNSServiceRef *sdRef)
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_create_connection)
+ return (*dnssd_create_connection)(sdRef);
+ else
+ return (-1);
+}
+
+
+// DNSServiceProcessResult
+DNSServiceErrorType DNSSD_API DNSServiceProcessResult(DNSServiceRef sdRef)
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_process_result)
+ return (*dnssd_process_result)(sdRef);
+ else
+ return (-1);
+}
+
+
+// DNSServiceQueryRecord
+DNSServiceErrorType DNSSD_API DNSServiceQueryRecord
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *fullname,
+ uint16_t rrtype,
+ uint16_t rrclass,
+ DNSServiceQueryRecordReply callBack,
+ void *context /* may be NULL */
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_query_record)
+ return (*dnssd_query_record)(sdRef, flags, interfaceIndex, fullname, rrtype, rrclass, callBack, context);
+ else
+ return (-1);
+}
+
+
+// DNSServiceRefDeallocate
+void DNSSD_API DNSServiceRefDeallocate(DNSServiceRef sdRef)
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_deallocate)
+ (*dnssd_deallocate)(sdRef);
+}
+
+
+// DNSServiceRefSockFD
+int DNSSD_API DNSServiceRefSockFD(DNSServiceRef sdRef)
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_sock_fd)
+ return (*dnssd_sock_fd)(sdRef);
+ else
+ return (-1);
+}
+
+
+// DNSServiceRegister
+DNSServiceErrorType DNSSD_API DNSServiceRegister
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *name, /* may be NULL */
+ const char *regtype,
+ const char *domain, /* may be NULL */
+ const char *host, /* may be NULL */
+ uint16_t port, /* In network byte order */
+ uint16_t txtLen,
+ const void *txtRecord, /* may be NULL */
+ DNSServiceRegisterReply callBack, /* may be NULL */
+ void *context /* may be NULL */
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_register)
+ return (*dnssd_register)(sdRef, flags, interfaceIndex, name, regtype, domain, host, port, txtLen, txtRecord, callBack, context);
+ else
+ return (-1);
+}
+
+
+// DNSServiceRemoveRecord
+DNSServiceErrorType DNSSD_API DNSServiceRemoveRecord
+ (
+ DNSServiceRef sdRef,
+ DNSRecordRef RecordRef,
+ DNSServiceFlags flags
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_remove_record)
+ return (*dnssd_remove_record)(sdRef, RecordRef, flags);
+ else
+ return (-1);
+}
+
+
+// DNSServiceResolve
+DNSServiceErrorType DNSSD_API DNSServiceResolve
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *name,
+ const char *regtype,
+ const char *domain,
+ DNSServiceResolveReply callBack,
+ void *context /* may be NULL */
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_resolve)
+ return (*dnssd_resolve)(sdRef, flags, interfaceIndex, name, regtype, domain, callBack, context);
+ else
+ return (-1);
+}
+
+
+// DNSServiceUpdateRecord
+DNSServiceErrorType DNSSD_API DNSServiceUpdateRecord
+ (
+ DNSServiceRef sdRef,
+ DNSRecordRef RecordRef, /* may be NULL */
+ DNSServiceFlags flags,
+ uint16_t rdlen,
+ const void *rdata,
+ uint32_t ttl
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_update_record)
+ return (*dnssd_update_record)(sdRef, RecordRef, flags, rdlen, rdata, ttl);
+ else
+ return (-1);
+}
+
+
+// TXTRecordCreate
+void DNSSD_API
+TXTRecordCreate(
+ TXTRecordRef *txtRecord,
+ uint16_t bufferLen,
+ void *buffer)
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_txt_create)
+ (*dnssd_txt_create)(txtRecord, bufferLen, buffer);
+}
+
+
+// TXTRecordDeallocate
+void DNSSD_API TXTRecordDeallocate
+ (
+ TXTRecordRef *txtRecord
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_txt_deallocate)
+ (*dnssd_txt_deallocate)(txtRecord);
+}
+
+
+// TXTRecordGetBytesPtr
+const void * DNSSD_API TXTRecordGetBytesPtr
+ (
+ const TXTRecordRef *txtRecord
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_txt_get_bytes_ptr)
+ return (*dnssd_txt_get_bytes_ptr)(txtRecord);
+ else
+ return (NULL);
+}
+
+
+// TXTRecordGetLength
+uint16_t DNSSD_API TXTRecordGetLength
+ (
+ const TXTRecordRef *txtRecord
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_txt_get_length)
+ return (*dnssd_txt_get_length)(txtRecord);
+ else
+ return (0);
+}
+
+
+// TXTRecordSetValue
+DNSServiceErrorType DNSSD_API TXTRecordSetValue
+ (
+ TXTRecordRef *txtRecord,
+ const char *key,
+ uint8_t valueSize, /* may be zero */
+ const void *value /* may be NULL */
+ )
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_txt_set_value)
+ return (*dnssd_txt_set_value)(txtRecord, key, valueSize, value);
+ else
+ return (-1);
+}
+
+
+// TXTRecordGetCount
+uint16_t DNSSD_API
+TXTRecordGetCount(
+ uint16_t txtLen,
+ const void *txtRecord)
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_txt_get_count)
+ return (*dnssd_txt_get_count)(txtLen, txtRecord);
+ else
+ return (0);
+}
+
+
+// TXTRecordGetItemAtIndex
+DNSServiceErrorType DNSSD_API
+TXTRecordGetItemAtIndex(
+ uint16_t txtLen,
+ const void *txtRecord,
+ uint16_t itemIndex,
+ uint16_t keyBufLen,
+ char *key,
+ uint8_t *valueLen,
+ const void **value)
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_txt_get_item_at_index)
+ return (*dnssd_txt_get_item_at_index)(txtLen, txtRecord, itemIndex, keyBufLen, key, valueLen, value);
+ else
+ return (-1);
+}
+
+
+// TXTRecordGetValuePtr
+const void * DNSSD_API
+TXTRecordGetValuePtr(
+ uint16_t txtLen,
+ const void *txtRecord,
+ const char *key,
+ uint8_t *valueLen)
+{
+ if (!dnssd_initialized)
+ dnssd_init();
+
+ if (dnssd_txt_get_value_ptr)
+ return (*dnssd_txt_get_value_ptr)(txtLen, txtRecord, key, valueLen);
+ else
+ return (NULL);
+}
diff --git a/vcnet/dns_sd.h b/vcnet/dns_sd.h
new file mode 100644
index 0000000..54f4e11
--- /dev/null
+++ b/vcnet/dns_sd.h
@@ -0,0 +1,2434 @@
+/* -*- Mode: C; tab-width: 4 -*-
+ *
+ * Copyright (c) 2003-2004, Apple Computer, Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of its
+ * contributors may be used to endorse or promote products derived from this
+ * software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+
+/*! @header DNS Service Discovery
+ *
+ * @discussion This section describes the functions, callbacks, and data structures
+ * that make up the DNS Service Discovery API.
+ *
+ * The DNS Service Discovery API is part of Bonjour, Apple's implementation
+ * of zero-configuration networking (ZEROCONF).
+ *
+ * Bonjour allows you to register a network service, such as a
+ * printer or file server, so that it can be found by name or browsed
+ * for by service type and domain. Using Bonjour, applications can
+ * discover what services are available on the network, along with
+ * all the information -- such as name, IP address, and port --
+ * necessary to access a particular service.
+ *
+ * In effect, Bonjour combines the functions of a local DNS server and
+ * AppleTalk. Bonjour allows applications to provide user-friendly printer
+ * and server browsing, among other things, over standard IP networks.
+ * This behavior is a result of combining protocols such as multicast and
+ * DNS to add new functionality to the network (such as multicast DNS).
+ *
+ * Bonjour gives applications easy access to services over local IP
+ * networks without requiring the service or the application to support
+ * an AppleTalk or a Netbeui stack, and without requiring a DNS server
+ * for the local network.
+ */
+
+
+/* _DNS_SD_H contains the mDNSResponder version number for this header file, formatted as follows:
+ * Major part of the build number * 10000 +
+ * minor part of the build number * 100
+ * For example, Mac OS X 10.4.9 has mDNSResponder-108.4, which would be represented as
+ * version 1080400. This allows C code to do simple greater-than and less-than comparisons:
+ * e.g. an application that requires the DNSServiceGetProperty() call (new in mDNSResponder-126) can check:
+ *
+ * #if _DNS_SD_H+0 >= 1260000
+ * ... some C code that calls DNSServiceGetProperty() ...
+ * #endif
+ *
+ * The version defined in this header file symbol allows for compile-time
+ * checking, so that C code building with earlier versions of the header file
+ * can avoid compile errors trying to use functions that aren't even defined
+ * in those earlier versions. Similar checks may also be performed at run-time:
+ * => weak linking -- to avoid link failures if run with an earlier
+ * version of the library that's missing some desired symbol, or
+ * => DNSServiceGetProperty(DaemonVersion) -- to verify whether the running daemon
+ * ("system service" on Windows) meets some required minimum functionality level.
+ */
+
+#ifndef _DNS_SD_H
+#define _DNS_SD_H 3331000
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+/* Set to 1 if libdispatch is supported
+ * Note: May also be set by project and/or Makefile
+ */
+#ifndef _DNS_SD_LIBDISPATCH
+#define _DNS_SD_LIBDISPATCH 0
+#endif /* ndef _DNS_SD_LIBDISPATCH */
+
+/* standard calling convention under Win32 is __stdcall */
+/* Note: When compiling Intel EFI (Extensible Firmware Interface) under MS Visual Studio, the */
+/* _WIN32 symbol is defined by the compiler even though it's NOT compiling code for Windows32 */
+#if defined(_WIN32) && !defined(EFI32) && !defined(EFI64)
+#define DNSSD_API __stdcall
+#else
+#define DNSSD_API
+#endif
+
+/* stdint.h does not exist on FreeBSD 4.x; its types are defined in sys/types.h instead */
+#if defined(__FreeBSD__) && (__FreeBSD__ < 5)
+#include <sys/types.h>
+
+/* Likewise, on Sun, standard integer types are in sys/types.h */
+#elif defined(__sun__)
+#include <sys/types.h>
+
+/* EFI does not have stdint.h, or anything else equivalent */
+#elif defined(EFI32) || defined(EFI64) || defined(EFIX64)
+#include "Tiano.h"
+#if !defined(_STDINT_H_)
+typedef UINT8 uint8_t;
+typedef INT8 int8_t;
+typedef UINT16 uint16_t;
+typedef INT16 int16_t;
+typedef UINT32 uint32_t;
+typedef INT32 int32_t;
+#endif
+/* Windows has its own differences */
+#elif defined(_WIN32)
+#include <windows.h>
+#define _UNUSED
+#ifndef _MSL_STDINT_H
+typedef UINT8 uint8_t;
+typedef INT8 int8_t;
+typedef UINT16 uint16_t;
+typedef INT16 int16_t;
+typedef UINT32 uint32_t;
+typedef INT32 int32_t;
+#endif
+
+/* All other Posix platforms use stdint.h */
+#else
+#include <stdint.h>
+#endif
+
+#if _DNS_SD_LIBDISPATCH
+#include <dispatch/dispatch.h>
+#endif
+
+/* DNSServiceRef, DNSRecordRef
+ *
+ * Opaque internal data types.
+ * Note: client is responsible for serializing access to these structures if
+ * they are shared between concurrent threads.
+ */
+
+typedef struct _DNSServiceRef_t *DNSServiceRef;
+typedef struct _DNSRecordRef_t *DNSRecordRef;
+
+struct sockaddr;
+
+/*! @enum General flags
+ * Most DNS-SD API functions and callbacks include a DNSServiceFlags parameter.
+ * As a general rule, any given bit in the 32-bit flags field has a specific fixed meaning,
+ * regardless of the function or callback being used. For any given function or callback,
+ * typically only a subset of the possible flags are meaningful, and all others should be zero.
+ * The discussion section for each API call describes which flags are valid for that call
+ * and callback. In some cases, for a particular call, it may be that no flags are currently
+ * defined, in which case the DNSServiceFlags parameter exists purely to allow future expansion.
+ * In all cases, developers should expect that in future releases, it is possible that new flag
+ * values will be defined, and write code with this in mind. For example, code that tests
+ * if (flags == kDNSServiceFlagsAdd) ...
+ * will fail if, in a future release, another bit in the 32-bit flags field is also set.
+ * The reliable way to test whether a particular bit is set is not with an equality test,
+ * but with a bitwise mask:
+ * if (flags & kDNSServiceFlagsAdd) ...
+ */
+enum
+ {
+ kDNSServiceFlagsMoreComing = 0x1,
+ /* MoreComing indicates to a callback that at least one more result is
+ * queued and will be delivered following immediately after this one.
+ * When the MoreComing flag is set, applications should not immediately
+ * update their UI, because this can result in a great deal of ugly flickering
+ * on the screen, and can waste a great deal of CPU time repeatedly updating
+ * the screen with content that is then immediately erased, over and over.
+ * Applications should wait until until MoreComing is not set, and then
+ * update their UI when no more changes are imminent.
+ * When MoreComing is not set, that doesn't mean there will be no more
+ * answers EVER, just that there are no more answers immediately
+ * available right now at this instant. If more answers become available
+ * in the future they will be delivered as usual.
+ */
+
+ kDNSServiceFlagsAdd = 0x2,
+ kDNSServiceFlagsDefault = 0x4,
+ /* Flags for domain enumeration and browse/query reply callbacks.
+ * "Default" applies only to enumeration and is only valid in
+ * conjunction with "Add". An enumeration callback with the "Add"
+ * flag NOT set indicates a "Remove", i.e. the domain is no longer
+ * valid.
+ */
+
+ kDNSServiceFlagsNoAutoRename = 0x8,
+ /* Flag for specifying renaming behavior on name conflict when registering
+ * non-shared records. By default, name conflicts are automatically handled
+ * by renaming the service. NoAutoRename overrides this behavior - with this
+ * flag set, name conflicts will result in a callback. The NoAutorename flag
+ * is only valid if a name is explicitly specified when registering a service
+ * (i.e. the default name is not used.)
+ */
+
+ kDNSServiceFlagsShared = 0x10,
+ kDNSServiceFlagsUnique = 0x20,
+ /* Flag for registering individual records on a connected
+ * DNSServiceRef. Shared indicates that there may be multiple records
+ * with this name on the network (e.g. PTR records). Unique indicates that the
+ * record's name is to be unique on the network (e.g. SRV records).
+ */
+
+ kDNSServiceFlagsBrowseDomains = 0x40,
+ kDNSServiceFlagsRegistrationDomains = 0x80,
+ /* Flags for specifying domain enumeration type in DNSServiceEnumerateDomains.
+ * BrowseDomains enumerates domains recommended for browsing, RegistrationDomains
+ * enumerates domains recommended for registration.
+ */
+
+ kDNSServiceFlagsLongLivedQuery = 0x100,
+ /* Flag for creating a long-lived unicast query for the DNSServiceQueryRecord call. */
+
+ kDNSServiceFlagsAllowRemoteQuery = 0x200,
+ /* Flag for creating a record for which we will answer remote queries
+ * (queries from hosts more than one hop away; hosts not directly connected to the local link).
+ */
+
+ kDNSServiceFlagsForceMulticast = 0x400,
+ /* Flag for signifying that a query or registration should be performed exclusively via multicast
+ * DNS, even for a name in a domain (e.g. foo.apple.com.) that would normally imply unicast DNS.
+ */
+
+ kDNSServiceFlagsForce = 0x800,
+ /* Flag for signifying a "stronger" variant of an operation.
+ * Currently defined only for DNSServiceReconfirmRecord(), where it forces a record to
+ * be removed from the cache immediately, instead of querying for a few seconds before
+ * concluding that the record is no longer valid and then removing it. This flag should
+ * be used with caution because if a service browsing PTR record is indeed still valid
+ * on the network, forcing its removal will result in a user-interface flap -- the
+ * discovered service instance will disappear, and then re-appear moments later.
+ */
+
+ kDNSServiceFlagsReturnIntermediates = 0x1000,
+ /* Flag for returning intermediate results.
+ * For example, if a query results in an authoritative NXDomain (name does not exist)
+ * then that result is returned to the client. However the query is not implicitly
+ * cancelled -- it remains active and if the answer subsequently changes
+ * (e.g. because a VPN tunnel is subsequently established) then that positive
+ * result will still be returned to the client.
+ * Similarly, if a query results in a CNAME record, then in addition to following
+ * the CNAME referral, the intermediate CNAME result is also returned to the client.
+ * When this flag is not set, NXDomain errors are not returned, and CNAME records
+ * are followed silently without informing the client of the intermediate steps.
+ * (In earlier builds this flag was briefly calledkDNSServiceFlagsReturnCNAME)
+ */
+
+ kDNSServiceFlagsNonBrowsable = 0x2000,
+ /* A service registered with the NonBrowsable flag set can be resolved using
+ * DNSServiceResolve(), but will not be discoverable using DNSServiceBrowse().
+ * This is for cases where the name is actually a GUID; it is found by other means;
+ * there is no end-user benefit to browsing to find a long list of opaque GUIDs.
+ * Using the NonBrowsable flag creates SRV+TXT without the cost of also advertising
+ * an associated PTR record.
+ */
+
+ kDNSServiceFlagsShareConnection = 0x4000,
+ /* For efficiency, clients that perform many concurrent operations may want to use a
+ * single Unix Domain Socket connection with the background daemon, instead of having a
+ * separate connection for each independent operation. To use this mode, clients first
+ * call DNSServiceCreateConnection(&MainRef) to initialize the main DNSServiceRef.
+ * For each subsequent operation that is to share that same connection, the client copies
+ * the MainRef, and then passes the address of that copy, setting the ShareConnection flag
+ * to tell the library that this DNSServiceRef is not a typical uninitialized DNSServiceRef;
+ * it's a copy of an existing DNSServiceRef whose connection information should be reused.
+ *
+ * For example:
+ *
+ * DNSServiceErrorType error;
+ * DNSServiceRef MainRef;
+ * error = DNSServiceCreateConnection(&MainRef);
+ * if (error) ...
+ * DNSServiceRef BrowseRef = MainRef; // Important: COPY the primary DNSServiceRef first...
+ * error = DNSServiceBrowse(&BrowseRef, kDNSServiceFlagsShareConnection, ...); // then use the copy
+ * if (error) ...
+ * ...
+ * DNSServiceRefDeallocate(BrowseRef); // Terminate the browse operation
+ * DNSServiceRefDeallocate(MainRef); // Terminate the shared connection
+ *
+ * Notes:
+ *
+ * 1. Collective kDNSServiceFlagsMoreComing flag
+ * When callbacks are invoked using a shared DNSServiceRef, the
+ * kDNSServiceFlagsMoreComing flag applies collectively to *all* active
+ * operations sharing the same parent DNSServiceRef. If the MoreComing flag is
+ * set it means that there are more results queued on this parent DNSServiceRef,
+ * but not necessarily more results for this particular callback function.
+ * The implication of this for client programmers is that when a callback
+ * is invoked with the MoreComing flag set, the code should update its
+ * internal data structures with the new result, and set a variable indicating
+ * that its UI needs to be updated. Then, later when a callback is eventually
+ * invoked with the MoreComing flag not set, the code should update *all*
+ * stale UI elements related to that shared parent DNSServiceRef that need
+ * updating, not just the UI elements related to the particular callback
+ * that happened to be the last one to be invoked.
+ *
+ * 2. Canceling operations and kDNSServiceFlagsMoreComing
+ * Whenever you cancel any operation for which you had deferred UI updates
+ * waiting because of a kDNSServiceFlagsMoreComing flag, you should perform
+ * those deferred UI updates. This is because, after cancelling the operation,
+ * you can no longer wait for a callback *without* MoreComing set, to tell
+ * you do perform your deferred UI updates (the operation has been canceled,
+ * so there will be no more callbacks). An implication of the collective
+ * kDNSServiceFlagsMoreComing flag for shared connections is that this
+ * guideline applies more broadly -- any time you cancel an operation on
+ * a shared connection, you should perform all deferred UI updates for all
+ * operations sharing that connection. This is because the MoreComing flag
+ * might have been referring to events coming for the operation you canceled,
+ * which will now not be coming because the operation has been canceled.
+ *
+ * 3. Only share DNSServiceRef's created with DNSServiceCreateConnection
+ * Calling DNSServiceCreateConnection(&ref) creates a special shareable DNSServiceRef.
+ * DNSServiceRef's created by other calls like DNSServiceBrowse() or DNSServiceResolve()
+ * cannot be shared by copying them and using kDNSServiceFlagsShareConnection.
+ *
+ * 4. Don't Double-Deallocate
+ * Calling DNSServiceRefDeallocate(ref) for a particular operation's DNSServiceRef terminates
+ * just that operation. Calling DNSServiceRefDeallocate(ref) for the main shared DNSServiceRef
+ * (the parent DNSServiceRef, originally created by DNSServiceCreateConnection(&ref))
+ * automatically terminates the shared connection and all operations that were still using it.
+ * After doing this, DO NOT then attempt to deallocate any remaining subordinate DNSServiceRef's.
+ * The memory used by those subordinate DNSServiceRef's has already been freed, so any attempt
+ * to do a DNSServiceRefDeallocate (or any other operation) on them will result in accesses
+ * to freed memory, leading to crashes or other equally undesirable results.
+ *
+ * 5. Thread Safety
+ * The dns_sd.h API does not presuppose any particular threading model, and consequently
+ * does no locking of its own (which would require linking some specific threading library).
+ * If client code calls API routines on the same DNSServiceRef concurrently
+ * from multiple threads, it is the client's responsibility to use a mutext
+ * lock or take similar appropriate precautions to serialize those calls.
+ */
+
+ kDNSServiceFlagsSuppressUnusable = 0x8000,
+ /*
+ * This flag is meaningful only in DNSServiceQueryRecord which suppresses unusable queries on the
+ * wire. If "hostname" is a wide-area unicast DNS hostname (i.e. not a ".local." name)
+ * but this host has no routable IPv6 address, then the call will not try to look up IPv6 addresses
+ * for "hostname", since any addresses it found would be unlikely to be of any use anyway. Similarly,
+ * if this host has no routable IPv4 address, the call will not try to look up IPv4 addresses for
+ * "hostname".
+ */
+
+ kDNSServiceFlagsTimeout = 0x10000,
+ /*
+ * When kDNServiceFlagsTimeout is passed to DNSServiceQueryRecord or DNSServiceGetAddrInfo, the query is
+ * stopped after a certain number of seconds have elapsed. The time at which the query will be stopped
+ * is determined by the system and cannot be configured by the user. The query will be stopped irrespective
+ * of whether a response was given earlier or not. When the query is stopped, the callback will be called
+ * with an error code of kDNSServiceErr_Timeout and a NULL sockaddr will be returned for DNSServiceGetAddrInfo
+ * and zero length rdata will be returned for DNSServiceQueryRecord.
+ */
+
+ kDNSServiceFlagsIncludeP2P = 0x20000,
+ /*
+ * Include P2P interfaces when kDNSServiceInterfaceIndexAny is specified.
+ * By default, specifying kDNSServiceInterfaceIndexAny does not include P2P interfaces.
+ */
+ kDNSServiceFlagsWakeOnResolve = 0x40000
+ /*
+ * This flag is meaningful only in DNSServiceResolve. When set, it tries to send a magic packet
+ * to wake up the client.
+ */
+ };
+
+/* Possible protocols for DNSServiceNATPortMappingCreate(). */
+enum
+ {
+ kDNSServiceProtocol_IPv4 = 0x01,
+ kDNSServiceProtocol_IPv6 = 0x02,
+ /* 0x04 and 0x08 reserved for future internetwork protocols */
+
+ kDNSServiceProtocol_UDP = 0x10,
+ kDNSServiceProtocol_TCP = 0x20
+ /* 0x40 and 0x80 reserved for future transport protocols, e.g. SCTP [RFC 2960]
+ * or DCCP [RFC 4340]. If future NAT gateways are created that support port
+ * mappings for these protocols, new constants will be defined here.
+ */
+ };
+
+/*
+ * The values for DNS Classes and Types are listed in RFC 1035, and are available
+ * on every OS in its DNS header file. Unfortunately every OS does not have the
+ * same header file containing DNS Class and Type constants, and the names of
+ * the constants are not consistent. For example, BIND 8 uses "T_A",
+ * BIND 9 uses "ns_t_a", Windows uses "DNS_TYPE_A", etc.
+ * For this reason, these constants are also listed here, so that code using
+ * the DNS-SD programming APIs can use these constants, so that the same code
+ * can compile on all our supported platforms.
+ */
+
+enum
+ {
+ kDNSServiceClass_IN = 1 /* Internet */
+ };
+
+enum
+ {
+ kDNSServiceType_A = 1, /* Host address. */
+ kDNSServiceType_NS = 2, /* Authoritative server. */
+ kDNSServiceType_MD = 3, /* Mail destination. */
+ kDNSServiceType_MF = 4, /* Mail forwarder. */
+ kDNSServiceType_CNAME = 5, /* Canonical name. */
+ kDNSServiceType_SOA = 6, /* Start of authority zone. */
+ kDNSServiceType_MB = 7, /* Mailbox domain name. */
+ kDNSServiceType_MG = 8, /* Mail group member. */
+ kDNSServiceType_MR = 9, /* Mail rename name. */
+ kDNSServiceType_NULL = 10, /* Null resource record. */
+ kDNSServiceType_WKS = 11, /* Well known service. */
+ kDNSServiceType_PTR = 12, /* Domain name pointer. */
+ kDNSServiceType_HINFO = 13, /* Host information. */
+ kDNSServiceType_MINFO = 14, /* Mailbox information. */
+ kDNSServiceType_MX = 15, /* Mail routing information. */
+ kDNSServiceType_TXT = 16, /* One or more text strings (NOT "zero or more..."). */
+ kDNSServiceType_RP = 17, /* Responsible person. */
+ kDNSServiceType_AFSDB = 18, /* AFS cell database. */
+ kDNSServiceType_X25 = 19, /* X_25 calling address. */
+ kDNSServiceType_ISDN = 20, /* ISDN calling address. */
+ kDNSServiceType_RT = 21, /* Router. */
+ kDNSServiceType_NSAP = 22, /* NSAP address. */
+ kDNSServiceType_NSAP_PTR = 23, /* Reverse NSAP lookup (deprecated). */
+ kDNSServiceType_SIG = 24, /* Security signature. */
+ kDNSServiceType_KEY = 25, /* Security key. */
+ kDNSServiceType_PX = 26, /* X.400 mail mapping. */
+ kDNSServiceType_GPOS = 27, /* Geographical position (withdrawn). */
+ kDNSServiceType_AAAA = 28, /* IPv6 Address. */
+ kDNSServiceType_LOC = 29, /* Location Information. */
+ kDNSServiceType_NXT = 30, /* Next domain (security). */
+ kDNSServiceType_EID = 31, /* Endpoint identifier. */
+ kDNSServiceType_NIMLOC = 32, /* Nimrod Locator. */
+ kDNSServiceType_SRV = 33, /* Server Selection. */
+ kDNSServiceType_ATMA = 34, /* ATM Address */
+ kDNSServiceType_NAPTR = 35, /* Naming Authority PoinTeR */
+ kDNSServiceType_KX = 36, /* Key Exchange */
+ kDNSServiceType_CERT = 37, /* Certification record */
+ kDNSServiceType_A6 = 38, /* IPv6 Address (deprecated) */
+ kDNSServiceType_DNAME = 39, /* Non-terminal DNAME (for IPv6) */
+ kDNSServiceType_SINK = 40, /* Kitchen sink (experimental) */
+ kDNSServiceType_OPT = 41, /* EDNS0 option (meta-RR) */
+ kDNSServiceType_APL = 42, /* Address Prefix List */
+ kDNSServiceType_DS = 43, /* Delegation Signer */
+ kDNSServiceType_SSHFP = 44, /* SSH Key Fingerprint */
+ kDNSServiceType_IPSECKEY = 45, /* IPSECKEY */
+ kDNSServiceType_RRSIG = 46, /* RRSIG */
+ kDNSServiceType_NSEC = 47, /* Denial of Existence */
+ kDNSServiceType_DNSKEY = 48, /* DNSKEY */
+ kDNSServiceType_DHCID = 49, /* DHCP Client Identifier */
+ kDNSServiceType_NSEC3 = 50, /* Hashed Authenticated Denial of Existence */
+ kDNSServiceType_NSEC3PARAM = 51, /* Hashed Authenticated Denial of Existence */
+
+ kDNSServiceType_HIP = 55, /* Host Identity Protocol */
+
+ kDNSServiceType_SPF = 99, /* Sender Policy Framework for E-Mail */
+ kDNSServiceType_UINFO = 100, /* IANA-Reserved */
+ kDNSServiceType_UID = 101, /* IANA-Reserved */
+ kDNSServiceType_GID = 102, /* IANA-Reserved */
+ kDNSServiceType_UNSPEC = 103, /* IANA-Reserved */
+
+ kDNSServiceType_TKEY = 249, /* Transaction key */
+ kDNSServiceType_TSIG = 250, /* Transaction signature. */
+ kDNSServiceType_IXFR = 251, /* Incremental zone transfer. */
+ kDNSServiceType_AXFR = 252, /* Transfer zone of authority. */
+ kDNSServiceType_MAILB = 253, /* Transfer mailbox records. */
+ kDNSServiceType_MAILA = 254, /* Transfer mail agent records. */
+ kDNSServiceType_ANY = 255 /* Wildcard match. */
+ };
+
+/* possible error code values */
+enum
+ {
+ kDNSServiceErr_NoError = 0,
+ kDNSServiceErr_Unknown = -65537, /* 0xFFFE FFFF */
+ kDNSServiceErr_NoSuchName = -65538,
+ kDNSServiceErr_NoMemory = -65539,
+ kDNSServiceErr_BadParam = -65540,
+ kDNSServiceErr_BadReference = -65541,
+ kDNSServiceErr_BadState = -65542,
+ kDNSServiceErr_BadFlags = -65543,
+ kDNSServiceErr_Unsupported = -65544,
+ kDNSServiceErr_NotInitialized = -65545,
+ kDNSServiceErr_AlreadyRegistered = -65547,
+ kDNSServiceErr_NameConflict = -65548,
+ kDNSServiceErr_Invalid = -65549,
+ kDNSServiceErr_Firewall = -65550,
+ kDNSServiceErr_Incompatible = -65551, /* client library incompatible with daemon */
+ kDNSServiceErr_BadInterfaceIndex = -65552,
+ kDNSServiceErr_Refused = -65553,
+ kDNSServiceErr_NoSuchRecord = -65554,
+ kDNSServiceErr_NoAuth = -65555,
+ kDNSServiceErr_NoSuchKey = -65556,
+ kDNSServiceErr_NATTraversal = -65557,
+ kDNSServiceErr_DoubleNAT = -65558,
+ kDNSServiceErr_BadTime = -65559, /* Codes up to here existed in Tiger */
+ kDNSServiceErr_BadSig = -65560,
+ kDNSServiceErr_BadKey = -65561,
+ kDNSServiceErr_Transient = -65562,
+ kDNSServiceErr_ServiceNotRunning = -65563, /* Background daemon not running */
+ kDNSServiceErr_NATPortMappingUnsupported = -65564, /* NAT doesn't support NAT-PMP or UPnP */
+ kDNSServiceErr_NATPortMappingDisabled = -65565, /* NAT supports NAT-PMP or UPnP but it's disabled by the administrator */
+ kDNSServiceErr_NoRouter = -65566, /* No router currently configured (probably no network connectivity) */
+ kDNSServiceErr_PollingMode = -65567,
+ kDNSServiceErr_Timeout = -65568
+
+ /* mDNS Error codes are in the range
+ * FFFE FF00 (-65792) to FFFE FFFF (-65537) */
+ };
+
+/* Maximum length, in bytes, of a service name represented as a */
+/* literal C-String, including the terminating NULL at the end. */
+
+#define kDNSServiceMaxServiceName 64
+
+/* Maximum length, in bytes, of a domain name represented as an *escaped* C-String */
+/* including the final trailing dot, and the C-String terminating NULL at the end. */
+
+#define kDNSServiceMaxDomainName 1009
+
+/*
+ * Notes on DNS Name Escaping
+ * -- or --
+ * "Why is kDNSServiceMaxDomainName 1009, when the maximum legal domain name is 256 bytes?"
+ *
+ * All strings used in the DNS-SD APIs are UTF-8 strings. Apart from the exceptions noted below,
+ * the APIs expect the strings to be properly escaped, using the conventional DNS escaping rules:
+ *
+ * '\\' represents a single literal '\' in the name
+ * '\.' represents a single literal '.' in the name
+ * '\ddd', where ddd is a three-digit decimal value from 000 to 255,
+ * represents a single literal byte with that value.
+ * A bare unescaped '.' is a label separator, marking a boundary between domain and subdomain.
+ *
+ * The exceptions, that do not use escaping, are the routines where the full
+ * DNS name of a resource is broken, for convenience, into servicename/regtype/domain.
+ * In these routines, the "servicename" is NOT escaped. It does not need to be, since
+ * it is, by definition, just a single literal string. Any characters in that string
+ * represent exactly what they are. The "regtype" portion is, technically speaking,
+ * escaped, but since legal regtypes are only allowed to contain letters, digits,
+ * and hyphens, there is nothing to escape, so the issue is moot. The "domain"
+ * portion is also escaped, though most domains in use on the public Internet
+ * today, like regtypes, don't contain any characters that need to be escaped.
+ * As DNS-SD becomes more popular, rich-text domains for service discovery will
+ * become common, so software should be written to cope with domains with escaping.
+ *
+ * The servicename may be up to 63 bytes of UTF-8 text (not counting the C-String
+ * terminating NULL at the end). The regtype is of the form _service._tcp or
+ * _service._udp, where the "service" part is 1-15 characters, which may be
+ * letters, digits, or hyphens. The domain part of the three-part name may be
+ * any legal domain, providing that the resulting servicename+regtype+domain
+ * name does not exceed 256 bytes.
+ *
+ * For most software, these issues are transparent. When browsing, the discovered
+ * servicenames should simply be displayed as-is. When resolving, the discovered
+ * servicename/regtype/domain are simply passed unchanged to DNSServiceResolve().
+ * When a DNSServiceResolve() succeeds, the returned fullname is already in
+ * the correct format to pass to standard system DNS APIs such as res_query().
+ * For converting from servicename/regtype/domain to a single properly-escaped
+ * full DNS name, the helper function DNSServiceConstructFullName() is provided.
+ *
+ * The following (highly contrived) example illustrates the escaping process.
+ * Suppose you have an service called "Dr. Smith\Dr. Johnson", of type "_ftp._tcp"
+ * in subdomain "4th. Floor" of subdomain "Building 2" of domain "apple.com."
+ * The full (escaped) DNS name of this service's SRV record would be:
+ * Dr\.\032Smith\\Dr\.\032Johnson._ftp._tcp.4th\.\032Floor.Building\0322.apple.com.
+ */
+
+
+/*
+ * Constants for specifying an interface index
+ *
+ * Specific interface indexes are identified via a 32-bit unsigned integer returned
+ * by the if_nametoindex() family of calls.
+ *
+ * If the client passes 0 for interface index, that means "do the right thing",
+ * which (at present) means, "if the name is in an mDNS local multicast domain
+ * (e.g. 'local.', '254.169.in-addr.arpa.', '{8,9,A,B}.E.F.ip6.arpa.') then multicast
+ * on all applicable interfaces, otherwise send via unicast to the appropriate
+ * DNS server." Normally, most clients will use 0 for interface index to
+ * automatically get the default sensible behaviour.
+ *
+ * If the client passes a positive interface index, then for multicast names that
+ * indicates to do the operation only on that one interface. For unicast names the
+ * interface index is ignored unless kDNSServiceFlagsForceMulticast is also set.
+ *
+ * If the client passes kDNSServiceInterfaceIndexLocalOnly when registering
+ * a service, then that service will be found *only* by other local clients
+ * on the same machine that are browsing using kDNSServiceInterfaceIndexLocalOnly
+ * or kDNSServiceInterfaceIndexAny.
+ * If a client has a 'private' service, accessible only to other processes
+ * running on the same machine, this allows the client to advertise that service
+ * in a way such that it does not inadvertently appear in service lists on
+ * all the other machines on the network.
+ *
+ * If the client passes kDNSServiceInterfaceIndexLocalOnly when browsing
+ * then it will find *all* records registered on that same local machine.
+ * Clients explicitly wishing to discover *only* LocalOnly services can
+ * accomplish this by inspecting the interfaceIndex of each service reported
+ * to their DNSServiceBrowseReply() callback function, and discarding those
+ * where the interface index is not kDNSServiceInterfaceIndexLocalOnly.
+ *
+ * kDNSServiceInterfaceIndexP2P is meaningful only in Browse, QueryRecord,
+ * and Resolve operations. It should not be used in other DNSService APIs.
+ *
+ * - If kDNSServiceInterfaceIndexP2P is passed to DNSServiceBrowse or
+ * DNSServiceQueryRecord, it restricts the operation to P2P.
+ *
+ * - If kDNSServiceInterfaceIndexP2P is passed to DNSServiceResolve, it is
+ * mapped internally to kDNSServiceInterfaceIndexAny, because resolving
+ * a P2P service may create and/or enable an interface whose index is not
+ * known a priori. The resolve callback will indicate the index of the
+ * interface via which the service can be accessed.
+ *
+ * If applications pass kDNSServiceInterfaceIndexAny to DNSServiceBrowse
+ * or DNSServiceQueryRecord, they must set the kDNSServiceFlagsIncludeP2P flag
+ * to include P2P. In this case, if a service instance or the record being queried
+ * is found over P2P, the resulting ADD event will indicate kDNSServiceInterfaceIndexP2P
+ * as the interface index.
+ */
+
+#define kDNSServiceInterfaceIndexAny 0
+#define kDNSServiceInterfaceIndexLocalOnly ((uint32_t)-1)
+#define kDNSServiceInterfaceIndexUnicast ((uint32_t)-2)
+#define kDNSServiceInterfaceIndexP2P ((uint32_t)-3)
+
+typedef uint32_t DNSServiceFlags;
+typedef uint32_t DNSServiceProtocol;
+typedef int32_t DNSServiceErrorType;
+
+
+/*********************************************************************************************
+ *
+ * Version checking
+ *
+ *********************************************************************************************/
+
+/* DNSServiceGetProperty() Parameters:
+ *
+ * property: The requested property.
+ * Currently the only property defined is kDNSServiceProperty_DaemonVersion.
+ *
+ * result: Place to store result.
+ * For retrieving DaemonVersion, this should be the address of a uint32_t.
+ *
+ * size: Pointer to uint32_t containing size of the result location.
+ * For retrieving DaemonVersion, this should be sizeof(uint32_t).
+ * On return the uint32_t is updated to the size of the data returned.
+ * For DaemonVersion, the returned size is always sizeof(uint32_t), but
+ * future properties could be defined which return variable-sized results.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success, or kDNSServiceErr_ServiceNotRunning
+ * if the daemon (or "system service" on Windows) is not running.
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceGetProperty
+ (
+ const char *property, /* Requested property (i.e. kDNSServiceProperty_DaemonVersion) */
+ void *result, /* Pointer to place to store result */
+ uint32_t *size /* size of result location */
+ );
+
+/*
+ * When requesting kDNSServiceProperty_DaemonVersion, the result pointer must point
+ * to a 32-bit unsigned integer, and the size parameter must be set to sizeof(uint32_t).
+ *
+ * On return, the 32-bit unsigned integer contains the version number, formatted as follows:
+ * Major part of the build number * 10000 +
+ * minor part of the build number * 100
+ *
+ * For example, Mac OS X 10.4.9 has mDNSResponder-108.4, which would be represented as
+ * version 1080400. This allows applications to do simple greater-than and less-than comparisons:
+ * e.g. an application that requires at least mDNSResponder-108.4 can check:
+ *
+ * if (version >= 1080400) ...
+ *
+ * Example usage:
+ *
+ * uint32_t version;
+ * uint32_t size = sizeof(version);
+ * DNSServiceErrorType err = DNSServiceGetProperty(kDNSServiceProperty_DaemonVersion, &version, &size);
+ * if (!err) printf("Bonjour version is %d.%d\n", version / 10000, version / 100 % 100);
+ */
+
+#define kDNSServiceProperty_DaemonVersion "DaemonVersion"
+
+
+/*********************************************************************************************
+ *
+ * Unix Domain Socket access, DNSServiceRef deallocation, and data processing functions
+ *
+ *********************************************************************************************/
+
+/* DNSServiceRefSockFD()
+ *
+ * Access underlying Unix domain socket for an initialized DNSServiceRef.
+ * The DNS Service Discovery implementation uses this socket to communicate between the client and
+ * the mDNSResponder daemon. The application MUST NOT directly read from or write to this socket.
+ * Access to the socket is provided so that it can be used as a kqueue event source, a CFRunLoop
+ * event source, in a select() loop, etc. When the underlying event management subsystem (kqueue/
+ * select/CFRunLoop etc.) indicates to the client that data is available for reading on the
+ * socket, the client should call DNSServiceProcessResult(), which will extract the daemon's
+ * reply from the socket, and pass it to the appropriate application callback. By using a run
+ * loop or select(), results from the daemon can be processed asynchronously. Alternatively,
+ * a client can choose to fork a thread and have it loop calling "DNSServiceProcessResult(ref);"
+ * If DNSServiceProcessResult() is called when no data is available for reading on the socket, it
+ * will block until data does become available, and then process the data and return to the caller.
+ * When data arrives on the socket, the client is responsible for calling DNSServiceProcessResult(ref)
+ * in a timely fashion -- if the client allows a large backlog of data to build up the daemon
+ * may terminate the connection.
+ *
+ * sdRef: A DNSServiceRef initialized by any of the DNSService calls.
+ *
+ * return value: The DNSServiceRef's underlying socket descriptor, or -1 on
+ * error.
+ */
+
+int DNSSD_API DNSServiceRefSockFD(DNSServiceRef sdRef);
+
+
+/* DNSServiceProcessResult()
+ *
+ * Read a reply from the daemon, calling the appropriate application callback. This call will
+ * block until the daemon's response is received. Use DNSServiceRefSockFD() in
+ * conjunction with a run loop or select() to determine the presence of a response from the
+ * server before calling this function to process the reply without blocking. Call this function
+ * at any point if it is acceptable to block until the daemon's response arrives. Note that the
+ * client is responsible for ensuring that DNSServiceProcessResult() is called whenever there is
+ * a reply from the daemon - the daemon may terminate its connection with a client that does not
+ * process the daemon's responses.
+ *
+ * sdRef: A DNSServiceRef initialized by any of the DNSService calls
+ * that take a callback parameter.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success, otherwise returns
+ * an error code indicating the specific failure that occurred.
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceProcessResult(DNSServiceRef sdRef);
+
+
+/* DNSServiceRefDeallocate()
+ *
+ * Terminate a connection with the daemon and free memory associated with the DNSServiceRef.
+ * Any services or records registered with this DNSServiceRef will be deregistered. Any
+ * Browse, Resolve, or Query operations called with this reference will be terminated.
+ *
+ * Note: If the reference's underlying socket is used in a run loop or select() call, it should
+ * be removed BEFORE DNSServiceRefDeallocate() is called, as this function closes the reference's
+ * socket.
+ *
+ * Note: If the reference was initialized with DNSServiceCreateConnection(), any DNSRecordRefs
+ * created via this reference will be invalidated by this call - the resource records are
+ * deregistered, and their DNSRecordRefs may not be used in subsequent functions. Similarly,
+ * if the reference was initialized with DNSServiceRegister, and an extra resource record was
+ * added to the service via DNSServiceAddRecord(), the DNSRecordRef created by the Add() call
+ * is invalidated when this function is called - the DNSRecordRef may not be used in subsequent
+ * functions.
+ *
+ * Note: This call is to be used only with the DNSServiceRef defined by this API. It is
+ * not compatible with dns_service_discovery_ref objects defined in the legacy Mach-based
+ * DNSServiceDiscovery.h API.
+ *
+ * sdRef: A DNSServiceRef initialized by any of the DNSService calls.
+ *
+ */
+
+void DNSSD_API DNSServiceRefDeallocate(DNSServiceRef sdRef);
+
+
+/*********************************************************************************************
+ *
+ * Domain Enumeration
+ *
+ *********************************************************************************************/
+
+/* DNSServiceEnumerateDomains()
+ *
+ * Asynchronously enumerate domains available for browsing and registration.
+ *
+ * The enumeration MUST be cancelled via DNSServiceRefDeallocate() when no more domains
+ * are to be found.
+ *
+ * Note that the names returned are (like all of DNS-SD) UTF-8 strings,
+ * and are escaped using standard DNS escaping rules.
+ * (See "Notes on DNS Name Escaping" earlier in this file for more details.)
+ * A graphical browser displaying a hierarchical tree-structured view should cut
+ * the names at the bare dots to yield individual labels, then de-escape each
+ * label according to the escaping rules, and then display the resulting UTF-8 text.
+ *
+ * DNSServiceDomainEnumReply Callback Parameters:
+ *
+ * sdRef: The DNSServiceRef initialized by DNSServiceEnumerateDomains().
+ *
+ * flags: Possible values are:
+ * kDNSServiceFlagsMoreComing
+ * kDNSServiceFlagsAdd
+ * kDNSServiceFlagsDefault
+ *
+ * interfaceIndex: Specifies the interface on which the domain exists. (The index for a given
+ * interface is determined via the if_nametoindex() family of calls.)
+ *
+ * errorCode: Will be kDNSServiceErr_NoError (0) on success, otherwise indicates
+ * the failure that occurred (other parameters are undefined if errorCode is nonzero).
+ *
+ * replyDomain: The name of the domain.
+ *
+ * context: The context pointer passed to DNSServiceEnumerateDomains.
+ *
+ */
+
+typedef void (DNSSD_API *DNSServiceDomainEnumReply)
+ (
+ DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ const char *replyDomain,
+ void *context
+ );
+
+
+/* DNSServiceEnumerateDomains() Parameters:
+ *
+ * sdRef: A pointer to an uninitialized DNSServiceRef. If the call succeeds
+ * then it initializes the DNSServiceRef, returns kDNSServiceErr_NoError,
+ * and the enumeration operation will run indefinitely until the client
+ * terminates it by passing this DNSServiceRef to DNSServiceRefDeallocate().
+ *
+ * flags: Possible values are:
+ * kDNSServiceFlagsBrowseDomains to enumerate domains recommended for browsing.
+ * kDNSServiceFlagsRegistrationDomains to enumerate domains recommended
+ * for registration.
+ *
+ * interfaceIndex: If non-zero, specifies the interface on which to look for domains.
+ * (the index for a given interface is determined via the if_nametoindex()
+ * family of calls.) Most applications will pass 0 to enumerate domains on
+ * all interfaces. See "Constants for specifying an interface index" for more details.
+ *
+ * callBack: The function to be called when a domain is found or the call asynchronously
+ * fails.
+ *
+ * context: An application context pointer which is passed to the callback function
+ * (may be NULL).
+ *
+ * return value: Returns kDNSServiceErr_NoError on success (any subsequent, asynchronous
+ * errors are delivered to the callback), otherwise returns an error code indicating
+ * the error that occurred (the callback is not invoked and the DNSServiceRef
+ * is not initialized).
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceEnumerateDomains
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceDomainEnumReply callBack,
+ void *context /* may be NULL */
+ );
+
+
+/*********************************************************************************************
+ *
+ * Service Registration
+ *
+ *********************************************************************************************/
+
+/* Register a service that is discovered via Browse() and Resolve() calls.
+ *
+ * DNSServiceRegisterReply() Callback Parameters:
+ *
+ * sdRef: The DNSServiceRef initialized by DNSServiceRegister().
+ *
+ * flags: When a name is successfully registered, the callback will be
+ * invoked with the kDNSServiceFlagsAdd flag set. When Wide-Area
+ * DNS-SD is in use, it is possible for a single service to get
+ * more than one success callback (e.g. one in the "local" multicast
+ * DNS domain, and another in a wide-area unicast DNS domain).
+ * If a successfully-registered name later suffers a name conflict
+ * or similar problem and has to be deregistered, the callback will
+ * be invoked with the kDNSServiceFlagsAdd flag not set. The callback
+ * is *not* invoked in the case where the caller explicitly terminates
+ * the service registration by calling DNSServiceRefDeallocate(ref);
+ *
+ * errorCode: Will be kDNSServiceErr_NoError on success, otherwise will
+ * indicate the failure that occurred (including name conflicts,
+ * if the kDNSServiceFlagsNoAutoRename flag was used when registering.)
+ * Other parameters are undefined if errorCode is nonzero.
+ *
+ * name: The service name registered (if the application did not specify a name in
+ * DNSServiceRegister(), this indicates what name was automatically chosen).
+ *
+ * regtype: The type of service registered, as it was passed to the callout.
+ *
+ * domain: The domain on which the service was registered (if the application did not
+ * specify a domain in DNSServiceRegister(), this indicates the default domain
+ * on which the service was registered).
+ *
+ * context: The context pointer that was passed to the callout.
+ *
+ */
+
+typedef void (DNSSD_API *DNSServiceRegisterReply)
+ (
+ DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ DNSServiceErrorType errorCode,
+ const char *name,
+ const char *regtype,
+ const char *domain,
+ void *context
+ );
+
+
+/* DNSServiceRegister() Parameters:
+ *
+ * sdRef: A pointer to an uninitialized DNSServiceRef. If the call succeeds
+ * then it initializes the DNSServiceRef, returns kDNSServiceErr_NoError,
+ * and the registration will remain active indefinitely until the client
+ * terminates it by passing this DNSServiceRef to DNSServiceRefDeallocate().
+ *
+ * interfaceIndex: If non-zero, specifies the interface on which to register the service
+ * (the index for a given interface is determined via the if_nametoindex()
+ * family of calls.) Most applications will pass 0 to register on all
+ * available interfaces. See "Constants for specifying an interface index" for more details.
+ *
+ * flags: Indicates the renaming behavior on name conflict (most applications
+ * will pass 0). See flag definitions above for details.
+ *
+ * name: If non-NULL, specifies the service name to be registered.
+ * Most applications will not specify a name, in which case the computer
+ * name is used (this name is communicated to the client via the callback).
+ * If a name is specified, it must be 1-63 bytes of UTF-8 text.
+ * If the name is longer than 63 bytes it will be automatically truncated
+ * to a legal length, unless the NoAutoRename flag is set,
+ * in which case kDNSServiceErr_BadParam will be returned.
+ *
+ * regtype: The service type followed by the protocol, separated by a dot
+ * (e.g. "_ftp._tcp"). The service type must be an underscore, followed
+ * by 1-15 characters, which may be letters, digits, or hyphens.
+ * The transport protocol must be "_tcp" or "_udp". New service types
+ * should be registered at <http://www.dns-sd.org/ServiceTypes.html>.
+ *
+ * Additional subtypes of the primary service type (where a service
+ * type has defined subtypes) follow the primary service type in a
+ * comma-separated list, with no additional spaces, e.g.
+ * "_primarytype._tcp,_subtype1,_subtype2,_subtype3"
+ * Subtypes provide a mechanism for filtered browsing: A client browsing
+ * for "_primarytype._tcp" will discover all instances of this type;
+ * a client browsing for "_primarytype._tcp,_subtype2" will discover only
+ * those instances that were registered with "_subtype2" in their list of
+ * registered subtypes.
+ *
+ * The subtype mechanism can be illustrated with some examples using the
+ * dns-sd command-line tool:
+ *
+ * % dns-sd -R Simple _test._tcp "" 1001 &
+ * % dns-sd -R Better _test._tcp,HasFeatureA "" 1002 &
+ * % dns-sd -R Best _test._tcp,HasFeatureA,HasFeatureB "" 1003 &
+ *
+ * Now:
+ * % dns-sd -B _test._tcp # will find all three services
+ * % dns-sd -B _test._tcp,HasFeatureA # finds "Better" and "Best"
+ * % dns-sd -B _test._tcp,HasFeatureB # finds only "Best"
+ *
+ * Subtype labels may be up to 63 bytes long, and may contain any eight-
+ * bit byte values, including zero bytes. However, due to the nature of
+ * using a C-string-based API, conventional DNS escaping must be used for
+ * dots ('.'), commas (','), backslashes ('\') and zero bytes, as shown below:
+ *
+ * % dns-sd -R Test '_test._tcp,s\.one,s\,two,s\\three,s\000four' local 123
+ *
+ * domain: If non-NULL, specifies the domain on which to advertise the service.
+ * Most applications will not specify a domain, instead automatically
+ * registering in the default domain(s).
+ *
+ * host: If non-NULL, specifies the SRV target host name. Most applications
+ * will not specify a host, instead automatically using the machine's
+ * default host name(s). Note that specifying a non-NULL host does NOT
+ * create an address record for that host - the application is responsible
+ * for ensuring that the appropriate address record exists, or creating it
+ * via DNSServiceRegisterRecord().
+ *
+ * port: The port, in network byte order, on which the service accepts connections.
+ * Pass 0 for a "placeholder" service (i.e. a service that will not be discovered
+ * by browsing, but will cause a name conflict if another client tries to
+ * register that same name). Most clients will not use placeholder services.
+ *
+ * txtLen: The length of the txtRecord, in bytes. Must be zero if the txtRecord is NULL.
+ *
+ * txtRecord: The TXT record rdata. A non-NULL txtRecord MUST be a properly formatted DNS
+ * TXT record, i.e. <length byte> <data> <length byte> <data> ...
+ * Passing NULL for the txtRecord is allowed as a synonym for txtLen=1, txtRecord="",
+ * i.e. it creates a TXT record of length one containing a single empty string.
+ * RFC 1035 doesn't allow a TXT record to contain *zero* strings, so a single empty
+ * string is the smallest legal DNS TXT record.
+ * As with the other parameters, the DNSServiceRegister call copies the txtRecord
+ * data; e.g. if you allocated the storage for the txtRecord parameter with malloc()
+ * then you can safely free that memory right after the DNSServiceRegister call returns.
+ *
+ * callBack: The function to be called when the registration completes or asynchronously
+ * fails. The client MAY pass NULL for the callback - The client will NOT be notified
+ * of the default values picked on its behalf, and the client will NOT be notified of any
+ * asynchronous errors (e.g. out of memory errors, etc.) that may prevent the registration
+ * of the service. The client may NOT pass the NoAutoRename flag if the callback is NULL.
+ * The client may still deregister the service at any time via DNSServiceRefDeallocate().
+ *
+ * context: An application context pointer which is passed to the callback function
+ * (may be NULL).
+ *
+ * return value: Returns kDNSServiceErr_NoError on success (any subsequent, asynchronous
+ * errors are delivered to the callback), otherwise returns an error code indicating
+ * the error that occurred (the callback is never invoked and the DNSServiceRef
+ * is not initialized).
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceRegister
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *name, /* may be NULL */
+ const char *regtype,
+ const char *domain, /* may be NULL */
+ const char *host, /* may be NULL */
+ uint16_t port, /* In network byte order */
+ uint16_t txtLen,
+ const void *txtRecord, /* may be NULL */
+ DNSServiceRegisterReply callBack, /* may be NULL */
+ void *context /* may be NULL */
+ );
+
+
+/* DNSServiceAddRecord()
+ *
+ * Add a record to a registered service. The name of the record will be the same as the
+ * registered service's name.
+ * The record can later be updated or deregistered by passing the RecordRef initialized
+ * by this function to DNSServiceUpdateRecord() or DNSServiceRemoveRecord().
+ *
+ * Note that the DNSServiceAddRecord/UpdateRecord/RemoveRecord are *NOT* thread-safe
+ * with respect to a single DNSServiceRef. If you plan to have multiple threads
+ * in your program simultaneously add, update, or remove records from the same
+ * DNSServiceRef, then it's the caller's responsibility to use a mutext lock
+ * or take similar appropriate precautions to serialize those calls.
+ *
+ * Parameters;
+ *
+ * sdRef: A DNSServiceRef initialized by DNSServiceRegister().
+ *
+ * RecordRef: A pointer to an uninitialized DNSRecordRef. Upon succesfull completion of this
+ * call, this ref may be passed to DNSServiceUpdateRecord() or DNSServiceRemoveRecord().
+ * If the above DNSServiceRef is passed to DNSServiceRefDeallocate(), RecordRef is also
+ * invalidated and may not be used further.
+ *
+ * flags: Currently ignored, reserved for future use.
+ *
+ * rrtype: The type of the record (e.g. kDNSServiceType_TXT, kDNSServiceType_SRV, etc)
+ *
+ * rdlen: The length, in bytes, of the rdata.
+ *
+ * rdata: The raw rdata to be contained in the added resource record.
+ *
+ * ttl: The time to live of the resource record, in seconds.
+ * Most clients should pass 0 to indicate that the system should
+ * select a sensible default value.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success, otherwise returns an
+ * error code indicating the error that occurred (the RecordRef is not initialized).
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceAddRecord
+ (
+ DNSServiceRef sdRef,
+ DNSRecordRef *RecordRef,
+ DNSServiceFlags flags,
+ uint16_t rrtype,
+ uint16_t rdlen,
+ const void *rdata,
+ uint32_t ttl
+ );
+
+
+/* DNSServiceUpdateRecord
+ *
+ * Update a registered resource record. The record must either be:
+ * - The primary txt record of a service registered via DNSServiceRegister()
+ * - A record added to a registered service via DNSServiceAddRecord()
+ * - An individual record registered by DNSServiceRegisterRecord()
+ *
+ * Parameters:
+ *
+ * sdRef: A DNSServiceRef that was initialized by DNSServiceRegister()
+ * or DNSServiceCreateConnection().
+ *
+ * RecordRef: A DNSRecordRef initialized by DNSServiceAddRecord, or NULL to update the
+ * service's primary txt record.
+ *
+ * flags: Currently ignored, reserved for future use.
+ *
+ * rdlen: The length, in bytes, of the new rdata.
+ *
+ * rdata: The new rdata to be contained in the updated resource record.
+ *
+ * ttl: The time to live of the updated resource record, in seconds.
+ * Most clients should pass 0 to indicate that the system should
+ * select a sensible default value.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success, otherwise returns an
+ * error code indicating the error that occurred.
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceUpdateRecord
+ (
+ DNSServiceRef sdRef,
+ DNSRecordRef RecordRef, /* may be NULL */
+ DNSServiceFlags flags,
+ uint16_t rdlen,
+ const void *rdata,
+ uint32_t ttl
+ );
+
+
+/* DNSServiceRemoveRecord
+ *
+ * Remove a record previously added to a service record set via DNSServiceAddRecord(), or deregister
+ * an record registered individually via DNSServiceRegisterRecord().
+ *
+ * Parameters:
+ *
+ * sdRef: A DNSServiceRef initialized by DNSServiceRegister() (if the
+ * record being removed was registered via DNSServiceAddRecord()) or by
+ * DNSServiceCreateConnection() (if the record being removed was registered via
+ * DNSServiceRegisterRecord()).
+ *
+ * recordRef: A DNSRecordRef initialized by a successful call to DNSServiceAddRecord()
+ * or DNSServiceRegisterRecord().
+ *
+ * flags: Currently ignored, reserved for future use.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success, otherwise returns an
+ * error code indicating the error that occurred.
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceRemoveRecord
+ (
+ DNSServiceRef sdRef,
+ DNSRecordRef RecordRef,
+ DNSServiceFlags flags
+ );
+
+
+/*********************************************************************************************
+ *
+ * Service Discovery
+ *
+ *********************************************************************************************/
+
+/* Browse for instances of a service.
+ *
+ * DNSServiceBrowseReply() Parameters:
+ *
+ * sdRef: The DNSServiceRef initialized by DNSServiceBrowse().
+ *
+ * flags: Possible values are kDNSServiceFlagsMoreComing and kDNSServiceFlagsAdd.
+ * See flag definitions for details.
+ *
+ * interfaceIndex: The interface on which the service is advertised. This index should
+ * be passed to DNSServiceResolve() when resolving the service.
+ *
+ * errorCode: Will be kDNSServiceErr_NoError (0) on success, otherwise will
+ * indicate the failure that occurred. Other parameters are undefined if
+ * the errorCode is nonzero.
+ *
+ * serviceName: The discovered service name. This name should be displayed to the user,
+ * and stored for subsequent use in the DNSServiceResolve() call.
+ *
+ * regtype: The service type, which is usually (but not always) the same as was passed
+ * to DNSServiceBrowse(). One case where the discovered service type may
+ * not be the same as the requested service type is when using subtypes:
+ * The client may want to browse for only those ftp servers that allow
+ * anonymous connections. The client will pass the string "_ftp._tcp,_anon"
+ * to DNSServiceBrowse(), but the type of the service that's discovered
+ * is simply "_ftp._tcp". The regtype for each discovered service instance
+ * should be stored along with the name, so that it can be passed to
+ * DNSServiceResolve() when the service is later resolved.
+ *
+ * domain: The domain of the discovered service instance. This may or may not be the
+ * same as the domain that was passed to DNSServiceBrowse(). The domain for each
+ * discovered service instance should be stored along with the name, so that
+ * it can be passed to DNSServiceResolve() when the service is later resolved.
+ *
+ * context: The context pointer that was passed to the callout.
+ *
+ */
+
+typedef void (DNSSD_API *DNSServiceBrowseReply)
+ (
+ DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ const char *serviceName,
+ const char *regtype,
+ const char *replyDomain,
+ void *context
+ );
+
+
+/* DNSServiceBrowse() Parameters:
+ *
+ * sdRef: A pointer to an uninitialized DNSServiceRef. If the call succeeds
+ * then it initializes the DNSServiceRef, returns kDNSServiceErr_NoError,
+ * and the browse operation will run indefinitely until the client
+ * terminates it by passing this DNSServiceRef to DNSServiceRefDeallocate().
+ *
+ * flags: Currently ignored, reserved for future use.
+ *
+ * interfaceIndex: If non-zero, specifies the interface on which to browse for services
+ * (the index for a given interface is determined via the if_nametoindex()
+ * family of calls.) Most applications will pass 0 to browse on all available
+ * interfaces. See "Constants for specifying an interface index" for more details.
+ *
+ * regtype: The service type being browsed for followed by the protocol, separated by a
+ * dot (e.g. "_ftp._tcp"). The transport protocol must be "_tcp" or "_udp".
+ * A client may optionally specify a single subtype to perform filtered browsing:
+ * e.g. browsing for "_primarytype._tcp,_subtype" will discover only those
+ * instances of "_primarytype._tcp" that were registered specifying "_subtype"
+ * in their list of registered subtypes.
+ *
+ * domain: If non-NULL, specifies the domain on which to browse for services.
+ * Most applications will not specify a domain, instead browsing on the
+ * default domain(s).
+ *
+ * callBack: The function to be called when an instance of the service being browsed for
+ * is found, or if the call asynchronously fails.
+ *
+ * context: An application context pointer which is passed to the callback function
+ * (may be NULL).
+ *
+ * return value: Returns kDNSServiceErr_NoError on success (any subsequent, asynchronous
+ * errors are delivered to the callback), otherwise returns an error code indicating
+ * the error that occurred (the callback is not invoked and the DNSServiceRef
+ * is not initialized).
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceBrowse
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *regtype,
+ const char *domain, /* may be NULL */
+ DNSServiceBrowseReply callBack,
+ void *context /* may be NULL */
+ );
+
+
+/* DNSServiceResolve()
+ *
+ * Resolve a service name discovered via DNSServiceBrowse() to a target host name, port number, and
+ * txt record.
+ *
+ * Note: Applications should NOT use DNSServiceResolve() solely for txt record monitoring - use
+ * DNSServiceQueryRecord() instead, as it is more efficient for this task.
+ *
+ * Note: When the desired results have been returned, the client MUST terminate the resolve by calling
+ * DNSServiceRefDeallocate().
+ *
+ * Note: DNSServiceResolve() behaves correctly for typical services that have a single SRV record
+ * and a single TXT record. To resolve non-standard services with multiple SRV or TXT records,
+ * DNSServiceQueryRecord() should be used.
+ *
+ * DNSServiceResolveReply Callback Parameters:
+ *
+ * sdRef: The DNSServiceRef initialized by DNSServiceResolve().
+ *
+ * flags: Possible values: kDNSServiceFlagsMoreComing
+ *
+ * interfaceIndex: The interface on which the service was resolved.
+ *
+ * errorCode: Will be kDNSServiceErr_NoError (0) on success, otherwise will
+ * indicate the failure that occurred. Other parameters are undefined if
+ * the errorCode is nonzero.
+ *
+ * fullname: The full service domain name, in the form <servicename>.<protocol>.<domain>.
+ * (This name is escaped following standard DNS rules, making it suitable for
+ * passing to standard system DNS APIs such as res_query(), or to the
+ * special-purpose functions included in this API that take fullname parameters.
+ * See "Notes on DNS Name Escaping" earlier in this file for more details.)
+ *
+ * hosttarget: The target hostname of the machine providing the service. This name can
+ * be passed to functions like gethostbyname() to identify the host's IP address.
+ *
+ * port: The port, in network byte order, on which connections are accepted for this service.
+ *
+ * txtLen: The length of the txt record, in bytes.
+ *
+ * txtRecord: The service's primary txt record, in standard txt record format.
+ *
+ * context: The context pointer that was passed to the callout.
+ *
+ * NOTE: In earlier versions of this header file, the txtRecord parameter was declared "const char *"
+ * This is incorrect, since it contains length bytes which are values in the range 0 to 255, not -128 to +127.
+ * Depending on your compiler settings, this change may cause signed/unsigned mismatch warnings.
+ * These should be fixed by updating your own callback function definition to match the corrected
+ * function signature using "const unsigned char *txtRecord". Making this change may also fix inadvertent
+ * bugs in your callback function, where it could have incorrectly interpreted a length byte with value 250
+ * as being -6 instead, with various bad consequences ranging from incorrect operation to software crashes.
+ * If you need to maintain portable code that will compile cleanly with both the old and new versions of
+ * this header file, you should update your callback function definition to use the correct unsigned value,
+ * and then in the place where you pass your callback function to DNSServiceResolve(), use a cast to eliminate
+ * the compiler warning, e.g.:
+ * DNSServiceResolve(sd, flags, index, name, regtype, domain, (DNSServiceResolveReply)MyCallback, context);
+ * This will ensure that your code compiles cleanly without warnings (and more importantly, works correctly)
+ * with both the old header and with the new corrected version.
+ *
+ */
+
+typedef void (DNSSD_API *DNSServiceResolveReply)
+ (
+ DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ const char *fullname,
+ const char *hosttarget,
+ uint16_t port, /* In network byte order */
+ uint16_t txtLen,
+ const unsigned char *txtRecord,
+ void *context
+ );
+
+
+/* DNSServiceResolve() Parameters
+ *
+ * sdRef: A pointer to an uninitialized DNSServiceRef. If the call succeeds
+ * then it initializes the DNSServiceRef, returns kDNSServiceErr_NoError,
+ * and the resolve operation will run indefinitely until the client
+ * terminates it by passing this DNSServiceRef to DNSServiceRefDeallocate().
+ *
+ * flags: Specifying kDNSServiceFlagsForceMulticast will cause query to be
+ * performed with a link-local mDNS query, even if the name is an
+ * apparently non-local name (i.e. a name not ending in ".local.")
+ *
+ * interfaceIndex: The interface on which to resolve the service. If this resolve call is
+ * as a result of a currently active DNSServiceBrowse() operation, then the
+ * interfaceIndex should be the index reported in the DNSServiceBrowseReply
+ * callback. If this resolve call is using information previously saved
+ * (e.g. in a preference file) for later use, then use interfaceIndex 0, because
+ * the desired service may now be reachable via a different physical interface.
+ * See "Constants for specifying an interface index" for more details.
+ *
+ * name: The name of the service instance to be resolved, as reported to the
+ * DNSServiceBrowseReply() callback.
+ *
+ * regtype: The type of the service instance to be resolved, as reported to the
+ * DNSServiceBrowseReply() callback.
+ *
+ * domain: The domain of the service instance to be resolved, as reported to the
+ * DNSServiceBrowseReply() callback.
+ *
+ * callBack: The function to be called when a result is found, or if the call
+ * asynchronously fails.
+ *
+ * context: An application context pointer which is passed to the callback function
+ * (may be NULL).
+ *
+ * return value: Returns kDNSServiceErr_NoError on success (any subsequent, asynchronous
+ * errors are delivered to the callback), otherwise returns an error code indicating
+ * the error that occurred (the callback is never invoked and the DNSServiceRef
+ * is not initialized).
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceResolve
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *name,
+ const char *regtype,
+ const char *domain,
+ DNSServiceResolveReply callBack,
+ void *context /* may be NULL */
+ );
+
+
+/*********************************************************************************************
+ *
+ * Querying Individual Specific Records
+ *
+ *********************************************************************************************/
+
+/* DNSServiceQueryRecord
+ *
+ * Query for an arbitrary DNS record.
+ *
+ * DNSServiceQueryRecordReply() Callback Parameters:
+ *
+ * sdRef: The DNSServiceRef initialized by DNSServiceQueryRecord().
+ *
+ * flags: Possible values are kDNSServiceFlagsMoreComing and
+ * kDNSServiceFlagsAdd. The Add flag is NOT set for PTR records
+ * with a ttl of 0, i.e. "Remove" events.
+ *
+ * interfaceIndex: The interface on which the query was resolved (the index for a given
+ * interface is determined via the if_nametoindex() family of calls).
+ * See "Constants for specifying an interface index" for more details.
+ *
+ * errorCode: Will be kDNSServiceErr_NoError on success, otherwise will
+ * indicate the failure that occurred. Other parameters are undefined if
+ * errorCode is nonzero.
+ *
+ * fullname: The resource record's full domain name.
+ *
+ * rrtype: The resource record's type (e.g. kDNSServiceType_PTR, kDNSServiceType_SRV, etc)
+ *
+ * rrclass: The class of the resource record (usually kDNSServiceClass_IN).
+ *
+ * rdlen: The length, in bytes, of the resource record rdata.
+ *
+ * rdata: The raw rdata of the resource record.
+ *
+ * ttl: If the client wishes to cache the result for performance reasons,
+ * the TTL indicates how long the client may legitimately hold onto
+ * this result, in seconds. After the TTL expires, the client should
+ * consider the result no longer valid, and if it requires this data
+ * again, it should be re-fetched with a new query. Of course, this
+ * only applies to clients that cancel the asynchronous operation when
+ * they get a result. Clients that leave the asynchronous operation
+ * running can safely assume that the data remains valid until they
+ * get another callback telling them otherwise.
+ *
+ * context: The context pointer that was passed to the callout.
+ *
+ */
+
+typedef void (DNSSD_API *DNSServiceQueryRecordReply)
+ (
+ DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ const char *fullname,
+ uint16_t rrtype,
+ uint16_t rrclass,
+ uint16_t rdlen,
+ const void *rdata,
+ uint32_t ttl,
+ void *context
+ );
+
+
+/* DNSServiceQueryRecord() Parameters:
+ *
+ * sdRef: A pointer to an uninitialized DNSServiceRef. If the call succeeds
+ * then it initializes the DNSServiceRef, returns kDNSServiceErr_NoError,
+ * and the query operation will run indefinitely until the client
+ * terminates it by passing this DNSServiceRef to DNSServiceRefDeallocate().
+ *
+ * flags: kDNSServiceFlagsForceMulticast or kDNSServiceFlagsLongLivedQuery.
+ * Pass kDNSServiceFlagsLongLivedQuery to create a "long-lived" unicast
+ * query in a non-local domain. Without setting this flag, unicast queries
+ * will be one-shot - that is, only answers available at the time of the call
+ * will be returned. By setting this flag, answers (including Add and Remove
+ * events) that become available after the initial call is made will generate
+ * callbacks. This flag has no effect on link-local multicast queries.
+ *
+ * interfaceIndex: If non-zero, specifies the interface on which to issue the query
+ * (the index for a given interface is determined via the if_nametoindex()
+ * family of calls.) Passing 0 causes the name to be queried for on all
+ * interfaces. See "Constants for specifying an interface index" for more details.
+ *
+ * fullname: The full domain name of the resource record to be queried for.
+ *
+ * rrtype: The numerical type of the resource record to be queried for
+ * (e.g. kDNSServiceType_PTR, kDNSServiceType_SRV, etc)
+ *
+ * rrclass: The class of the resource record (usually kDNSServiceClass_IN).
+ *
+ * callBack: The function to be called when a result is found, or if the call
+ * asynchronously fails.
+ *
+ * context: An application context pointer which is passed to the callback function
+ * (may be NULL).
+ *
+ * return value: Returns kDNSServiceErr_NoError on success (any subsequent, asynchronous
+ * errors are delivered to the callback), otherwise returns an error code indicating
+ * the error that occurred (the callback is never invoked and the DNSServiceRef
+ * is not initialized).
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceQueryRecord
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *fullname,
+ uint16_t rrtype,
+ uint16_t rrclass,
+ DNSServiceQueryRecordReply callBack,
+ void *context /* may be NULL */
+ );
+
+
+/*********************************************************************************************
+ *
+ * Unified lookup of both IPv4 and IPv6 addresses for a fully qualified hostname
+ *
+ *********************************************************************************************/
+
+/* DNSServiceGetAddrInfo
+ *
+ * Queries for the IP address of a hostname by using either Multicast or Unicast DNS.
+ *
+ * DNSServiceGetAddrInfoReply() parameters:
+ *
+ * sdRef: The DNSServiceRef initialized by DNSServiceGetAddrInfo().
+ *
+ * flags: Possible values are kDNSServiceFlagsMoreComing and
+ * kDNSServiceFlagsAdd.
+ *
+ * interfaceIndex: The interface to which the answers pertain.
+ *
+ * errorCode: Will be kDNSServiceErr_NoError on success, otherwise will
+ * indicate the failure that occurred. Other parameters are
+ * undefined if errorCode is nonzero.
+ *
+ * hostname: The fully qualified domain name of the host to be queried for.
+ *
+ * address: IPv4 or IPv6 address.
+ *
+ * ttl: If the client wishes to cache the result for performance reasons,
+ * the TTL indicates how long the client may legitimately hold onto
+ * this result, in seconds. After the TTL expires, the client should
+ * consider the result no longer valid, and if it requires this data
+ * again, it should be re-fetched with a new query. Of course, this
+ * only applies to clients that cancel the asynchronous operation when
+ * they get a result. Clients that leave the asynchronous operation
+ * running can safely assume that the data remains valid until they
+ * get another callback telling them otherwise.
+ *
+ * context: The context pointer that was passed to the callout.
+ *
+ */
+
+typedef void (DNSSD_API *DNSServiceGetAddrInfoReply)
+ (
+ DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ const char *hostname,
+ const struct sockaddr *address,
+ uint32_t ttl,
+ void *context
+ );
+
+
+/* DNSServiceGetAddrInfo() Parameters:
+ *
+ * sdRef: A pointer to an uninitialized DNSServiceRef. If the call succeeds then it
+ * initializes the DNSServiceRef, returns kDNSServiceErr_NoError, and the query
+ * begins and will last indefinitely until the client terminates the query
+ * by passing this DNSServiceRef to DNSServiceRefDeallocate().
+ *
+ * flags: kDNSServiceFlagsForceMulticast or kDNSServiceFlagsLongLivedQuery.
+ * Pass kDNSServiceFlagsLongLivedQuery to create a "long-lived" unicast
+ * query in a non-local domain. Without setting this flag, unicast queries
+ * will be one-shot - that is, only answers available at the time of the call
+ * will be returned. By setting this flag, answers (including Add and Remove
+ * events) that become available after the initial call is made will generate
+ * callbacks. This flag has no effect on link-local multicast queries.
+ *
+ * interfaceIndex: The interface on which to issue the query. Passing 0 causes the query to be
+ * sent on all active interfaces via Multicast or the primary interface via Unicast.
+ *
+ * protocol: Pass in kDNSServiceProtocol_IPv4 to look up IPv4 addresses, or kDNSServiceProtocol_IPv6
+ * to look up IPv6 addresses, or both to look up both kinds. If neither flag is
+ * set, the system will apply an intelligent heuristic, which is (currently)
+ * that it will attempt to look up both, except:
+ *
+ * * If "hostname" is a wide-area unicast DNS hostname (i.e. not a ".local." name)
+ * but this host has no routable IPv6 address, then the call will not try to
+ * look up IPv6 addresses for "hostname", since any addresses it found would be
+ * unlikely to be of any use anyway. Similarly, if this host has no routable
+ * IPv4 address, the call will not try to look up IPv4 addresses for "hostname".
+ *
+ * hostname: The fully qualified domain name of the host to be queried for.
+ *
+ * callBack: The function to be called when the query succeeds or fails asynchronously.
+ *
+ * context: An application context pointer which is passed to the callback function
+ * (may be NULL).
+ *
+ * return value: Returns kDNSServiceErr_NoError on success (any subsequent, asynchronous
+ * errors are delivered to the callback), otherwise returns an error code indicating
+ * the error that occurred.
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceGetAddrInfo
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceProtocol protocol,
+ const char *hostname,
+ DNSServiceGetAddrInfoReply callBack,
+ void *context /* may be NULL */
+ );
+
+
+/*********************************************************************************************
+ *
+ * Special Purpose Calls:
+ * DNSServiceCreateConnection(), DNSServiceRegisterRecord(), DNSServiceReconfirmRecord()
+ * (most applications will not use these)
+ *
+ *********************************************************************************************/
+
+/* DNSServiceCreateConnection()
+ *
+ * Create a connection to the daemon allowing efficient registration of
+ * multiple individual records.
+ *
+ * Parameters:
+ *
+ * sdRef: A pointer to an uninitialized DNSServiceRef. Deallocating
+ * the reference (via DNSServiceRefDeallocate()) severs the
+ * connection and deregisters all records registered on this connection.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success, otherwise returns
+ * an error code indicating the specific failure that occurred (in which
+ * case the DNSServiceRef is not initialized).
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceCreateConnection(DNSServiceRef *sdRef);
+
+
+/* DNSServiceRegisterRecord
+ *
+ * Register an individual resource record on a connected DNSServiceRef.
+ *
+ * Note that name conflicts occurring for records registered via this call must be handled
+ * by the client in the callback.
+ *
+ * DNSServiceRegisterRecordReply() parameters:
+ *
+ * sdRef: The connected DNSServiceRef initialized by
+ * DNSServiceCreateConnection().
+ *
+ * RecordRef: The DNSRecordRef initialized by DNSServiceRegisterRecord(). If the above
+ * DNSServiceRef is passed to DNSServiceRefDeallocate(), this DNSRecordRef is
+ * invalidated, and may not be used further.
+ *
+ * flags: Currently unused, reserved for future use.
+ *
+ * errorCode: Will be kDNSServiceErr_NoError on success, otherwise will
+ * indicate the failure that occurred (including name conflicts.)
+ * Other parameters are undefined if errorCode is nonzero.
+ *
+ * context: The context pointer that was passed to the callout.
+ *
+ */
+
+ typedef void (DNSSD_API *DNSServiceRegisterRecordReply)
+ (
+ DNSServiceRef sdRef,
+ DNSRecordRef RecordRef,
+ DNSServiceFlags flags,
+ DNSServiceErrorType errorCode,
+ void *context
+ );
+
+
+/* DNSServiceRegisterRecord() Parameters:
+ *
+ * sdRef: A DNSServiceRef initialized by DNSServiceCreateConnection().
+ *
+ * RecordRef: A pointer to an uninitialized DNSRecordRef. Upon succesfull completion of this
+ * call, this ref may be passed to DNSServiceUpdateRecord() or DNSServiceRemoveRecord().
+ * (To deregister ALL records registered on a single connected DNSServiceRef
+ * and deallocate each of their corresponding DNSServiceRecordRefs, call
+ * DNSServiceRefDeallocate()).
+ *
+ * flags: Possible values are kDNSServiceFlagsShared or kDNSServiceFlagsUnique
+ * (see flag type definitions for details).
+ *
+ * interfaceIndex: If non-zero, specifies the interface on which to register the record
+ * (the index for a given interface is determined via the if_nametoindex()
+ * family of calls.) Passing 0 causes the record to be registered on all interfaces.
+ * See "Constants for specifying an interface index" for more details.
+ *
+ * fullname: The full domain name of the resource record.
+ *
+ * rrtype: The numerical type of the resource record (e.g. kDNSServiceType_PTR, kDNSServiceType_SRV, etc)
+ *
+ * rrclass: The class of the resource record (usually kDNSServiceClass_IN)
+ *
+ * rdlen: Length, in bytes, of the rdata.
+ *
+ * rdata: A pointer to the raw rdata, as it is to appear in the DNS record.
+ *
+ * ttl: The time to live of the resource record, in seconds.
+ * Most clients should pass 0 to indicate that the system should
+ * select a sensible default value.
+ *
+ * callBack: The function to be called when a result is found, or if the call
+ * asynchronously fails (e.g. because of a name conflict.)
+ *
+ * context: An application context pointer which is passed to the callback function
+ * (may be NULL).
+ *
+ * return value: Returns kDNSServiceErr_NoError on success (any subsequent, asynchronous
+ * errors are delivered to the callback), otherwise returns an error code indicating
+ * the error that occurred (the callback is never invoked and the DNSRecordRef is
+ * not initialized).
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceRegisterRecord
+ (
+ DNSServiceRef sdRef,
+ DNSRecordRef *RecordRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *fullname,
+ uint16_t rrtype,
+ uint16_t rrclass,
+ uint16_t rdlen,
+ const void *rdata,
+ uint32_t ttl,
+ DNSServiceRegisterRecordReply callBack,
+ void *context /* may be NULL */
+ );
+
+
+/* DNSServiceReconfirmRecord
+ *
+ * Instruct the daemon to verify the validity of a resource record that appears
+ * to be out of date (e.g. because TCP connection to a service's target failed.)
+ * Causes the record to be flushed from the daemon's cache (as well as all other
+ * daemons' caches on the network) if the record is determined to be invalid.
+ * Use this routine conservatively. Reconfirming a record necessarily consumes
+ * network bandwidth, so this should not be done indiscriminately.
+ *
+ * Parameters:
+ *
+ * flags: Pass kDNSServiceFlagsForce to force immediate deletion of record,
+ * instead of after some number of reconfirmation queries have gone unanswered.
+ *
+ * interfaceIndex: Specifies the interface of the record in question.
+ * The caller must specify the interface.
+ * This API (by design) causes increased network traffic, so it requires
+ * the caller to be precise about which record should be reconfirmed.
+ * It is not possible to pass zero for the interface index to perform
+ * a "wildcard" reconfirmation, where *all* matching records are reconfirmed.
+ *
+ * fullname: The resource record's full domain name.
+ *
+ * rrtype: The resource record's type (e.g. kDNSServiceType_PTR, kDNSServiceType_SRV, etc)
+ *
+ * rrclass: The class of the resource record (usually kDNSServiceClass_IN).
+ *
+ * rdlen: The length, in bytes, of the resource record rdata.
+ *
+ * rdata: The raw rdata of the resource record.
+ *
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceReconfirmRecord
+ (
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ const char *fullname,
+ uint16_t rrtype,
+ uint16_t rrclass,
+ uint16_t rdlen,
+ const void *rdata
+ );
+
+
+/*********************************************************************************************
+ *
+ * NAT Port Mapping
+ *
+ *********************************************************************************************/
+
+/* DNSServiceNATPortMappingCreate
+ *
+ * Request a port mapping in the NAT gateway, which maps a port on the local machine
+ * to an external port on the NAT. The NAT should support either the NAT-PMP or the UPnP IGD
+ * protocol for this API to create a successful mapping.
+ *
+ * The port mapping will be renewed indefinitely until the client process exits, or
+ * explicitly terminates the port mapping request by calling DNSServiceRefDeallocate().
+ * The client callback will be invoked, informing the client of the NAT gateway's
+ * external IP address and the external port that has been allocated for this client.
+ * The client should then record this external IP address and port using whatever
+ * directory service mechanism it is using to enable peers to connect to it.
+ * (Clients advertising services using Wide-Area DNS-SD DO NOT need to use this API
+ * -- when a client calls DNSServiceRegister() NAT mappings are automatically created
+ * and the external IP address and port for the service are recorded in the global DNS.
+ * Only clients using some directory mechanism other than Wide-Area DNS-SD need to use
+ * this API to explicitly map their own ports.)
+ *
+ * It's possible that the client callback could be called multiple times, for example
+ * if the NAT gateway's IP address changes, or if a configuration change results in a
+ * different external port being mapped for this client. Over the lifetime of any long-lived
+ * port mapping, the client should be prepared to handle these notifications of changes
+ * in the environment, and should update its recorded address and/or port as appropriate.
+ *
+ * NOTE: There are two unusual aspects of how the DNSServiceNATPortMappingCreate API works,
+ * which were intentionally designed to help simplify client code:
+ *
+ * 1. It's not an error to request a NAT mapping when the machine is not behind a NAT gateway.
+ * In other NAT mapping APIs, if you request a NAT mapping and the machine is not behind a NAT
+ * gateway, then the API returns an error code -- it can't get you a NAT mapping if there's no
+ * NAT gateway. The DNSServiceNATPortMappingCreate API takes a different view. Working out
+ * whether or not you need a NAT mapping can be tricky and non-obvious, particularly on
+ * a machine with multiple active network interfaces. Rather than make every client recreate
+ * this logic for deciding whether a NAT mapping is required, the PortMapping API does that
+ * work for you. If the client calls the PortMapping API when the machine already has a
+ * routable public IP address, then instead of complaining about it and giving an error,
+ * the PortMapping API just invokes your callback, giving the machine's public address
+ * and your own port number. This means you don't need to write code to work out whether
+ * your client needs to call the PortMapping API -- just call it anyway, and if it wasn't
+ * necessary, no harm is done:
+ *
+ * - If the machine already has a routable public IP address, then your callback
+ * will just be invoked giving your own address and port.
+ * - If a NAT mapping is required and obtained, then your callback will be invoked
+ * giving you the external address and port.
+ * - If a NAT mapping is required but not obtained from the local NAT gateway,
+ * or the machine has no network connectivity, then your callback will be
+ * invoked giving zero address and port.
+ *
+ * 2. In other NAT mapping APIs, if a laptop computer is put to sleep and woken up on a new
+ * network, it's the client's job to notice this, and work out whether a NAT mapping
+ * is required on the new network, and make a new NAT mapping request if necessary.
+ * The DNSServiceNATPortMappingCreate API does this for you, automatically.
+ * The client just needs to make one call to the PortMapping API, and its callback will
+ * be invoked any time the mapping state changes. This property complements point (1) above.
+ * If the client didn't make a NAT mapping request just because it determined that one was
+ * not required at that particular moment in time, the client would then have to monitor
+ * for network state changes to determine if a NAT port mapping later became necessary.
+ * By unconditionally making a NAT mapping request, even when a NAT mapping not to be
+ * necessary, the PortMapping API will then begin monitoring network state changes on behalf of
+ * the client, and if a NAT mapping later becomes necessary, it will automatically create a NAT
+ * mapping and inform the client with a new callback giving the new address and port information.
+ *
+ * DNSServiceNATPortMappingReply() parameters:
+ *
+ * sdRef: The DNSServiceRef initialized by DNSServiceNATPortMappingCreate().
+ *
+ * flags: Currently unused, reserved for future use.
+ *
+ * interfaceIndex: The interface through which the NAT gateway is reached.
+ *
+ * errorCode: Will be kDNSServiceErr_NoError on success.
+ * Will be kDNSServiceErr_DoubleNAT when the NAT gateway is itself behind one or
+ * more layers of NAT, in which case the other parameters have the defined values.
+ * For other failures, will indicate the failure that occurred, and the other
+ * parameters are undefined.
+ *
+ * externalAddress: Four byte IPv4 address in network byte order.
+ *
+ * protocol: Will be kDNSServiceProtocol_UDP or kDNSServiceProtocol_TCP or both.
+ *
+ * internalPort: The port on the local machine that was mapped.
+ *
+ * externalPort: The actual external port in the NAT gateway that was mapped.
+ * This is likely to be different than the requested external port.
+ *
+ * ttl: The lifetime of the NAT port mapping created on the gateway.
+ * This controls how quickly stale mappings will be garbage-collected
+ * if the client machine crashes, suffers a power failure, is disconnected
+ * from the network, or suffers some other unfortunate demise which
+ * causes it to vanish without explicitly removing its NAT port mapping.
+ * It's possible that the ttl value will differ from the requested ttl value.
+ *
+ * context: The context pointer that was passed to the callout.
+ *
+ */
+
+typedef void (DNSSD_API *DNSServiceNATPortMappingReply)
+ (
+ DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceErrorType errorCode,
+ uint32_t externalAddress, /* four byte IPv4 address in network byte order */
+ DNSServiceProtocol protocol,
+ uint16_t internalPort, /* In network byte order */
+ uint16_t externalPort, /* In network byte order and may be different than the requested port */
+ uint32_t ttl, /* may be different than the requested ttl */
+ void *context
+ );
+
+
+/* DNSServiceNATPortMappingCreate() Parameters:
+ *
+ * sdRef: A pointer to an uninitialized DNSServiceRef. If the call succeeds then it
+ * initializes the DNSServiceRef, returns kDNSServiceErr_NoError, and the nat
+ * port mapping will last indefinitely until the client terminates the port
+ * mapping request by passing this DNSServiceRef to DNSServiceRefDeallocate().
+ *
+ * flags: Currently ignored, reserved for future use.
+ *
+ * interfaceIndex: The interface on which to create port mappings in a NAT gateway. Passing 0 causes
+ * the port mapping request to be sent on the primary interface.
+ *
+ * protocol: To request a port mapping, pass in kDNSServiceProtocol_UDP, or kDNSServiceProtocol_TCP,
+ * or (kDNSServiceProtocol_UDP | kDNSServiceProtocol_TCP) to map both.
+ * The local listening port number must also be specified in the internalPort parameter.
+ * To just discover the NAT gateway's external IP address, pass zero for protocol,
+ * internalPort, externalPort and ttl.
+ *
+ * internalPort: The port number in network byte order on the local machine which is listening for packets.
+ *
+ * externalPort: The requested external port in network byte order in the NAT gateway that you would
+ * like to map to the internal port. Pass 0 if you don't care which external port is chosen for you.
+ *
+ * ttl: The requested renewal period of the NAT port mapping, in seconds.
+ * If the client machine crashes, suffers a power failure, is disconnected from
+ * the network, or suffers some other unfortunate demise which causes it to vanish
+ * unexpectedly without explicitly removing its NAT port mappings, then the NAT gateway
+ * will garbage-collect old stale NAT port mappings when their lifetime expires.
+ * Requesting a short TTL causes such orphaned mappings to be garbage-collected
+ * more promptly, but consumes system resources and network bandwidth with
+ * frequent renewal packets to keep the mapping from expiring.
+ * Requesting a long TTL is more efficient on the network, but in the event of the
+ * client vanishing, stale NAT port mappings will not be garbage-collected as quickly.
+ * Most clients should pass 0 to use a system-wide default value.
+ *
+ * callBack: The function to be called when the port mapping request succeeds or fails asynchronously.
+ *
+ * context: An application context pointer which is passed to the callback function
+ * (may be NULL).
+ *
+ * return value: Returns kDNSServiceErr_NoError on success (any subsequent, asynchronous
+ * errors are delivered to the callback), otherwise returns an error code indicating
+ * the error that occurred.
+ *
+ * If you don't actually want a port mapped, and are just calling the API
+ * because you want to find out the NAT's external IP address (e.g. for UI
+ * display) then pass zero for protocol, internalPort, externalPort and ttl.
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceNATPortMappingCreate
+ (
+ DNSServiceRef *sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+ DNSServiceProtocol protocol, /* TCP and/or UDP */
+ uint16_t internalPort, /* network byte order */
+ uint16_t externalPort, /* network byte order */
+ uint32_t ttl, /* time to live in seconds */
+ DNSServiceNATPortMappingReply callBack,
+ void *context /* may be NULL */
+ );
+
+
+/*********************************************************************************************
+ *
+ * General Utility Functions
+ *
+ *********************************************************************************************/
+
+/* DNSServiceConstructFullName()
+ *
+ * Concatenate a three-part domain name (as returned by the above callbacks) into a
+ * properly-escaped full domain name. Note that callbacks in the above functions ALREADY ESCAPE
+ * strings where necessary.
+ *
+ * Parameters:
+ *
+ * fullName: A pointer to a buffer that where the resulting full domain name is to be written.
+ * The buffer must be kDNSServiceMaxDomainName (1009) bytes in length to
+ * accommodate the longest legal domain name without buffer overrun.
+ *
+ * service: The service name - any dots or backslashes must NOT be escaped.
+ * May be NULL (to construct a PTR record name, e.g.
+ * "_ftp._tcp.apple.com.").
+ *
+ * regtype: The service type followed by the protocol, separated by a dot
+ * (e.g. "_ftp._tcp").
+ *
+ * domain: The domain name, e.g. "apple.com.". Literal dots or backslashes,
+ * if any, must be escaped, e.g. "1st\. Floor.apple.com."
+ *
+ * return value: Returns kDNSServiceErr_NoError (0) on success, kDNSServiceErr_BadParam on error.
+ *
+ */
+
+DNSServiceErrorType DNSSD_API DNSServiceConstructFullName
+ (
+ char * const fullName,
+ const char * const service, /* may be NULL */
+ const char * const regtype,
+ const char * const domain
+ );
+
+
+/*********************************************************************************************
+ *
+ * TXT Record Construction Functions
+ *
+ *********************************************************************************************/
+
+/*
+ * A typical calling sequence for TXT record construction is something like:
+ *
+ * Client allocates storage for TXTRecord data (e.g. declare buffer on the stack)
+ * TXTRecordCreate();
+ * TXTRecordSetValue();
+ * TXTRecordSetValue();
+ * TXTRecordSetValue();
+ * ...
+ * DNSServiceRegister( ... TXTRecordGetLength(), TXTRecordGetBytesPtr() ... );
+ * TXTRecordDeallocate();
+ * Explicitly deallocate storage for TXTRecord data (if not allocated on the stack)
+ */
+
+
+/* TXTRecordRef
+ *
+ * Opaque internal data type.
+ * Note: Represents a DNS-SD TXT record.
+ */
+
+typedef union _TXTRecordRef_t { char PrivateData[16]; char *ForceNaturalAlignment; } TXTRecordRef;
+
+
+/* TXTRecordCreate()
+ *
+ * Creates a new empty TXTRecordRef referencing the specified storage.
+ *
+ * If the buffer parameter is NULL, or the specified storage size is not
+ * large enough to hold a key subsequently added using TXTRecordSetValue(),
+ * then additional memory will be added as needed using malloc().
+ *
+ * On some platforms, when memory is low, malloc() may fail. In this
+ * case, TXTRecordSetValue() will return kDNSServiceErr_NoMemory, and this
+ * error condition will need to be handled as appropriate by the caller.
+ *
+ * You can avoid the need to handle this error condition if you ensure
+ * that the storage you initially provide is large enough to hold all
+ * the key/value pairs that are to be added to the record.
+ * The caller can precompute the exact length required for all of the
+ * key/value pairs to be added, or simply provide a fixed-sized buffer
+ * known in advance to be large enough.
+ * A no-value (key-only) key requires (1 + key length) bytes.
+ * A key with empty value requires (1 + key length + 1) bytes.
+ * A key with non-empty value requires (1 + key length + 1 + value length).
+ * For most applications, DNS-SD TXT records are generally
+ * less than 100 bytes, so in most cases a simple fixed-sized
+ * 256-byte buffer will be more than sufficient.
+ * Recommended size limits for DNS-SD TXT Records are discussed in
+ * <http://files.dns-sd.org/draft-cheshire-dnsext-dns-sd.txt>
+ *
+ * Note: When passing parameters to and from these TXT record APIs,
+ * the key name does not include the '=' character. The '=' character
+ * is the separator between the key and value in the on-the-wire
+ * packet format; it is not part of either the key or the value.
+ *
+ * txtRecord: A pointer to an uninitialized TXTRecordRef.
+ *
+ * bufferLen: The size of the storage provided in the "buffer" parameter.
+ *
+ * buffer: Optional caller-supplied storage used to hold the TXTRecord data.
+ * This storage must remain valid for as long as
+ * the TXTRecordRef.
+ */
+
+void DNSSD_API TXTRecordCreate
+ (
+ TXTRecordRef *txtRecord,
+ uint16_t bufferLen,
+ void *buffer
+ );
+
+
+/* TXTRecordDeallocate()
+ *
+ * Releases any resources allocated in the course of preparing a TXT Record
+ * using TXTRecordCreate()/TXTRecordSetValue()/TXTRecordRemoveValue().
+ * Ownership of the buffer provided in TXTRecordCreate() returns to the client.
+ *
+ * txtRecord: A TXTRecordRef initialized by calling TXTRecordCreate().
+ *
+ */
+
+void DNSSD_API TXTRecordDeallocate
+ (
+ TXTRecordRef *txtRecord
+ );
+
+
+/* TXTRecordSetValue()
+ *
+ * Adds a key (optionally with value) to a TXTRecordRef. If the "key" already
+ * exists in the TXTRecordRef, then the current value will be replaced with
+ * the new value.
+ * Keys may exist in four states with respect to a given TXT record:
+ * - Absent (key does not appear at all)
+ * - Present with no value ("key" appears alone)
+ * - Present with empty value ("key=" appears in TXT record)
+ * - Present with non-empty value ("key=value" appears in TXT record)
+ * For more details refer to "Data Syntax for DNS-SD TXT Records" in
+ * <http://files.dns-sd.org/draft-cheshire-dnsext-dns-sd.txt>
+ *
+ * txtRecord: A TXTRecordRef initialized by calling TXTRecordCreate().
+ *
+ * key: A null-terminated string which only contains printable ASCII
+ * values (0x20-0x7E), excluding '=' (0x3D). Keys should be
+ * 9 characters or fewer (not counting the terminating null).
+ *
+ * valueSize: The size of the value.
+ *
+ * value: Any binary value. For values that represent
+ * textual data, UTF-8 is STRONGLY recommended.
+ * For values that represent textual data, valueSize
+ * should NOT include the terminating null (if any)
+ * at the end of the string.
+ * If NULL, then "key" will be added with no value.
+ * If non-NULL but valueSize is zero, then "key=" will be
+ * added with empty value.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success.
+ * Returns kDNSServiceErr_Invalid if the "key" string contains
+ * illegal characters.
+ * Returns kDNSServiceErr_NoMemory if adding this key would
+ * exceed the available storage.
+ */
+
+DNSServiceErrorType DNSSD_API TXTRecordSetValue
+ (
+ TXTRecordRef *txtRecord,
+ const char *key,
+ uint8_t valueSize, /* may be zero */
+ const void *value /* may be NULL */
+ );
+
+
+/* TXTRecordRemoveValue()
+ *
+ * Removes a key from a TXTRecordRef. The "key" must be an
+ * ASCII string which exists in the TXTRecordRef.
+ *
+ * txtRecord: A TXTRecordRef initialized by calling TXTRecordCreate().
+ *
+ * key: A key name which exists in the TXTRecordRef.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success.
+ * Returns kDNSServiceErr_NoSuchKey if the "key" does not
+ * exist in the TXTRecordRef.
+ */
+
+DNSServiceErrorType DNSSD_API TXTRecordRemoveValue
+ (
+ TXTRecordRef *txtRecord,
+ const char *key
+ );
+
+
+/* TXTRecordGetLength()
+ *
+ * Allows you to determine the length of the raw bytes within a TXTRecordRef.
+ *
+ * txtRecord: A TXTRecordRef initialized by calling TXTRecordCreate().
+ *
+ * return value: Returns the size of the raw bytes inside a TXTRecordRef
+ * which you can pass directly to DNSServiceRegister() or
+ * to DNSServiceUpdateRecord().
+ * Returns 0 if the TXTRecordRef is empty.
+ */
+
+uint16_t DNSSD_API TXTRecordGetLength
+ (
+ const TXTRecordRef *txtRecord
+ );
+
+
+/* TXTRecordGetBytesPtr()
+ *
+ * Allows you to retrieve a pointer to the raw bytes within a TXTRecordRef.
+ *
+ * txtRecord: A TXTRecordRef initialized by calling TXTRecordCreate().
+ *
+ * return value: Returns a pointer to the raw bytes inside the TXTRecordRef
+ * which you can pass directly to DNSServiceRegister() or
+ * to DNSServiceUpdateRecord().
+ */
+
+const void * DNSSD_API TXTRecordGetBytesPtr
+ (
+ const TXTRecordRef *txtRecord
+ );
+
+
+/*********************************************************************************************
+ *
+ * TXT Record Parsing Functions
+ *
+ *********************************************************************************************/
+
+/*
+ * A typical calling sequence for TXT record parsing is something like:
+ *
+ * Receive TXT record data in DNSServiceResolve() callback
+ * if (TXTRecordContainsKey(txtLen, txtRecord, "key")) then do something
+ * val1ptr = TXTRecordGetValuePtr(txtLen, txtRecord, "key1", &len1);
+ * val2ptr = TXTRecordGetValuePtr(txtLen, txtRecord, "key2", &len2);
+ * ...
+ * memcpy(myval1, val1ptr, len1);
+ * memcpy(myval2, val2ptr, len2);
+ * ...
+ * return;
+ *
+ * If you wish to retain the values after return from the DNSServiceResolve()
+ * callback, then you need to copy the data to your own storage using memcpy()
+ * or similar, as shown in the example above.
+ *
+ * If for some reason you need to parse a TXT record you built yourself
+ * using the TXT record construction functions above, then you can do
+ * that using TXTRecordGetLength and TXTRecordGetBytesPtr calls:
+ * TXTRecordGetValue(TXTRecordGetLength(x), TXTRecordGetBytesPtr(x), key, &len);
+ *
+ * Most applications only fetch keys they know about from a TXT record and
+ * ignore the rest.
+ * However, some debugging tools wish to fetch and display all keys.
+ * To do that, use the TXTRecordGetCount() and TXTRecordGetItemAtIndex() calls.
+ */
+
+/* TXTRecordContainsKey()
+ *
+ * Allows you to determine if a given TXT Record contains a specified key.
+ *
+ * txtLen: The size of the received TXT Record.
+ *
+ * txtRecord: Pointer to the received TXT Record bytes.
+ *
+ * key: A null-terminated ASCII string containing the key name.
+ *
+ * return value: Returns 1 if the TXT Record contains the specified key.
+ * Otherwise, it returns 0.
+ */
+
+int DNSSD_API TXTRecordContainsKey
+ (
+ uint16_t txtLen,
+ const void *txtRecord,
+ const char *key
+ );
+
+
+/* TXTRecordGetValuePtr()
+ *
+ * Allows you to retrieve the value for a given key from a TXT Record.
+ *
+ * txtLen: The size of the received TXT Record
+ *
+ * txtRecord: Pointer to the received TXT Record bytes.
+ *
+ * key: A null-terminated ASCII string containing the key name.
+ *
+ * valueLen: On output, will be set to the size of the "value" data.
+ *
+ * return value: Returns NULL if the key does not exist in this TXT record,
+ * or exists with no value (to differentiate between
+ * these two cases use TXTRecordContainsKey()).
+ * Returns pointer to location within TXT Record bytes
+ * if the key exists with empty or non-empty value.
+ * For empty value, valueLen will be zero.
+ * For non-empty value, valueLen will be length of value data.
+ */
+
+const void * DNSSD_API TXTRecordGetValuePtr
+ (
+ uint16_t txtLen,
+ const void *txtRecord,
+ const char *key,
+ uint8_t *valueLen
+ );
+
+
+/* TXTRecordGetCount()
+ *
+ * Returns the number of keys stored in the TXT Record. The count
+ * can be used with TXTRecordGetItemAtIndex() to iterate through the keys.
+ *
+ * txtLen: The size of the received TXT Record.
+ *
+ * txtRecord: Pointer to the received TXT Record bytes.
+ *
+ * return value: Returns the total number of keys in the TXT Record.
+ *
+ */
+
+uint16_t DNSSD_API TXTRecordGetCount
+ (
+ uint16_t txtLen,
+ const void *txtRecord
+ );
+
+
+/* TXTRecordGetItemAtIndex()
+ *
+ * Allows you to retrieve a key name and value pointer, given an index into
+ * a TXT Record. Legal index values range from zero to TXTRecordGetCount()-1.
+ * It's also possible to iterate through keys in a TXT record by simply
+ * calling TXTRecordGetItemAtIndex() repeatedly, beginning with index zero
+ * and increasing until TXTRecordGetItemAtIndex() returns kDNSServiceErr_Invalid.
+ *
+ * On return:
+ * For keys with no value, *value is set to NULL and *valueLen is zero.
+ * For keys with empty value, *value is non-NULL and *valueLen is zero.
+ * For keys with non-empty value, *value is non-NULL and *valueLen is non-zero.
+ *
+ * txtLen: The size of the received TXT Record.
+ *
+ * txtRecord: Pointer to the received TXT Record bytes.
+ *
+ * itemIndex: An index into the TXT Record.
+ *
+ * keyBufLen: The size of the string buffer being supplied.
+ *
+ * key: A string buffer used to store the key name.
+ * On return, the buffer contains a null-terminated C string
+ * giving the key name. DNS-SD TXT keys are usually
+ * 9 characters or fewer. To hold the maximum possible
+ * key name, the buffer should be 256 bytes long.
+ *
+ * valueLen: On output, will be set to the size of the "value" data.
+ *
+ * value: On output, *value is set to point to location within TXT
+ * Record bytes that holds the value data.
+ *
+ * return value: Returns kDNSServiceErr_NoError on success.
+ * Returns kDNSServiceErr_NoMemory if keyBufLen is too short.
+ * Returns kDNSServiceErr_Invalid if index is greater than
+ * TXTRecordGetCount()-1.
+ */
+
+DNSServiceErrorType DNSSD_API TXTRecordGetItemAtIndex
+ (
+ uint16_t txtLen,
+ const void *txtRecord,
+ uint16_t itemIndex,
+ uint16_t keyBufLen,
+ char *key,
+ uint8_t *valueLen,
+ const void **value
+ );
+
+#if _DNS_SD_LIBDISPATCH
+/*
+* DNSServiceSetDispatchQueue
+*
+* Allows you to schedule a DNSServiceRef on a serial dispatch queue for receiving asynchronous
+* callbacks. It's the clients responsibility to ensure that the provided dispatch queue is running.
+*
+* A typical application that uses CFRunLoopRun or dispatch_main on its main thread will
+* usually schedule DNSServiceRefs on its main queue (which is always a serial queue)
+* using "DNSServiceSetDispatchQueue(sdref, dispatch_get_main_queue());"
+*
+* If there is any error during the processing of events, the application callback will
+* be called with an error code. For shared connections, each subordinate DNSServiceRef
+* will get its own error callback. Currently these error callbacks only happen
+* if the mDNSResponder daemon is manually terminated or crashes, and the error
+* code in this case is kDNSServiceErr_ServiceNotRunning. The application must call
+* DNSServiceRefDeallocate to free the DNSServiceRef when it gets such an error code.
+* These error callbacks are rare and should not normally happen on customer machines,
+* but application code should be written defensively to handle such error callbacks
+* gracefully if they occur.
+*
+* After using DNSServiceSetDispatchQueue on a DNSServiceRef, calling DNSServiceProcessResult
+* on the same DNSServiceRef will result in undefined behavior and should be avoided.
+*
+* Once the application successfully schedules a DNSServiceRef on a serial dispatch queue using
+* DNSServiceSetDispatchQueue, it cannot remove the DNSServiceRef from the dispatch queue, or use
+* DNSServiceSetDispatchQueue a second time to schedule the DNSServiceRef onto a different serial dispatch
+* queue. Once scheduled onto a dispatch queue a DNSServiceRef will deliver events to that queue until
+* the application no longer requires that operation and terminates it using DNSServiceRefDeallocate.
+*
+* service: DNSServiceRef that was allocated and returned to the application, when the
+* application calls one of the DNSService API.
+*
+* queue: dispatch queue where the application callback will be scheduled
+*
+* return value: Returns kDNSServiceErr_NoError on success.
+* Returns kDNSServiceErr_NoMemory if it cannot create a dispatch source
+* Returns kDNSServiceErr_BadParam if the service param is invalid or the
+* queue param is invalid
+*/
+
+DNSServiceErrorType DNSSD_API DNSServiceSetDispatchQueue
+ (
+ DNSServiceRef service,
+ dispatch_queue_t queue
+ );
+#endif //_DNS_SD_LIBDISPATCH
+
+#ifdef __APPLE_API_PRIVATE
+
+#define kDNSServiceCompPrivateDNS "PrivateDNS"
+#define kDNSServiceCompMulticastDNS "MulticastDNS"
+
+#endif //__APPLE_API_PRIVATE
+
+/* Some C compiler cleverness. We can make the compiler check certain things for us,
+ * and report errors at compile-time if anything is wrong. The usual way to do this would
+ * be to use a run-time "if" statement or the conventional run-time "assert" mechanism, but
+ * then you don't find out what's wrong until you run the software. This way, if the assertion
+ * condition is false, the array size is negative, and the complier complains immediately.
+ */
+
+struct CompileTimeAssertionChecks_DNS_SD
+ {
+ char assert0[(sizeof(union _TXTRecordRef_t) == 16) ? 1 : -1];
+ };
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif /* _DNS_SD_H */
diff --git a/vcnet/dnssdstub.vcxproj b/vcnet/dnssdstub.vcxproj
new file mode 100644
index 0000000..bd6a2f2
--- /dev/null
+++ b/vcnet/dnssdstub.vcxproj
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dns_sd.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dns_sd.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{C0899B3A-43E7-4BC3-A785-659E1FD2EA83}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>dnssdstub</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v141</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v141</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ <OutDir>$(Platform)/$(Configuration)/</OutDir>
+ <IntDir>$(Platform)/$(Configuration)/$(ProjectName)/</IntDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ <OutDir>$(Platform)/$(Configuration)/</OutDir>
+ <IntDir>$(Platform)/$(Configuration)/$(ProjectName)/</IntDir>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ <PrecompiledHeaderFile />
+ <AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ <PrecompiledHeaderFile />
+ <AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/vcnet/dnssdstub.vcxproj.filters b/vcnet/dnssdstub.vcxproj.filters
new file mode 100644
index 0000000..1bbb2f0
--- /dev/null
+++ b/vcnet/dnssdstub.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;ipp;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="dns_sd.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="dns_sd.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/vcnet/dnssdstub.vcxproj.user b/vcnet/dnssdstub.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/dnssdstub.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/ippfind.vcxproj b/vcnet/ippfind.vcxproj
index ccbfd1e..f75f86a 100644
--- a/vcnet/ippfind.vcxproj
+++ b/vcnet/ippfind.vcxproj
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
@@ -22,20 +14,8 @@
<ProjectGuid>{B484DA0C-62C8-4C32-83B6-CCEB58968B85}</ProjectGuid>
<RootNamespace>ippfind</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
@@ -50,12 +30,6 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -66,47 +40,16 @@
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>true</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>false</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level1</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>dnssd.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
@@ -114,7 +57,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -123,7 +66,7 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
- <AdditionalDependencies>dnssd.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
@@ -131,40 +74,20 @@
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level1</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>dnssd.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level1</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
- <AdditionalDependencies>dnssd.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
@@ -178,13 +101,15 @@
<ClCompile Include="..\test\ippfind.c" />
</ItemGroup>
<ItemGroup>
+ <ProjectReference Include="dnssdstub.vcxproj">
+ <Project>{c0899b3a-43e7-4bc3-a785-659e1fd2ea83}</Project>
+ </ProjectReference>
<ProjectReference Include="libcups2.vcxproj">
<Project>{cb4aa6f2-3e84-45be-b505-95cd375e8be3}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="regex.vcxproj">
<Project>{18950a1b-d37a-40c7-b2df-c12986c0526e}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
diff --git a/vcnet/ippfind.vcxproj.user b/vcnet/ippfind.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/ippfind.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/ippserver.vcxproj b/vcnet/ippserver.vcxproj
index 0b7a840..ac6a897 100644
--- a/vcnet/ippserver.vcxproj
+++ b/vcnet/ippserver.vcxproj
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
@@ -22,20 +14,8 @@
<ProjectGuid>{82A03BC7-0746-4B85-8908-3C7A3FAA58A9}</ProjectGuid>
<RootNamespace>ippserver</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
@@ -50,12 +30,6 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -66,47 +40,16 @@
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>true</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>false</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level1</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>dnssd.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
@@ -114,7 +57,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -123,7 +66,7 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
- <AdditionalDependencies>dnssd.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
@@ -131,40 +74,20 @@
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level1</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>dnssd.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level1</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
- <AdditionalDependencies>dnssd.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
@@ -178,10 +101,16 @@
<ClCompile Include="..\test\ippserver.c" />
</ItemGroup>
<ItemGroup>
+ <ProjectReference Include="dnssdstub.vcxproj">
+ <Project>{c0899b3a-43e7-4bc3-a785-659e1fd2ea83}</Project>
+ </ProjectReference>
<ProjectReference Include="libcups2.vcxproj">
<Project>{cb4aa6f2-3e84-45be-b505-95cd375e8be3}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
+ <ProjectReference Include="regex.vcxproj">
+ <Project>{18950a1b-d37a-40c7-b2df-c12986c0526e}</Project>
+ </ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
diff --git a/vcnet/ippserver.vcxproj.user b/vcnet/ippserver.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/ippserver.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/ipptool.vcxproj b/vcnet/ipptool.vcxproj
index 8825c74..17c3f78 100644
--- a/vcnet/ipptool.vcxproj
+++ b/vcnet/ipptool.vcxproj
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
@@ -22,20 +14,8 @@
<ProjectGuid>{B246D91E-61F2-4433-BFD2-6C2A96FBD4D4}</ProjectGuid>
<RootNamespace>ipptool</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
@@ -50,12 +30,6 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -66,46 +40,16 @@
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>true</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>false</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level1</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
@@ -113,7 +57,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -129,32 +73,13 @@
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level1</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Console</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level1</WarningLevel>
diff --git a/vcnet/ipptool.vcxproj.user b/vcnet/ipptool.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/ipptool.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/libcups2.vcxproj b/vcnet/libcups2.vcxproj
index b60acc3..070a679 100644
--- a/vcnet/libcups2.vcxproj
+++ b/vcnet/libcups2.vcxproj
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
@@ -22,19 +14,8 @@
<ProjectGuid>{CB4AA6F2-3E84-45BE-B505-95CD375E8BE3}</ProjectGuid>
<RootNamespace>libcups2</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
@@ -48,14 +29,6 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
@@ -68,53 +41,16 @@
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>true</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>false</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>ZLIB_WINAPI;WIN32;DEBUG;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <BufferSecurityCheck>true</BufferSecurityCheck>
- <PrecompiledHeader />
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalOptions>/NODEFAULTLIB:libcmt %(AdditionalOptions)</AdditionalOptions>
- <AdditionalDependencies>ws2_32.lib;advapi32.lib;zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)libcups2.dll</OutputFile>
- <ModuleDefinitionFile>..\cups\libcups2.def</ModuleDefinitionFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(Platform)\$(Configuration)\libcups2.pdb</ProgramDatabaseFile>
- <SubSystem>Windows</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <ImportLibrary>$(OutDir)libcups2.lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
@@ -122,7 +58,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>ZLIB_WINAPI;WIN32;DEBUG;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>DEBUG;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -132,7 +68,7 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
- <AdditionalDependencies>ws2_32.lib;advapi32.lib;zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>ws2_32.lib;advapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)libcups2.dll</OutputFile>
<ModuleDefinitionFile>..\cups\libcups2.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
@@ -142,35 +78,6 @@
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <Optimization>MinSpace</Optimization>
- <AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>ZLIB_WINAPI;WIN32;DEBUG;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalOptions>/NODEFAULTLIB:libcmt %(AdditionalOptions)</AdditionalOptions>
- <AdditionalDependencies>ws2_32.lib;advapi32.lib;zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)libcups2.dll</OutputFile>
- <ModuleDefinitionFile>..\cups\libcups2.def</ModuleDefinitionFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>libcups2.pdb</ProgramDatabaseFile>
- <SubSystem>Windows</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <ImportLibrary>$(OutDir)libcups2.lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- <PostBuildEvent>
- <Command />
- </PostBuildEvent>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
@@ -178,14 +85,14 @@
<ClCompile>
<Optimization>MinSpace</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;..\vcnet\regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>ZLIB_WINAPI;WIN32;DEBUG;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>DEBUG;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
- <AdditionalDependencies>ws2_32.lib;advapi32.lib;zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>ws2_32.lib;advapi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)libcups2.dll</OutputFile>
<ModuleDefinitionFile>..\cups\libcups2.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
@@ -207,125 +114,86 @@ xcopy /I/Y "$(TargetPath)"
<ItemGroup>
<ClCompile Include="..\cups\adminutil.c" />
<ClCompile Include="..\cups\array.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\auth.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
- <ClCompile Include="..\cups\backend.c" />
<ClCompile Include="..\cups\debug.c" />
<ClCompile Include="..\cups\dest-job.c" />
<ClCompile Include="..\cups\dest-localization.c" />
<ClCompile Include="..\cups\dest-options.c" />
<ClCompile Include="..\cups\dest.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\dir.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\encode.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\file.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\getdevices.c" />
<ClCompile Include="..\cups\getputfile.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\globals.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\hash.c" />
<ClCompile Include="..\cups\http-addr.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\http-addrlist.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\http-support.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\http.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\ipp-support.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\ipp.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\langprintf.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\language.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\md5.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\md5passwd.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\notify.c" />
<ClCompile Include="..\cups\options.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\ppd-attr.c" />
@@ -338,50 +206,35 @@ xcopy /I/Y "$(TargetPath)"
<ClCompile Include="..\cups\ppd-page.c" />
<ClCompile Include="..\cups\ppd-util.c" />
<ClCompile Include="..\cups\ppd.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\pwg-media.c" />
<ClCompile Include="..\cups\request.c" />
- <ClCompile Include="..\cups\snmp.c" />
<ClCompile Include="..\cups\snprintf.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\string.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\tempfile.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\thread.c" />
<ClCompile Include="..\cups\tls.c" />
<ClCompile Include="..\cups\transcode.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\usersys.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="..\cups\util.c">
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemGroup>
@@ -391,6 +244,7 @@ xcopy /I/Y "$(TargetPath)"
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\cups\adminutil.h" />
+ <ClInclude Include="..\cups\array-private.h" />
<ClInclude Include="..\cups\array.h" />
<ClInclude Include="..\cups\backend.h" />
<ClInclude Include="..\cups\cups-private.h" />
@@ -402,22 +256,25 @@ xcopy /I/Y "$(TargetPath)"
<ClInclude Include="..\cups\globals.h" />
<ClInclude Include="..\cups\http-private.h" />
<ClInclude Include="..\cups\http.h" />
- <ClInclude Include="..\cups\i18n.h" />
<ClInclude Include="..\cups\ipp-private.h" />
<ClInclude Include="..\cups\ipp.h" />
+ <ClInclude Include="..\cups\language-private.h" />
<ClInclude Include="..\cups\language.h" />
- <ClInclude Include="..\cups\md5-apple.h" />
- <ClInclude Include="..\cups\md5.h" />
- <ClInclude Include="..\cups\normalize.h" />
+ <ClInclude Include="..\cups\md5-private.h" />
<ClInclude Include="..\cups\ppd-private.h" />
<ClInclude Include="..\cups\ppd.h" />
<ClInclude Include="..\cups\pwg-private.h" />
+ <ClInclude Include="..\cups\pwg.h" />
<ClInclude Include="..\cups\string-private.h" />
<ClInclude Include="..\cups\thread-private.h" />
<ClInclude Include="..\cups\transcode.h" />
+ <ClInclude Include="..\cups\versioning.h" />
<ClInclude Include="config.h" />
</ItemGroup>
<ItemGroup>
+ <ProjectReference Include="dnssdstub.vcxproj">
+ <Project>{c0899b3a-43e7-4bc3-a785-659e1fd2ea83}</Project>
+ </ProjectReference>
<ProjectReference Include="regex.vcxproj">
<Project>{18950a1b-d37a-40c7-b2df-c12986c0526e}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
@@ -425,12 +282,12 @@ xcopy /I/Y "$(TargetPath)"
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
- <Import Project="packages\zlib128-vc140-static-32_64.1.2.8\build\native\zlib128-vc140-static-32_64.targets" Condition="Exists('packages\zlib128-vc140-static-32_64.1.2.8\build\native\zlib128-vc140-static-32_64.targets')" />
+ <Import Project="packages\zlib-vc140-static-64.1.2.11\build\native\zlib-vc140-static-64.targets" Condition="Exists('packages\zlib-vc140-static-64.1.2.11\build\native\zlib-vc140-static-64.targets')" />
</ImportGroup>
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
- <Error Condition="!Exists('packages\zlib128-vc140-static-32_64.1.2.8\build\native\zlib128-vc140-static-32_64.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\zlib128-vc140-static-32_64.1.2.8\build\native\zlib128-vc140-static-32_64.targets'))" />
+ <Error Condition="!Exists('packages\zlib-vc140-static-64.1.2.11\build\native\zlib-vc140-static-64.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\zlib-vc140-static-64.1.2.11\build\native\zlib-vc140-static-64.targets'))" />
</Target>
</Project> \ No newline at end of file
diff --git a/vcnet/libcups2.vcxproj.filters b/vcnet/libcups2.vcxproj.filters
index 7f6f301..c68ac0a 100644
--- a/vcnet/libcups2.vcxproj.filters
+++ b/vcnet/libcups2.vcxproj.filters
@@ -24,9 +24,6 @@
<ClCompile Include="..\cups\auth.c">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\cups\backend.c">
- <Filter>Source Files</Filter>
- </ClCompile>
<ClCompile Include="..\cups\debug.c">
<Filter>Source Files</Filter>
</ClCompile>
@@ -108,9 +105,6 @@
<ClCompile Include="..\cups\request.c">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\cups\snmp.c">
- <Filter>Source Files</Filter>
- </ClCompile>
<ClCompile Include="..\cups\snprintf.c">
<Filter>Source Files</Filter>
</ClCompile>
@@ -209,9 +203,6 @@
<ClInclude Include="..\cups\http.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="..\cups\i18n.h">
- <Filter>Header Files</Filter>
- </ClInclude>
<ClInclude Include="..\cups\ipp-private.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -221,15 +212,6 @@
<ClInclude Include="..\cups\language.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="..\cups\md5-apple.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="..\cups\md5.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="..\cups\normalize.h">
- <Filter>Header Files</Filter>
- </ClInclude>
<ClInclude Include="..\cups\ppd-private.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -248,5 +230,20 @@
<ClInclude Include="..\cups\transcode.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\cups\language-private.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\cups\array-private.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\cups\md5-private.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\cups\pwg.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\cups\versioning.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project> \ No newline at end of file
diff --git a/vcnet/libcups2.vcxproj.user b/vcnet/libcups2.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/libcups2.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/libcupsimage2.vcxproj b/vcnet/libcupsimage2.vcxproj
index 7d8b9ee..72d9ffe 100644
--- a/vcnet/libcupsimage2.vcxproj
+++ b/vcnet/libcupsimage2.vcxproj
@@ -1,18 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
@@ -21,19 +13,8 @@
<PropertyGroup Label="Globals">
<ProjectGuid>{CB4AA6F2-3E84-45BE-B505-95CD375E1234}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <PlatformToolset>v141</PlatformToolset>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
@@ -47,14 +28,6 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
@@ -67,52 +40,16 @@
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>true</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
- <LinkIncremental>false</LinkIncremental>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <BufferSecurityCheck>true</BufferSecurityCheck>
- <PrecompiledHeader />
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)libcupsimage2.dll</OutputFile>
- <ModuleDefinitionFile>..\filter\libcupsimage2.def</ModuleDefinitionFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(Platform)\$(Configuration)\libcupsimage2.pdb</ProgramDatabaseFile>
- <SubSystem>Windows</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <ImportLibrary>$(OutDir)libcupsimage2.lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
@@ -120,7 +57,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -140,34 +77,6 @@
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <Optimization>MinSpace</Optimization>
- <AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <PrecompiledHeader />
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)libcupsimage2.dll</OutputFile>
- <ModuleDefinitionFile>..\filter\libcupsimage2.def</ModuleDefinitionFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>libcupsimage2.pdb</ProgramDatabaseFile>
- <SubSystem>Windows</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <ImportLibrary>$(OutDir)libcupsimage2.lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- <PostBuildEvent>
- <Command />
- </PostBuildEvent>
- </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
@@ -175,7 +84,7 @@
<ClCompile>
<Optimization>MinSpace</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level3</WarningLevel>
diff --git a/vcnet/libcupsimage2.vcxproj.user b/vcnet/libcupsimage2.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/libcupsimage2.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/packages.config b/vcnet/packages.config
new file mode 100644
index 0000000..17b6de8
--- /dev/null
+++ b/vcnet/packages.config
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="zlib-vc140-static-64" version="1.2.11" targetFramework="native" />
+</packages> \ No newline at end of file
diff --git a/vcnet/regex.vcxproj b/vcnet/regex.vcxproj
index 48a34bb..19cc230 100644
--- a/vcnet/regex.vcxproj
+++ b/vcnet/regex.vcxproj
@@ -22,7 +22,6 @@
<ProjectGuid>{18950A1B-D37A-40C7-B2DF-C12986C0526E}</ProjectGuid>
<RootNamespace>regex</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
@@ -68,29 +67,29 @@
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_DEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -110,7 +109,7 @@
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NDEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader />
@@ -133,7 +132,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_DEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -156,7 +155,7 @@
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>regex;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NDEBUG;_WINDOWS;_USRDLL;REGEX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader />
diff --git a/vcnet/regex.vcxproj.user b/vcnet/regex.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/regex.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/testfile.vcxproj b/vcnet/testfile.vcxproj
index c89e57b..787b3a0 100644
--- a/vcnet/testfile.vcxproj
+++ b/vcnet/testfile.vcxproj
@@ -1,27 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
+ <ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
+ <Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
+ <ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
- <Platform>Win32</Platform>
+ <Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{CE75FC5F-E0CF-45DC-AD27-84666D3FBA30}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
@@ -29,11 +28,11 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
</ImportGroup>
@@ -41,27 +40,27 @@
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <PrecompiledHeader />
+ <PrecompiledHeader>
+ </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)testfile.exe</OutputFile>
@@ -69,18 +68,20 @@
<ProgramDatabaseFile>$(OutDir)testfile.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <PrecompiledHeader />
+ <PrecompiledHeader>
+ </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat />
+ <DebugInformationFormat>
+ </DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)testfile.exe</OutputFile>
@@ -89,8 +90,8 @@
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
diff --git a/vcnet/testfile.vcxproj.user b/vcnet/testfile.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/testfile.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/vcnet/testhttp.vcxproj b/vcnet/testhttp.vcxproj
index c61a3c7..1011123 100644
--- a/vcnet/testhttp.vcxproj
+++ b/vcnet/testhttp.vcxproj
@@ -1,27 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
+ <ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
+ <Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
+ <ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
- <Platform>Win32</Platform>
+ <Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{90B0058C-8393-411F-BD3B-E2C831D4E883}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
@@ -29,11 +28,11 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
</ImportGroup>
@@ -41,27 +40,27 @@
<PropertyGroup>
<_ProjectFileVersion>12.0.30501.0</_ProjectFileVersion>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\</IntDir>
+ <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <PrecompiledHeader />
+ <PrecompiledHeader>
+ </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)testhttp.exe</OutputFile>
@@ -69,18 +68,20 @@
<ProgramDatabaseFile>$(OutDir)testhttp.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\vcnet;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <PrecompiledHeader />
+ <PrecompiledHeader>
+ </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat />
+ <DebugInformationFormat>
+ </DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)testhttp.exe</OutputFile>
@@ -89,8 +90,8 @@
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
- <DataExecutionPrevention />
- <TargetMachine>MachineX86</TargetMachine>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
diff --git a/vcnet/testhttp.vcxproj.user b/vcnet/testhttp.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/vcnet/testhttp.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/xcode/config.h b/xcode/config.h
index 3843378..b8e1e0e 100644
--- a/xcode/config.h
+++ b/xcode/config.h
@@ -22,8 +22,8 @@
* Version of software...
*/
-#define CUPS_SVERSION "CUPS v2.2.8"
-#define CUPS_MINIMAL "CUPS/2.2.8"
+#define CUPS_SVERSION "CUPS v2.2.9"
+#define CUPS_MINIMAL "CUPS/2.2.9"
/*