]> git.ipfire.org Git - thirdparty/cups.git/commitdiff
Merge changes from CUPS 1.4svn-r7696.
authormsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>
Fri, 27 Jun 2008 20:26:20 +0000 (20:26 +0000)
committermsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>
Fri, 27 Jun 2008 20:26:20 +0000 (20:26 +0000)
git-svn-id: svn+ssh://src.apple.com/svn/cups/easysw/current@818 a1ca3aef-8c08-0410-bb20-df032aa958be

289 files changed:
CHANGES-1.3.txt
CHANGES.txt
Makedefs.in
Makefile
backend/Makefile
backend/backend-private.h
backend/ieee1284.c
backend/ipp.c
backend/lpd.c
backend/pap.c
backend/parallel.c
backend/runloop.c
backend/scsi.c
backend/serial.c
backend/snmp.c
backend/socket.c
backend/test1284.c
backend/usb-darwin.c
backend/usb-libusb.c [new file with mode: 0644]
backend/usb-unix.c
backend/usb.c
berkeley/Makefile
berkeley/lpc.c
berkeley/lpq.c
berkeley/lprm.c
cgi-bin/Makefile
cgi-bin/admin.c
cgi-bin/classes.c
cgi-bin/help-index.c
cgi-bin/help-index.h
cgi-bin/ipp-var.c
cgi-bin/jobs.c
cgi-bin/printers.c
cgi-bin/search.c
cgi-bin/template.c
cgi-bin/var.c
conf/Makefile
conf/cupsd.conf.in
conf/mime.types
config-scripts/cups-common.m4
config-scripts/cups-compiler.m4
config-scripts/cups-defaults.m4
config-scripts/cups-dnssd.m4
config-scripts/cups-ldap.m4
config-scripts/cups-network.m4
config-scripts/cups-pam.m4
config-scripts/cups-pdf.m4
config-scripts/cups-sharedlibs.m4
config-scripts/cups-slp.m4
config-scripts/cups-ssl.m4
config.h.in
configure.in
cups-config.in
cups/Makefile
cups/adminutil.c
cups/adminutil.h
cups/api-array.header
cups/api-array.shtml
cups/api-cups.header
cups/api-cups.shtml
cups/api-filedir.header
cups/api-filedir.shtml
cups/api-filter.header
cups/api-filter.shtml
cups/api-httpipp.header
cups/api-httpipp.shtml
cups/api-ppd.header
cups/api-ppd.shtml
cups/array.c
cups/array.h
cups/auth.c
cups/backchannel.c
cups/backend.c
cups/backend.h
cups/cups.h
cups/debug.h
cups/dest.c
cups/dir.c
cups/dir.h
cups/emit.c
cups/encode.c
cups/file.c
cups/file.h
cups/getputfile.c
cups/globals.c
cups/globals.h
cups/http-addrlist.c
cups/http-private.h
cups/http.c
cups/http.h
cups/i18n.h
cups/ipp-private.h
cups/ipp-support.c
cups/ipp.c
cups/ipp.h
cups/langprintf.c
cups/language.c
cups/libcups.exp
cups/localize.c
cups/mark.c
cups/notify.c
cups/options.c
cups/ppd.c
cups/ppd.h
cups/request.c
cups/sidechannel.c
cups/sidechannel.h
cups/string.c
cups/tempfile.c
cups/test.ppd
cups/testfile.c
cups/testhttp.c
cups/testi18n.c
cups/testppd.c
cups/transcode.c
cups/transcode.h
cups/usersys.c
cups/util.c
data/Makefile
data/testprint.ps
doc/Makefile
doc/help/api-array.html
doc/help/api-filter.html
doc/help/api-httpipp.html
doc/help/api-ppd.html
doc/help/api-raster.html
doc/help/spec-ipp.html
doc/help/spec-ppd.html
driver/api-driver.header [new file with mode: 0644]
driver/api-driver.shtml [new file with mode: 0644]
driver/testdriver.c
filter/Makefile
filter/api-raster.shtml
filter/commandtops.c
filter/error.c
filter/hpgl-input.c
filter/image-bmp.c
filter/image-gif.c
filter/image-jpeg.c
filter/image-photocd.c
filter/image-pix.c
filter/image-png.c
filter/image-pnm.c
filter/image-private.h
filter/image-sgi.c
filter/image-sgilib.c
filter/image-sun.c
filter/image.c
filter/image.h
filter/imagetoraster.c
filter/interpret.c
filter/pstops.c
filter/raster.c
filter/rasterbench.c
filter/rastertoepson.c
filter/rastertohp.c
filter/rastertolabel.c
filter/testraster.c
fonts/Makefile
locale/Makefile
locale/checkpo.c
locale/cups_id.po [new file with mode: 0644]
locale/ppdc_id.po [new file with mode: 0644]
man/Makefile
man/accept.man
man/backend.man
man/cancel.man
man/classes.conf.man
man/commandtoescpx.man
man/commandtopclx.man
man/cups-config.man
man/cups-deviced.man.in
man/cups-driverd.man.in
man/cups-lpd.man.in
man/cups-polld.man
man/cups-snmp.conf.man
man/cupsaddsmb.man.in
man/cupsctl.man
man/cupsd.conf.man.in
man/cupsd.man.in
man/cupsenable.man
man/cupsfilter.man
man/cupstestdsc.man
man/cupstestppd.man
man/filter.man
man/lp.man
man/lpadmin.man
man/lpc.man
man/lpinfo.man
man/lpmove.man
man/lpoptions.man.in
man/lppasswd.man
man/lpq.man
man/lpr.man
man/lprm.man
man/lpstat.man
man/mailto.conf.man
man/mantohtml.c
man/mime.convs.man
man/mime.types.man
man/ppdc.man
man/ppdcfile.man
man/ppdhtml.man
man/ppdi.man
man/ppdmerge.man
man/ppdpo.man
man/printers.conf.man
man/rastertoescpx.man
man/rastertopclx.man
man/subscriptions.conf.man
monitor/Makefile
notifier/Makefile
notifier/mailto.c
notifier/rss.c
packaging/cups.list.in
packaging/cups.spec.in
scheduler/Makefile
scheduler/auth.c
scheduler/auth.h
scheduler/banners.c
scheduler/cert.c
scheduler/cert.h
scheduler/classes.c
scheduler/client.c
scheduler/client.h
scheduler/conf.c
scheduler/conf.h
scheduler/cups-deviced.c
scheduler/cups-driverd.c
scheduler/cups-lpd.c
scheduler/cups-polld.c
scheduler/cupsd.h
scheduler/cupsfilter.c
scheduler/dirsvc.c
scheduler/dirsvc.h
scheduler/env.c
scheduler/filter.c
scheduler/ipp.c
scheduler/job.c
scheduler/job.h
scheduler/libcupsmime.exp
scheduler/listen.c
scheduler/log.c
scheduler/main.c
scheduler/mime.c
scheduler/mime.h
scheduler/policy.c
scheduler/printers.c
scheduler/printers.h
scheduler/process.c
scheduler/select.c
scheduler/server.c
scheduler/statbuf.c
scheduler/statbuf.h
scheduler/subscriptions.c
scheduler/subscriptions.h
scheduler/sysman.c
scheduler/sysman.h
scheduler/testmime.c
scheduler/testspeed.c
scheduler/type.c
scheduler/util.c
scheduler/util.h
scripting/php/phpcups.c
standards/Makefile
standards/pwg5107.1.pdf [new file with mode: 0644]
standards/wd-ippstate10-20061107.pdf [new file with mode: 0644]
systemv/Makefile
systemv/accept.c
systemv/cupsaddsmb.c
systemv/cupstestppd.c
systemv/lpadmin.c
systemv/lpinfo.c
systemv/lpmove.c
systemv/lpoptions.c
systemv/lpstat.c
templates/Makefile
test/4.3-job-ops.test
test/5.1-lpadmin.sh
test/5.5-lp.sh
test/5.6-lpr.sh
test/5.7-lprm.sh
test/5.8-cancel.sh
test/Makefile
test/ipptest.c
test/run-stp-tests.sh
test/testfile.jpg
test/testfile.pdf
tools/checkglobals

index aa85f31d249c98b05dd027975a9764c6ee8f12f8..ba278571210dc54170d799f62d8723948e6a95b6 100644 (file)
@@ -4,6 +4,8 @@ CHANGES-1.3.txt
 CHANGES IN CUPS V1.3.8
 
        - Documentation updates (STR #2785, STR #2861, STR #2862)
+       - The scheduler would crash if you started a printer that
+         pointed to a backend that did not exist (STR #2865)
        - The ppdLocalize functions incorrectly mapped all generic
          locales to country-specific locales.
        - The cups-driverd program did not support Simplified Chinese
index 5ada0f3bebacea663e5e789533114d9fd115b95f..410b57e124a7270d3b1c9d12aaa512e5c4a1120c 100644 (file)
@@ -1,8 +1,11 @@
-CHANGES.txt - 2008-06-17
+CHANGES.txt - 2008-06-25
 ------------------------
 
 CHANGES IN CUPS V1.4b1
 
+       - The USB backend now uses libusb when available (STR #1575)
+       - Added ppdLocalizeAttr function to get the localized version
+         of an attribute.
        - MIME types now support a priority() attribute (STR #2719)
        - The standard MIME types are now installed in
          DataDir/mime (STR #2719)
index 27fc8351e7a4c80e0a3d51cc818b009120ab2418..0e5068553f47a9744079fe6eb39af5a0f10422bf 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makedefs.in 7016 2007-10-10 22:07:51Z mike $"
+# "$Id: Makedefs.in 7687 2008-06-24 01:28:36Z mike $"
 #
 #   Common makefile definitions for the Common UNIX Printing System (CUPS).
 #
@@ -91,6 +91,7 @@ LIBPNG                =       @LIBPNG@
 LIBSLP         =       @LIBSLP@
 LIBGSSAPI      =       @LIBGSSAPI@
 LIBTIFF                =       @LIBTIFF@
+LIBUSB         =       @LIBUSB@
 LIBZ           =       @LIBZ@
 
 #
@@ -279,5 +280,5 @@ DBUSDIR             =       @DBUSDIR@
 
 
 #
-# End of "$Id: Makedefs.in 7016 2007-10-10 22:07:51Z mike $"
+# End of "$Id: Makedefs.in 7687 2008-06-24 01:28:36Z mike $"
 #
index 1c83cc513524aa1af9958ed63abedb6883980bec..67fd9d84f31665fb2df668f5af788ac6b54b6322 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6897 2007-08-30 06:11:59Z mike $"
+# "$Id: Makefile 7613 2008-05-22 23:27:52Z mike $"
 #
 #   Top-level Makefile for the Common UNIX Printing System (CUPS).
 #
@@ -325,5 +325,5 @@ dist:       all
 
 
 #
-# End of "$Id: Makefile 6897 2007-08-30 06:11:59Z mike $".
+# End of "$Id: Makefile 7613 2008-05-22 23:27:52Z mike $".
 #
index a5e1db3a7fa665d2f6d88b6ae295f7ab602a1bef..a2d4b1ed0205690711518c13e78bc67394b278fb 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6778 2007-08-08 19:27:51Z mike $"
+# "$Id: Makefile 7687 2008-06-24 01:28:36Z mike $"
 #
 #   Backend makefile for the Common UNIX Printing System (CUPS).
 #
@@ -251,8 +251,8 @@ socket:     socket.o ../cups/$(LIBCUPS) libbackend.a
 
 usb:   usb.o ../cups/$(LIBCUPS) libbackend.a
        echo Linking $@...
-       $(CC) $(LDFLAGS) -o usb usb.o libbackend.a $(BACKLIBS) $(LIBS)
-usb.o: usb.c usb-darwin.c usb-unix.c
+       $(CC) $(LDFLAGS) -o usb usb.o libbackend.a $(LIBUSB) $(BACKLIBS) $(LIBS)
+usb.o: usb.c usb-darwin.c usb-libusb.c usb-unix.c
 
 
 #
@@ -263,5 +263,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6778 2007-08-08 19:27:51Z mike $".
+# End of "$Id: Makefile 7687 2008-06-24 01:28:36Z mike $".
 #
index 84feb6b6a6075a60e13d1a60e94afbae67770051..b7912d59dab17604c9201a8c377eaec19f932916 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: backend-private.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: backend-private.h 7586 2008-05-16 23:39:39Z mike $"
  *
  *   Backend support definitions for the Common UNIX Printing System (CUPS).
  *
@@ -272,5 +272,5 @@ extern int          backendSNMPSupplies(int snmp_fd, http_addr_t *addr,
 
 
 /*
- * End of "$Id: backend-private.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: backend-private.h 7586 2008-05-16 23:39:39Z mike $".
  */
index 8b8579d8066fac5a9c99988f3b015022a2a2b035..ebbd5d18bbddf8a4c32138a022414c7576b45884 100644 (file)
@@ -1,9 +1,9 @@
 /*
- * "$Id: ieee1284.c 7019 2007-10-10 22:48:52Z mike $"
+ * "$Id: ieee1284.c 7687 2008-06-24 01:28:36Z mike $"
  *
  *   IEEE-1284 support functions for the Common UNIX Printing System (CUPS).
  *
- *   Copyright 2007 by Apple Inc.
+ *   Copyright 2007-2008 by Apple Inc.
  *   Copyright 1997-2007 by Easy Software Products, all rights reserved.
  *
  *   These coded instructions, statements, and computer programs are the
@@ -442,5 +442,5 @@ backendGetMakeModel(
 
 
 /*
- * End of "$Id: ieee1284.c 7019 2007-10-10 22:48:52Z mike $".
+ * End of "$Id: ieee1284.c 7687 2008-06-24 01:28:36Z mike $".
  */
index 83c0dc669e6968d3777d2b4cb8942a84bcba4613..9944220a27279fd5aaebdae7a90cfd26173789b0 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ipp.c 7018 2007-10-10 22:14:03Z mike $"
+ * "$Id: ipp.c 7583 2008-05-16 17:47:16Z mike $"
  *
  *   IPP backend for the Common UNIX Printing System (CUPS).
  *
@@ -1818,5 +1818,5 @@ sigterm_handler(int sig)          /* I - Signal */
 
 
 /*
- * End of "$Id: ipp.c 7018 2007-10-10 22:14:03Z mike $".
+ * End of "$Id: ipp.c 7583 2008-05-16 17:47:16Z mike $".
  */
index e8233ab289ceefebb67b17f2179b5749b5804c05..76123b32ddbea52a9a4f1f126f4ddaec9a1a97f7 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lpd.c 6910 2007-09-04 20:34:29Z mike $"
+ * "$Id: lpd.c 7583 2008-05-16 17:47:16Z mike $"
  *
  *   Line Printer Daemon backend for the Common UNIX Printing System (CUPS).
  *
@@ -1378,5 +1378,5 @@ sigterm_handler(int sig)          /* I - Signal */
 
 
 /*
- * End of "$Id: lpd.c 6910 2007-09-04 20:34:29Z mike $".
+ * End of "$Id: lpd.c 7583 2008-05-16 17:47:16Z mike $".
  */
index f89047e1d6926aadc2ccae1f0e2135995a248c94..f0f194e730a40614c23d95d8794d28e471d38f7b 100644 (file)
@@ -1,5 +1,5 @@
 /*
-* "$Id: pap.c 7010 2007-10-10 21:08:51Z mike $"
+* "$Id: pap.c 7318 2008-02-15 23:24:41Z mike $"
 *
 * Copyright 2004-2008 Apple Inc. All rights reserved.
 * 
index 84addcb051a764328de932c493b86b5736fdfa21..bba472095a6ee38a4f83ef5a65e5e1095a6bc5fd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: parallel.c 7019 2007-10-10 22:48:52Z mike $"
+ * "$Id: parallel.c 7343 2008-02-25 19:02:09Z mike $"
  *
  *   Parallel port backend for the Common UNIX Printing System (CUPS).
  *
@@ -678,5 +678,5 @@ side_cb(int         print_fd,               /* I - Print file */
 
 
 /*
- * End of "$Id: parallel.c 7019 2007-10-10 22:48:52Z mike $".
+ * End of "$Id: parallel.c 7343 2008-02-25 19:02:09Z mike $".
  */
index fbb14fdab24bcc403682eb5b5c4df9cb58d7a9e8..03aa956fee176737fe7f5583f022ee85878df2f7 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: runloop.c 6834 2007-08-22 18:29:25Z mike $"
+ * "$Id: runloop.c 7647 2008-06-16 17:39:40Z mike $"
  *
  *   Common run loop APIs for the Common UNIX Printing System (CUPS).
  *
@@ -404,5 +404,5 @@ backendRunLoop(
 
 
 /*
- * End of "$Id: runloop.c 6834 2007-08-22 18:29:25Z mike $".
+ * End of "$Id: runloop.c 7647 2008-06-16 17:39:40Z mike $".
  */
index 54833277234dae0d3d8f8c46a51916a04026b92e..7040d4bda5321e61982f5e62fcc20c30e2761dc1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: scsi.c 6834 2007-08-22 18:29:25Z mike $"
+ * "$Id: scsi.c 7193 2008-01-07 23:01:40Z mike $"
  *
  *   SCSI printer backend for the Common UNIX Printing System (CUPS).
  *
@@ -227,5 +227,5 @@ main(int  argc,             /* I - Number of command-line arguments (6 or 7) */
 
 
 /*
- * End of "$Id: scsi.c 6834 2007-08-22 18:29:25Z mike $".
+ * End of "$Id: scsi.c 7193 2008-01-07 23:01:40Z mike $".
  */
index 3ac7ff659fcae7c5f5b426b086c54a0909daf0b4..25dfc8c4fe9a39e2dad02230eaaf48f92ddde35c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: serial.c 6910 2007-09-04 20:34:29Z mike $"
+ * "$Id: serial.c 7647 2008-06-16 17:39:40Z mike $"
  *
  *   Serial port backend for the Common UNIX Printing System (CUPS).
  *
@@ -1297,5 +1297,5 @@ side_cb(int print_fd,                     /* I - Print file */
 
 
 /*
- * End of "$Id: serial.c 6910 2007-09-04 20:34:29Z mike $".
+ * End of "$Id: serial.c 7647 2008-06-16 17:39:40Z mike $".
  */
index 0364ee2a2313b48ed0657348bedf44039f766f28..b7bafbf5619ea5ef46148eb0cc7ed9c3b5db4cf1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: snmp.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: snmp.c 7506 2008-04-29 04:38:47Z mike $"
  *
  *   SNMP discovery backend for the Common UNIX Printing System (CUPS).
  *
@@ -1311,5 +1311,5 @@ update_cache(snmp_cache_t *device,        /* I - Device */
 
 
 /*
- * End of "$Id: snmp.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: snmp.c 7506 2008-04-29 04:38:47Z mike $".
  */
index 6f2c80ddf858fe48ab3e1b6f9b7cdbf4c5496330..5992fc5f737ee8373a04bd175edb8174a30571d4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: socket.c 6910 2007-09-04 20:34:29Z mike $"
+ * "$Id: socket.c 7583 2008-05-16 17:47:16Z mike $"
  *
  *   AppSocket backend for the Common UNIX Printing System (CUPS).
  *
@@ -499,5 +499,5 @@ wait_bc(int device_fd,                      /* I - Socket */
 
 
 /*
- * End of "$Id: socket.c 6910 2007-09-04 20:34:29Z mike $".
+ * End of "$Id: socket.c 7583 2008-05-16 17:47:16Z mike $".
  */
index 2f2766b4242b4a05f21608647645bf2c2079525f..5c9b99963651bc6fb0df2861964f59f1f1cfaabc 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: test1284.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: test1284.c 7465 2008-04-18 16:20:11Z mike $"
  *
  *   IEEE-1284 support functions test program for the Common UNIX Printing
  *   System (CUPS).
@@ -83,5 +83,5 @@ main(int  argc,                               /* I - Number of command-line args */
 
 
 /*
- * End of "$Id: test1284.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: test1284.c 7465 2008-04-18 16:20:11Z mike $".
  */
index f9197173eb54d5601519ed69e8c4b2f324b09079..28d45f29ff0456696f2a0a4a94447ac9251b0451 100644 (file)
@@ -1,5 +1,5 @@
 /*
-* "$Id: usb-darwin.c 6993 2007-09-28 18:05:28Z mike $"
+* "$Id: usb-darwin.c 7460 2008-04-16 02:19:54Z mike $"
 *
 * Copyright 2005-2008 Apple Inc. All rights reserved.
 *
@@ -2036,5 +2036,5 @@ static void get_device_id(cups_sc_status_t *status,
 
 
 /*
- * End of "$Id: usb-darwin.c 6993 2007-09-28 18:05:28Z mike $".
+ * End of "$Id: usb-darwin.c 7460 2008-04-16 02:19:54Z mike $".
  */
diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c
new file mode 100644 (file)
index 0000000..a2ec1fa
--- /dev/null
@@ -0,0 +1,680 @@
+/*
+ * "$Id$"
+ *
+ *   Libusb interface code for the Common UNIX Printing System (CUPS).
+ *
+ *   Copyright 2007-2008 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/".
+ *
+ * Contents:
+ *
+ */
+
+/*
+ * Include necessary headers...
+ */
+
+#include <usb.h>
+
+
+/*
+ * Local types...
+ */
+
+typedef struct usb_printer_s           /**** USB Printer Data ****/
+{
+  struct usb_device    *device;        /* Device info */
+  int                  conf,           /* Configuration */
+                       iface,          /* Interface */
+                       altset,         /* Alternate setting */
+                       write_endp,     /* Write endpoint */
+                       read_endp;      /* Read endpoint */
+  struct usb_dev_handle        *handle;        /* Open handle to device */
+} usb_printer_t;
+
+typedef int (*usb_cb_t)(usb_printer_t *, const char *, const char *,
+                        const void *);
+
+
+/*
+ * Local functions...
+ */
+
+static int             close_device(usb_printer_t *printer);
+static usb_printer_t   *find_device(usb_cb_t cb, const void *data);
+static int             get_device_id(usb_printer_t *printer, char *buffer,
+                                     size_t bufsize);
+static int             list_cb(usb_printer_t *printer, const char *device_uri,
+                               const char *device_id, const void *data);
+static char            *make_device_uri(usb_printer_t *printer,
+                                        const char *device_id,
+                                        char *uri, size_t uri_size);
+static int             open_device(usb_printer_t *printer, int verbose);
+static int             print_cb(usb_printer_t *printer, const char *device_uri,
+                                const char *device_id, const void *data);
+
+
+/*
+ * 'list_devices()' - List the available printers.
+ */
+
+void
+list_devices(void)
+{
+  fputs("DEBUG: list_devices\n", stderr);
+  find_device(list_cb, NULL);
+}
+
+
+/*
+ * 'print_device()' - Print a file to a USB device.
+ */
+
+int                                    /* O - Exit status */
+print_device(const char *uri,          /* I - Device URI */
+             const char *hostname,     /* I - Hostname/manufacturer */
+             const char *resource,     /* I - Resource/modelname */
+            char       *options,       /* I - Device options/serial number */
+            int        print_fd,       /* I - File descriptor to print */
+            int        copies,         /* I - Copies to print */
+            int        argc,           /* I - Number of command-line arguments (6 or 7) */
+            char       *argv[])        /* I - Command-line arguments */
+{
+  usb_printer_t        *printer;               /* Printer */
+  ssize_t      bytes,                  /* Bytes read/written */
+               tbytes;                 /* Total bytes written */
+  char         buffer[8192];           /* Print data buffer */
+  struct sigaction action;             /* Actions for POSIX signals */
+  int          read_endp,              /* Read endpoint */
+               write_endp;             /* Write endpoint */
+
+
+  fputs("DEBUG: print_device\n", stderr);
+
+ /*
+  * Connect to the printer...
+  */
+
+  while ((printer = find_device(print_cb, uri)) == NULL)
+  {
+    _cupsLangPuts(stderr,
+                 _("INFO: Waiting for printer to become available...\n"));
+    sleep(5);
+  }
+
+  read_endp  = printer->device->config[printer->conf].
+                   interface[printer->iface].
+                  altsetting[printer->altset].
+                  endpoint[printer->read_endp].bEndpointAddress;
+  write_endp = printer->device->config[printer->conf].
+                   interface[printer->iface].
+                  altsetting[printer->altset].
+                  endpoint[printer->write_endp].bEndpointAddress;
+
+ /*
+  * If we are printing data from a print driver on stdin, ignore SIGTERM
+  * so that the driver can finish out any page data, e.g. to eject the
+  * current page.  We only do this for stdin printing as otherwise there
+  * is no way to cancel a raw print job...
+  */
+
+  if (!print_fd)
+  {
+    memset(&action, 0, sizeof(action));
+
+    sigemptyset(&action.sa_mask);
+    action.sa_handler = SIG_IGN;
+    sigaction(SIGTERM, &action, NULL);
+  }
+
+  tbytes = 0;
+
+  while (copies > 0 && tbytes >= 0)
+  {
+    copies --;
+
+    if (print_fd != 0)
+    {
+      fputs("PAGE: 1 1\n", stderr);
+      lseek(print_fd, 0, SEEK_SET);
+    }
+
+   /*
+    * TODO: Add side-channel and back-channel support, along with better
+    * error handling for writes.
+    */
+
+    while ((bytes = read(print_fd, buffer, sizeof(buffer))) > 0)
+    {
+      while (usb_bulk_write(printer->handle, write_endp, buffer, bytes,
+                            5000) < 0)
+      {
+        _cupsLangPrintf(stderr,
+                       _("ERROR: Unable to write %d bytes to printer!\n"),
+                       (int)bytes);
+        tbytes = -1;
+       break;
+      }
+
+      tbytes += bytes;
+    }
+  }
+
+ /*
+  * Close our connection and return...
+  */
+
+  close_device(printer);
+
+  return (CUPS_BACKEND_OK);
+}
+
+
+/*
+ * 'close_device()' - Close the connection to the USB printer.
+ */
+
+static int                             /* I - 0 on success, -1 on failure */
+close_device(usb_printer_t *printer)   /* I - Printer */
+{
+  if (printer->handle)
+  {
+    usb_close(printer->handle);
+    printer->handle = NULL;
+  }
+
+  return (0);
+}
+
+
+/*
+ * 'find_device()' - Find or enumerate USB printers.
+ */
+
+static usb_printer_t *                 /* O - Found printer */
+find_device(usb_cb_t   cb,             /* I - Callback function */
+            const void *data)          /* I - User data for callback */
+{
+  struct usb_bus       *bus;           /* Current bus */
+  struct usb_device    *device;        /* Current device */
+  struct usb_config_descriptor *confptr;/* Pointer to current configuration */
+  struct usb_interface *ifaceptr;      /* Pointer to current interface */
+  struct usb_interface_descriptor *altptr;
+                                       /* Pointer to current alternate setting */
+  struct usb_endpoint_descriptor *endpptr;
+                                       /* Pointer to current endpoint */
+  int                  conf,           /* Current configuration */
+                       iface,          /* Current interface */
+                       altset,         /* Current alternate setting */
+                       protocol,       /* Current protocol */
+                       endp,           /* Current endpoint */
+                       read_endp,      /* Current read endpoint */
+                       write_endp;     /* Current write endpoint */
+  char                 device_id[1024],/* IEEE-1284 device ID */
+                       device_uri[1024];
+                                       /* Device URI */
+  static usb_printer_t printer;        /* Current printer */
+
+
+ /*
+  * Initialize libusb...
+  */
+
+  usb_init();
+  fprintf(stderr, "DEBUG: usb_find_busses=%d\n", usb_find_busses());
+  fprintf(stderr, "DEBUG: usb_find_devices=%d\n", usb_find_devices());
+
+ /*
+  * Then loop through the devices it found...
+  */
+
+  for (bus = usb_get_busses(); bus; bus = bus->next)
+    for (device = bus->devices; device; device = device->next)
+    {
+     /*
+      * Ignore devices with no configuration data and anything that is not
+      * a printer...
+      */
+
+      if (!device->config || !device->descriptor.idVendor ||
+          !device->descriptor.idProduct)
+       continue;
+
+      for (conf = 0, confptr = device->config;
+           conf < device->descriptor.bNumConfigurations;
+          conf ++, confptr ++)
+        for (iface = 0, ifaceptr = confptr->interface;
+            iface < confptr->bNumInterfaces;
+            iface ++, ifaceptr ++)
+        {
+        /*
+         * Some printers offer multiple interfaces...
+         */
+
+          protocol   = 0;
+
+         for (altset = 0, altptr = ifaceptr->altsetting;
+              altset < ifaceptr->num_altsetting;
+              altset ++, altptr ++)
+          {
+          /*
+           * Currently we only support unidirectional and bidirectional
+           * printers.  Future versions of this code will support the
+           * 1284.4 (packet mode) protocol as well.
+           */
+
+           if (altptr->bInterfaceClass != USB_CLASS_PRINTER ||
+               altptr->bInterfaceSubClass != 1 ||
+               (altptr->bInterfaceProtocol != 1 &&     /* Unidirectional */
+                altptr->bInterfaceProtocol != 2) ||    /* Bidirectional */
+               altptr->bInterfaceProtocol < protocol)
+             continue;
+
+           read_endp  = -1;
+           write_endp = -1;
+
+           for (endp = 0, endpptr = altptr->endpoint;
+                endp < altptr->bNumEndpoints;
+                endp ++, endpptr ++)
+              if ((endpptr->bmAttributes & USB_ENDPOINT_TYPE_MASK) ==
+                     USB_ENDPOINT_TYPE_BULK)
+             {
+               if (endpptr->bEndpointAddress & USB_ENDPOINT_DIR_MASK)
+                 read_endp = endp;
+               else
+                 write_endp = endp;
+             }
+
+            if (write_endp >= 0)
+           {
+            /*
+             * Save the best match so far...
+             */
+
+              protocol           = altptr->bInterfaceProtocol;
+             printer.altset     = altset;
+             printer.write_endp = write_endp;
+             printer.read_endp  = read_endp;
+           }
+         }
+
+         if (protocol > 0)
+         {
+           printer.device = device;
+           printer.conf   = conf;
+           printer.iface  = iface;
+           printer.handle = NULL;
+
+            if (!open_device(&printer, data != NULL))
+           {
+             if (!get_device_id(&printer, device_id, sizeof(device_id)))
+             {
+                make_device_uri(&printer, device_id, device_uri,
+                               sizeof(device_uri));
+
+               if ((*cb)(&printer, device_uri, device_id, data))
+                 return (&printer);
+              }
+
+              close_device(&printer);
+           }
+         }
+       }
+    }
+
+ /*
+  * If we get this far without returning, then we haven't found a printer
+  * to print to...
+  */
+
+  return (NULL);
+}
+
+
+/*
+ * 'get_device_id()' - Get the IEEE-1284 device ID for the printer.
+ */
+
+static int                             /* O - 0 on success, -1 on error */
+get_device_id(usb_printer_t *printer,  /* I - Printer */
+              char          *buffer,   /* I - String buffer */
+              size_t        bufsize)   /* I - Number of bytes in buffer */
+{
+  int  length;                         /* Length of device ID */
+
+
+  if (usb_control_msg(printer->handle,
+                      USB_TYPE_CLASS | USB_ENDPOINT_IN | USB_RECIP_INTERFACE,
+                     0, 0,
+                     (printer->iface << 8) |
+                         printer->device->config[printer->conf].
+                             interface[printer->iface].
+                             altsetting[printer->altset].bAlternateSetting,
+                     buffer, bufsize, 5000) < 0)
+  {
+    *buffer = '\0';
+    return (-1);
+  }
+
+ /*
+  * Extract the length of the device ID string from the first two
+  * bytes.  The 1284 spec says the length is stored MSB first...
+  */
+
+  length = (((unsigned)buffer[0] & 255) << 8) +
+          ((unsigned)buffer[1] & 255);
+
+ /*
+  * Check to see if the length is larger than our buffer; first
+  * assume that the vendor incorrectly implemented the 1284 spec,
+  * and then limit the length to the size of our buffer...
+  */
+
+  if (length > (bufsize - 2))
+    length = (((unsigned)buffer[1] & 255) << 8) +
+            ((unsigned)buffer[0] & 255);
+
+  if (length > (bufsize - 2))
+    length = bufsize - 2;
+
+ /*
+  * Copy the device ID text to the beginning of the buffer and
+  * nul-terminate.
+  */
+
+  memmove(buffer, buffer + 2, length);
+  buffer[length] = '\0';
+
+  return (0);
+}
+
+
+/*
+ * 'list_cb()' - List USB printers for discovery.
+ */
+
+static int                             /* O - 0 to continue, 1 to stop */
+list_cb(usb_printer_t *printer,                /* I - Printer */
+        const char    *device_uri,     /* I - Device URI */
+        const char    *device_id,      /* I - IEEE-1284 device ID */
+        const void    *data)           /* I - User data (not used) */
+{
+  char make_model[1024];               /* Make and model */
+
+
+ /*
+  * Get the device URI and make/model strings...
+  */
+
+  backendGetMakeModel(device_id, make_model, sizeof(make_model));
+
+ /*
+  * Report the printer...
+  */
+
+  printf("direct %s \"%s\" \"%s USB\" \"%s\"\n", device_uri, make_model,
+         make_model, device_id);
+  fflush(stdout);
+
+ /*
+  * Keep going...
+  */
+
+  return (0);
+}
+
+
+/*
+ * 'make_device_uri()' - Create a device URI for a USB printer.
+ */
+
+static char *                          /* O - Device URI */
+make_device_uri(
+    usb_printer_t *printer,            /* I - Printer */
+    const char    *device_id,          /* I - IEEE-1284 device ID */
+    char          *uri,                        /* I - Device URI buffer */
+    size_t        uri_size)            /* I - Size of device URI buffer */
+{
+  char         options[1024];          /* Device URI options */
+  int          num_values;             /* Number of 1284 parameters */
+  cups_option_t        *values;                /* 1284 parameters */
+  const char   *mfg,                   /* Manufacturer */
+               *mdl,                   /* Model */
+               *des,                   /* Description */
+               *sern;                  /* Serial number */
+  char         tempmfg[256],           /* Temporary manufacturer string */
+               tempsern[256],          /* Temporary serial number string */
+               *tempptr;               /* Pointer into temp string */
+
+
+ /*
+  * Get the make, model, and serial numbers...
+  */
+
+  num_values = _ppdGet1284Values(device_id, &values);
+
+  if ((sern = cupsGetOption("SERIALNUMBER", num_values, values)) == NULL)
+    if ((sern = cupsGetOption("SERN", num_values, values)) == NULL)
+      if ((sern = cupsGetOption("SN", num_values, values)) == NULL)
+      {
+       /*
+        * Try getting the serial number from the device itself...
+       */
+
+        int length = usb_get_string_simple(printer->handle,
+                                          printer->device->descriptor.
+                                              iSerialNumber,
+                                          tempsern, sizeof(tempsern) - 1);
+        if (length > 0)
+       {
+         tempsern[length] = '\0';
+         sern             = tempsern;
+       }
+      }
+
+  if ((mfg = cupsGetOption("MANUFACTURER", num_values, values)) == NULL)
+    mfg = cupsGetOption("MFG", num_values, values);
+
+  if ((mdl = cupsGetOption("MODEL", num_values, values)) == NULL)
+    mdl = cupsGetOption("MDL", num_values, values);
+
+#ifdef __APPLE__
+ /*
+  * To maintain compatibility with the original IOKit-based backend on Mac OS X,
+  * don't map manufacturer names...
+  */
+
+  if (!mfg)
+
+#else
+ /*
+  * To maintain compatibility with the original character device backend on
+  * Linux and *BSD, map manufacturer names...
+  */
+
+  if (mfg)
+  {
+    if (!strcasecmp(mfg, "Hewlett-Packard"))
+      mfg = "HP";
+    else if (!strcasecmp(mfg, "Lexmark International"))
+      mfg = "Lexmark";
+  }
+  else
+#endif /* __APPLE__ */
+  {
+   /*
+    * No manufacturer?  Use the model string or description...
+    */
+
+    if (mdl)
+      _ppdNormalizeMakeAndModel(mdl, tempmfg, sizeof(tempmfg));
+    else if ((des = cupsGetOption("DESCRIPTION", num_values, values)) != NULL ||
+             (des = cupsGetOption("DES", num_values, values)) != NULL)
+      _ppdNormalizeMakeAndModel(des, tempmfg, sizeof(tempmfg));
+    else
+      strlcpy(tempmfg, "Unknown", sizeof(tempmfg));
+
+    if ((tempptr = strchr(tempmfg, ' ')) != NULL)
+      *tempptr = '\0';
+
+    mfg = tempmfg;
+  }
+
+ /*
+  * Generate the device URI from the manufacturer, model, serial number,
+  * and interface number...
+  */
+
+  if (sern)
+  {
+    if (printer->iface > 0)
+      snprintf(options, sizeof(options), "?serial=%s&interface=%d", sern,
+               printer->iface);
+    else
+      snprintf(options, sizeof(options), "?serial=%s", sern);
+  }
+  else if (printer->iface > 0)
+    snprintf(options, sizeof(options), "?interface=%d", printer->iface);
+  else
+    options[0] = '\0';
+
+  httpAssembleURIf(HTTP_URI_CODING_ALL, uri, uri_size, "usb", NULL, mfg, 0,
+                  "/%s%s", mdl, options);
+
+  cupsFreeOptions(num_values, values);
+
+  return (uri);
+}
+
+
+/*
+ * 'open_device()' - Open a connection to the USB printer.
+ */
+
+static int                             /* O - 0 on success, -1 on error */
+open_device(usb_printer_t *printer,    /* I - Printer */
+            int           verbose)     /* I - Update connecting-to-device state? */
+{
+  int  number;                         /* Configuration/interface/altset numbers */
+
+
+ /*
+  * Return immediately if we are already connected...
+  */
+
+  if (printer->handle)
+    return (0);
+
+ /*
+  * Try opening the printer...
+  */
+
+  if ((printer->handle = usb_open(printer->device)) == NULL)
+    return (-1);
+
+ /*
+  * Then set the desired configuration...
+  */
+
+  if (verbose)
+    fputs("STATE: +connecting-to-device\n", stderr);
+
+  number = printer->device->config[printer->conf].bConfigurationValue;
+  while (usb_set_configuration(printer->handle, number) < 0)
+  {
+    if (errno != EBUSY)
+      fprintf(stderr, "DEBUG: Failed to set configuration %d for %04x:%04x\n",
+              number, printer->device->descriptor.idVendor,
+             printer->device->descriptor.idProduct);
+
+    goto error;
+  }
+
+ /*
+  * Claim interfaces as needed...
+  */
+
+  number = printer->device->config[printer->conf].interface[printer->iface].
+               altsetting[printer->altset].bInterfaceNumber;
+  while (usb_claim_interface(printer->handle, number) < 0)
+  {
+    if (errno != EBUSY)
+      fprintf(stderr, "DEBUG: Failed to claim interface %d for %04x:%04x\n",
+              number, printer->device->descriptor.idVendor,
+             printer->device->descriptor.idProduct);
+
+    goto error;
+  }
+
+  if (number != 0)
+    while (usb_claim_interface(printer->handle, 0) < 0)
+    {
+      if (errno != EBUSY)
+       fprintf(stderr, "DEBUG: Failed to claim interface 0 for %04x:%04x\n",
+               printer->device->descriptor.idVendor,
+               printer->device->descriptor.idProduct);
+
+      goto error;
+    }
+
+ /*
+  * Set alternate setting...
+  */
+
+  number = printer->device->config[printer->conf].interface[printer->iface].
+               altsetting[printer->altset].bAlternateSetting;
+  while (usb_set_altinterface(printer->handle, number) < 0)
+  {
+    if (errno != EBUSY)
+      fprintf(stderr,
+              "DEBUG: Failed to set alternate interface %d for %04x:%04x\n",
+              number, printer->device->descriptor.idVendor,
+             printer->device->descriptor.idProduct);
+
+    goto error;
+  }
+
+  if (verbose)
+    fputs("STATE: -connecting-to-device\n", stderr);
+
+  return (0);
+
+ /*
+  * If we get here, there was a hard error...
+  */
+
+  error:
+
+  if (verbose)
+    fputs("STATE: -connecting-to-device\n", stderr);
+
+  usb_close(printer->handle);
+  printer->handle = NULL;
+
+  return (-1);
+}
+
+
+/*
+ * 'print_cb()' - Find a USB printer for printing.
+ */
+
+static int                             /* O - 0 to continue, 1 to stop (found) */
+print_cb(usb_printer_t *printer,       /* I - Printer */
+         const char    *device_uri,    /* I - Device URI */
+         const char    *device_id,     /* I - IEEE-1284 device ID */
+         const void    *data)          /* I - User data (make, model, S/N) */
+{
+  return (!strcmp((char *)data, device_uri));
+}
+
+
+/*
+ * End of "$Id$".
+ */
+
index f1806106571203d7ca9d35d35889905ae2429e91..5fbed6ecd95edeaea9ec702cc21071370ed9d4ec 100644 (file)
@@ -1,11 +1,11 @@
 /*
- * "$Id: usb-unix.c 6910 2007-09-04 20:34:29Z mike $"
+ * "$Id: usb-unix.c 7687 2008-06-24 01:28:36Z mike $"
  *
  *   USB port backend for the Common UNIX Printing System (CUPS).
  *
  *   This file is included from "usb.c" when compiled on UNIX/Linux.
  *
- *   Copyright 2007 by Apple Inc.
+ *   Copyright 2007-2008 by Apple Inc.
  *   Copyright 1997-2007 by Easy Software Products, all rights reserved.
  *
  *   These coded instructions, statements, and computer programs are the
@@ -28,7 +28,6 @@
  * Include necessary headers.
  */
 
-#include "ieee1284.c"
 #include <sys/select.h>
 
 
@@ -611,5 +610,5 @@ side_cb(int         print_fd,               /* I - Print file */
 
 
 /*
- * End of "$Id: usb-unix.c 6910 2007-09-04 20:34:29Z mike $".
+ * End of "$Id: usb-unix.c 7687 2008-06-24 01:28:36Z mike $".
  */
index 396f95ac1ca0927e2a8e6d8ffded2249abf545e5..fddd21d2b7c21738610405c2fe2da52d8f913864 100644 (file)
@@ -1,9 +1,9 @@
 /*
- * "$Id: usb.c 6910 2007-09-04 20:34:29Z mike $"
+ * "$Id: usb.c 7687 2008-06-24 01:28:36Z mike $"
  *
  *   USB port backend for the Common UNIX Printing System (CUPS).
  *
- *   Copyright 2007 by Apple Inc.
+ *   Copyright 2007-2008 by Apple Inc.
  *   Copyright 1997-2007 by Easy Software Products, all rights reserved.
  *
  *   These coded instructions, statements, and computer programs are the
 #  include <ApplicationServices/ApplicationServices.h>
 #endif /* __APPLE__ */
 
-#include <cups/backend.h>
-#include <cups/cups.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <cups/string.h>
-#include <cups/i18n.h>
-#include <signal.h>
+#include "backend-private.h"
 
 #ifdef WIN32
 #  include <io.h>
@@ -62,7 +55,9 @@ int   print_device(const char *uri, const char *hostname,
  * Include the vendor-specific USB implementation...
  */
 
-#ifdef __APPLE__
+#ifdef HAVE_USB_H
+#  include "usb-libusb.c"
+#elif defined(__APPLE__)
 #  include "usb-darwin.c"
 #elif defined(__linux) || defined(__sun) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__FreeBSD_kernel__)
 #  include "usb-unix.c"
@@ -266,5 +261,5 @@ main(int  argc,                             /* I - Number of command-line arguments (6 or 7) */
 
 
 /*
- * End of "$Id: usb.c 6910 2007-09-04 20:34:29Z mike $".
+ * End of "$Id: usb.c 7687 2008-06-24 01:28:36Z mike $".
  */
index 7531c01ddf6558c6d1cd9cd809774160e206e9c7..7852f245fb82ee3706607172793ce545b92698ec 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Berkeley commands makefile for the Common UNIX Printing System (CUPS).
 #
@@ -153,5 +153,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index 9471867828aa08ac8f5066fc45279b2bb08f8f37..a18eb0e71a38a7fd094ae0e840a2b9956428ea80 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lpc.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: lpc.c 7079 2007-11-30 01:58:31Z mike $"
  *
  *   "lpc" command for the Common UNIX Printing System (CUPS).
  *
@@ -450,5 +450,5 @@ show_status(http_t     *http,               /* I - HTTP connection to server */
 
 
 /*
- * End of "$Id: lpc.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: lpc.c 7079 2007-11-30 01:58:31Z mike $".
  */
index 7ffb2a8e92f9fd4ccca6bbcf92008f11a7837f03..db089867eb69d0804abdbc091a75689e0836390f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lpq.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: lpq.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   "lpq" command for the Common UNIX Printing System (CUPS).
  *
@@ -667,5 +667,5 @@ usage(void)
 
 
 /*
- * End of "$Id: lpq.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: lpq.c 7460 2008-04-16 02:19:54Z mike $".
  */
index d00372c55106153a5817acdfe952fe755246b618..eeeca538ba93b5b1dd75e742d6f4c69d34d981e3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lprm.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: lprm.c 7261 2008-01-28 23:09:31Z mike $"
  *
  *   "lprm" command for the Common UNIX Printing System (CUPS).
  *
@@ -223,5 +223,5 @@ main(int  argc,                     /* I - Number of command-line arguments */
 
 
 /*
- * End of "$Id: lprm.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: lprm.c 7261 2008-01-28 23:09:31Z mike $".
  */
index d0c0c01555ff34818c7f7250cb9a44a88b10a0ef..53911d8450822ff7f45dfced7ecf706d701cbf34 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   CGI makefile for the Common UNIX Printing System (CUPS).
 #
@@ -398,5 +398,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index b54d27fdc86920c81b6d1dc5430e59cd7e308dca..3f94b8826973231aa86ba2a0718d18f7f7529ce3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: admin.c 7012 2007-10-10 21:22:45Z mike $"
+ * "$Id: admin.c 7438 2008-04-09 03:27:37Z mike $"
  *
  *   Administration CGI for the Common UNIX Printing System (CUPS).
  *
@@ -3449,5 +3449,5 @@ match_string(const char *a,               /* I - First string */
 
     
 /*
- * End of "$Id: admin.c 7012 2007-10-10 21:22:45Z mike $".
+ * End of "$Id: admin.c 7438 2008-04-09 03:27:37Z mike $".
  */
index 39e2d156207079959e4496494a72391a7c061c08..09a3cc64c5db010d0fe570cf0a428aa38437308c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: classes.c 6889 2007-08-29 22:23:35Z mike $"
+ * "$Id: classes.c 7301 2008-02-13 00:27:52Z mike $"
  *
  *   Class status CGI for the Common UNIX Printing System (CUPS).
  *
@@ -432,5 +432,5 @@ show_class(http_t     *http,                /* I - Connection to server */
 
 
 /*
- * End of "$Id: classes.c 6889 2007-08-29 22:23:35Z mike $".
+ * End of "$Id: classes.c 7301 2008-02-13 00:27:52Z mike $".
  */
index f1d96832fd40996846fd377b030a12ae8ff669fe..cb88aee173440ced395919282eec0e0dc5857b34 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: help-index.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: help-index.c 7615 2008-05-25 07:17:07Z mike $"
  *
  *   Online help index routines for the Common UNIX Printing System (CUPS).
  *
@@ -1327,5 +1327,5 @@ help_sort_words(help_word_t *w1,  /* I - Second word */
 
 
 /*
- * End of "$Id: help-index.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: help-index.c 7615 2008-05-25 07:17:07Z mike $".
  */
index d92abbea25c177ac4ca82478c35d8218c2d594cd..0e6b0b1c73869898b8fb956b581499a59cba1866 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: help-index.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: help-index.h 7615 2008-05-25 07:17:07Z mike $"
  *
  *   Online help index definitions for the Common UNIX Printing System (CUPS).
  *
@@ -71,5 +71,5 @@ extern help_index_t   *helpSearchIndex(help_index_t *hi, const char *query,
 #endif /* !_CUPS_HELP_INDEX_H_ */
 
 /*
- * End of "$Id: help-index.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: help-index.h 7615 2008-05-25 07:17:07Z mike $".
  */
index 79cfaf94799593add93bf4f8a632d7ead1899906..4ee9ef867c9dc65b4c13d0c088bbfc9ed5b5c80d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ipp-var.c 6889 2007-08-29 22:23:35Z mike $"
+ * "$Id: ipp-var.c 7541 2008-05-05 21:22:58Z mike $"
  *
  *   CGI <-> IPP variable routines for the Common UNIX Printing System (CUPS).
  *
@@ -1384,5 +1384,5 @@ cgiText(const char *message)              /* I - Message */
 
 
 /*
- * End of "$Id: ipp-var.c 6889 2007-08-29 22:23:35Z mike $".
+ * End of "$Id: ipp-var.c 7541 2008-05-05 21:22:58Z mike $".
  */
index 41d58a038fa6069eae3e7126305625c4fe56317d..9af1dd7447dd3f829a16ee85c6084439905cf5b1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: jobs.c 6889 2007-08-29 22:23:35Z mike $"
+ * "$Id: jobs.c 7237 2008-01-22 01:38:39Z mike $"
  *
  *   Job status CGI for the Common UNIX Printing System (CUPS).
  *
@@ -209,5 +209,5 @@ do_job_op(http_t      *http,                /* I - HTTP connection */
 
 
 /*
- * End of "$Id: jobs.c 6889 2007-08-29 22:23:35Z mike $".
+ * End of "$Id: jobs.c 7237 2008-01-22 01:38:39Z mike $".
  */
index de4d769f57f962a4aef1727b63b8c7f0c1d95e91..f90632866a04e6a2827ce873e17c6d80e6280798 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: printers.c 6889 2007-08-29 22:23:35Z mike $"
+ * "$Id: printers.c 7301 2008-02-13 00:27:52Z mike $"
  *
  *   Printer status CGI for the Common UNIX Printing System (CUPS).
  *
@@ -612,5 +612,5 @@ show_printer(http_t     *http,              /* I - Connection to server */
 
 
 /*
- * End of "$Id: printers.c 6889 2007-08-29 22:23:35Z mike $".
+ * End of "$Id: printers.c 7301 2008-02-13 00:27:52Z mike $".
  */
index 4dc725859032628fa82e9576cc34df914b7fb787..d8f023c28361823e2f5e5583f20a535d2b547fd1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: search.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: search.c 7420 2008-04-01 20:32:00Z mike $"
  *
  *   Search routines for the Common UNIX Printing System (CUPS).
  *
@@ -370,5 +370,5 @@ cgiFreeSearch(void *search)         /* I - Search context */
 
 
 /*
- * End of "$Id: search.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: search.c 7420 2008-04-01 20:32:00Z mike $".
  */
index 661f6395b9d737086ec05cb7fba43fd788e3724b..f20a7a950342ddd735cef0bd1e756dee7ba8032e 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: template.c 6986 2007-09-25 15:34:52Z mike $"
+ * "$Id: template.c 7219 2008-01-14 22:00:02Z mike $"
  *
  *   CGI template function.
  *
@@ -706,5 +706,5 @@ cgi_puturi(const char *s,           /* I - String to output */
 
 
 /*
- * End of "$Id: template.c 6986 2007-09-25 15:34:52Z mike $".
+ * End of "$Id: template.c 7219 2008-01-14 22:00:02Z mike $".
  */
index 596b24d0daa8cf58028706aac931f072d938830a..7ceb3ecaac662acaa203bb92c4614c7371edeb14 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: var.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: var.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   CGI form variable and array functions.
  *
@@ -1039,5 +1039,5 @@ cgi_unlink_file(void)
 
 
 /*
- * End of "$Id: var.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: var.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 4bb31c9ed6bed4c79e34627373b60e196312c94f..8d4ffbf2f273910eb54ccd25771ab16158608621 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7670 2008-06-17 22:42:08Z mike $"
 #
 #   Configuration file makefile for the Common UNIX Printing System (CUPS).
 #
@@ -136,5 +136,5 @@ uninstall:
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7670 2008-06-17 22:42:08Z mike $".
 #
index 8939b8a4b925c52153f7fed3a9c9f39321e1fb99..c48b70626afd0219ddcb3e5f02bf0dd848fa738f 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: cupsd.conf.in 6720 2007-07-25 00:40:03Z mike $"
+# "$Id: cupsd.conf.in 7680 2008-06-20 17:37:43Z mike $"
 #
 #   Sample configuration file for the Common UNIX Printing System (CUPS)
 #   scheduler.  See "man cupsd.conf" for a complete description of this
@@ -82,10 +82,9 @@ DefaultAuthType Basic
 <Policy authenticated>
   # Job-related operations must be done by the owner or an administrator...
   <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job CUPS-Get-Document>
+    AuthType Default
     Require user @OWNER @SYSTEM
     Order deny,allow
-    AuthType Default
-    Satisfy any
   </Limit>
 
   # All administration operations require an administrator to authenticate...
@@ -104,19 +103,17 @@ DefaultAuthType Basic
 
   # Only the owner or an administrator can cancel or authenticate a job...
   <Limit Cancel-Job CUPS-Authenticate-Job>
+    AuthType Default
     Require user @OWNER @CUPS_DEFAULT_PRINTADMIN_AUTH@
     Order deny,allow
-    AuthType Default
-    Satisfy any
   </Limit>
 
   <Limit All>
-    Order deny,allow
     AuthType Default
-    Satisfy any
+    Order deny,allow
   </Limit>
 </Policy>
 
 #
-# End of "$Id: cupsd.conf.in 6720 2007-07-25 00:40:03Z mike $".
+# End of "$Id: cupsd.conf.in 7680 2008-06-20 17:37:43Z mike $".
 #
index 1852d460cd01aca6e67b908320d170ae10c7b604..83a079a77972071c3ff509e74f127415b4a1182f 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: mime.types 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: mime.types 7670 2008-06-17 22:42:08Z mike $"
 #
 #   MIME types file for the Common UNIX Printing System (CUPS).
 #
@@ -173,5 +173,5 @@ application/vnd.cups-raw    (string(0,<1B>E) + !string(2,<1B>%0B)) \
 application/octet-stream
 
 #
-# End of "$Id: mime.types 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: mime.types 7670 2008-06-17 22:42:08Z mike $".
 #
index 6e81ea52605d3e2a77c47cf45ab2d4a13b09c17f..a88692f35ddcd4756c694271f91938c3cb116af1 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-common.m4 6964 2007-09-17 21:33:57Z mike $"
+dnl "$Id: cups-common.m4 7695 2008-06-26 00:46:24Z mike $"
 dnl
 dnl   Common configuration stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -83,14 +83,11 @@ LIBMALLOC=""
 AC_ARG_ENABLE(mallinfo, [  --enable-mallinfo       turn on malloc debug information, default=no])
 
 if test x$enable_mallinfo = xyes; then
-       AC_CHECK_LIB(c,mallinfo,LIBS="$LIBS"; AC_DEFINE(HAVE_MALLINFO),LIBS="$LIBS")
-       if test "$ac_cv_lib_c_mallinfo" = "no"; then
-               AC_CHECK_LIB(malloc,mallinfo,
-                            LIBS="$LIBS"
-                            LIBMALLOC="-lmalloc"
-                            AC_DEFINE(HAVE_MALLINFO),
-                            LIBS="$LIBS")
-       fi
+       SAVELIBS="$LIBS"
+       LIBS=""
+       AC_SEARCH_LIBS(mallinfo, malloc, AC_DEFINE(HAVE_MALLINFO))
+       LIBMALLOC="$LIBS"
+       LIBS="$SAVELIBS"
 fi
 
 AC_SUBST(LIBMALLOC)
@@ -170,6 +167,27 @@ AC_TRY_COMPILE([#include <time.h>],[struct tm t;
 dnl See if we have the removefile(3) function for securely removing files
 AC_CHECK_FUNCS(removefile)
 
+dnl See if we have libusb...
+AC_ARG_ENABLE(libusb, [  --enable-libusb         use libusb for USB printing, default=auto])
+
+LIBUSB=""
+AC_SUBST(LIBUSB)
+
+if test x$enable_libusb = xyes; then
+       check_libusb=yes
+elif test x$enable_libusb != xno -a $uname != Darwin; then
+       check_libusb=yes
+else
+       check_libusb=no
+fi
+
+if test $check_libusb = yes; then
+       AC_CHECK_LIB(usb, usb_init,[
+               AC_CHECK_HEADER(usb.h,
+                       AC_DEFINE(HAVE_USB_H)
+                       LIBUSB="-lusb")])
+fi
+
 dnl Flags for "ar" command...
 case $uname in
         Darwin* | *BSD*)
@@ -282,5 +300,5 @@ AC_SUBST(FONTS)
 AC_SUBST(LEGACY_BACKENDS)
 
 dnl
-dnl End of "$Id: cups-common.m4 6964 2007-09-17 21:33:57Z mike $".
+dnl End of "$Id: cups-common.m4 7695 2008-06-26 00:46:24Z mike $".
 dnl
index 51a5daa6f8c71b85f3600944c554c76eee82ebbb..8598aebb97a7a5351a38b2ee401eafcb7fdc0a7b 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-compiler.m4 6975 2007-09-18 20:37:09Z mike $"
+dnl "$Id: cups-compiler.m4 7644 2008-06-16 17:15:47Z mike $"
 dnl
 dnl   Compiler stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -543,5 +543,5 @@ case $uname in
 esac
 
 dnl
-dnl End of "$Id: cups-compiler.m4 6975 2007-09-18 20:37:09Z mike $".
+dnl End of "$Id: cups-compiler.m4 7644 2008-06-16 17:15:47Z mike $".
 dnl
index f2cff3c2eca7ac1f961b8fd1cae6e8eac165c45a..80287e8069ff4c4f865fc3b2c840a1bbc93b88e6 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-defaults.m4 6754 2007-08-01 19:00:07Z mike $"
+dnl "$Id: cups-defaults.m4 7649 2008-06-16 17:46:57Z mike $"
 dnl
 dnl   Default cupsd configuration settings for the Common UNIX Printing System
 dnl   (CUPS).
@@ -395,5 +395,5 @@ AC_SUBST(DEFAULT_IPP_PORT)
 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT)
 
 dnl
-dnl End of "$Id: cups-defaults.m4 6754 2007-08-01 19:00:07Z mike $".
+dnl End of "$Id: cups-defaults.m4 7649 2008-06-16 17:46:57Z mike $".
 dnl
index 6ef18a702467694c2be3f356e22e3ed027383b9c..79997d71f8bc237b540108d46e50430e629b81f9 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id$"
+dnl "$Id: cups-dnssd.m4 7585 2008-05-16 23:13:47Z mike $"
 dnl
 dnl   DNS Service Discovery (aka Bonjour) stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -52,5 +52,5 @@ AC_SUBST(DNSSDLIBS)
 AC_SUBST(MDNS)
 
 dnl
-dnl End of "$Id$".
+dnl End of "$Id: cups-dnssd.m4 7585 2008-05-16 23:13:47Z mike $".
 dnl
index 14fd549d813a2b9184638a6e87ec34d1619b21c8..3f5adec2351ed19e94fa32090a398d5b15d1abfb 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-ldap.m4 6649 2007-07-11 21:46:42Z mike $"
+dnl "$Id: cups-ldap.m4 7241 2008-01-22 22:34:52Z mike $"
 dnl
 dnl   LDAP configuration stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -36,5 +36,5 @@ AC_SUBST(LIBLDAP)
 
 
 dnl
-dnl End of "$Id: cups-ldap.m4 6649 2007-07-11 21:46:42Z mike $".
+dnl End of "$Id: cups-ldap.m4 7241 2008-01-22 22:34:52Z mike $".
 dnl
index 347dc9a5200d263dbbd371093bbae64eb9fc1452..f363185759c47e6f8061ca3a424f0b049da03d92 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-network.m4 6649 2007-07-11 21:46:42Z mike $"
+dnl "$Id: cups-network.m4 7127 2007-12-17 18:05:32Z mike $"
 dnl
 dnl   Networking stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -66,5 +66,5 @@ AC_CHECK_HEADERS(AppleTalk/at_proto.h,AC_DEFINE(HAVE_APPLETALK_AT_PROTO_H),,
        [#include <netat/appletalk.h>])
 
 dnl
-dnl End of "$Id: cups-network.m4 6649 2007-07-11 21:46:42Z mike $".
+dnl End of "$Id: cups-network.m4 7127 2007-12-17 18:05:32Z mike $".
 dnl
index b100053e88b8ce2547cdd0872849914b5f14e663..9b49e7ad6e53da676d8a2920d45c22c148bd0b28 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-pam.m4 6649 2007-07-11 21:46:42Z mike $"
+dnl "$Id: cups-pam.m4 7149 2007-12-19 19:38:37Z mike $"
 dnl
 dnl   PAM stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -86,5 +86,5 @@ AC_SUBST(PAMLIBS)
 AC_SUBST(PAMMOD)
 
 dnl
-dnl End of "$Id: cups-pam.m4 6649 2007-07-11 21:46:42Z mike $".
+dnl End of "$Id: cups-pam.m4 7149 2007-12-19 19:38:37Z mike $".
 dnl
index e980f1de54d0c150c8d1d6c2443e8a4f4575fff1..eaa004f59bb66687f3d6f9d14d12aca6128715f8 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-pdf.m4 6649 2007-07-11 21:46:42Z mike $"
+dnl "$Id: cups-pdf.m4 7449 2008-04-14 18:27:53Z mike $"
 dnl
 dnl   PDF filter configuration stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -47,5 +47,5 @@ fi
 AC_SUBST(PDFTOPS)
 
 dnl
-dnl End of "$Id: cups-pdf.m4 6649 2007-07-11 21:46:42Z mike $".
+dnl End of "$Id: cups-pdf.m4 7449 2008-04-14 18:27:53Z mike $".
 dnl
index f3962ab85fde67a3d24c6b7d0a0add15e3ce8c99..e4ca18dc085e6d930b0c8f7ebda86125217b1174 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-sharedlibs.m4 6649 2007-07-11 21:46:42Z mike $"
+dnl "$Id: cups-sharedlibs.m4 7630 2008-06-09 22:31:44Z mike $"
 dnl
 dnl   Shared library support for the Common UNIX Printing System (CUPS).
 dnl
@@ -244,5 +244,5 @@ AC_SUBST(IMGLIBS)
 AC_SUBST(EXPORT_LDFLAGS)
 
 dnl
-dnl End of "$Id: cups-sharedlibs.m4 6649 2007-07-11 21:46:42Z mike $".
+dnl End of "$Id: cups-sharedlibs.m4 7630 2008-06-09 22:31:44Z mike $".
 dnl
index cbeb4852796e272161bfe6cd47ac69a0c55ed7cd..89f87468cc00c623e46c2c5790b4d4fbed385560 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-slp.m4 6649 2007-07-11 21:46:42Z mike $"
+dnl "$Id: cups-slp.m4 7241 2008-01-22 22:34:52Z mike $"
 dnl
 dnl   OpenSLP configuration stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -34,5 +34,5 @@ AC_SUBST(LIBSLP)
 
 
 dnl
-dnl End of "$Id: cups-slp.m4 6649 2007-07-11 21:46:42Z mike $".
+dnl End of "$Id: cups-slp.m4 7241 2008-01-22 22:34:52Z mike $".
 dnl
index cacf94bef80eebfcf46619e41644eb29ddbf6827..f5335562c6919941c473d27eed1ddae962f07fb0 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: cups-ssl.m4 6649 2007-07-11 21:46:42Z mike $"
+dnl "$Id: cups-ssl.m4 7241 2008-01-22 22:34:52Z mike $"
 dnl
 dnl   OpenSSL/GNUTLS stuff for the Common UNIX Printing System (CUPS).
 dnl
@@ -123,5 +123,5 @@ AC_SUBST(EXPORT_SSLLIBS)
 
 
 dnl
-dnl End of "$Id: cups-ssl.m4 6649 2007-07-11 21:46:42Z mike $".
+dnl End of "$Id: cups-ssl.m4 7241 2008-01-22 22:34:52Z mike $".
 dnl
index 5e0c08af1f8bd425c0bd4cd6ac63742112a487da..7c54621fcd1bed3e2f08b4440859f0be0cdbc013 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: config.h.in 6930 2007-09-08 00:28:06Z mike $"
+ * "$Id: config.h.in 7687 2008-06-24 01:28:36Z mike $"
  *
  *   Configuration file for the Common UNIX Printing System (CUPS).
  *
 #undef HAVE_LRAND48
 
 
+/*
+ * Do we have libusb?
+ */
+
+#undef HAVE_USB_H
+
+
 #endif /* !_CUPS_CONFIG_H_ */
 
 /*
- * End of "$Id: config.h.in 6930 2007-09-08 00:28:06Z mike $".
+ * End of "$Id: config.h.in 7687 2008-06-24 01:28:36Z mike $".
  */
index 769c53cb989e6ae4b38516f2ce24f8e974b60f3c..0425660be99c53886d129ffb7973c4e225b05fc4 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl "$Id: configure.in 6717 2007-07-24 23:47:12Z mike $"
+dnl "$Id: configure.in 7600 2008-05-20 21:06:23Z mike $"
 dnl
 dnl   Configuration script for the Common UNIX Printing System (CUPS).
 dnl
@@ -75,5 +75,5 @@ AC_OUTPUT(Makedefs packaging/cups.list init/cups.sh init/cups-lpd cups-config
 chmod +x cups-config
 
 dnl
-dnl End of "$Id: configure.in 6717 2007-07-24 23:47:12Z mike $".
+dnl End of "$Id: configure.in 7600 2008-05-20 21:06:23Z mike $".
 dnl
index 7f53c60ba80c0d8cec745e060254b1ab193642b6..1a68a12c7086fddbbfebeb4de417950fae86e855 100755 (executable)
@@ -1,6 +1,6 @@
 #! /bin/sh
 #
-# "$Id: cups-config.in 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: cups-config.in 7394 2008-03-21 23:41:43Z mike $"
 # 
 #   CUPS configuration utility.
 #
@@ -151,5 +151,5 @@ while test $# -gt 0; do
 done
 
 #
-# End of "$Id: cups-config.in 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: cups-config.in 7394 2008-03-21 23:41:43Z mike $".
 #
index 3bf135002d007c877c98c10b0fe638d7174fbdf9..6d4a684813d42f14ec1a08122756308900b7d3a0 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7589 2008-05-19 00:13:23Z mike $"
 #
 #   API library Makefile for the Common UNIX Printing System (CUPS).
 #
@@ -600,5 +600,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7589 2008-05-19 00:13:23Z mike $".
 #
index e3adf54b448ecd5350f4bc5647b0394c728b8e71..95393afd060b98a1682c962ba4e4cb14b6f7c42d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: adminutil.c 6930 2007-09-08 00:28:06Z mike $"
+ * "$Id: adminutil.c 7576 2008-05-15 21:05:14Z mike $"
  *
  *   Administration utility API definitions for the Common UNIX Printing
  *   System (CUPS).
@@ -2382,5 +2382,5 @@ write_option(cups_file_t     *dstfp,      /* I - PPD file */
 
 
 /*
- * End of "$Id: adminutil.c 6930 2007-09-08 00:28:06Z mike $".
+ * End of "$Id: adminutil.c 7576 2008-05-15 21:05:14Z mike $".
  */
index 8613a3be4a2fa5e0bb8f9772a111859dab5ebe02..145dfa0f739b386060f504bf57d170e89e49a9dd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: adminutil.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: adminutil.h 7026 2007-10-19 00:57:45Z mike $"
  *
  *   Administration utility API definitions for the Common UNIX Printing
  *   System (CUPS).
@@ -77,5 +77,5 @@ extern int    cupsAdminSetServerSettings(http_t *http,
 #endif /* !_CUPS_ADMINUTIL_H_ */
 
 /*
- * End of "$Id: adminutil.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: adminutil.h 7026 2007-10-19 00:57:45Z mike $".
  */
index 34b796f4cbd9711bec4f8994bea146aee22f233d..c4d28b46470383ccc137b6e7bc381abecac7d525 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id$"
+  "$Id: api-array.header 7266 2008-01-29 02:15:29Z mike $"
 
   Array API header for the Common UNIX Printing System (CUPS).
 
index ae2787fec3c7635909ff84a6b92eef71f9cf2c9f..bacf48307c44d7d4c6944b0a6705867bf783d312 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id: api-array.shtml 6649 2007-07-11 21:46:42Z mike $"
+  "$Id: api-array.shtml 7616 2008-05-28 00:34:13Z mike $"
 
   Array API introduction for the Common UNIX Printing System (CUPS).
 
index a706b55af7ca99c97cb92642b1d9f3daf9a71c66..c95b611fd0b7d0bed0a8e05cdebe289991e323a1 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id$"
+  "$Id: api-cups.header 7279 2008-01-31 01:50:44Z mike $"
 
   CUPS API header for the Common UNIX Printing System (CUPS).
 
index bc9a05286e5064cf233bb98584d7190935516711..7a653d4a8c5b4c36d1a3ef60cf4c57ddaa8ba0ad 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id: api-cups.shtml 6649 2007-07-11 21:46:42Z mike $"
+  "$Id: api-cups.shtml 7337 2008-02-22 04:44:04Z mike $"
 
   CUPS API introduction for the Common UNIX Printing System (CUPS).
 
index 7553115110b23430aae1f7fbadd1f86d29394bfb..e4c7994f5f6cf30048a7a1b9f5c7d3ffc9761c24 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id$"
+  "$Id: api-filedir.header 7279 2008-01-31 01:50:44Z mike $"
 
   File and Directory API header for the Common UNIX Printing System (CUPS).
 
index 2b19efa8a8265b831efc93235c90034c098c5a97..843812ce5ef4760fffcd3a65a5a1f4dad3222a58 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id: api-filedir.shtml 6649 2007-07-11 21:46:42Z mike $"
+  "$Id: api-filedir.shtml 7279 2008-01-31 01:50:44Z mike $"
 
   File and directory API introduction for the Common UNIX Printing System (CUPS).
 
index 368364ae85deaba9242b66ec8581b4207f23f330..bfe1a73aab911691b6e022ab7374cd34d6180931 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id$"
+  "$Id: api-filter.header 7616 2008-05-28 00:34:13Z mike $"
 
   Filter and backend programming header for the Common UNIX Printing System
   (CUPS).
index 2be3b2bf6529466c1f30dd89a677e3468a9e03f2..90d86342de704f5ff570af15b979bbfca1a50f8e 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id: api-filter.shtml 6649 2007-07-11 21:46:42Z mike $"
+  "$Id: api-filter.shtml 7677 2008-06-19 23:22:19Z mike $"
 
   Filter and backend programming introduction for the Common UNIX Printing
   System (CUPS).
@@ -185,10 +185,11 @@ prefix strings:</p>
        <dt>ATTR: attribute=value [attribute=value]</dt>
        <dd>Sets the named printer or job attribute(s). Typically this is used
        to set the <code>marker-colors</code>, <code>marker-levels</code>,
-       <code>marker-names</code>, <code>marker-types</code>,
-       <code>printer-alert</code>, and <code>printer-alert-description</code>
-       printer attributes. Standard <code>marker-types</code> values are
-       listed in <a href='#TABLE1'>Table 1</a>.</dd>
+       <code>marker-message</code>, <code>marker-names</code>,
+       <code>marker-types</code>, <code>printer-alert</code>, and
+       <code>printer-alert-description</code> printer attributes. Standard
+       <code>marker-types</code> values are listed in <a href='#TABLE1'>Table
+       1</a>.</dd>
 
        <dt>CRIT: message</dt>
        <dd>Sets the printer-state-message attribute and adds the specified
index 03d5a8defc4d1d8ac5d82cf70c59672edaabba5f..4bb1b3d5793f3c217ac65caff28c00003ad68dda 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id$"
+  "$Id: api-httpipp.header 7258 2008-01-28 00:15:05Z mike $"
 
   HTTP and IPP API header for the Common UNIX Printing System (CUPS).
 
index b755b7dedbae0db7787b193c5872c684b58237aa..ed559efafb5ff2230d3641aceb75612f09d255f5 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id: api-httpipp.shtml 6649 2007-07-11 21:46:42Z mike $"
+  "$Id: api-httpipp.shtml 7684 2008-06-23 16:47:38Z mike $"
 
   HTTP and IPP API introduction for the Common UNIX Printing System (CUPS).
 
@@ -293,7 +293,7 @@ tempfd = cupsTempFd(tempfile, sizeof(tempfile));
 /* Loop for authentication */
 do
 {
-  status = a href='#cupsSendRequest'>cupsSendRequest</a>(CUPS_HTTP_DEFAULT, request, "/");
+  status = <a href='#cupsSendRequest'>cupsSendRequest</a>(CUPS_HTTP_DEFAULT, request, "/");
 
   if (status == HTTP_UNAUTHORIZED)
   {
index 60f6ff0d23a483931b274629ae07348ae7436f76..8ec2f7593dd576f707c8a7940c11fb936cee76cc 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id$"
+  "$Id: api-ppd.header 7616 2008-05-28 00:34:13Z mike $"
 
   PPD API header for the Common UNIX Printing System (CUPS).
 
index c411c68443dcb84d65df395d70d2634becf071b8..ad393e106f2998e73aba1444a99d1b6d37b9e90b 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-  "$Id: api-ppd.shtml 6649 2007-07-11 21:46:42Z mike $"
+  "$Id: api-ppd.shtml 7616 2008-05-28 00:34:13Z mike $"
 
   PPD API introduction for the Common UNIX Printing System (CUPS).
 
index 19f97819de79442b643e22bbae68fdfc8862b9a6..ae45eeba09a5739a9444b90eef396a44b90ad835 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: array.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: array.c 7616 2008-05-28 00:34:13Z mike $"
  *
  *   Sorted array routines for the Common UNIX Printing System (CUPS).
  *
@@ -1142,5 +1142,5 @@ cups_array_find(cups_array_t *a,  /* I - Array */
 
 
 /*
- * End of "$Id: array.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: array.c 7616 2008-05-28 00:34:13Z mike $".
  */
index ae5752195b882d0a34ba267d6c2946ae012b51dd..029e2e996050ce2e66648f796e7d40429d35156f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: array.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: array.h 7266 2008-01-29 02:15:29Z mike $"
  *
  *   Sorted array definitions for the Common UNIX Printing System (CUPS).
  *
@@ -80,5 +80,5 @@ extern void           *cupsArrayUserData(cups_array_t *a) _CUPS_API_1_2;
 #endif /* !_CUPS_ARRAY_H_ */
 
 /*
- * End of "$Id: array.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: array.h 7266 2008-01-29 02:15:29Z mike $".
  */
index d3d38b47ed5a64d8cfaba5e82ad34f399b243138..561756215ed765907d0f1dcd78ea05fdba732888 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: auth.c 6779 2007-08-08 19:49:48Z mike $"
+ * "$Id: auth.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   Authentication functions for the Common UNIX Printing System (CUPS).
  *
@@ -683,5 +683,5 @@ cups_local_auth(http_t *http)               /* I - HTTP connection to server */
 
 
 /*
- * End of "$Id: auth.c 6779 2007-08-08 19:49:48Z mike $".
+ * End of "$Id: auth.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 4eb1947ed8825690292e2cc5bb9ab7c736487b6f..c2b53bb493b876df4f41e7cb94fe21c813749b6b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: backchannel.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: backchannel.c 7616 2008-05-28 00:34:13Z mike $"
  *
  *   Backchannel functions for the Common UNIX Printing System (CUPS).
  *
@@ -195,5 +195,5 @@ cups_setup(fd_set         *set,             /* I - Set for select() */
 
 
 /*
- * End of "$Id: backchannel.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: backchannel.c 7616 2008-05-28 00:34:13Z mike $".
  */
index db17bda709aab0b0866e29b144543f4fcf482c0c..477d38ecd54c76b109e69958f660b5d3bcd495c4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: backend.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: backend.c 7583 2008-05-16 17:47:16Z mike $"
  *
  *   Backend functions for the Common UNIX Printing System (CUPS).
  *
@@ -58,5 +58,5 @@ cupsBackendDeviceURI(char **argv)     /* I - Command-line arguments */
 
 
 /*
- * End of "$Id: backend.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: backend.c 7583 2008-05-16 17:47:16Z mike $".
  */
index 67d5e811585487dc37eb04bbd7f081d225e4c888..77bf5756973495f79b2aa46e4ea02ac119b0be9b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: backend.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: backend.h 7282 2008-01-31 08:37:11Z mike $"
  *
  *   Backend definitions for the Common UNIX Printing System (CUPS).
  *
@@ -53,5 +53,5 @@ extern const char     *cupsBackendDeviceURI(char **argv) _CUPS_API_1_2;
 #endif /* !_CUPS_BACKEND_H_ */
 
 /*
- * End of "$Id: backend.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: backend.h 7282 2008-01-31 08:37:11Z mike $".
  */
index 6ef70f6474595078b51fd24d22b00c95a5514045..e80b1665a441148c9dd15076315233db95c2c3b4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cups.h 6870 2007-08-27 21:13:35Z mike $"
+ * "$Id: cups.h 7616 2008-05-28 00:34:13Z mike $"
  *
  *   API definitions for the Common UNIX Printing System (CUPS).
  *
@@ -308,5 +308,5 @@ extern http_status_t        cupsWriteRequestData(http_t *http, const char *buffer,
 #endif /* !_CUPS_CUPS_H_ */
 
 /*
- * End of "$Id: cups.h 6870 2007-08-27 21:13:35Z mike $".
+ * End of "$Id: cups.h 7616 2008-05-28 00:34:13Z mike $".
  */
index 756c4773d5b39437e8a6bf9c77fb08726f098953..8b91d936672b2026fdecfc08bc7ed10fa51c1f0d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: debug.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: debug.h 7460 2008-04-16 02:19:54Z mike $"
  *
  *   Debugging macros for the Common UNIX Printing System (CUPS).
  *
@@ -53,5 +53,5 @@ extern void   _cups_debug_puts(const char *s);
 #endif /* !_CUPS_DEBUG_H_ */
 
 /*
- * End of "$Id: debug.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: debug.h 7460 2008-04-16 02:19:54Z mike $".
  */
index a4c8264132ea7f01f083ed08d6f08fac225f54fc..185bd1a50857f7bdadffc5b1ec57d7c7a89c5d81 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: dest.c 6943 2007-09-10 23:00:33Z mike $"
+ * "$Id: dest.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   User-defined destination (and option) support for the Common UNIX
  *   Printing System (CUPS).
@@ -1831,5 +1831,5 @@ cups_get_sdests(http_t      *http,        /* I - Connection to server or CUPS_HTTP_DEFA
 
 
 /*
- * End of "$Id: dest.c 6943 2007-09-10 23:00:33Z mike $".
+ * End of "$Id: dest.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 1ef2046b71bab940f2cf527684737388bc7515d3..b55cfc8c61832fa1714d384ba7e30d48eaf6b6b3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id$"
+ * "$Id: dir.c 7279 2008-01-31 01:50:44Z mike $"
  *
  *   Public directory routines for the Common UNIX Printing System (CUPS).
  *
@@ -469,5 +469,5 @@ cupsDirRewind(cups_dir_t *dp)               /* I - Directory pointer */
 #endif /* WIN32 */
 
 /*
- * End of "$Id$".
+ * End of "$Id: dir.c 7279 2008-01-31 01:50:44Z mike $".
  */
index 5a4f8d6d00bac8c37b93025df7b9bf0748dc101f..85dd8076ac468dbd001eac45b19256b60dcf0914 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id$"
+ * "$Id: dir.h 7026 2007-10-19 00:57:45Z mike $"
  *
  *   Public directory definitions for the Common UNIX Printing System (CUPS).
  *
@@ -65,5 +65,5 @@ extern void           cupsDirRewind(cups_dir_t *dp) _CUPS_API_1_2;
 #endif /* !_CUPS_DIR_H_ */
 
 /*
- * End of "$Id$".
+ * End of "$Id: dir.h 7026 2007-10-19 00:57:45Z mike $".
  */
index 636f3e7fbb2ba021b8057b920ec3c77bf55008b8..3e78be539eabe344155a6c01ae4a6e028d4e494d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: emit.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: emit.c 7493 2008-04-24 00:10:34Z mike $"
  *
  *   PPD code emission routines for the Common UNIX Printing System (CUPS).
  *
@@ -1010,5 +1010,5 @@ ppd_handle_media(ppd_file_t *ppd)
 
 
 /*
- * End of "$Id: emit.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: emit.c 7493 2008-04-24 00:10:34Z mike $".
  */
index 335623eae88cf7145ea4c9738033254fcebb6d1b..f486d7d07902aa60fc2dd7f8140dcd15eb3f3770 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: encode.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: encode.c 7696 2008-06-26 00:54:42Z mike $"
  *
  *   Option encoding routines for the Common UNIX Printing System (CUPS).
  *
@@ -64,6 +64,7 @@ static const _ipp_option_t ipp_options[] =
   { 0, "gamma-default",                IPP_TAG_INTEGER,        IPP_TAG_PRINTER },
   { 0, "hue",                  IPP_TAG_INTEGER,        IPP_TAG_JOB },
   { 0, "hue-default",          IPP_TAG_INTEGER,        IPP_TAG_PRINTER },
+  { 0, "job-impressions",      IPP_TAG_INTEGER,        IPP_TAG_JOB },
   { 0, "job-k-limit",          IPP_TAG_INTEGER,        IPP_TAG_JOB },
   { 0, "job-page-limit",       IPP_TAG_INTEGER,        IPP_TAG_JOB },
   { 0, "job-priority",         IPP_TAG_INTEGER,        IPP_TAG_JOB },
@@ -588,5 +589,5 @@ compare_ipp_options(_ipp_option_t *a,       /* I - First option */
 
 
 /*
- * End of "$Id: encode.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: encode.c 7696 2008-06-26 00:54:42Z mike $".
  */
index d3726cf53448e4513f1e5dbff484dffb61537c63..815e1d3c5f005dc79264a950b064e4979066d5ef 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: file.c 6962 2007-09-17 20:35:47Z mike $"
+ * "$Id: file.c 7672 2008-06-18 22:03:02Z mike $"
  *
  *   File functions for the Common UNIX Printing System (CUPS).
  *
@@ -119,6 +119,9 @@ struct _cups_file_s                 /**** CUPS file structure... ****/
   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 */
 };
 
 
@@ -242,6 +245,9 @@ cupsFileClose(cups_file_t *fp)              /* I - CUPS file */
   mode     = fp->mode;
   is_stdio = fp->is_stdio;
 
+  if (fp->printf_buffer)
+    free(fp->printf_buffer);
+
   free(fp);
 
  /*
@@ -1111,7 +1117,6 @@ cupsFilePrintf(cups_file_t *fp,           /* I - CUPS file */
 {
   va_list      ap;                     /* Argument list */
   ssize_t      bytes;                  /* Formatted size */
-  char         buf[8192];              /* Formatted text */
 
 
   DEBUG_printf(("cupsFilePrintf(fp=%p, format=\"%s\", ...)\n", fp, format));
@@ -1119,16 +1124,48 @@ cupsFilePrintf(cups_file_t *fp,         /* I - CUPS file */
   if (!fp || !format || (fp->mode != 'w' && fp->mode != 's'))
     return (-1);
 
+  if (!fp->printf_buffer)
+  {
+   /*
+    * Start with an 1k printf buffer...
+    */
+
+    if ((fp->printf_buffer = malloc(1024)) == NULL)
+      return (-1);
+
+    fp->printf_size = 1024;
+  }
+
   va_start(ap, format);
-  bytes = vsnprintf(buf, sizeof(buf), format, ap);
+  bytes = vsnprintf(fp->printf_buffer, fp->printf_size, format, ap);
   va_end(ap);
 
-  if (bytes >= sizeof(buf))
-    return (-1);
+  if (bytes >= fp->printf_size)
+  {
+   /*
+    * Expand the printf buffer...
+    */
+
+    char       *temp;                  /* Temporary buffer pointer */
+
+
+    if (bytes > 65535)
+      return (-1);
+
+    if ((temp = realloc(fp->printf_buffer, bytes + 1)) == NULL)
+      return (-1);
+
+    fp->printf_buffer = temp;
+    fp->printf_size   = bytes + 1;
+
+    va_start(ap, format);
+    bytes = vsnprintf(fp->printf_buffer, fp->printf_size, format, ap);
+    va_end(ap);
+  }
 
   if (fp->mode == 's')
   {
-    if (cups_write(fp, buf, bytes) < 0)
+    if (cups_write(fp, fp->printf_buffer, bytes) < 0)
       return (-1);
 
     fp->pos += bytes;
@@ -1150,14 +1187,14 @@ cupsFilePrintf(cups_file_t *fp,         /* I - CUPS file */
   {
 #ifdef HAVE_LIBZ
     if (fp->compressed)
-      return (cups_compress(fp, buf, bytes));
+      return (cups_compress(fp, fp->printf_buffer, bytes));
     else
 #endif /* HAVE_LIBZ */
-      return (cups_write(fp, buf, bytes));
+      return (cups_write(fp, fp->printf_buffer, bytes));
   }
   else
   {
-    memcpy(fp->ptr, buf, bytes);
+    memcpy(fp->ptr, fp->printf_buffer, bytes);
     fp->ptr += bytes;
     return (bytes);
   }
@@ -2294,5 +2331,5 @@ cups_write(cups_file_t *fp,               /* I - CUPS file */
 
 
 /*
- * End of "$Id: file.c 6962 2007-09-17 20:35:47Z mike $".
+ * End of "$Id: file.c 7672 2008-06-18 22:03:02Z mike $".
  */
index 05a32cc71ffd975f7113db4f0592881e24d70ad7..53356d68a02d87dfff7f67e5d1ae36e90b401ea5 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: file.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: file.h 7460 2008-04-16 02:19:54Z mike $"
  *
  *   Public file definitions for the Common UNIX Printing System (CUPS).
  *
@@ -105,5 +105,5 @@ extern ssize_t              cupsFileWrite(cups_file_t *fp, const char *buf, size_t bytes) _C
 #endif /* !_CUPS_FILE_H_ */
 
 /*
- * End of "$Id: file.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: file.h 7460 2008-04-16 02:19:54Z mike $".
  */
index 6af7b56b141572fd825c5fed9d5450853fa984ff..31dde6ca7eb6b37ea36f8d8571aa586a6e009763 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: getputfile.c 6720 2007-07-25 00:40:03Z mike $"
+ * "$Id: getputfile.c 7359 2008-02-29 19:01:35Z mike $"
  *
  *   Get/put file functions for the Common UNIX Printing System (CUPS).
  *
@@ -494,5 +494,5 @@ cupsPutFile(http_t     *http,               /* I - Connection to server or @code CUPS_HTTP_DE
 
 
 /*
- * End of "$Id: getputfile.c 6720 2007-07-25 00:40:03Z mike $".
+ * End of "$Id: getputfile.c 7359 2008-02-29 19:01:35Z mike $".
  */
index 6849f424cfe4f1140db0dfb2b8804d0a72c48f08..d104f1b50467b947c7c4e1d737da3451fd479ed4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: globals.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: globals.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   Global variable access routines for the Common UNIX Printing System (CUPS).
  *
@@ -205,5 +205,5 @@ _cupsGlobals(void)
 
 
 /*
- * End of "$Id: globals.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: globals.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 2110dbcd26376ab6fef8adbf944ae38c4875e357..1629ec35e612ba5b0d2563bd824a6c9c26d76147 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: globals.h 6712 2007-07-24 00:13:05Z mike $"
+ * "$Id: globals.h 7583 2008-05-16 17:47:16Z mike $"
  *
  *   Global variable definitions for the Common UNIX Printing System (CUPS).
  *
@@ -156,5 +156,5 @@ extern void         _cupsSetHTTPError(http_status_t status);
 #endif /* !_CUPS_GLOBALS_H_ */
 
 /*
- * End of "$Id: globals.h 6712 2007-07-24 00:13:05Z mike $".
+ * End of "$Id: globals.h 7583 2008-05-16 17:47:16Z mike $".
  */
index 6d645053cae98af13c81b45b451818277a423e75..effe2e6a80ea11e54546f6a4e98a605d34de84e1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: http-addrlist.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: http-addrlist.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   HTTP address list routines for the Common UNIX Printing System (CUPS).
  *
@@ -599,5 +599,5 @@ httpAddrGetList(const char *hostname,       /* I - Hostname, IP address, or NULL for p
 
 
 /*
- * End of "$Id: http-addrlist.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: http-addrlist.c 7460 2008-04-16 02:19:54Z mike $".
  */
index c933f45cf9ca00450d4c1e73801213568cd68f53..415f25a9eb6a7ac9819303514a24c669656416e6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: http-private.h 6933 2007-09-10 16:45:59Z mike $"
+ * "$Id: http-private.h 7583 2008-05-16 17:47:16Z mike $"
  *
  *   Private HTTP definitions for the Common UNIX Printing System (CUPS).
  *
@@ -268,5 +268,5 @@ extern const char   *_httpResolveURI(const char *uri, char *resolved_uri,
 #endif /* !_CUPS_HTTP_PRIVATE_H_ */
 
 /*
- * End of "$Id: http-private.h 6933 2007-09-10 16:45:59Z mike $".
+ * End of "$Id: http-private.h 7583 2008-05-16 17:47:16Z mike $".
  */
index b70139108ed14803f539f5f06f971f97d1cc45c6..8baf29119589d30b158b4c7f47c5df397b662fcb 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: http.c 6724 2007-07-25 20:39:33Z mike $"
+ * "$Id: http.c 7661 2008-06-16 21:46:51Z mike $"
  *
  *   HTTP routines for the Common UNIX Printing System (CUPS).
  *
@@ -3239,5 +3239,5 @@ http_write_ssl(http_t     *http,  /* I - Connection to server */
 
 
 /*
- * End of "$Id: http.c 6724 2007-07-25 20:39:33Z mike $".
+ * End of "$Id: http.c 7661 2008-06-16 21:46:51Z mike $".
  */
index 552bab98afcff7cf42c6099a877829ceee28dfec..169a1575c82483560154c1e3005d0acc74c014fa 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: http.h 6722 2007-07-25 17:19:09Z mike $"
+ * "$Id: http.h 7026 2007-10-19 00:57:45Z mike $"
  *
  *   Hyper-Text Transport Protocol definitions for the Common UNIX Printing
  *   System (CUPS).
@@ -447,5 +447,5 @@ extern void         httpSetAuthString(http_t *http, const char *scheme,
 #endif /* !_CUPS_HTTP_H_ */
 
 /*
- * End of "$Id: http.h 6722 2007-07-25 17:19:09Z mike $".
+ * End of "$Id: http.h 7026 2007-10-19 00:57:45Z mike $".
  */
index 71eb9f64d92b84a014bb1029183a3ab9c51ee00a..2329de8eeb6181f11ac337cfe1791f30f66bc9d6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: i18n.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: i18n.h 7363 2008-03-03 22:19:24Z mike $"
  *
  *   (Private) localization support for the Common UNIX Printing System (CUPS).
  *
@@ -111,5 +111,5 @@ extern void         _cupsSetLocale(char *argv[]);
 #endif /* !_CUPS_I18N_H_ */
 
 /*
- * End of "$Id: i18n.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: i18n.h 7363 2008-03-03 22:19:24Z mike $".
  */
index 0083d2a384f9e710cea8c6a52062956113237d4d..2d1fd955f9a58ff3d87b84aababa6440ea4458e6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ipp-private.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: ipp-private.h 7259 2008-01-28 22:26:04Z mike $"
  *
  *   Private IPP definitions for the Common UNIX Printing System (CUPS).
  *
@@ -66,5 +66,5 @@ extern void           _ippFreeAttr(ipp_attribute_t *);
 #endif /* !_CUPS_IPP_H_ */
 
 /*
- * End of "$Id: ipp-private.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: ipp-private.h 7259 2008-01-28 22:26:04Z mike $".
  */
index 945dc4f6381c96fc576803eeea35f5bc16eb7f06..47194d133272d97eb0cb84aae73998a5f6670a94 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ipp-support.c 6879 2007-08-29 20:26:50Z mike $"
+ * "$Id: ipp-support.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   Internet Printing Protocol support functions for the Common UNIX
  *   Printing System (CUPS).
@@ -371,5 +371,5 @@ ippSetPort(int p)                   /* I - Port number to use */
 
 
 /*
- * End of "$Id: ipp-support.c 6879 2007-08-29 20:26:50Z mike $".
+ * End of "$Id: ipp-support.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 0749ec2a1b13a6a32ad0bfc8b558d41029547b89..d528b6a540e79cadf87c7399d9706b2c14d926f2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ipp.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: ipp.c 7463 2008-04-17 00:24:25Z mike $"
  *
  *   Internet Printing Protocol support functions for the Common UNIX
  *   Printing System (CUPS).
@@ -2908,5 +2908,5 @@ _ipp_free_attr(ipp_attribute_t *attr)     /* I - Attribute to free */
 
 
 /*
- * End of "$Id: ipp.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: ipp.c 7463 2008-04-17 00:24:25Z mike $".
  */
index 2a36fe35bfb238cbcec73c49e87fd372210aacc6..9073c57757e5efeff5cb1b2a03fa07e4034c0250 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ipp.h 6879 2007-08-29 20:26:50Z mike $"
+ * "$Id: ipp.h 7257 2008-01-25 02:42:47Z mike $"
  *
  *   Internet Printing Protocol definitions for the Common UNIX Printing
  *   System (CUPS).
@@ -494,5 +494,5 @@ extern ipp_state_t  ippWriteIO(void *dst, ipp_iocb_t cb, int blocking,
 #endif /* !_CUPS_IPP_H_ */
 
 /*
- * End of "$Id: ipp.h 6879 2007-08-29 20:26:50Z mike $".
+ * End of "$Id: ipp.h 7257 2008-01-25 02:42:47Z mike $".
  */
index afb189c573911b397b17ce0ddde3088392b68b83..089eb4859e99fc931462ccacc7033bdecffd8c1d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: langprintf.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: langprintf.c 7193 2008-01-07 23:01:40Z mike $"
  *
  *   Localized printf/puts functions for the Common UNIX Printing
  *   System (CUPS).
@@ -272,5 +272,5 @@ _cupsSetLocale(char *argv[])                /* IO - Command-line arguments */
 
 
 /*
- * End of "$Id: langprintf.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: langprintf.c 7193 2008-01-07 23:01:40Z mike $".
  */
index 2949b350761133d51637a45e82520fa6b2cd6cf4..5f20831086968b7a4b3632235f002b561da8fc76 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: language.c 6916 2007-09-05 21:14:08Z mike $"
+ * "$Id: language.c 7558 2008-05-12 23:46:44Z mike $"
  *
  *   I18N/language support for the Common UNIX Printing System (CUPS).
  *
@@ -1320,5 +1320,5 @@ cups_unquote(char       *d,               /* O - Unquoted string */
 
 
 /*
- * End of "$Id: language.c 6916 2007-09-05 21:14:08Z mike $".
+ * End of "$Id: language.c 7558 2008-05-12 23:46:44Z mike $".
  */
index ff0dd054212bd74d5a56a74187fb016b36819e07..20c66feffee75b5b48eae353242381349f009532 100644 (file)
@@ -319,6 +319,7 @@ _ppdFirstOption
 _ppdIsMarked
 _ppdLastError
 _ppdLocalize
+_ppdLocalizeAttr
 _ppdLocalizeIPPReason
 _ppdLocalizeMarkerName
 _ppdMarkDefaults
index 551dde98e8e03d572ad9832acc61ce5bdd8454f1..7a98607de1b0d0648c7ea7a9984106c8d91b43c6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: localize.c 7363 2008-03-03 22:19:24Z mike $"
+ * "$Id: localize.c 7679 2008-06-19 23:37:45Z mike $"
  *
  *   PPD localization routines for the Common UNIX Printing System (CUPS).
  *
@@ -26,6 +26,7 @@
  * Contents:
  *
  *   ppdLocalize()           - Localize the PPD file to the current locale.
+ *   ppdLocalizeAttr()       - Localize an attribute.
  *   ppdLocalizeIPPReason()  - Get the localized version of a cupsIPPReason
  *                             attribute.
  *   ppdLocalizeMarkerName() - Get the localized version of a marker-names
@@ -195,6 +196,45 @@ ppdLocalize(ppd_file_t *ppd)               /* I - PPD file */
 }
 
 
+/*
+ * 'ppdLocalizeAttr()' - Localize an attribute.
+ *
+ * This function uses the current locale to find the localized attribute for
+ * the given main and option keywords.  If no localized version of the
+ * attribute exists for the current locale, the unlocalized version is returned.
+ */
+
+ppd_attr_t *                           /* O - Localized attribute or @code NULL@ if none exists */
+ppdLocalizeAttr(ppd_file_t *ppd,       /* I - PPD file */
+               const char *keyword,    /* I - Main keyword */
+               const char *spec)       /* I - Option keyword or @code NULL@ for none */
+{
+  ppd_attr_t   *locattr;               /* Localized attribute */
+  char         ll_CC[6];               /* Language + country locale */
+
+
+ /*
+  * Get the default language...
+  */
+
+  ppd_ll_CC(ll_CC, sizeof(ll_CC));
+
+ /*
+  * Find the localized attribute...
+  */
+
+  if (spec)
+    locattr = _ppdLocalizedAttr(ppd, keyword, spec, ll_CC);
+  else
+    locattr = _ppdLocalizedAttr(ppd, "Translation", keyword, ll_CC);
+
+  if (!locattr)
+    locattr = ppdFindAttr(ppd, keyword, spec);
+
+  return (locattr);
+}
+
+
 /*
  * 'ppdLocalizeIPPReason()' - Get the localized version of a cupsIPPReason
  *                            attribute.
@@ -666,5 +706,5 @@ ppd_ll_CC(char *ll_CC,                      /* O - Country-specific locale name */
 
 
 /*
- * End of "$Id: localize.c 7363 2008-03-03 22:19:24Z mike $".
+ * End of "$Id: localize.c 7679 2008-06-19 23:37:45Z mike $".
  */
index 7b018e6094c06299b105cfd1720c895af0c5246b..91de0951c80d1966fa19c4999f6c9f19fea8300c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: mark.c 7278 2008-01-31 01:23:09Z mike $"
+ * "$Id: mark.c 7605 2008-05-21 00:36:25Z mike $"
  *
  *   Option marking routines for the Common UNIX Printing System (CUPS).
  *
@@ -1136,5 +1136,5 @@ ppd_mark_choices(ppd_file_t *ppd, /* I - PPD file */
 
 
 /*
- * End of "$Id: mark.c 7278 2008-01-31 01:23:09Z mike $".
+ * End of "$Id: mark.c 7605 2008-05-21 00:36:25Z mike $".
  */
index 03a382e6d6d41fd1f36a2432056b382e7416d3e8..cbfe5f070364fd95e899ecc1517624a441a4e58a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: notify.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: notify.c 7337 2008-02-22 04:44:04Z mike $"
  *
  *   Notification routines for the Common UNIX Printing System (CUPS).
  *
@@ -198,5 +198,5 @@ cupsNotifyText(cups_lang_t *lang,   /* I - Language data */
 
 
 /*
- * End of "$Id: notify.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: notify.c 7337 2008-02-22 04:44:04Z mike $".
  */
index 3e4db23bef1a7c6d3ab0824a6901c73010d6f033..f1f36df269d5085c5648a2602b185f5cd5f9dbff 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: options.c 7278 2008-01-31 01:23:09Z mike $"
+ * "$Id: options.c 7589 2008-05-19 00:13:23Z mike $"
  *
  *   Option routines for the Common UNIX Printing System (CUPS).
  *
@@ -448,5 +448,5 @@ cupsRemoveOption(
 
 
 /*
- * End of "$Id: options.c 7278 2008-01-31 01:23:09Z mike $".
+ * End of "$Id: options.c 7589 2008-05-19 00:13:23Z mike $".
  */
index 91de6a9b4394b49cdf799dd87636bc70bae60ffd..cbe20558fe2f98cccdc7aeb3e8bf5c8691da4db1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ppd.c 6937 2007-09-10 21:13:31Z mike $"
+ * "$Id: ppd.c 7552 2008-05-12 17:42:15Z mike $"
  *
  *   PPD file routines for the Common UNIX Printing System (CUPS).
  *
@@ -3169,5 +3169,5 @@ ppd_read(cups_file_t    *fp,              /* I - File to read from */
 
 
 /*
- * End of "$Id: ppd.c 6937 2007-09-10 21:13:31Z mike $".
+ * End of "$Id: ppd.c 7552 2008-05-12 17:42:15Z mike $".
  */
index c99981793f3fc686cfdb73edb976d20ac47c20f0..8396e61e4fc20b0218bec731951028df429be336 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ppd.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: ppd.h 7679 2008-06-19 23:37:45Z mike $"
  *
  *   PostScript Printer Description definitions for the Common UNIX Printing
  *   System (CUPS).
@@ -399,6 +399,8 @@ extern const char   *ppdLocalizeIPPReason(ppd_file_t *ppd,
                                              size_t bufsize) _CUPS_API_1_3;
 
 /**** New in CUPS 1.4 ****/
+extern ppd_attr_t      *ppdLocalizeAttr(ppd_file_t *ppd, const char *keyword,
+                                        const char *spec);
 extern const char      *ppdLocalizeMarkerName(ppd_file_t *ppd,
                                               const char *name) _CUPS_API_1_4;
 
@@ -413,5 +415,5 @@ extern const char   *ppdLocalizeMarkerName(ppd_file_t *ppd,
 #endif /* !_CUPS_PPD_H_ */
 
 /*
- * End of "$Id: ppd.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: ppd.h 7679 2008-06-19 23:37:45Z mike $".
  */
index e3465def0bf871e630181394dafc5dd8fb5e9bbd..36b02b912380abcee500ec36da174fba5c3d7c9a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: request.c 6879 2007-08-29 20:26:50Z mike $"
+ * "$Id: request.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   IPP utilities for the Common UNIX Printing System (CUPS).
  *
@@ -824,5 +824,5 @@ _cupsSetHTTPError(http_status_t status)     /* I - HTTP status code */
 
 
 /*
- * End of "$Id: request.c 6879 2007-08-29 20:26:50Z mike $".
+ * End of "$Id: request.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 9a009e9690fd7e83dcfec5e19dc68dae6d4ddf18..bbb8dab028deb59146566ae52d50119547e7301d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: sidechannel.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: sidechannel.c 7594 2008-05-19 23:16:03Z mike $"
  *
  *   Side-channel API code for the Common UNIX Printing System (CUPS).
  *
@@ -552,5 +552,5 @@ cupsSideChannelWrite(
 
 
 /*
- * End of "$Id: sidechannel.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: sidechannel.c 7594 2008-05-19 23:16:03Z mike $".
  */
index 3a8692c1c0ed1b01aa570d3dc728613a6f38267e..f69259ebe1cf891ed14450ffb7fb67dbb5c427b0 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: sidechannel.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: sidechannel.h 7616 2008-05-28 00:34:13Z mike $"
  *
  *   Side-channel API definitions for the Common UNIX Printing System (CUPS).
  *
@@ -131,5 +131,5 @@ extern cups_sc_status_t     cupsSideChannelSNMPWalk(const char *oid, double timeout,
 #endif /* !_CUPS_SIDECHANNEL_H_ */
 
 /*
- * End of "$Id: sidechannel.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: sidechannel.h 7616 2008-05-28 00:34:13Z mike $".
  */
index c3ec0ef6b461eb654d5d3017b8fa149c1e4c761e..bd7d9cc16064c07ab9a88965054089e20420f77f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: string.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: string.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   String functions for the Common UNIX Printing System (CUPS).
  *
@@ -734,5 +734,5 @@ compare_sp_items(_cups_sp_item_t *a,        /* I - First item */
 
 
 /*
- * End of "$Id: string.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: string.c 7460 2008-04-16 02:19:54Z mike $".
  */
index f25886461fb0f36be99865e411c70dd4c4be67d8..6dea52b100ec33b3ce22c7ac309b808640da442a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: tempfile.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: tempfile.c 7337 2008-02-22 04:44:04Z mike $"
  *
  *   Temp file utilities for the Common UNIX Printing System (CUPS).
  *
@@ -231,5 +231,5 @@ cupsTempFile2(char *filename,               /* I - Pointer to buffer */
 
 
 /*
- * End of "$Id: tempfile.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: tempfile.c 7337 2008-02-22 04:44:04Z mike $".
  */
index 1b58a5231227a0bf9070c420dbeb863a9c00c867..14d631283ab63578ec8d4dd19590f85d1ea4b98d 100644 (file)
@@ -1,6 +1,6 @@
 *PPD-Adobe: "4.3"
 *%
-*% "$Id: test.ppd 6795 2007-08-15 18:02:26Z mike $"
+*% "$Id: test.ppd 7582 2008-05-16 03:13:18Z mike $"
 *%
 *% Test PPD file for the Common UNIX Printing System (CUPS).
 *%
@@ -206,5 +206,5 @@ help:anchor='foo'%20bookID=Vendor%20Help
 *Font ZapfChancery-MediumItalic: Standard "(001.007S)" Standard ROM
 *Font ZapfDingbats: Special "(001.004S)" Standard ROM
 *%
-*% End of "$Id: test.ppd 6795 2007-08-15 18:02:26Z mike $".
+*% End of "$Id: test.ppd 7582 2008-05-16 03:13:18Z mike $".
 *%
index 2140765c971d1392d9f749830b858e3f9cff4a33..117b3c9e5dadb9474dcd10eeb25c7b170c2b7764 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: testfile.c 6962 2007-09-17 20:35:47Z mike $"
+ * "$Id: testfile.c 7560 2008-05-13 06:34:04Z mike $"
  *
  *   File test program for the Common UNIX Printing System (CUPS).
  *
@@ -815,5 +815,5 @@ read_write_tests(int compression)   /* I - Use compression? */
 
 
 /*
- * End of "$Id: testfile.c 6962 2007-09-17 20:35:47Z mike $".
+ * End of "$Id: testfile.c 7560 2008-05-13 06:34:04Z mike $".
  */
index fa9282f4a09b0a7b6a515651e3b212583c17af33..b445bf9d6d5d0d30e86ad67757de90f3014d09ea 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: testhttp.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: testhttp.c 7685 2008-06-23 16:49:18Z mike $"
  *
  *   HTTP test program for the Common UNIX Printing System (CUPS).
  *
@@ -301,7 +301,7 @@ main(int  argc,                             /* I - Number of command-line arguments */
     * httpAddrGetList()
     */
 
-    fputs("httpAddrGetList(): ", stdout);
+    printf("httpAddrGetList(%s): ", hostname);
 
     addrlist = httpAddrGetList(hostname, AF_UNSPEC, NULL);
     if (addrlist)
@@ -526,5 +526,5 @@ main(int  argc,                             /* I - Number of command-line arguments */
 
 
 /*
- * End of "$Id: testhttp.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: testhttp.c 7685 2008-06-23 16:49:18Z mike $".
  */
index c6654d62e49bb056b658263aca1802daec9a79cd..b18b64668b5d8abd8599e970ff5a9debe3b18c98 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: testi18n.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: testi18n.c 7560 2008-05-13 06:34:04Z mike $"
  *
  *   Internationalization test for Common UNIX Printing System (CUPS).
  *
@@ -548,5 +548,5 @@ print_utf8(const char            *msg,      /* I - Message String */
 
 
 /*
- * End of "$Id: testi18n.c 6649 2007-07-11 21:46:42Z mike $"
+ * End of "$Id: testi18n.c 7560 2008-05-13 06:34:04Z mike $"
  */
index 6772970b80bb09b88c37d3dc979f8811043b54b7..3c8a8dc6bb576cc5e9d8db49d276c30b52200cea 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: testppd.c 6936 2007-09-10 18:15:36Z mike $"
+ * "$Id: testppd.c 7633 2008-06-10 23:07:29Z mike $"
  *
  *   PPD test program for the Common UNIX Printing System (CUPS).
  *
@@ -468,5 +468,5 @@ main(int  argc,                             /* I - Number of command-line arguments */
 
 
 /*
- * End of "$Id: testppd.c 6936 2007-09-10 18:15:36Z mike $".
+ * End of "$Id: testppd.c 7633 2008-06-10 23:07:29Z mike $".
  */
index 7a79b2a550b6c40214d4b22d6888c388384d7767..b0f895cd6a02fd3e226effe173583a80dbb13141 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: transcode.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: transcode.c 7560 2008-05-13 06:34:04Z mike $"
  *
  *   Transcoding support for the Common UNIX Printing System (CUPS).
  *
@@ -1820,5 +1820,5 @@ get_vbcs_charmap(
 
 
 /*
- * End of "$Id: transcode.c 6649 2007-07-11 21:46:42Z mike $"
+ * End of "$Id: transcode.c 7560 2008-05-13 06:34:04Z mike $"
  */
index 8c8cd5005258edbb7fdc10964a0dcb5d18cd9e46..0a4dac1314da281e98dab3c18674c434951cddcc 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: transcode.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: transcode.h 7026 2007-10-19 00:57:45Z mike $"
  *
  *   Transcoding definitions for the Common UNIX Printing System (CUPS).
  *
@@ -77,5 +77,5 @@ extern int    cupsUTF32ToUTF8(cups_utf8_t *dest,
 
 
 /*
- * End of "$Id: transcode.h 6649 2007-07-11 21:46:42Z mike $"
+ * End of "$Id: transcode.h 7026 2007-10-19 00:57:45Z mike $"
  */
index 28b40d0be537dff00a28345ac4f5a02c6173d77d..8e4be955992cf682c97220a3b5050b140027968d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: usersys.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: usersys.c 7337 2008-02-22 04:44:04Z mike $"
  *
  *   User, system, and password routines for the Common UNIX Printing
  *   System (CUPS).
@@ -503,5 +503,5 @@ cups_open_client_conf(void)
 
 
 /*
- * End of "$Id: usersys.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: usersys.c 7337 2008-02-22 04:44:04Z mike $".
  */
index a07276786ae85bf4da07a03a4cc3f2665da8309c..605cd89e80555fa406e2f34b2d98f2815de94d54 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: util.c 7014 2007-10-10 21:57:43Z mike $"
+ * "$Id: util.c 7634 2008-06-10 23:22:28Z mike $"
  *
  *   Printing utilities for the Common UNIX Printing System (CUPS).
  *
@@ -1802,5 +1802,5 @@ cups_get_printer_uri(
 
 
 /*
- * End of "$Id: util.c 7014 2007-10-10 21:57:43Z mike $".
+ * End of "$Id: util.c 7634 2008-06-10 23:22:28Z mike $".
  */
index 3722a172a4d4d492048ecd24c758a8f2d87e24ca..48dd1db55669e8572c3f53dea0f221ebfee3634f 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 7014 2007-10-10 21:57:43Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Datafile makefile for the Common UNIX Printing System (CUPS).
 #
@@ -201,5 +201,5 @@ uninstall:
 
 
 #
-# End of "$Id: Makefile 7014 2007-10-10 21:57:43Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index 72f5da9eee28e5a95dce654c780f1021b30d4056..7b1ed89c820c8be8fbf282c7cb13a9f55de9570b 100644 (file)
@@ -593,6 +593,6 @@ gsave
 grestore
 showpage
 %
-% End of "$Id: testprint.ps 6649 2007-07-11 21:46:42Z mike $".
+% End of "$Id: testprint.ps 7157 2008-01-02 21:22:42Z mike $".
 %
 %%EOF
index e87eb5c34087584aad75b96b34a16481694b5435..9d24b284481614a3ae5299aa86a1884c48db925b 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6900 2007-08-30 17:17:51Z mike $"
+# "$Id: Makefile 7601 2008-05-20 21:08:08Z mike $"
 #
 #   Documentation makefile for the Common UNIX Printing System (CUPS).
 #
index f08a706a7f8a126cdfd7f72b4d0c36b0033ae7c8..007d71278b2f4b0dfd64a81e96dad397ba900721 100644 (file)
@@ -323,7 +323,7 @@ div.contents ul.subcontents li {
 </ul></li>
 </ul>
 <!--
-  "$Id: api-array.shtml 7266 2008-01-29 02:15:29Z mike $"
+  "$Id: api-array.shtml 7616 2008-05-28 00:34:13Z mike $"
 
   Array API introduction for the Common UNIX Printing System (CUPS).
 
index b645ec353c7c89d4a676bd0a3453f24bc2027df2..affeeb4e32c78763102af5ce37742a5bdc4f98c9 100644 (file)
@@ -253,7 +253,7 @@ div.contents ul.subcontents li {
 <body>
 <div class='body'>
 <!--
-  "$Id: api-filter.header 7615 2008-05-25 07:17:07Z mike $"
+  "$Id: api-filter.header 7616 2008-05-28 00:34:13Z mike $"
 
   Filter and backend programming header for the Common UNIX Printing System
   (CUPS).
@@ -333,7 +333,7 @@ div.contents ul.subcontents li {
 </ul></li>
 </ul>
 <!--
-  "$Id: api-filter.shtml 7594 2008-05-19 23:16:03Z mike $"
+  "$Id: api-filter.shtml 7677 2008-06-19 23:22:19Z mike $"
 
   Filter and backend programming introduction for the Common UNIX Printing
   System (CUPS).
@@ -519,10 +519,11 @@ prefix strings:</p>
        <dt>ATTR: attribute=value [attribute=value]</dt>
        <dd>Sets the named printer or job attribute(s). Typically this is used
        to set the <code>marker-colors</code>, <code>marker-levels</code>,
-       <code>marker-names</code>, <code>marker-types</code>,
-       <code>printer-alert</code>, and <code>printer-alert-description</code>
-       printer attributes. Standard <code>marker-types</code> values are
-       listed in <a href='#TABLE1'>Table 1</a>.</dd>
+       <code>marker-message</code>, <code>marker-names</code>,
+       <code>marker-types</code>, <code>printer-alert</code>, and
+       <code>printer-alert-description</code> printer attributes. Standard
+       <code>marker-types</code> values are listed in <a href='#TABLE1'>Table
+       1</a>.</dd>
 
        <dt>CRIT: message</dt>
        <dd>Sets the printer-state-message attribute and adds the specified
index f2e4fa21161895589ba608217ebafdfb1faba77b..e55c460b46b59fc304813b4a8b21ad30a48a8547 100644 (file)
@@ -792,7 +792,7 @@ tempfd = cupsTempFd(tempfile, sizeof(tempfile));
 /* Loop for authentication */
 do
 {
-  status = a href='#cupsSendRequest'>cupsSendRequest</a>(CUPS_HTTP_DEFAULT, request, "/");
+  status = <a href='#cupsSendRequest'>cupsSendRequest</a>(CUPS_HTTP_DEFAULT, request, "/");
 
   if (status == HTTP_UNAUTHORIZED)
   {
index 697573e85133c6a7c07174adf9554f03a8856636..b8ea921548513e654e50e35721aa8192b6e7bcbd 100644 (file)
@@ -253,7 +253,7 @@ div.contents ul.subcontents li {
 <body>
 <div class='body'>
 <!--
-  "$Id: api-ppd.header 7278 2008-01-31 01:23:09Z mike $"
+  "$Id: api-ppd.header 7616 2008-05-28 00:34:13Z mike $"
 
   PPD API header for the Common UNIX Printing System (CUPS).
 
@@ -326,6 +326,7 @@ marked option choices.">ppdConflicts</a></li>
 <li><a href="#ppdIsMarked" title="Check to see if an option is marked.">ppdIsMarked</a></li>
 <li><a href="#ppdLastError" title="Return the status from the last ppdOpen*().">ppdLastError</a></li>
 <li><a href="#ppdLocalize" title="Localize the PPD file to the current locale.">ppdLocalize</a></li>
+<li><a href="#ppdLocalizeAttr" title="Localize an attribute.">ppdLocalizeAttr</a></li>
 <li><a href="#ppdLocalizeIPPReason" title="Get the localized version of a cupsIPPReason
 attribute.">ppdLocalizeIPPReason</a></li>
 <li><a href="#ppdLocalizeMarkerName" title="Get the localized version of a marker-names
@@ -391,7 +392,7 @@ attribute value.">ppdLocalizeMarkerName</a></li>
 </ul></li>
 </ul>
 <!--
-  "$Id: api-ppd.shtml 7278 2008-01-31 01:23:09Z mike $"
+  "$Id: api-ppd.shtml 7616 2008-05-28 00:34:13Z mike $"
 
   PPD API introduction for the Common UNIX Printing System (CUPS).
 
@@ -1061,6 +1062,29 @@ descriptions, printer presets, and custom option parameters.  Each
 localized string uses the UTF-8 character encoding.
 
 </p>
+<h3 class="function"><a name="ppdLocalizeAttr">ppdLocalizeAttr</a></h3>
+<p class="description">Localize an attribute.</p>
+<p class="code">
+<a href="#ppd_attr_t">ppd_attr_t</a> *ppdLocalizeAttr (<br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#ppd_file_t">ppd_file_t</a> *ppd,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *keyword,<br>
+&nbsp;&nbsp;&nbsp;&nbsp;const char *spec<br>
+);</p>
+<h4 class="parameters">Parameters</h4>
+<dl>
+<dt>ppd</dt>
+<dd class="description">PPD file</dd>
+<dt>keyword</dt>
+<dd class="description">Main keyword</dd>
+<dt>spec</dt>
+<dd class="description">Option keyword or <code>NULL</code> for none</dd>
+</dl>
+<h4 class="returnvalue">Return Value</h4>
+<p class="description">Localized attribute or <code>NULL</code> if none exists</p>
+<h4 class="discussion">Discussion</h4>
+<p class="discussion">This function uses the current locale to find the localized attribute for
+the given main and option keywords.  If no localized version of the
+attribute exists for the current locale, the unlocalized version is returned.</p>
 <h3 class="function"><span class="info">&nbsp;CUPS 1.3&nbsp;</span><a name="ppdLocalizeIPPReason">ppdLocalizeIPPReason</a></h3>
 <p class="description">Get the localized version of a cupsIPPReason
 attribute.</p>
index da9684b01d654ff40f86157672149c597c3160bf..2672ec9db0261ed98b3208d340af542bca3ec76a 100644 (file)
@@ -501,8 +501,8 @@ the memory used to read the raster file:</p>
 <ul class="code">
 
        <li><a href="#cupsRasterInterpretPPD" title="Interpret PPD commands to create a page header.">cupsRasterInterpretPPD</a></li>
-       <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a></li>
-       <li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li>
+       <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li>
+       <li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a></li>
        <li><a href="#cupsRasterWritePixels" title="Write raster pixels.">cupsRasterWritePixels</a></li>
        
 </ul>
index 344ba67af979ace7b42261a338650ec9518d088b..a1c85a82538e206e1a13ec59c4b9b40e40937d38 100644 (file)
@@ -2473,8 +2473,8 @@ There will always be at least one banner file available called "none".
 <h4><a name="marker-change-time">marker-change-time (integer)</a></h4>
 
 <p>The marker-change-time attribute specifies the printer-up-time value when
-the last change to the marker-colors, marker-levels, marker-names, or
-marker-types attributes was made.</p>
+the last change to the marker-colors, marker-levels, marker-message,
+marker-names, or marker-types attributes was made.</p>
 
 <h4><a name="marker-colors">marker-colors (1setof name(MAX))</a></h4>
 
@@ -2490,6 +2490,12 @@ printer. It is only available when the driver provides supply levels. A
 value of -1 indicates the level is unknown, while values from 0 to 100
 indicate the corresponding percentage.</p>
 
+<h4><a name="marker-message">marker-message (text(MAX))</a></h4>
+
+<p>The marker-message attribute provides a human-readable status message
+for the current supply levels, e.g. "12 pages of ink remaining." It is only
+available when the driver provides supply levels.</p>
+
 <h4><a name="marker-names">marker-names (1setof name(MAX))</a></h4>
 
 <p>The marker-names attribute specifies the name(s) for each supply in the
index 402b3bcdd1da73e98fe39fb7f592a00e1f9a8625..87209f39a887134367d8d2d3e83d4044c7830376 100644 (file)
@@ -8,7 +8,7 @@
 </head>
 <body>
 <!--
-  "$Id: spec-ppd.html 6993 2007-09-28 18:05:28Z mike $"
+  "$Id: spec-ppd.html 7677 2008-06-19 23:22:19Z mike $"
 
   CUPS PPD extensions specification for the Common UNIX Printing System (CUPS).
 
@@ -1254,6 +1254,20 @@ generated by the driver to human readable text.</p>
 *cupsMarkerName cyanToner/Cyan Toner: ""
 </pre>
 
+<h3><span class='info'>CUPS 1.4</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
+
+<p class='summary'>*cupsMarkerNotice: "disclaimer text"</p>
+
+<p>This optional attribute provides disclaimer text for the supply level
+information provided by the driver, typically something like "supply levels
+are approximate".</p>
+
+<p>Examples:</p>
+
+<pre class='command'>
+*cupsMarkerNotice: "Supply levels are approximate."
+</pre>
+
 <h3><a name='cupsModelNumber'>cupsModelNumber</a></h3>
 
 <p class='summary'>*cupsModelNumber: number</p>
@@ -1627,11 +1641,13 @@ the device.</p>
 
 <ul>
 
-       <li>Added <tt>cupsPJLDisplay</tt> attribute.</li>
+       <li>Added <tt>cupsCommands</tt> attribute.</li>
 
        <li>Added <tt>cupsMarkerName</tt> attribute.</li>
 
-       <li>Added <tt>cupsCommands</tt> attribute.</li>
+       <li>Added <tt>cupsMarkerNotice</tt> attribute.</li>
+
+       <li>Added <tt>cupsPJLDisplay</tt> attribute.</li>
 
 </ul>
 
diff --git a/driver/api-driver.header b/driver/api-driver.header
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/driver/api-driver.shtml b/driver/api-driver.shtml
new file mode 100644 (file)
index 0000000..e69de29
index 0d1f299ebb964bc7a5f7eb17ea0b6b8abcfbcf71..f2159c3c1ed2c9f364397407316d7974c4f94c13 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: testdriver.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: testdriver.c 7306 2008-02-15 00:52:38Z mike $"
  *
  *   Sample/test driver interface program for the Common UNIX Printing
  *   System (CUPS).
@@ -174,5 +174,5 @@ list_ppds(const char *name)         /* I - Program name */
 
 
 /*
- * End of "$Id: testdriver.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: testdriver.c 7306 2008-02-15 00:52:38Z mike $".
  */
index 61d578ce7f552f9a12dac878f228e297af906639..3bb3981bb44e2685f98e15f5600d1023e05d775e 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6696 2007-07-19 23:27:49Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Filter makefile for the Common UNIX Printing System (CUPS).
 #
@@ -461,5 +461,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6696 2007-07-19 23:27:49Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index 847b974bbc59618753b400149f1ffcb9b0231742..880042b07f4b54e54d9413a5ec3dda8aa385008a 100644 (file)
@@ -153,8 +153,8 @@ the memory used to read the raster file:</p>
 <ul class="code">
 
        <li><a href="#cupsRasterInterpretPPD" title="Interpret PPD commands to create a page header.">cupsRasterInterpretPPD</a></li>
-       <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a></li>
-       <li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li>
+       <li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/Mac OS X 10.5</span></li>
+       <li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a></li>
        <li><a href="#cupsRasterWritePixels" title="Write raster pixels.">cupsRasterWritePixels</a></li>
        
 </ul>
index ea7caf10dce260c8daca890ee79509ab4e490b14..ecde9916ab228e318878e41c0e0f534f21c0a24a 100644 (file)
  *
  * Contents:
  *
+ *   main()                 - Process a CUPS command file.
+ *   auto_configure()       - Automatically configure the printer using
+ *                            PostScript query commands and/or SNMP lookups.
+ *   print_self_test_page() - Print a self-test page.
+ *   report_levels()        - Report supply levels.
  */
 
 /*
@@ -309,7 +314,13 @@ report_levels(ppd_file_t *ppd,             /* I - PPD file */
     fputs(ppd->jcl_ps, stdout);
   }
 
+ /*
+  * Send a query job that just reports the product string - network backends
+  * will gather the supply levels via SNMP.
+  */
+
   puts("%!");
+  puts("product =");
 
  /*
   * Finish the job...
index 44c2eabfb3a440a3e358aa217a1296ec889aaf98..713c024a07fa0f71c601552729008a54515f029f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: error.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: error.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   Raster error handling for the Common UNIX Printing System (CUPS).
  *
@@ -283,5 +283,5 @@ get_error_buffer(void)
 
 
 /*
- * End of "$Id: error.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: error.c 7460 2008-04-16 02:19:54Z mike $".
  */
index d9af61a3cf1b93ee3c877a1cc577139e4d50c584..fdc45555ee4ebcec739ccf4d6bb59e67dc393c41 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: hpgl-input.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: hpgl-input.c 7219 2008-01-14 22:00:02Z mike $"
  *
  *   HP-GL/2 input processing for the Common UNIX Printing System (CUPS).
  *
@@ -268,5 +268,5 @@ FreeParameters(int     num_params,  /* I - Number of parameters */
 
 
 /*
- * End of "$Id: hpgl-input.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: hpgl-input.c 7219 2008-01-14 22:00:02Z mike $".
  */
index 1056252a78f8a3fbaaedb8ae7afbec7d291b7318..21521600f886acb4e208403921f132c3577d154c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-bmp.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-bmp.c 7221 2008-01-16 22:20:08Z mike $"
  *
  *   BMP image routines for the Common UNIX Printing System (CUPS).
  *
@@ -539,5 +539,5 @@ read_long(FILE *fp)               /* I - File to read from */
 
 
 /*
- * End of "$Id: image-bmp.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-bmp.c 7221 2008-01-16 22:20:08Z mike $".
  */
index d78670d37604aa91cf3f1b1062b515537303eb4d..caa39439e99c0a9a7f9f343bc14105a286ef6bc4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-gif.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-gif.c 7420 2008-04-01 20:32:00Z mike $"
  *
  *   GIF image routines for the Common UNIX Printing System (CUPS).
  *
@@ -693,5 +693,5 @@ gif_read_lzw(FILE *fp,                      /* I - File to read from */
 
 
 /*
- * End of "$Id: image-gif.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-gif.c 7420 2008-04-01 20:32:00Z mike $".
  */
index 4c22d4910c7957da4a0a2ad4f96bef2b01ccafb3..4710ab269bd60e2fa6304ad6bbe50aaf0bdadbb2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-jpeg.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-jpeg.c 7355 2008-02-28 20:49:40Z mike $"
  *
  *   JPEG image routines for the Common UNIX Printing System (CUPS).
  *
@@ -318,5 +318,5 @@ _cupsImageReadJPEG(
 
 
 /*
- * End of "$Id: image-jpeg.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-jpeg.c 7355 2008-02-28 20:49:40Z mike $".
  */
index 6485de3f085f7559225a4acccb621ea17ce55640..d8638618d15ae75d07027613a453b15f44585dd3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-photocd.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-photocd.c 7221 2008-01-16 22:20:08Z mike $"
  *
  *   PhotoCD routines for the Common UNIX Printing System (CUPS).
  *
@@ -329,5 +329,5 @@ _cupsImageReadPhotoCD(
 
 
 /*
- * End of "$Id: image-photocd.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-photocd.c 7221 2008-01-16 22:20:08Z mike $".
  */
index e5e20f463e15e1d658361d1c30a8ba0b2bd14537..0bd87023c18253902400a17ff6c10992a5fdc707 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-pix.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-pix.c 7221 2008-01-16 22:20:08Z mike $"
  *
  *   Alias PIX image routines for the Common UNIX Printing System (CUPS).
  *
@@ -236,5 +236,5 @@ read_short(FILE *fp)                        /* I - File to read from */
 
 
 /*
- * End of "$Id: image-pix.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-pix.c 7221 2008-01-16 22:20:08Z mike $".
  */
index 332b3c39b6349dc237b5d876eefe5db503973bc2..95cc9eacdf5d168aa06fbf6da9943559d9c2085f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-png.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-png.c 7437 2008-04-09 03:16:10Z mike $"
  *
  *   PNG image routines for the Common UNIX Printing System (CUPS).
  *
@@ -311,5 +311,5 @@ _cupsImageReadPNG(
 
 
 /*
- * End of "$Id: image-png.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-png.c 7437 2008-04-09 03:16:10Z mike $".
  */
index cef9a481f8ca622d9aeba876d274d1f151017fbf..0d55dba5b901742f2e1124509dffa029c7540e25 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-pnm.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-pnm.c 7374 2008-03-08 01:13:26Z mike $"
  *
  *   Portable Any Map file routines for the Common UNIX Printing System (CUPS).
  *
@@ -316,5 +316,5 @@ _cupsImageReadPNM(
 
 
 /*
- * End of "$Id: image-pnm.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-pnm.c 7374 2008-03-08 01:13:26Z mike $".
  */
index 1323d75a77333918ca355c7fe085c69b4e3b0fdc..9ce1dd254df0d7514b9d56ab7d90835a97f1b412 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-private.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-private.h 7473 2008-04-21 17:51:58Z mike $"
  *
  *   Private image library definitions for the Common UNIX Printing
  *   System (CUPS).
@@ -213,5 +213,5 @@ extern void         _cupsRasterClearError(void);
 #endif /* !_CUPS_IMAGE_PRIVATE_H_ */
 
 /*
- * End of "$Id: image-private.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-private.h 7473 2008-04-21 17:51:58Z mike $".
  */
index de81ceb6aec819b04cb3c1e198f49bb1d268bccd..7fec66e6702e5a1a2ced53b3e78ce0af6a4f344a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-sgi.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-sgi.c 7223 2008-01-16 23:41:19Z mike $"
  *
  *   SGI image file routines for the Common UNIX Printing System (CUPS).
  *
@@ -291,5 +291,5 @@ _cupsImageReadSGI(
 
 
 /*
- * End of "$Id: image-sgi.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-sgi.c 7223 2008-01-16 23:41:19Z mike $".
  */
index e0b1b3326a9b9ff649dce4793d0d3f42149cb6c0..58e9204e869eec090f01753e43c3860add2971df 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-sgilib.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-sgilib.c 7221 2008-01-16 22:20:08Z mike $"
  *
  *   SGI image file format library routines for the Common UNIX Printing
  *   System (CUPS).
@@ -885,5 +885,5 @@ write_rle16(FILE           *fp,             /* I - File to write to */
 
 
 /*
- * End of "$Id: image-sgilib.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-sgilib.c 7221 2008-01-16 22:20:08Z mike $".
  */
index 6817ecfeaa73fb0934c88a1bba31e00222eeea40..d6575143d0059c1d32ba0fd3372dd1ec92791863 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image-sun.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image-sun.c 7223 2008-01-16 23:41:19Z mike $"
  *
  *   Sun Raster image file routines for the Common UNIX Printing System (CUPS).
  *
@@ -403,5 +403,5 @@ read_unsigned(FILE *fp)                     /* I - File to read from */
 
 
 /*
- * End of "$Id: image-sun.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image-sun.c 7223 2008-01-16 23:41:19Z mike $".
  */
index 493c506338ded4010c4a705dcc3bfa622236b67c..97c7ada487f2763a94c3589b55820528eea4c972 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image.c 7473 2008-04-21 17:51:58Z mike $"
  *
  *   Base image support for the Common UNIX Printing System (CUPS).
  *
@@ -808,5 +808,5 @@ get_tile(cups_image_t *img,         /* I - Image */
 
 
 /*
- * End of "$Id: image.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image.c 7473 2008-04-21 17:51:58Z mike $".
  */
index b2de9ad99999a5750f3c35bc68418f2e937aab56..ca3521aed892e94ca4cd18cb545536f993dcaa6c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: image.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: image.h 7306 2008-02-15 00:52:38Z mike $"
  *
  *   Image library definitions for the Common UNIX Printing System (CUPS).
  *
@@ -126,5 +126,5 @@ extern void         cupsImageWhiteToWhite(const cups_ib_t *in,
 #endif /* !_CUPS_IMAGE_H_ */
 
 /*
- * End of "$Id: image.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: image.h 7306 2008-02-15 00:52:38Z mike $".
  */
index bc4a806ecdba4015ae546800770b0b26bf280761..ba21bdb1c652f7ea7129eb3cd06c274cc94bbbd0 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: imagetoraster.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: imagetoraster.c 7306 2008-02-15 00:52:38Z mike $"
  *
  *   Image file to raster filter for the Common UNIX Printing System (CUPS).
  *
@@ -4311,5 +4311,5 @@ raster_cb(
 
 
 /*
- * End of "$Id: imagetoraster.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: imagetoraster.c 7306 2008-02-15 00:52:38Z mike $".
  */
index 945c8f40a9a1a2217a48b8b84e8190cfecc1ecd6..72579b22cd5b061e2e703d8510175b34c903dce2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: interpret.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: interpret.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   PPD command interpreter for the Common UNIX Printing System (CUPS).
  *
@@ -1644,5 +1644,5 @@ DEBUG_stack(_cups_ps_stack_t *st) /* I - Stack */
 
 
 /*
- * End of "$Id: interpret.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: interpret.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 77bc2df964d80d372a8859e4809a74b5ed098140..7517a4978ae1df69206189db27b5a676d40cf991 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: pstops.c 7006 2007-10-04 17:43:38Z mike $"
+ * "$Id: pstops.c 7689 2008-06-24 20:50:57Z mike $"
  *
  *   PostScript filter for the Common UNIX Printing System (CUPS).
  *
@@ -1259,6 +1259,7 @@ copy_page(cups_file_t  *fp,               /* I - File to read from */
   int          level;                  /* Embedded document level */
   pstops_page_t        *pageinfo;              /* Page information */
   int          first_page;             /* First page on N-up output? */
+  int          has_page_setup;         /* Does the page have %%Begin/EndPageSetup? */
   int          bounding_box[4];        /* PageBoundingBox */
 
 
@@ -1508,7 +1509,7 @@ copy_page(cups_file_t  *fp,               /* I - File to read from */
   if (first_page)
     doc_puts(doc, "%%BeginPageSetup\n");
 
-  if (!strncmp(line, "%%BeginPageSetup", 16))
+  if ((has_page_setup = !strncmp(line, "%%BeginPageSetup", 16)) != 0)
   {
     int        feature = 0;                    /* In a Begin/EndFeature block? */
 
@@ -1540,6 +1541,9 @@ copy_page(cups_file_t  *fp,               /* I - File to read from */
       else if (!strncmp(line, "%%Include", 9))
        continue;
 
+      if (line[0] != '%' && !feature)
+        break;
+
       if (!feature || (doc->number_up == 1 && !doc->fitplot))
        doc_write(doc, line, linelen);
     }
@@ -1548,8 +1552,11 @@ copy_page(cups_file_t  *fp,              /* I - File to read from */
     * Skip %%EndPageSetup...
     */
 
-    if (linelen > 0)
-      linelen = cupsFileGetLine(fp, line, linesize);
+    if (linelen > 0 && !strncmp(line, "%%EndPageSetup", 14))
+    {
+      linelen        = cupsFileGetLine(fp, line, linesize);
+      has_page_setup = 0;
+    }
   }
 
   if (first_page)
@@ -1629,6 +1636,45 @@ copy_page(cups_file_t  *fp,              /* I - File to read from */
   * Finish the PageSetup section as needed...
   */
 
+  if (has_page_setup)
+  {
+    int        feature = 0;                    /* In a Begin/EndFeature block? */
+
+    doc_write(doc, line, linelen);
+
+    while ((linelen = cupsFileGetLine(fp, line, linesize)) > 0)
+    {
+      if (!strncmp(line, "%%EndPageSetup", 14))
+       break;
+      else if (!strncmp(line, "%%BeginFeature:", 15))
+      {
+       feature = 1;
+
+       if (doc->number_up > 1 || doc->fitplot)
+         continue;
+      }
+      else if (!strncmp(line, "%%EndFeature", 12))
+      {
+       feature = 0;
+
+       if (doc->number_up > 1 || doc->fitplot)
+         continue;
+      }
+      else if (!strncmp(line, "%%Include", 9))
+       continue;
+
+      if (!feature || (doc->number_up == 1 && !doc->fitplot))
+       doc_write(doc, line, linelen);
+    }
+
+   /*
+    * Skip %%EndPageSetup...
+    */
+
+    if (linelen > 0 && !strncmp(line, "%%EndPageSetup", 14))
+      linelen = cupsFileGetLine(fp, line, linesize);
+  }
+
   if (first_page)
     doc_puts(doc, "%%EndPageSetup\n");
 
@@ -3369,5 +3415,5 @@ write_labels(pstops_doc_t *doc,           /* I - Document information */
 
 
 /*
- * End of "$Id: pstops.c 7006 2007-10-04 17:43:38Z mike $".
+ * End of "$Id: pstops.c 7689 2008-06-24 20:50:57Z mike $".
  */
index 3805dc0f54e3bc57677afe9b7bae0d63e639f803..015c5a8c4a0e343d1e6dece9609948afff2e93f1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: raster.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: raster.c 7616 2008-05-28 00:34:13Z mike $"
  *
  *   Raster file routines for the Common UNIX Printing System (CUPS).
  *
@@ -1201,5 +1201,5 @@ cups_write(int                 fd,        /* I - File descriptor */
 
 
 /*
- * End of "$Id: raster.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: raster.c 7616 2008-05-28 00:34:13Z mike $".
  */
index ea0a08be577c5dfa66a4e8d1b55d17a5cb497c01..a344db50f213980287fae6d9e85c6ba09b624cf2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: rasterbench.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: rasterbench.c 7376 2008-03-19 21:07:45Z mike $"
  *
  *   Raster benchmark program for the Common UNIX Printing System (CUPS).
  *
@@ -350,5 +350,5 @@ write_test(int         fd,          /* I - File descriptor to write to */
 
 
 /*
- * End of "$Id: rasterbench.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: rasterbench.c 7376 2008-03-19 21:07:45Z mike $".
  */
index b528bc06ba9d4b947ec86a3b5a018509e6a573dd..6f3278284c4b1a59595db9fca7fb3e2f813c822a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: rastertoepson.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: rastertoepson.c 7450 2008-04-14 19:39:02Z mike $"
  *
  *   EPSON ESC/P and ESC/P2 filter for the Common UNIX Printing System
  *   (CUPS).
@@ -1130,5 +1130,5 @@ main(int  argc,                           /* I - Number of command-line arguments */
 
 
 /*
- * End of "$Id: rastertoepson.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: rastertoepson.c 7450 2008-04-14 19:39:02Z mike $".
  */
index 9f9b7bc458d14eab27aec1ea66fd5bb1d7309ab7..48b0cfcb1dd022bfe717b24502de9124648c8f3b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: rastertohp.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: rastertohp.c 7403 2008-03-26 15:23:43Z mike $"
  *
  *   Hewlett-Packard Page Control Language filter for the Common UNIX
  *   Printing System (CUPS).
@@ -856,5 +856,5 @@ main(int  argc,                             /* I - Number of command-line arguments */
 
 
 /*
- * End of "$Id: rastertohp.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: rastertohp.c 7403 2008-03-26 15:23:43Z mike $".
  */
index d5564e626a363febd1eeee48ec902e45c424e237..a529e281a029d4270a524f82b21d3f45bf81ef71 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: rastertolabel.c 6819 2007-08-20 21:11:57Z mike $"
+ * "$Id: rastertolabel.c 7615 2008-05-25 07:17:07Z mike $"
  *
  *   Label printer filter for the Common UNIX Printing System (CUPS).
  *
@@ -1288,5 +1288,5 @@ main(int  argc,                           /* I - Number of command-line arguments */
 
 
 /*
- * End of "$Id: rastertolabel.c 6819 2007-08-20 21:11:57Z mike $".
+ * End of "$Id: rastertolabel.c 7615 2008-05-25 07:17:07Z mike $".
  */
index f366aa817c92b09cad631228d58f74c830f7d77e..d42438bdb220e576024e19d33d3828647ec8e264 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: testraster.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: testraster.c 7376 2008-03-19 21:07:45Z mike $"
  *
  *   Raster test program routines for the Common UNIX Printing System (CUPS).
  *
@@ -1078,5 +1078,5 @@ print_changes(
 
 
 /*
- * End of "$Id: testraster.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: testraster.c 7376 2008-03-19 21:07:45Z mike $".
  */
index 4aee789134cde939528d76ff33f0aa8b4bef248b..a73e23433dc2b7c02e2e12c1d148bc1012919c12 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Fonts makefile for the Common UNIX Printing System (CUPS).
 #
@@ -102,5 +102,5 @@ uninstall:
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index a948cf991dc6632c43ae48994638126c691ad891..04656a59c5463dd3c31efaf8f3021a503ef23a46 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6993 2007-09-28 18:05:28Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Locale file makefile for the Common UNIX Printing System (CUPS).
 #
@@ -188,5 +188,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6993 2007-09-28 18:05:28Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index 6b76f5be5880d1d4116a3a0b1f6e9ab3b299bbab..81f9212cca87b6fda6cb28f0da415b1115ed1dde 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: checkpo.c 6922 2007-09-06 14:18:02Z mike $"
+ * "$Id: checkpo.c 7223 2008-01-16 23:41:19Z mike $"
  *
  * Verify that translations in the .po file have the same number and type of
  * printf-style format strings.
@@ -336,5 +336,5 @@ free_formats(cups_array_t *fmts)    /* I - Array of format strings */
 
 
 /*
- * End of "$Id: checkpo.c 6922 2007-09-06 14:18:02Z mike $".
+ * End of "$Id: checkpo.c 7223 2008-01-16 23:41:19Z mike $".
  */
diff --git a/locale/cups_id.po b/locale/cups_id.po
new file mode 100644 (file)
index 0000000..4fe6c9f
--- /dev/null
@@ -0,0 +1,3894 @@
+# translation of cups_id.po to Bahasa Indonesia
+#
+# "$Id$"
+#
+#   Message catalog template for the Common UNIX Printing System (CUPS).
+#
+#   Copyright 2007 by Apple Inc.
+#   Copyright 2005-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
+#   file is missing or damaged, see the license at "http://www.cups.org/".
+#
+# Citra Paska <dirgitadevina@yahoo.co.id>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: cups_id\n"
+"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
+"POT-Creation-Date: 2007-07-27 14:55-0700\n"
+"PO-Revision-Date: 2008-04-07 14:19+0700\n"
+"Last-Translator: Citra Paska <dirgitadevina@yahoo.co.id>\n"
+"Language-Team: Bahasa Indonesia\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#: systemv/lpstat.c:2103 systemv/lpstat.c:2216
+msgid "\t\t(all)\n"
+msgstr "\t\t(semua)\n"
+
+#: systemv/lpstat.c:2106 systemv/lpstat.c:2109 systemv/lpstat.c:2219
+#: systemv/lpstat.c:2222
+msgid "\t\t(none)\n"
+msgstr "\t\t(nihil)\n"
+
+#: berkeley/lpc.c:450
+#, c-format
+msgid "\t%d entries\n"
+msgstr "\t%d entri\n"
+
+#: systemv/lpstat.c:2084 systemv/lpstat.c:2197
+msgid "\tAfter fault: continue\n"
+msgstr "\tUsai kesalahan: lanjut\n"
+
+#: systemv/lpstat.c:1670 systemv/lpstat.c:2050 systemv/lpstat.c:2163
+msgid "\tAlerts:"
+msgstr "\tPeringatan:"
+
+#: systemv/lpstat.c:2107 systemv/lpstat.c:2220
+msgid "\tBanner required\n"
+msgstr "\tPataka diperlukan\n"
+
+#: systemv/lpstat.c:2108 systemv/lpstat.c:2221
+msgid "\tCharset sets:\n"
+msgstr "\tSet karakter:\n"
+
+#: systemv/lpstat.c:2073 systemv/lpstat.c:2186
+msgid "\tConnection: direct\n"
+msgstr "\tKoneksi: langsung\n"
+
+#: systemv/lpstat.c:2064 systemv/lpstat.c:2177
+msgid "\tConnection: remote\n"
+msgstr "\tKoneksi: jarak jauh\n"
+
+#: systemv/lpstat.c:2111 systemv/lpstat.c:2224
+msgid "\tDefault page size:\n"
+msgstr "\tUkuran halaman standar:\n"
+
+#: systemv/lpstat.c:2110 systemv/lpstat.c:2223
+msgid "\tDefault pitch:\n"
+msgstr "\tTiti utama:\n"
+
+#: systemv/lpstat.c:2112 systemv/lpstat.c:2225
+msgid "\tDefault port settings:\n"
+msgstr "\tPengaturan portal utama:\n"
+
+#: systemv/lpstat.c:2045 systemv/lpstat.c:2158
+#, c-format
+msgid "\tDescription: %s\n"
+msgstr "\tDeskripsi: %s\n"
+
+#: systemv/lpstat.c:2039 systemv/lpstat.c:2152
+msgid ""
+"\tForm mounted:\n"
+"\tContent types: any\n"
+"\tPrinter types: unknown\n"
+msgstr ""
+"\tFormulir yang diakuisisi:\n"
+"\tJenis isi: apa saja\n"
+"\tJenis pencetak: tak dikenal\n"
+
+#: systemv/lpstat.c:2105 systemv/lpstat.c:2218
+msgid "\tForms allowed:\n"
+msgstr "\tFormulir yang boleh:\n"
+
+#: systemv/lpstat.c:2068 systemv/lpstat.c:2181
+#, c-format
+msgid "\tInterface: %s.ppd\n"
+msgstr "\tAntarmuka: %s.ppd\n"
+
+#: systemv/lpstat.c:2077 systemv/lpstat.c:2190
+#, c-format
+msgid "\tInterface: %s/interfaces/%s\n"
+msgstr "\tAntarmuka: %s/antarmuka/%s\n"
+
+#: systemv/lpstat.c:2081 systemv/lpstat.c:2194
+#, c-format
+msgid "\tInterface: %s/ppd/%s.ppd\n"
+msgstr "\tAntarmuka: %s/ppd/%s.ppd\n"
+
+#: systemv/lpstat.c:2059 systemv/lpstat.c:2172
+#, c-format
+msgid "\tLocation: %s\n"
+msgstr "\tLokasi: %s\n"
+
+#: systemv/lpstat.c:2083 systemv/lpstat.c:2196
+msgid "\tOn fault: no alert\n"
+msgstr "\tSaat kegagalan: tanpa peringatan\n"
+
+#: systemv/lpstat.c:2088 systemv/lpstat.c:2102 systemv/lpstat.c:2201
+#: systemv/lpstat.c:2215
+msgid "\tUsers allowed:\n"
+msgstr "\tPengguna yang boleh:\n"
+
+#: systemv/lpstat.c:2095 systemv/lpstat.c:2208
+msgid "\tUsers denied:\n"
+msgstr "\tPengguna yang dilarang:\n"
+
+#: berkeley/lpc.c:452
+msgid "\tdaemon present\n"
+msgstr "\tkehadiran daemon\n"
+
+#: berkeley/lpc.c:448
+msgid "\tno entries\n"
+msgstr "\ttak ada entri\n"
+
+#: berkeley/lpc.c:420 berkeley/lpc.c:432
+#, c-format
+msgid "\tprinter is on device '%s' speed -1\n"
+msgstr "\tpencetak pada perangkat '%s' kecepatan -1\n"
+
+#: berkeley/lpc.c:445
+msgid "\tprinting is disabled\n"
+msgstr "\tproses cetak dinonaktifkan\n"
+
+#: berkeley/lpc.c:443
+msgid "\tprinting is enabled\n"
+msgstr "\tproses cetak diaktifkan\n"
+
+#: systemv/lpstat.c:1676
+#, c-format
+msgid "\tqueued for %s\n"
+msgstr "\tantrian untuk %s\n"
+
+#: berkeley/lpc.c:440
+msgid "\tqueuing is disabled\n"
+msgstr "\tantrian dinonaktifkan\n"
+
+#: berkeley/lpc.c:438
+msgid "\tqueuing is enabled\n"
+msgstr "\tantrian diaktifkan\n"
+
+#: systemv/lpstat.c:2032 systemv/lpstat.c:2145
+msgid "\treason unknown\n"
+msgstr "\talasan tak dikenal\n"
+
+#: systemv/cupstestppd.c:363
+msgid ""
+"\n"
+"    DETAILED CONFORMANCE TEST RESULTS\n"
+msgstr ""
+"\n"
+"    DETIL HASIL KECOCOKAN TES\n"
+
+#: systemv/cupstestppd.c:324 systemv/cupstestppd.c:328
+msgid "                REF: Page 15, section 3.1.\n"
+msgstr "                REF: Halaman 15, seksi 3.1.\n"
+
+#: systemv/cupstestppd.c:320
+msgid "                REF: Page 15, section 3.2.\n"
+msgstr "                REF: Halaman 15, seksi 3.2.\n"
+
+#: systemv/cupstestppd.c:336
+msgid "                REF: Page 19, section 3.3.\n"
+msgstr "                REF: Halaman 19, seksi 3.3.\n"
+
+#: systemv/cupstestppd.c:298
+msgid "                REF: Page 20, section 3.4.\n"
+msgstr "                REF: Halaman 20, seksi 3.4.\n"
+
+#: systemv/cupstestppd.c:340
+msgid "                REF: Page 27, section 3.5.\n"
+msgstr "                REF: Halaman 27, seksi 3.5.\n"
+
+#: systemv/cupstestppd.c:294
+msgid "                REF: Page 42, section 5.2.\n"
+msgstr "                REF: Halaman 42, seksi 5.2.\n"
+
+#: systemv/cupstestppd.c:332
+msgid "                REF: Pages 16-17, section 3.2.\n"
+msgstr "                REF: Halaman 16-17, seksi 3.2.\n"
+
+#: systemv/cupstestppd.c:308
+msgid "                REF: Pages 42-45, section 5.2.\n"
+msgstr "                REF: Halaman 42-45, seksi 5.2.\n"
+
+#: systemv/cupstestppd.c:303
+msgid "                REF: Pages 45-46, section 5.2.\n"
+msgstr "                REF: Halaman 45-46, seksi 5.2.\n"
+
+#: systemv/cupstestppd.c:312
+msgid "                REF: Pages 48-49, section 5.2.\n"
+msgstr "                REF: Halaman 48-49, seksi 5.2.\n"
+
+#: systemv/cupstestppd.c:316
+msgid "                REF: Pages 52-54, section 5.2.\n"
+msgstr "                REF: Halaman 52-54, seksi 5.2.\n"
+
+#: berkeley/lpq.c:547
+#, c-format
+msgid "        %-39.39s %.0f bytes\n"
+msgstr "        %-39.39s %.0f bita\n"
+
+#: systemv/cupstestppd.c:480
+#, c-format
+msgid "        PASS    Default%s\n"
+msgstr "        LEWAT    Default%s\n"
+
+#: systemv/cupstestppd.c:417
+msgid "        PASS    DefaultImageableArea\n"
+msgstr "        LEWAT    DefaultImageableArea\n"
+
+#: systemv/cupstestppd.c:451
+msgid "        PASS    DefaultPaperDimension\n"
+msgstr "        LEWAT    DefaultPaperDimension\n"
+
+#: systemv/cupstestppd.c:503
+msgid "        PASS    FileVersion\n"
+msgstr "        LEWAT    FileVersion\n"
+
+#: systemv/cupstestppd.c:523
+msgid "        PASS    FormatVersion\n"
+msgstr "        LEWAT    FormatVersion\n"
+
+#: systemv/cupstestppd.c:543
+msgid "        PASS    LanguageEncoding\n"
+msgstr "        LEWAT    LanguageEncoding\n"
+
+#: systemv/cupstestppd.c:563
+msgid "        PASS    LanguageVersion\n"
+msgstr "        LEWAT    LanguageVersion\n"
+
+#: systemv/cupstestppd.c:615
+msgid "        PASS    Manufacturer\n"
+msgstr "        LEWAT    Manufacturer\n"
+
+#: systemv/cupstestppd.c:655
+msgid "        PASS    ModelName\n"
+msgstr "        LEWAT    ModelName\n"
+
+#: systemv/cupstestppd.c:675
+msgid "        PASS    NickName\n"
+msgstr "        LEWAT    NickName\n"
+
+#: systemv/cupstestppd.c:735
+msgid "        PASS    PCFileName\n"
+msgstr "        LEWAT    PCFileName\n"
+
+#: systemv/cupstestppd.c:810
+msgid "        PASS    PSVersion\n"
+msgstr "        LEWAT    PSVersion\n"
+
+#: systemv/cupstestppd.c:715
+msgid "        PASS    PageRegion\n"
+msgstr "        LEWAT    PageRegion\n"
+
+#: systemv/cupstestppd.c:695
+msgid "        PASS    PageSize\n"
+msgstr "        LEWAT    PageSize\n"
+
+#: systemv/cupstestppd.c:770
+msgid "        PASS    Product\n"
+msgstr "        LEWAT    Product\n"
+
+#: systemv/cupstestppd.c:845
+msgid "        PASS    ShortNickName\n"
+msgstr "        LEWAT    ShortNickName\n"
+
+#: systemv/cupstestppd.c:2364
+#, c-format
+msgid ""
+"        WARN    \"%s %s\" conflicts with \"%s %s\"\n"
+"                (constraint=\"%s %s %s %s\")\n"
+msgstr ""
+"        AWAS    \"%s %s\" konflik dengan \"%s %s\"\n"
+"                (constraint=\"%s %s %s %s\")\n"
+
+#: systemv/cupstestppd.c:1229
+#, c-format
+msgid "        WARN    %s has no corresponding options!\n"
+msgstr "        AWAS    %s tak memiliki opsi yang berkorespondensi!\n"
+
+#: systemv/cupstestppd.c:1353
+#, c-format
+msgid ""
+"        WARN    %s shares a common prefix with %s\n"
+"                REF: Page 15, section 3.2.\n"
+msgstr ""
+"        AWAS    %s berbagi prefiks umum dengan %s\n"
+"                REF: Halaman 15, seksi 3.2.\n"
+
+#: systemv/cupstestppd.c:1254
+msgid "        WARN    Default choices conflicting!\n"
+msgstr "        AWAS    Pilihan utama mengalami konflik!\n"
+
+#: systemv/cupstestppd.c:1244
+#, c-format
+msgid ""
+"        WARN    Duplex option keyword %s should be named Duplex or JCLDuplex!\n"
+"                REF: Page 122, section 5.17\n"
+msgstr ""
+"        AWAS    Pilihan kata kunci Duplex %s seharusnya dinamai Duplex atau JCLDuplex!\n"
+"                REF: Halaman 122, seksi 5.17\n"
+
+#: systemv/cupstestppd.c:1682
+msgid "        WARN    File contains a mix of CR, LF, and CR LF line endings!\n"
+msgstr "        AWAS    Berkas mengandung campuran pada akhir baris CR, LF, dan CR LF!\n"
+
+#: systemv/cupstestppd.c:1270
+msgid ""
+"        WARN    LanguageEncoding required by PPD 4.3 spec.\n"
+"                REF: Pages 56-57, section 5.3.\n"
+msgstr ""
+"        AWAS    LanguageEncoding diperlukan oleh spesifikasi PPD 4.3.\n"
+"                REF: Halaman 56-57, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:1664
+#, c-format
+msgid "        WARN    Line %d only contains whitespace!\n"
+msgstr "        AWAS    Baris %d hanya mengandung spasi!\n"
+
+#: systemv/cupstestppd.c:1278
+msgid ""
+"        WARN    Manufacturer required by PPD 4.3 spec.\n"
+"                REF: Pages 58-59, section 5.3.\n"
+msgstr ""
+"        AWAS    Manufacturer diperlukan oleh spesifikasi PPD 4.3.\n"
+"                REF: Halaman 58-59, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:1409
+#, c-format
+msgid "        WARN    Missing APDialogExtension file \"%s\"\n"
+msgstr "        AWAS    Kehilangan berkas APDialogExtension \"%s\"\n"
+
+#: systemv/cupstestppd.c:1423
+#, c-format
+msgid "        WARN    Missing APPrinterIconPath file \"%s\"\n"
+msgstr "        AWAS    Kehilangan berkas APPrinterIconPath \"%s\"\n"
+
+#: systemv/cupstestppd.c:1392
+#, c-format
+msgid "        WARN    Missing cupsICCProfile file \"%s\"\n"
+msgstr "        AWAS    Kehilangan berkas cupsICCProfile \"%s\"\n"
+
+#: systemv/cupstestppd.c:1687
+msgid "        WARN    Non-Windows PPD files should use lines ending with only LF, not CR LF!\n"
+msgstr "        AWAS    Berkas PPD non-Windows seharusnya hanya berakhir baris LF, bukan CR LF!\n"
+
+#: systemv/cupstestppd.c:1262
+#, c-format
+msgid ""
+"        WARN    Obsolete PPD version %.1f!\n"
+"                REF: Page 42, section 5.2.\n"
+msgstr ""
+"        AWAS    PPD usang versi %.1f!\n"
+"                REF: Halaman 42, seksi 5.2.\n"
+
+#: systemv/cupstestppd.c:1291
+msgid ""
+"        WARN    PCFileName longer than 8.3 in violation of PPD spec.\n"
+"                REF: Pages 61-62, section 5.3.\n"
+msgstr ""
+"        AWAS    PCFileName lebih panjang dari 8.3 melanggar spesifikasi PPD.\n"
+"                REF: Halaman 61-62, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:1325
+msgid ""
+"        WARN    Protocols contains PJL but JCL attributes are not set.\n"
+"                REF: Pages 78-79, section 5.7.\n"
+msgstr ""
+"        AWAS    Protocols mengandung PJL tetapi atribut JCL tidak diset.\n"
+"                REF: Halaman 78-79, seksi 5.7.\n"
+
+#: systemv/cupstestppd.c:1316
+msgid ""
+"        WARN    Protocols contains both PJL and BCP; expected TBCP.\n"
+"                REF: Pages 78-79, section 5.7.\n"
+msgstr ""
+"        AWAS    Protocols mengandung PJL dan BCP; diharapkan TBCP.\n"
+"                REF: Halaman 78-79, seksi 5.7.\n"
+
+#: systemv/cupstestppd.c:1299
+msgid ""
+"        WARN    ShortNickName required by PPD 4.3 spec.\n"
+"                REF: Pages 64-65, section 5.3.\n"
+msgstr ""
+"        AWAS    ShortNickName diperlukan oleh spesifikasi PPD 4.3.\n"
+"                REF: Halaman 64-65, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:1831
+#, c-format
+msgid "      %s  %s %s does not exist!\n"
+msgstr "      %s  %s %s tidak ada!\n"
+
+#: systemv/cupstestppd.c:2095
+#, c-format
+msgid "      %s  Bad UTF-8 \"%s\" translation string for option %s!\n"
+msgstr "      %s  UTF-8 jelek \"%s\" string translasi untuk pilihan %s!\n"
+
+#: systemv/cupstestppd.c:2125 systemv/cupstestppd.c:2174
+#: systemv/cupstestppd.c:2213
+#, c-format
+msgid "      %s  Bad UTF-8 \"%s\" translation string for option %s, choice %s!\n"
+msgstr "      %s  UTF-8 jelek \"%s\" string translasi untuk %s, pilihan %s!\n"
+
+#: systemv/cupstestppd.c:1882
+#, c-format
+msgid "      %s  Bad cupsFilter value \"%s\"!\n"
+msgstr "      %s  cupsFilter jelek nilai \"%s\"!\n"
+
+#: systemv/cupstestppd.c:1933
+#, c-format
+msgid "      %s  Bad cupsPreFilter value \"%s\"!\n"
+msgstr "      %s  cupsPreFilter jelek nilai \"%s\"!\n"
+
+#: systemv/cupstestppd.c:2046
+#, c-format
+msgid "      %s  Bad language \"%s\"!\n"
+msgstr "      %s  Bahasa jelek \"%s\"!\n"
+
+#: systemv/cupstestppd.c:2081
+#, c-format
+msgid "      %s  Missing \"%s\" translation string for option %s!\n"
+msgstr "      %s  Kehilangan \"%s\" string translasi untuk opsi %s!\n"
+
+#: systemv/cupstestppd.c:2157 systemv/cupstestppd.c:2197
+#, c-format
+msgid "      %s  Missing \"%s\" translation string for option %s, choice %s!\n"
+msgstr "      %s  Kehilangan \"%s\" string translasi untuk opsi %s, pilihan %s!\n"
+
+#: systemv/cupstestppd.c:1749 systemv/cupstestppd.c:1764
+#, c-format
+msgid "      %s  Missing choice *%s %s in UIConstraint \"*%s %s *%s %s\"!\n"
+msgstr "      %s  Kehilangan pilihan *%s %s pada UIConstraint \"*%s %s *%s %s\"!\n"
+
+#: systemv/cupstestppd.c:1911
+#, c-format
+msgid "      %s  Missing cupsFilter file \"%s\"\n"
+msgstr "      %s  Kehilangan berkas cupsFilter \"%s\"\n"
+
+#: systemv/cupstestppd.c:1962
+#, c-format
+msgid "      %s  Missing cupsPreFilter file \"%s\"\n"
+msgstr "      %s  Kehilangan berkas cupsPreFilter \"%s\"\n"
+
+#: systemv/cupstestppd.c:1725 systemv/cupstestppd.c:1732
+#, c-format
+msgid "      %s  Missing option %s in UIConstraint \"*%s %s *%s %s\"!\n"
+msgstr "      %s  Kehilangan opsi %s pada UIConstraint \"*%s %s *%s %s\"!\n"
+
+#: systemv/cupstestppd.c:2250
+#, c-format
+msgid "      %s  No base translation \"%s\" is included in file!\n"
+msgstr "      %s  Tidak ada basis translasi \"%s\" yang disertakan pada berkas!\n"
+
+#: systemv/cupstestppd.c:1060
+#, c-format
+msgid ""
+"      **FAIL**  %s must be 1284DeviceID!\n"
+"                REF: Page 72, section 5.5\n"
+msgstr ""
+"      **GAGAL**  %s seharusnya 1284DeviceID!\n"
+"                 REF: Halaman 72, seksi 5.5\n"
+
+#: systemv/cupstestppd.c:471
+#, c-format
+msgid ""
+"      **FAIL**  BAD Default%s %s\n"
+"                REF: Page 40, section 4.5.\n"
+msgstr ""
+"      **GAGAL**  Default%s %s JELEK\n"
+"                 REF: Halaman 40, seksi 4.5.\n"
+
+#: systemv/cupstestppd.c:407
+#, c-format
+msgid ""
+"      **FAIL**  BAD DefaultImageableArea %s!\n"
+"                REF: Page 102, section 5.15.\n"
+msgstr ""
+"      **GAGAL**  DefaultImageableArea %s JELEK!\n"
+"                 REF: Halaman 102, seksi 5.15.\n"
+
+#: systemv/cupstestppd.c:443
+#, c-format
+msgid ""
+"      **FAIL**  BAD DefaultPaperDimension %s!\n"
+"                REF: Page 103, section 5.15.\n"
+msgstr ""
+"      **GAGAL**  DefaultPaperDimension %s JELEK!\n"
+"                 REF: Halaman 103, seksi 5.15.\n"
+
+#: systemv/cupstestppd.c:871
+msgid ""
+"      **FAIL**  BAD JobPatchFile attribute in file\n"
+"                REF: Page 24, section 3.4.\n"
+msgstr ""
+"      **GAGAL**  Atribut JELEK JobPatchFile dalam berkas\n"
+"                 REF: Halaman 24, seksi 3.4.\n"
+
+#: systemv/cupstestppd.c:591
+msgid ""
+"      **FAIL**  BAD Manufacturer (should be \"HP\")\n"
+"                REF: Page 211, table D.1.\n"
+msgstr ""
+"      **GAGAL**  Manufacturer JELEK (seharusnya \"HP\")\n"
+"                 REF: Halaman 211, tabel D.1.\n"
+
+#: systemv/cupstestppd.c:607
+msgid ""
+"      **FAIL**  BAD Manufacturer (should be \"Oki\")\n"
+"                REF: Page 211, table D.1.\n"
+msgstr ""
+"      **GAGAL**  Manufacturer JELEK (seharusnya \"Oki\")\n"
+"                 REF: Halaman 211, tabel D.1.\n"
+
+#: systemv/cupstestppd.c:646
+#, c-format
+msgid ""
+"      **FAIL**  BAD ModelName - \"%c\" not allowed in string.\n"
+"                REF: Pages 59-60, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  ModelName JELEK - \"%c\" tidak diperbolehkan dalam string.\n"
+"                 REF: Halaman 59-60, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:802
+msgid ""
+"      **FAIL**  BAD PSVersion - not \"(string) int\".\n"
+"                REF: Pages 62-64, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  PSVersion JELEK - bukan \"(string) int\".\n"
+"                 REF: Halaman 62-64, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:763
+msgid ""
+"      **FAIL**  BAD Product - not \"(string)\".\n"
+"                REF: Page 62, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  Product JELEK - bukan \"(string)\".\n"
+"                 REF: Halaman 62, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:837
+msgid ""
+"      **FAIL**  BAD ShortNickName - longer than 31 chars.\n"
+"                REF: Pages 64-65, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  ShortNickName JELEK - lebih dari 31 karakter.\n"
+"                 REF: Halaman 64-65, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:1042
+#, c-format
+msgid ""
+"      **FAIL**  Bad %s choice %s!\n"
+"                REF: Page 122, section 5.17\n"
+msgstr ""
+"      **GAGAL**  %s jelek pilihan %s!\n"
+"                 REF: Halaman 122, seksi 5.17\n"
+
+#: systemv/cupstestppd.c:992
+#, c-format
+msgid ""
+"      **FAIL**  Bad %s choice %s!\n"
+"                REF: Page 84, section 5.9\n"
+msgstr ""
+"      **GAGAL**  %s jelek pilihan %s!\n"
+"                 REF: Halaman 84, seksi 5.9\n"
+
+#: systemv/cupstestppd.c:1094
+#, c-format
+msgid "      **FAIL**  Bad LanguageEncoding %s - must be ISOLatin1!\n"
+msgstr "      **GAGAL**  LanguageEncoding %s jelek - seharusnya ISOLatin1!\n"
+
+#: systemv/cupstestppd.c:1108
+#, c-format
+msgid "      **FAIL**  Bad LanguageVersion %s - must be English!\n"
+msgstr "      **GAGAL**  LanguageVersion %s jelek - seharusnya English!\n"
+
+#: systemv/cupstestppd.c:2391
+#, c-format
+msgid "      **FAIL**  Default option code cannot be interpreted: %s\n"
+msgstr "      **GAGAL**  Kode pilihan utama tidak bisa diinterpretasikan: %s\n"
+
+#: systemv/cupstestppd.c:1167
+#, c-format
+msgid "      **FAIL**  Default translation string for option %s choice %s contains 8-bit characters!\n"
+msgstr "      **GAGAL**  String translasi utama untuk opsi %s pilihan %s mengandung karakter 8-bit!\n"
+
+#: systemv/cupstestppd.c:1140
+#, c-format
+msgid "      **FAIL**  Default translation string for option %s contains 8-bit characters!\n"
+msgstr "      **GAGAL**  String translasi utama untuk opsi %s mengandung karakter 8-bit!\n"
+
+#: systemv/cupstestppd.c:1021
+#, c-format
+msgid ""
+"      **FAIL**  REQUIRED %s does not define choice None!\n"
+"                REF: Page 122, section 5.17\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN %s, bukan malah memilih None (Nihil)!\n"
+"                 REF: Halaman 122, seksi 5.17\n"
+
+#: systemv/cupstestppd.c:491
+#, c-format
+msgid ""
+"      **FAIL**  REQUIRED Default%s\n"
+"                REF: Page 40, section 4.5.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN Default%s\n"
+"                 REF: Halaman 40, seksi 4.5.\n"
+
+#: systemv/cupstestppd.c:392
+msgid ""
+"      **FAIL**  REQUIRED DefaultImageableArea\n"
+"                REF: Page 102, section 5.15.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN DefaultImageableArea\n"
+"                 REF: Halaman 102, seksi 5.15.\n"
+
+#: systemv/cupstestppd.c:428
+msgid ""
+"      **FAIL**  REQUIRED DefaultPaperDimension\n"
+"                REF: Page 103, section 5.15.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN DefaultPaperDimension\n"
+"                 REF: Halaman 103, seksi 5.15.\n"
+
+#: systemv/cupstestppd.c:513
+msgid ""
+"      **FAIL**  REQUIRED FileVersion\n"
+"                REF: Page 56, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN FileVersion\n"
+"                 REF: Halaman 56, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:533
+msgid ""
+"      **FAIL**  REQUIRED FormatVersion\n"
+"                REF: Page 56, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN FormatVersion\n"
+"                 REF: Halaman 56, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:922
+#, c-format
+msgid ""
+"      **FAIL**  REQUIRED ImageableArea for PageSize %s\n"
+"                REF: Page 41, section 5.\n"
+"                REF: Page 102, section 5.15.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN ImageableArea untuk PageSize %s\n"
+"                 REF: Halaman 41, seksi 5.\n"
+"                 REF: Halaman 102, seksi 5.15.\n"
+
+#: systemv/cupstestppd.c:553
+msgid ""
+"      **FAIL**  REQUIRED LanguageEncoding\n"
+"                REF: Pages 56-57, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN LanguageEncoding\n"
+"                 REF: Halaman 56-57, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:573
+msgid ""
+"      **FAIL**  REQUIRED LanguageVersion\n"
+"                REF: Pages 57-58, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN LanguageVersion\n"
+"                 REF: Halaman 57-58, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:625
+msgid ""
+"      **FAIL**  REQUIRED Manufacturer\n"
+"                REF: Pages 58-59, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN Manufacturer\n"
+"                 REF: Halaman 58-59, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:665
+msgid ""
+"      **FAIL**  REQUIRED ModelName\n"
+"                REF: Pages 59-60, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN ModelName\n"
+"                 REF: Halaman 59-60, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:685
+msgid ""
+"      **FAIL**  REQUIRED NickName\n"
+"                REF: Page 60, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN NickName\n"
+"                 REF: Halaman 60, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:745
+msgid ""
+"      **FAIL**  REQUIRED PCFileName\n"
+"                REF: Pages 61-62, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN PCFileName\n"
+"                 REF: Halaman 61-62, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:820
+msgid ""
+"      **FAIL**  REQUIRED PSVersion\n"
+"                REF: Pages 62-64, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN PSVersion\n"
+"                 REF: Halaman 62-64, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:725
+msgid ""
+"      **FAIL**  REQUIRED PageRegion\n"
+"                REF: Page 100, section 5.14.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN PageRegion\n"
+"                 REF: Halaman 100, seksi 5.14.\n"
+
+#: systemv/cupstestppd.c:891
+msgid ""
+"      **FAIL**  REQUIRED PageSize\n"
+"                REF: Page 41, section 5.\n"
+"                REF: Page 99, section 5.14.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN PageSize\n"
+"                 REF: Halaman 41, seksi 5.\n"
+"                 REF: Halaman 99, seksi 5.14.\n"
+
+#: systemv/cupstestppd.c:705
+msgid ""
+"      **FAIL**  REQUIRED PageSize\n"
+"                REF: Pages 99-100, section 5.14.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN PageSize\n"
+"                 REF: Halaman 99-100, seksi 5.14.\n"
+
+#: systemv/cupstestppd.c:944
+#, c-format
+msgid ""
+"      **FAIL**  REQUIRED PaperDimension for PageSize %s\n"
+"                REF: Page 41, section 5.\n"
+"                REF: Page 103, section 5.15.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN PaperDimension untuk PageSize %s\n"
+"                 REF: Halaman 41, seksi 5.\n"
+"                 REF: Halaman 103, seksi 5.15.\n"
+
+#: systemv/cupstestppd.c:780
+msgid ""
+"      **FAIL**  REQUIRED Product\n"
+"                REF: Page 62, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN Product\n"
+"                 REF: Halaman 62, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:855
+msgid ""
+"      **FAIL**  REQUIRED ShortNickName\n"
+"                REF: Page 64-65, section 5.3.\n"
+msgstr ""
+"      **GAGAL**  DIPERLUKAN ShortNickName\n"
+"                 REF: Halaman 64-65, seksi 5.3.\n"
+
+#: systemv/cupstestppd.c:1432
+#, c-format
+msgid "    %d ERRORS FOUND\n"
+msgstr "    %d KESALAHAN DITEMUKAN\n"
+
+#: systemv/cupstestdsc.c:239 systemv/cupstestdsc.c:281
+#, c-format
+msgid ""
+"    Bad %%%%BoundingBox: on line %d!\n"
+"        REF: Page 39, %%%%BoundingBox:\n"
+msgstr ""
+"    %%%%BoundingBox jelek: pada baris %d!\n"
+"        REF: Halaman 39, %%%%BoundingBox:\n"
+
+#: systemv/cupstestdsc.c:310
+#, c-format
+msgid ""
+"    Bad %%%%Page: on line %d!\n"
+"        REF: Page 53, %%%%Page:\n"
+msgstr ""
+"    %%%%Page jelek: pada baris %d!\n"
+"        REF: Halaman 53, %%%%Page:\n"
+
+#: systemv/cupstestdsc.c:223 systemv/cupstestdsc.c:263
+#, c-format
+msgid ""
+"    Bad %%%%Pages: on line %d!\n"
+"        REF: Page 43, %%%%Pages:\n"
+msgstr ""
+"    %%%%Page jelek: pada baris %d!\n"
+"        REF: Halaman 43, %%%%Page:\n"
+
+#: systemv/cupstestdsc.c:180
+#, c-format
+msgid ""
+"    Line %d is longer than 255 characters (%d)!\n"
+"        REF: Page 25, Line Length\n"
+msgstr ""
+"    Baris %d lebih dari 255 karakter (%d)!\n"
+"        REF: Halaman 25, Line Length (Panjang Baris)\n"
+
+#: systemv/cupstestdsc.c:197
+msgid ""
+"    Missing %!PS-Adobe-3.0 on first line!\n"
+"        REF: Page 17, 3.1 Conforming Documents\n"
+msgstr ""
+"    Kehilangan %!PS-Adobe-3.0 pada baris pertama!\n"
+"        REF: Halaman 17, 3.1 Conforming Documents (Menyesuaikan Dokumen)\n"
+
+#: systemv/cupstestdsc.c:367
+#, c-format
+msgid ""
+"    Missing %%EndComments comment!\n"
+"        REF: Page 41, %%EndComments\n"
+msgstr ""
+"    Kehilangan komentar %%EndComments!\n"
+"        REF: Halaman 41, %%EndComments\n"
+
+#: systemv/cupstestdsc.c:347
+#, c-format
+msgid ""
+"    Missing or bad %%BoundingBox: comment!\n"
+"        REF: Page 39, %%BoundingBox:\n"
+msgstr ""
+"    Kehilangan atau %%BoundingBox jelek: komentar!\n"
+"        REF: Halaman 39, %%BoundingBox:\n"
+
+#: systemv/cupstestdsc.c:377
+#, c-format
+msgid ""
+"    Missing or bad %%Page: comments!\n"
+"        REF: Page 53, %%Page:\n"
+msgstr ""
+"    Kehilangan atau %%Page jelek: komentar!\n"
+"        REF: Halaman 53, %%Page:\n"
+
+#: systemv/cupstestdsc.c:357
+#, c-format
+msgid ""
+"    Missing or bad %%Pages: comment!\n"
+"        REF: Page 43, %%Pages:\n"
+msgstr ""
+"    Kehilangan atau %%Pages jelek: komentar!\n"
+"        REF: Halaman 43, %%Pages:\n"
+
+#: systemv/cupstestppd.c:1434
+msgid "    NO ERRORS FOUND\n"
+msgstr "    TIDAK ADA KESALAHAN\n"
+
+#: systemv/cupstestdsc.c:400
+#, c-format
+msgid "    Saw %d lines that exceeded 255 characters!\n"
+msgstr "    Menemukan %d baris yang melebihi 255 karakter!\n"
+
+#: systemv/cupstestdsc.c:395
+#, c-format
+msgid "    Too many %%BeginDocument comments!\n"
+msgstr "    Terlalu banyak komentar %%BeginDocument!\n"
+
+#: systemv/cupstestdsc.c:387
+#, c-format
+msgid "    Too many %%EndDocument comments!\n"
+msgstr "    Terlalu banyak komentar %%EndDocument!\n"
+
+#: systemv/cupstestdsc.c:407
+msgid "    Warning: file contains binary data!\n"
+msgstr "    Peringatan: berkas mengandung data biner!\n"
+
+#: systemv/cupstestdsc.c:415
+#, c-format
+msgid "    Warning: no %%EndComments comment in file!\n"
+msgstr "    Peringatan: tak ada komentar %%EndComments dalam berkas!\n"
+
+#: systemv/cupstestdsc.c:411
+#, c-format
+msgid "    Warning: obsolete DSC version %.1f in file!\n"
+msgstr "    Peringatan: DSC usang versi %.1f dalam berkas!\n"
+
+#: systemv/cupstestppd.c:389 systemv/cupstestppd.c:404
+#: systemv/cupstestppd.c:425 systemv/cupstestppd.c:440
+#: systemv/cupstestppd.c:468 systemv/cupstestppd.c:488
+#: systemv/cupstestppd.c:510 systemv/cupstestppd.c:530
+#: systemv/cupstestppd.c:550 systemv/cupstestppd.c:570
+#: systemv/cupstestppd.c:588 systemv/cupstestppd.c:604
+#: systemv/cupstestppd.c:622 systemv/cupstestppd.c:643
+#: systemv/cupstestppd.c:662 systemv/cupstestppd.c:682
+#: systemv/cupstestppd.c:702 systemv/cupstestppd.c:722
+#: systemv/cupstestppd.c:742 systemv/cupstestppd.c:760
+#: systemv/cupstestppd.c:777 systemv/cupstestppd.c:799
+#: systemv/cupstestppd.c:817 systemv/cupstestppd.c:834
+#: systemv/cupstestppd.c:852 systemv/cupstestppd.c:868
+#: systemv/cupstestppd.c:888 systemv/cupstestppd.c:919
+#: systemv/cupstestppd.c:941 systemv/cupstestppd.c:989
+#: systemv/cupstestppd.c:1018 systemv/cupstestppd.c:1039
+#: systemv/cupstestppd.c:1057 systemv/cupstestppd.c:1090
+#: systemv/cupstestppd.c:1104 systemv/cupstestppd.c:1136
+#: systemv/cupstestppd.c:1163 systemv/cupstestppd.c:1721
+#: systemv/cupstestppd.c:1746 systemv/cupstestppd.c:1761
+#: systemv/cupstestppd.c:1827 systemv/cupstestppd.c:1878
+#: systemv/cupstestppd.c:1908 systemv/cupstestppd.c:1929
+#: systemv/cupstestppd.c:1959 systemv/cupstestppd.c:2042
+#: systemv/cupstestppd.c:2077 systemv/cupstestppd.c:2091
+#: systemv/cupstestppd.c:2121 systemv/cupstestppd.c:2153
+#: systemv/cupstestppd.c:2170 systemv/cupstestppd.c:2193
+#: systemv/cupstestppd.c:2209 systemv/cupstestppd.c:2246
+#: systemv/cupstestppd.c:2387
+msgid " FAIL\n"
+msgstr " GAGAL\n"
+
+#: systemv/cupstestppd.c:274
+#, c-format
+msgid ""
+" FAIL\n"
+"      **FAIL**  Unable to open PPD file - %s\n"
+msgstr ""
+" GAGAL\n"
+"      **GAGAL**  Tak bisa membuka berkas PPD - %s\n"
+
+#: systemv/cupstestppd.c:285
+#, c-format
+msgid ""
+" FAIL\n"
+"      **FAIL**  Unable to open PPD file - %s on line %d.\n"
+msgstr ""
+" GAGAL\n"
+"      **GAGAL**  Tak bisa membuka berkas PPD - %s pada baris %d.\n"
+
+#: systemv/cupstestppd.c:1187
+msgid " PASS\n"
+msgstr " LEWAT\n"
+
+#: berkeley/lpq.c:553
+#, c-format
+msgid "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bytes\n"
+msgstr "%-6s %-10.10s %-4d %-10d %-27.27s %.0f bita\n"
+
+#: berkeley/lpq.c:558
+#, c-format
+msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes\n"
+msgstr "%-7s %-7.7s %-7d %-31.31s %.0f bita\n"
+
+#: systemv/lpstat.c:762
+#, c-format
+msgid "%s accepting requests since %s\n"
+msgstr "%s menerima permintaan sejak %s\n"
+
+#: scheduler/ipp.c:9002
+#, c-format
+msgid "%s cannot be changed."
+msgstr "%s tidak bisa diubah."
+
+#: berkeley/lpc.c:194
+#, c-format
+msgid "%s is not implemented by the CUPS version of lpc.\n"
+msgstr "%s tidak diimplementasikan oleh versi lpc CUPS.\n"
+
+#: berkeley/lpq.c:644
+#, c-format
+msgid "%s is not ready\n"
+msgstr "%s tidak siap\n"
+
+#: berkeley/lpq.c:637
+#, c-format
+msgid "%s is ready\n"
+msgstr "%s siap\n"
+
+#: berkeley/lpq.c:640
+#, c-format
+msgid "%s is ready and printing\n"
+msgstr "%s siap dan sedang mencetak\n"
+
+#: systemv/lpstat.c:765
+#, c-format
+msgid ""
+"%s not accepting requests since %s -\n"
+"\t%s\n"
+msgstr ""
+"%s tidak menerima permintaan sejak %s -\n"
+"\t%s\n"
+
+#: scheduler/ipp.c:627
+#, c-format
+msgid "%s not supported!"
+msgstr "%s tak didukung!"
+
+#: systemv/lpstat.c:774
+#, c-format
+msgid "%s/%s accepting requests since %s\n"
+msgstr "%s/%s menerima permintaan sejak %s\n"
+
+#: systemv/lpstat.c:777
+#, c-format
+msgid ""
+"%s/%s not accepting requests since %s -\n"
+"\t%s\n"
+msgstr ""
+"%s/%s tidak menerima permintaan sejak %s -\n"
+"\t%s\n"
+
+#: berkeley/lpq.c:545
+#, c-format
+msgid "%s: %-33.33s [job %d localhost]\n"
+msgstr "%s: %-33.33s [tugas %d localhost]\n"
+
+#: systemv/cancel.c:304 systemv/cancel.c:368
+#, c-format
+msgid "%s: %s failed: %s\n"
+msgstr "%s: %s gagal: %s\n"
+
+#: systemv/accept.c:75
+#, c-format
+msgid "%s: Don't know what to do!\n"
+msgstr "%s: Tidak tahu apa yang hendak dikerjakan!\n"
+
+#: berkeley/lpr.c:392 systemv/lp.c:630
+#, c-format
+msgid "%s: Error - %s environment variable names non-existent destination \"%s\"!\n"
+msgstr "%s: Kesalahan - Nama variabel lingkungan %s sebenarnya tidak ada \"%s\"!\n"
+
+#: systemv/lp.c:268
+#, c-format
+msgid "%s: Error - bad job ID!\n"
+msgstr "%s: Kesalahan - ID tugas jelek!\n"
+
+#: systemv/lp.c:255
+#, c-format
+msgid "%s: Error - cannot print files and alter jobs simultaneously!\n"
+msgstr "%s: Kesalahan - tidak bisa mencetak dan mengubah tugas secara bersamaan!\n"
+
+#: systemv/lp.c:547
+#, c-format
+msgid "%s: Error - cannot print from stdin if files or a job ID are provided!\n"
+msgstr "%s: Kesalahan - tak bisa mencetak dari stdin apabila berkas atau ID tugas disediakan!\n"
+
+#: systemv/lp.c:501
+#, c-format
+msgid "%s: Error - expected character set after '-S' option!\n"
+msgstr "%s: Kesalahan - diharapkan set karakter usai opsi '-S'!\n"
+
+#: systemv/lp.c:521
+#, c-format
+msgid "%s: Error - expected content type after '-T' option!\n"
+msgstr "%s: Kesalahan - diharapkan jenis isi usai opsi '-T'!\n"
+
+#: systemv/lp.c:301
+#, c-format
+msgid "%s: Error - expected copies after '-n' option!\n"
+msgstr "%s: Kesalahan - diharapkan banyaknya rangkap usai opsi '-n'!\n"
+
+#: berkeley/lpr.c:284
+#, c-format
+msgid "%s: Error - expected copy count after '-#' option!\n"
+msgstr "%s: Kesalahan - diharapkan banyak hitungan rangkap usai opsi '-#'!\n"
+
+#: berkeley/lpr.c:249
+#, c-format
+msgid "%s: Error - expected destination after '-P' option!\n"
+msgstr "%s: Kesalahan - diharapkan tujuan usai opsi '-P'!\n"
+
+#: systemv/lpstat.c:231
+#, c-format
+msgid "%s: Error - expected destination after '-b' option!\n"
+msgstr "%s: Kesalahan - diharapkan tujuan usai opsi '-b'!\n"
+
+#: systemv/lp.c:170
+#, c-format
+msgid "%s: Error - expected destination after '-d' option!\n"
+msgstr "%s: Kesalahan - diharapkan tujuan usai opsi '-d'!\n"
+
+#: systemv/lp.c:203
+#, c-format
+msgid "%s: Error - expected form after '-f' option!\n"
+msgstr "%s: Kesalahan - diharapkan formulir/bentuk usai opsi '-f'!\n"
+
+#: systemv/lp.c:432
+#, c-format
+msgid "%s: Error - expected hold name after '-H' option!\n"
+msgstr "%s: Kesalahan - diharapkan nama yang ditahan usai opsi '-H'!\n"
+
+#: berkeley/lpr.c:141
+#, c-format
+msgid "%s: Error - expected hostname after '-H' option!\n"
+msgstr "%s: Kesalahan - diharapkan nama host usai opsi '-H'!\n"
+
+#: berkeley/lpq.c:188 berkeley/lprm.c:155 systemv/accept.c:139
+#: systemv/cancel.c:131 systemv/lp.c:224 systemv/lpstat.c:294
+#, c-format
+msgid "%s: Error - expected hostname after '-h' option!\n"
+msgstr "%s: Kesalahan - diharapkan nama host usai opsi '-h'!\n"
+
+#: systemv/lp.c:410
+#, c-format
+msgid "%s: Error - expected mode list after '-y' option!\n"
+msgstr "%s: Kesalahan - diharapkan daftar mode usai opsi '-y'!\n"
+
+#: berkeley/lpr.c:308
+#, c-format
+msgid "%s: Error - expected name after '-%c' option!\n"
+msgstr "%s: Kesalahan - diharapkan nama usai opsi '-%c'!\n"
+
+#: systemv/lp.c:324
+#, c-format
+msgid "%s: Error - expected option string after '-o' option!\n"
+msgstr "%s: Kesalahan - diharapkan opsi string usai opsi '-o'!\n"
+
+#: systemv/lp.c:480
+#, c-format
+msgid "%s: Error - expected page list after '-P' option!\n"
+msgstr "%s: Kesalahan - diharapkan daftar halaman usai opsi '-P'!\n"
+
+#: systemv/lp.c:345
+#, c-format
+msgid "%s: Error - expected priority after '-%c' option!\n"
+msgstr "%s: Kesalahan - diharapkan prioritas usai opsi '-%c'!\n"
+
+#: systemv/accept.c:158
+#, c-format
+msgid "%s: Error - expected reason text after '-r' option!\n"
+msgstr "%s: Kesalahan - diharapkan teks alasan usai opsi '-r'!\n"
+
+#: systemv/lp.c:392
+#, c-format
+msgid "%s: Error - expected title after '-t' option!\n"
+msgstr "%s: Kesalahan - diharapkan judul usai opsi '-t'!\n"
+
+#: berkeley/lpq.c:117 berkeley/lpr.c:121 berkeley/lprm.c:135
+#: systemv/accept.c:113 systemv/cancel.c:100 systemv/lpadmin.c:471
+#: systemv/lp.c:147 systemv/lpstat.c:138
+#, c-format
+msgid "%s: Error - expected username after '-U' option!\n"
+msgstr "%s: Kesalahan - diharapkan nama pengguna usai opsi '-U'!\n"
+
+#: systemv/cancel.c:153
+#, c-format
+msgid "%s: Error - expected username after '-u' option!\n"
+msgstr "%s: Kesalahan - diharapkan nama pengguna usai opsi '-u'!\n"
+
+#: berkeley/lpr.c:164
+#, c-format
+msgid "%s: Error - expected value after '-%c' option!\n"
+msgstr "%s: Kesalahan - diharapkan nilai usai opsi '-%c'!\n"
+
+#: systemv/lpstat.c:158 systemv/lpstat.c:172
+#, c-format
+msgid "%s: Error - need \"completed\", \"not-completed\", or \"all\" after '-W' option!\n"
+msgstr "%s: Kesalahan - diperlukan \"completed\", \"not-completed\", atau \"all\" usai opsi '-W'!\n"
+
+#: berkeley/lpr.c:397 systemv/lp.c:635
+#, c-format
+msgid "%s: Error - no default destination available.\n"
+msgstr "%s: Kesalahan - tidak tersedia tujuan utama.\n"
+
+#: systemv/lp.c:368
+#, c-format
+msgid "%s: Error - priority must be between 1 and 100.\n"
+msgstr "%s: Kesalahan - prioritas harus antara 1 dan 100.\n"
+
+#: berkeley/lpr.c:401 systemv/lp.c:639
+#, c-format
+msgid "%s: Error - scheduler not responding!\n"
+msgstr "%s: Kesalahan - penjadwal tidak merespon!\n"
+
+#: berkeley/lpr.c:475 systemv/lp.c:702
+#, c-format
+msgid "%s: Error - stdin is empty, so no job has been sent.\n"
+msgstr "%s: Kesalahan - stdin telah kosong, jadi tidak ada tugas yang dikirim.\n"
+
+#: berkeley/lpr.c:350 systemv/lp.c:580
+#, c-format
+msgid "%s: Error - too many files - \"%s\"\n"
+msgstr "%s: Kesalahan - terlalu banyak berkas - \"%s\"\n"
+
+#: berkeley/lpr.c:332 systemv/lp.c:563
+#, c-format
+msgid "%s: Error - unable to access \"%s\" - %s\n"
+msgstr "%s: Kesalahan - tak bisa mengakses \"%s\" - %s\n"
+
+#: berkeley/lpr.c:451 systemv/lp.c:679
+#, c-format
+msgid "%s: Error - unable to create temporary file \"%s\" - %s\n"
+msgstr "%s: Kesalahan - tak bisa membuat berkas temporer \"%s\" - %s\n"
+
+#: berkeley/lpr.c:461 systemv/lp.c:688
+#, c-format
+msgid "%s: Error - unable to write to temporary file \"%s\" - %s\n"
+msgstr "%s: Kesalahan - tak bisa menulis berkas temporer \"%s\" - %s\n"
+
+#: berkeley/lprm.c:118 systemv/cancel.c:223
+#, c-format
+msgid "%s: Error - unknown destination \"%s\"!\n"
+msgstr "%s: Kesalahan - tujuan tak dikenal \"%s\"!\n"
+
+#: berkeley/lpq.c:157
+#, c-format
+msgid "%s: Error - unknown destination \"%s/%s\"!\n"
+msgstr "%s: Kesalahan - tujuan tak dikenal \"%s/%s\"!\n"
+
+#: berkeley/lpr.c:319 berkeley/lprm.c:181 systemv/accept.c:169
+#: systemv/cancel.c:165 systemv/lp.c:538 systemv/lpstat.c:455
+#, c-format
+msgid "%s: Error - unknown option '%c'!\n"
+msgstr "%s: Kesalahan - opsi tak dikenal '%c'!\n"
+
+#: systemv/lp.c:244
+#, c-format
+msgid "%s: Expected job ID after '-i' option!\n"
+msgstr "%s: Diharapkan ID tugas usai opsi '-i'!\n"
+
+#: systemv/lpstat.c:528
+#, c-format
+msgid "%s: Invalid destination name in list \"%s\"!\n"
+msgstr "%s: Nama tujuan tak sah pada daftar \"%s\"!\n"
+
+#: systemv/lp.c:456
+#, c-format
+msgid "%s: Need job ID ('-i jobid') before '-H restart'!\n"
+msgstr "%s: Memerlukan ID tugas ('-i jobid') sebelum '-H restart'!\n"
+
+#: scheduler/cupsfilter.c:388
+#, c-format
+msgid "%s: No filter to convert from %s/%s to %s/%s!\n"
+msgstr "%s: Tidak ada filter untuk konversi dari %s/%s ke %s/%s!\n"
+
+#: systemv/accept.c:223
+#, c-format
+msgid "%s: Operation failed: %s\n"
+msgstr "%s: Operasi gagal: %s\n"
+
+#: berkeley/lpq.c:103 berkeley/lpr.c:107 berkeley/lprm.c:98
+#: systemv/accept.c:99 systemv/cancel.c:86 systemv/cupsaddsmb.c:91
+#: systemv/lpadmin.c:277 systemv/lp.c:133 systemv/lpinfo.c:73
+#: systemv/lpmove.c:82 systemv/lpstat.c:110
+#, c-format
+msgid "%s: Sorry, no encryption support compiled in!\n"
+msgstr "%s: Maaf, tidak ada dukungan enkripsi yang dikompilasi!\n"
+
+#: berkeley/lpq.c:304 systemv/cupsaddsmb.c:149 systemv/cupsaddsmb.c:170
+#: systemv/lpstat.c:565
+#, c-format
+msgid "%s: Unable to connect to server\n"
+msgstr "%s: Tak bisa terhubung ke server\n"
+
+#: systemv/accept.c:185
+#, c-format
+msgid "%s: Unable to connect to server: %s\n"
+msgstr "%s: Tak bisa terhubung ke server: %s\n"
+
+#: systemv/cancel.c:246 systemv/cancel.c:327
+#, c-format
+msgid "%s: Unable to contact server!\n"
+msgstr "%s: Tak bisa mengontak server!\n"
+
+#: scheduler/cupsfilter.c:358
+#, c-format
+msgid "%s: Unable to determine MIME type of \"%s\"!\n"
+msgstr "%s: Tak bisa menentukan jenis MIME dari \"%s\"!\n"
+
+#: scheduler/cupsfilter.c:335
+#, c-format
+msgid "%s: Unable to read MIME database from \"%s\"!\n"
+msgstr "%s: Tak bisa membaca basis data MIME dari \"%s\"!\n"
+
+#: berkeley/lpq.c:161 systemv/lpstat.c:543
+#, c-format
+msgid "%s: Unknown destination \"%s\"!\n"
+msgstr "%s: Tujuan tak dikenal \"%s\"!\n"
+
+#: scheduler/cupsfilter.c:367
+#, c-format
+msgid "%s: Unknown destination MIME type %s/%s!\n"
+msgstr "%s: Tujuan jenis MIME tak dikenal %s/%s!\n"
+
+#: scheduler/cupsfilter.c:949
+#, c-format
+msgid "%s: Unknown option '%c'!\n"
+msgstr "%s: Opsi tak dikenal '%c'!\n"
+
+#: scheduler/cupsfilter.c:350
+#, c-format
+msgid "%s: Unknown source MIME type %s/%s!\n"
+msgstr "%s: Sumber jenis MIME tak dikenal %s/%s!\n"
+
+#: berkeley/lpr.c:178
+#, c-format
+msgid "%s: Warning - '%c' format modifier not supported - output may not be correct!\n"
+msgstr "%s: Peringatan - format pengubah '%c' tidak didukung - keluaran yang dihasilkan mungkin tak tepat!\n"
+
+#: systemv/lp.c:509
+#, c-format
+msgid "%s: Warning - character set option ignored!\n"
+msgstr "%s: Peringatan - opsi set karakter diabaikan!\n"
+
+#: systemv/lp.c:529
+#, c-format
+msgid "%s: Warning - content type option ignored!\n"
+msgstr "%s: Peringatan - opsi jenis isi diabaikan!\n"
+
+#: systemv/lp.c:210
+#, c-format
+msgid "%s: Warning - form option ignored!\n"
+msgstr "%s: Peringatan - opsi formulir/bentuk diabaikan!\n"
+
+#: systemv/lp.c:418
+#, c-format
+msgid "%s: Warning - mode option ignored!\n"
+msgstr "%s: Peringatan - opsi mode diabaikan!\n"
+
+#: berkeley/lpq.c:245
+#, c-format
+msgid "%s: error - %s environment variable names non-existent destination \"%s\"!\n"
+msgstr "%s: kesalahan - nama variabel lingkungan %s merupakan tujuan yang tidak ada \"%s\"!\n"
+
+#: berkeley/lpr.c:192
+#, c-format
+msgid "%s: error - expected option=value after '-o' option!\n"
+msgstr "%s: kesalahan - diharapkan opsi=nilai usai opsi '-o'!\n"
+
+#: berkeley/lpq.c:250
+#, c-format
+msgid "%s: error - no default destination available.\n"
+msgstr "%s: kesalahan - tidak ada tujuan utama.\n"
+
+#: berkeley/lpc.c:218
+msgid "?Invalid help command unknown\n"
+msgstr "?Ketidaksahan perintah bantuan tak dikenal\n"
+
+#: cgi-bin/admin.c:1994
+msgid "A Samba password is required to export printer drivers!"
+msgstr "Diperlukan sandi Samba untuk mengekspor driver pencetak!"
+
+#: cgi-bin/admin.c:1990
+msgid "A Samba username is required to export printer drivers!"
+msgstr "Diperlukan nama pengguna Samba untuk mengekspor driver pencetak!"
+
+#: scheduler/ipp.c:2208
+#, c-format
+msgid "A class named \"%s\" already exists!"
+msgstr "Kelas bernama \"%s\" sudah ada!"
+
+#: scheduler/ipp.c:936
+#, c-format
+msgid "A printer named \"%s\" already exists!"
+msgstr "Pencetak bernama \"%s\" sudah ada!"
+
+#: cgi-bin/admin.c:157
+msgid "Accept Jobs"
+msgstr "Terima Tugas"
+
+#: cgi-bin/admin.c:421
+msgid "Add Class"
+msgstr "Tambah Kelas"
+
+#: cgi-bin/admin.c:713
+msgid "Add Printer"
+msgstr "Tambah Pencetak"
+
+#: cgi-bin/admin.c:303 cgi-bin/admin.c:326 cgi-bin/admin.c:377
+#: cgi-bin/admin.c:387
+msgid "Add RSS Subscription"
+msgstr "Tambah Subskripsi RSS"
+
+#: cgi-bin/admin.c:201 cgi-bin/admin.c:212 cgi-bin/admin.c:2357
+msgid "Administration"
+msgstr "Administrasi"
+
+#: scheduler/ipp.c:1033
+#, c-format
+msgid "Attempt to set %s printer-state to bad value %d!"
+msgstr "Mencoba mengeset printer-state %s pada nilai jelek %d!"
+
+#: scheduler/ipp.c:307
+#, c-format
+msgid "Attribute groups are out of order (%x < %x)!"
+msgstr "Kelompok atribut di luar jangkauan (%x < %x)!"
+
+#: cups/ppd.c:314
+msgid "Bad OpenGroup"
+msgstr "OpenGroup Jelek"
+
+#: cups/ppd.c:316
+msgid "Bad OpenUI/JCLOpenUI"
+msgstr "OpenUI/JCLOpenUI Jelek"
+
+#: cups/ppd.c:318
+msgid "Bad OrderDependency"
+msgstr "OrderDependency Jelek"
+
+#: cups/ppd.c:319
+msgid "Bad UIConstraints"
+msgstr "UIConstraints Jelek"
+
+#: scheduler/ipp.c:1328
+#, c-format
+msgid "Bad copies value %d."
+msgstr "Nilai rangkap %d jelek."
+
+#: cups/ppd.c:327
+msgid "Bad custom parameter"
+msgstr "Parameter ubahan jelek"
+
+#: scheduler/ipp.c:2323
+#, c-format
+msgid "Bad device-uri \"%s\"!"
+msgstr "URI perangkat (device-uri) \"%s\" jelek!"
+
+#: scheduler/ipp.c:8493 scheduler/ipp.c:9764
+#, c-format
+msgid "Bad document-format \"%s\"!"
+msgstr "Format dokumen (document-format) \"%s\" jelek!"
+
+#: scheduler/ipp.c:9018
+msgid "Bad job-priority value!"
+msgstr "Nilai prioritas tugas (job-priority) jelek!"
+
+#: scheduler/ipp.c:9043
+msgid "Bad job-state value!"
+msgstr "Nilai status tugas (job-state) jelek!"
+
+#: scheduler/ipp.c:2833 scheduler/ipp.c:3180 scheduler/ipp.c:5656
+#: scheduler/ipp.c:6825 scheduler/ipp.c:7051 scheduler/ipp.c:7815
+#: scheduler/ipp.c:8039 scheduler/ipp.c:8406 scheduler/ipp.c:8912
+#, c-format
+msgid "Bad job-uri attribute \"%s\"!"
+msgstr "Atribut job-uri \"%s\" jelek!"
+
+#: scheduler/ipp.c:5244
+#, c-format
+msgid "Bad notify-pull-method \"%s\"!"
+msgstr "notify-pull-method \"%s\" jelek!"
+
+#: scheduler/ipp.c:5218
+#, c-format
+msgid "Bad notify-recipient-uri URI \"%s\"!"
+msgstr "URI notify-recipient-uri \"%s\" jelek!"
+
+#: scheduler/ipp.c:1346
+#, c-format
+msgid "Bad number-up value %d."
+msgstr "Nilai number-up %d jelek."
+
+#: cups/adminutil.c:298
+#, c-format
+msgid "Bad option + choice on line %d!"
+msgstr "Opsi + yang dipilih pada baris %d jelek!"
+
+#: scheduler/ipp.c:1363
+#, c-format
+msgid "Bad page-ranges values %d-%d."
+msgstr "Nilai jangkauan halaman %d-%d jelek."
+
+#: scheduler/ipp.c:2360
+#, c-format
+msgid "Bad port-monitor \"%s\"!"
+msgstr "port-monitor \"%s\" jelek!"
+
+#: scheduler/ipp.c:2408
+#, c-format
+msgid "Bad printer-state value %d!"
+msgstr "Nilai printer-state %d jelek!"
+
+#: scheduler/ipp.c:274
+#, c-format
+msgid "Bad request version number %d.%d!"
+msgstr "Permintaan nomor versi %d.%d jelek!"
+
+#: cgi-bin/admin.c:1264
+msgid "Bad subscription ID!"
+msgstr "ID Subskripsi jelek!"
+
+#: cgi-bin/admin.c:2967
+msgid "Banners"
+msgstr "Pataka"
+
+#: cgi-bin/admin.c:1265 cgi-bin/admin.c:1297 cgi-bin/admin.c:1307
+msgid "Cancel RSS Subscription"
+msgstr "Batal Subskripsi RSS"
+
+#: cgi-bin/admin.c:1366 cgi-bin/admin.c:1429 cgi-bin/admin.c:1438
+#: cgi-bin/admin.c:1449
+msgid "Change Settings"
+msgstr "Ubah Pengaturan"
+
+#: scheduler/ipp.c:1953 scheduler/ipp.c:5256
+#, c-format
+msgid "Character set \"%s\" not supported!"
+msgstr "Set karakter \"%s\" tidak didukung!"
+
+#: cgi-bin/classes.c:154 cgi-bin/classes.c:201
+msgid "Classes"
+msgstr "Kelas"
+
+#: berkeley/lpc.c:209
+msgid ""
+"Commands may be abbreviated.  Commands are:\n"
+"\n"
+"exit    help    quit    status  ?\n"
+msgstr ""
+"Perintah bisa saja singkat.  Perintahnya:\n"
+"\n"
+"exit    help    quit    status  ?\n"
+
+#: scheduler/ipp.c:7333 scheduler/ipp.c:7349 scheduler/ipp.c:8509
+#, c-format
+msgid "Could not scan type \"%s\"!"
+msgstr "Tidak akan memindai jenis \"%s\"!"
+
+#: backend/ipp.c:1440
+msgid "Cover open."
+msgstr "Penutup terbuka."
+
+#: cups/ppd.c:1066 cups/ppd.c:1118
+msgid "Custom"
+msgstr "Ubahan"
+
+#: cgi-bin/admin.c:1719 cgi-bin/admin.c:1730 cgi-bin/admin.c:1775
+msgid "Delete Class"
+msgstr "Hapus Kelas"
+
+#: cgi-bin/admin.c:1804 cgi-bin/admin.c:1815 cgi-bin/admin.c:1860
+msgid "Delete Printer"
+msgstr "Hapus Pencetak"
+
+#: scheduler/ipp.c:1294
+#, c-format
+msgid "Destination \"%s\" is not accepting jobs."
+msgstr "Tujuan \"%s\" bukanlah tugas yang diterima."
+
+#: backend/ipp.c:1474
+msgid "Developer almost empty."
+msgstr "Developer hampir kosong."
+
+#: backend/ipp.c:1476
+msgid "Developer empty!"
+msgstr "Developer kosong!"
+
+#: systemv/lpinfo.c:271
+#, c-format
+msgid ""
+"Device: uri = %s\n"
+"        class = %s\n"
+"        info = %s\n"
+"        make-and-model = %s\n"
+"        device-id = %s\n"
+msgstr ""
+"Perangkat: uri = %s\n"
+"           kelas = %s\n"
+"           info = %s\n"
+"           pembuat-dan-model = %s\n"
+"           id-perangkat = %s\n"
+
+#: backend/ipp.c:1444
+msgid "Door open."
+msgstr "Pintu terbuka."
+
+#: filter/pstops.c:408
+#, c-format
+msgid "EMERG: Unable to allocate memory for page info: %s\n"
+msgstr "DARURAT: Tak bisa mengalokasikan memori untuk halaman info: %s\n"
+
+#: filter/pstops.c:401
+#, c-format
+msgid "EMERG: Unable to allocate memory for pages array: %s\n"
+msgstr "DARURAT: Tak bisa mengalokasikan memori untuk larik halaman: %s\n"
+
+#: backend/usb-darwin.c:635
+#, c-format
+msgid "ERROR: %ld: (canceled:%ld)\n"
+msgstr "KESALAHAN: %ld: (dibatalkan:%ld)\n"
+
+#: filter/pstops.c:655
+#, c-format
+msgid "ERROR: Bad %%BoundingBox: comment seen!\n"
+msgstr "KESALAHAN: %%BoundingBox jelek: komentar terlihat!\n"
+
+#: filter/pstops.c:2128
+#, c-format
+msgid "ERROR: Bad %%IncludeFeature: comment!\n"
+msgstr "KESALAHAN: %%IncludeFeature jelek: komentar!\n"
+
+#: filter/pstops.c:1211 filter/pstops.c:1217
+#, c-format
+msgid "ERROR: Bad %%Page: comment in file!\n"
+msgstr "KESALAHAN:%%Page jelek: komentar dalam berkas!\n"
+
+#: filter/pstops.c:1287
+#, c-format
+msgid "ERROR: Bad %%PageBoundingBox: comment in file!\n"
+msgstr "KESALAHAN: %%PageBoundingBox jelek: komentar dalam berkas!\n"
+
+#: backend/scsi-irix.c:99 backend/scsi-linux.c:113
+#, c-format
+msgid "ERROR: Bad SCSI device file \"%s\"!\n"
+msgstr "KESALAHAN: Berkas perangkat SCSI \"%s\" jelek!\n"
+
+#: filter/texttops.c:269 filter/texttops.c:280
+#, c-format
+msgid "ERROR: Bad charset file %s\n"
+msgstr "KESALAHAN: Berkas set karakter %s jelek\n"
+
+#: filter/texttops.c:610
+#, c-format
+msgid "ERROR: Bad charset type %s\n"
+msgstr "KESALAHAN: Jenis set karakter %s jelek\n"
+
+#: filter/texttops.c:341 filter/texttops.c:377 filter/texttops.c:505
+#: filter/texttops.c:541
+#, c-format
+msgid "ERROR: Bad font description line: %s\n"
+msgstr "KESALAHAN: Baris deskripsi huruf: %s jelek\n"
+
+#: filter/imagetoraster.c:457
+msgid "ERROR: Bad page setup!\n"
+msgstr "KESALAHAN: Pengaturan halaman jelek!\n"
+
+#: filter/texttops.c:354 filter/texttops.c:518
+#, c-format
+msgid "ERROR: Bad text direction %s\n"
+msgstr "KESALAHAN: Arah teks %s jelek\n"
+
+#: filter/texttops.c:390 filter/texttops.c:554
+#, c-format
+msgid "ERROR: Bad text width %s\n"
+msgstr "KESALAHAN: Lebar teks %s jelek\n"
+
+#: backend/ipp.c:672
+msgid "ERROR: Destination printer does not exist!\n"
+msgstr "KESALAHAN: Pencetak yang dituju tidak ada!\n"
+
+#: filter/pstops.c:644
+#, c-format
+msgid "ERROR: Duplicate %%BoundingBox: comment seen!\n"
+msgstr "KESALAHAN: Duplikat %%BoundingBox: komentar terlihat!\n"
+
+#: filter/pstops.c:597
+#, c-format
+msgid "ERROR: Duplicate %%Pages: comment seen!\n"
+msgstr "KESALAHAN: Duplikat %%Pages: komentar terlihat!\n"
+
+#: filter/pstops.c:267
+msgid "ERROR: Empty print file!\n"
+msgstr "ERROR: Mencetak berkas kosong!\n"
+
+#: filter/hpgl-input.c:138
+msgid "ERROR: Invalid HP-GL/2 command seen, unable to print file!\n"
+msgstr "KESALAHAN: Ketidaksahan HP-GL/2 komentar terlihat, tak bisa mencetak berkas!\n"
+
+#: filter/pstops.c:1693
+#, c-format
+msgid "ERROR: Missing %%EndProlog!\n"
+msgstr "KESALAHAN: Kehilangan %%EndProlog!\n"
+
+#: filter/pstops.c:1758
+#, c-format
+msgid "ERROR: Missing %%EndSetup!\n"
+msgstr "KESALAHAN: Kehilangan %%EndSetup!\n"
+
+#: backend/ipp.c:226
+msgid "ERROR: Missing device URI on command-line and no DEVICE_URI environment variable!\n"
+msgstr "KESALAHAN: Kehilangan URI perangkat pada baris perintah dan tidak adanya variabel lingkungan DEVICE_URI!\n"
+
+#: filter/pstops.c:707
+#, c-format
+msgid "ERROR: No %%BoundingBox: comment in header!\n"
+msgstr "KESALAHAN: Tak ada %%BoundingBox: komentar pada tajuk!\n"
+
+#: filter/pstops.c:710
+#, c-format
+msgid "ERROR: No %%Pages: comment in header!\n"
+msgstr "KESALAHAN: Tak ada %%Pages: komentar pada tajuk!\n"
+
+#: backend/usb.c:203
+msgid "ERROR: No device URI found in argv[0] or in DEVICE_URI environment variable!\n"
+msgstr "KESALAHAN: Tak ditemukan URI perangkat pada argv[0] atau dalam variabel lingkungan DEVICE_URI!\n"
+
+#: filter/rastertoepson.c:1135 filter/rastertohp.c:871
+#: filter/rastertolabel.c:1293
+msgid "ERROR: No pages found!\n"
+msgstr "ERROR: Tidak ketemu halaman!\n"
+
+#: backend/runloop.c:324
+msgid "ERROR: Out of paper!\n"
+msgstr "ERROR: Kehabisan kertas!\n"
+
+#: backend/ipp.c:1535
+msgid "ERROR: PRINTER environment variable not defined!\n"
+msgstr "KESALAHAN: Variabel lingkungan PRINTER belum ditentukan!\n"
+
+#: backend/ipp.c:962
+#, c-format
+msgid "ERROR: Print file was not accepted (%s)!\n"
+msgstr "KESALAHAN: Berkas cetak tidak diterima (%s)!\n"
+
+#: backend/ipp.c:527 backend/ipp.c:640 backend/lpd.c:813 backend/socket.c:295
+msgid "ERROR: Printer not responding!\n"
+msgstr "ERROR: Pencetak tidak merespon!\n"
+
+#: backend/lpd.c:992 backend/lpd.c:1121
+#, c-format
+msgid "ERROR: Remote host did not accept control file (%d)\n"
+msgstr "KESALAHAN: Host jarak jauh tidak menerima berkas kontrol (%d)\n"
+
+#: backend/lpd.c:1079
+#, c-format
+msgid "ERROR: Remote host did not accept data file (%d)\n"
+msgstr "KESALAHAN: Host jarak jauh tidak menerima data berkas (%d)\n"
+
+#: backend/ipp.c:1012
+#, c-format
+msgid "ERROR: Unable to add file %d to job: %s\n"
+msgstr "KESALAHAN: Tak bisa menambah berkas %d untuk tugas: %s\n"
+
+#: backend/ipp.c:1220
+#, c-format
+msgid "ERROR: Unable to cancel job %d: %s\n"
+msgstr "KESALAHAN: Tak bisa membatalkan tugas %d: %s\n"
+
+#: backend/ipp.c:1302
+#, c-format
+msgid "ERROR: Unable to create temporary compressed print file: %s\n"
+msgstr "KESALAHAN: Tak bisa membuat berkas-cetak-temporer-terkompresi: %s\n"
+
+#: backend/ipp.c:1557
+#, c-format
+msgid "ERROR: Unable to create temporary file - %s.\n"
+msgstr "KESALAHAN: Tak bisa membuat berkas-temporer - %s.\n"
+
+#: filter/pstops.c:2624
+#, c-format
+msgid "ERROR: Unable to create temporary file: %s\n"
+msgstr "KESALAHAN: Tak bisa membuat berkas-temporer: %s\n"
+
+#: backend/ipp.c:1614
+#, c-format
+msgid "ERROR: Unable to exec pictwpstops: %s\n"
+msgstr "KESALAHAN: Tak bisa mengeksekusi pictwpstops: %s\n"
+
+#: backend/ipp.c:1627
+#, c-format
+msgid "ERROR: Unable to fork pictwpstops: %s\n"
+msgstr "ERROR: Tak bisa mem-fork pictwpstops: %s\n"
+
+#: backend/ipp.c:1542
+#, c-format
+msgid "ERROR: Unable to get PPD file for printer \"%s\" - %s.\n"
+msgstr "KESALAHAN: Tak bisa mendapatkan berkas PPD untuk pencetak \"%s\" - %s.\n"
+
+#: backend/ipp.c:1091
+#, c-format
+msgid "ERROR: Unable to get job %d attributes (%s)!\n"
+msgstr "KESALAHAN: Tak bisa mendapatkan atribut tugas %d (%s)!\n"
+
+#: backend/ipp.c:681
+#, c-format
+msgid "ERROR: Unable to get printer status (%s)!\n"
+msgstr "KESALAHAN: Tak bisa mendapatkan status pencetak (%s)!\n"
+
+#: backend/ipp.c:545 backend/lpd.c:671 backend/socket.c:253
+#, c-format
+msgid "ERROR: Unable to locate printer '%s'!\n"
+msgstr "KESALAHAN: Tak bisa menentukan lokasi pencetak '%s'!\n"
+
+#: filter/texttops.c:233
+#, c-format
+msgid "ERROR: Unable to open \"%s\" - %s\n"
+msgstr "KESALAHAN: Tak bisa membuka \"%s\" - %s\n"
+
+#: filter/texttops.c:253
+#, c-format
+msgid "ERROR: Unable to open %s: %s\n"
+msgstr "KESALAHAN: Tak bisa membuka %s: %s\n"
+
+#: backend/parallel.c:241 backend/scsi-irix.c:136 backend/scsi-linux.c:151
+#: backend/serial.c:256 backend/usb-unix.c:134
+#, c-format
+msgid "ERROR: Unable to open device file \"%s\": %s\n"
+msgstr "KESALAHAN: Tak bisa membuka berkas perangkat \"%s\": %s\n"
+
+#: filter/pstops.c:255
+#, c-format
+msgid "ERROR: Unable to open file \"%s\" - %s\n"
+msgstr "KESALAHAN: Tak bisa membuka berkas \"%s\" - %s\n"
+
+#: filter/gziptoany.c:74
+#, c-format
+msgid "ERROR: Unable to open file \"%s\": %s\n"
+msgstr "KESALAHAN: Tak bisa membuka berkas \"%s\": %s\n"
+
+#: filter/imagetops.c:309 filter/imagetoraster.c:634
+msgid "ERROR: Unable to open image file for printing!\n"
+msgstr "KESALAHAN: Tak bisa membuka berkas citra untuk mencetak!\n"
+
+#: backend/ipp.c:1318
+#, c-format
+msgid "ERROR: Unable to open print file \"%s\": %s\n"
+msgstr "KESALAHAN: Tak bisa membuka berkas cetak \"%s\": %s\n"
+
+#: backend/usb.c:240
+#, c-format
+msgid "ERROR: Unable to open print file %s - %s\n"
+msgstr "KESALAHAN: Tak bisa membuka berkas cetak %s - %s\n"
+
+#: backend/lpd.c:460
+#, c-format
+msgid "ERROR: Unable to open print file %s: %s\n"
+msgstr "KESALAHAN: Tak bisa membuka berkas cetak %s: %s\n"
+
+#: backend/ipp.c:1311
+#, c-format
+msgid "ERROR: Unable to open temporary compressed print file: %s\n"
+msgstr "KESALAHAN: Tak bisa membuka berkas-cetak-temporer-berkompresi: %s\n"
+
+#: filter/pstops.c:512
+#, c-format
+msgid "ERROR: Unable to seek to offset %ld in file - %s\n"
+msgstr "ERROR: Tak bisa mencari letak %ld dalam berkas - %s\n"
+
+#: filter/pstops.c:510
+#, c-format
+msgid "ERROR: Unable to seek to offset %lld in file - %s\n"
+msgstr "ERROR: Tak bisa mencari letak %lld dalam berkas - %s\n"
+
+#: backend/scsi-irix.c:214 backend/scsi-linux.c:233
+#, c-format
+msgid "ERROR: Unable to send print data (%d)\n"
+msgstr "KESALAHAN: Tak bisa mengirim data cetak (%d)\n"
+
+#: backend/ipp.c:1641
+#, c-format
+msgid "ERROR: Unable to wait for pictwpstops: %s\n"
+msgstr "KESALAHAN: Tak bisa menunggu pictwpstops: %s\n"
+
+#: backend/ipp.c:1328
+#, c-format
+msgid "ERROR: Unable to write %d bytes to \"%s\": %s\n"
+msgstr "KESALAHAN: Tak bisa menulis %d bita ke \"%s\": %s\n"
+
+#: backend/runloop.c:121 backend/runloop.c:339
+#, c-format
+msgid "ERROR: Unable to write print data: %s\n"
+msgstr "KESALAHAN: Tak bisa menulis data cetak: %s\n"
+
+#: filter/imagetoraster.c:1196 filter/imagetoraster.c:1292
+#: filter/imagetoraster.c:1332
+msgid "ERROR: Unable to write raster data to driver!\n"
+msgstr "ERROR: Tak bisa menulis data raster pada driver!\n"
+
+#: filter/gziptoany.c:96
+#, c-format
+msgid "ERROR: Unable to write uncompressed document data: %s\n"
+msgstr "KESALAHAN: Tak bisa menulis data dokumen tanpa kompresi: %s\n"
+
+#: backend/ipp.c:330
+#, c-format
+msgid "ERROR: Unknown encryption option value \"%s\"!\n"
+msgstr "KESALAHAN: Nilai opsi enkripsi \"%s\" tak dikenal!\n"
+
+#: backend/lpd.c:352
+#, c-format
+msgid "ERROR: Unknown file order \"%s\"\n"
+msgstr "KESALAHAN: Urutan berkas \"%s\" tak dikenal\n"
+
+#: backend/lpd.c:325
+#, c-format
+msgid "ERROR: Unknown format character \"%c\"\n"
+msgstr "KESALAHAN: Format karakter \"%c\" tak dikenal\n"
+
+#: backend/ipp.c:371
+#, c-format
+msgid "ERROR: Unknown option \"%s\" with value \"%s\"!\n"
+msgstr "KESALAHAN: Opsi \"%s\" dengan nilai \"%s\" tak dikenal!\n"
+
+#: backend/lpd.c:339
+#, c-format
+msgid "ERROR: Unknown print mode \"%s\"\n"
+msgstr "KESALAHAN: Mode cetak \"%s\" tak dikenal\n"
+
+#: backend/ipp.c:343
+#, c-format
+msgid "ERROR: Unknown version option value \"%s\"!\n"
+msgstr "KESALAHAN: Nilai opsi versi \"%s\" tak dikenal!\n"
+
+#: filter/pstops.c:2325
+#, c-format
+msgid "ERROR: Unsupported brightness value %s, using brightness=100!\n"
+msgstr "KESALAHAN: Nilai kecerahan %s tak didukung, gunakanlah brightness=100!\n"
+
+#: filter/pstops.c:2392
+#, c-format
+msgid "ERROR: Unsupported gamma value %s, using gamma=1000!\n"
+msgstr "KESALAHAN: Nilai gama %s tak didukung, gunakanlah gamma=1000!\n"
+
+#: filter/pstops.c:2446
+#, c-format
+msgid "ERROR: Unsupported number-up value %d, using number-up=1!\n"
+msgstr "KESALAHAN: Nilai number-up %d tak didukung, gunakanlah number-up=1!\n"
+
+#: filter/pstops.c:2479
+#, c-format
+msgid "ERROR: Unsupported number-up-layout value %s, using number-up-layout=lrtb!\n"
+msgstr "KESALAHAN: Nilai number-up-layout %s tak didukung, gunakanlah number-up-layout=lrtb!\n"
+
+#: filter/pstops.c:2529
+#, c-format
+msgid "ERROR: Unsupported page-border value %s, using page-border=none!\n"
+msgstr "KESALAHAN: Nilai page-border %s tak didukung, gunakanlah page-border=none!\n"
+
+#: filter/pstops.c:1997
+#, c-format
+msgid "ERROR: doc_printf overflow (%d bytes) detected, aborting!\n"
+msgstr "KESALAHAN: Kelebihan doc_printf (%d bita) terdeteksi, digagalkan!\n"
+
+#: backend/ipp.c:1661
+#, c-format
+msgid "ERROR: pictwpstops exited on signal %d!\n"
+msgstr "KESALAHAN: pictwpstops tertutup pada sinyal %d!\n"
+
+#: backend/ipp.c:1658
+#, c-format
+msgid "ERROR: pictwpstops exited with status %d!\n"
+msgstr "KESALAHAN: pictwpstops tertutup dengan status %d!\n"
+
+#: backend/ipp.c:554 backend/lpd.c:842 backend/socket.c:316
+msgid "ERROR: recoverable: Unable to connect to printer; will retry in 30 seconds...\n"
+msgstr "ERROR: pemulihan: Tak bisa menghubungi pencetak; akan mencoba ulang dalam 30 detik...\n"
+
+#: backend/usb-darwin.c:559
+#, c-format
+msgid "ERROR: select() returned %d\n"
+msgstr "KESALAHAN: select() dikembalikan pada %d\n"
+
+#: cgi-bin/admin.c:1477 cgi-bin/admin.c:1489 cgi-bin/admin.c:1543
+#: cgi-bin/admin.c:1550 cgi-bin/admin.c:1585 cgi-bin/admin.c:1598
+#: cgi-bin/admin.c:1622 cgi-bin/admin.c:1692
+msgid "Edit Configuration File"
+msgstr "Sunting Berkas Konfigurasi"
+
+#: cups/adminutil.c:344
+msgid "Empty PPD file!"
+msgstr "Berkas PPD kosong!"
+
+#: cgi-bin/admin.c:2988
+msgid "Ending Banner"
+msgstr "Akhir Pataka"
+
+#: systemv/lppasswd.c:205
+msgid "Enter old password:"
+msgstr "Masukkan sandi lama:"
+
+#: systemv/lppasswd.c:234
+msgid "Enter password again:"
+msgstr "Masukkan lagi sandinya:"
+
+#: systemv/lppasswd.c:223
+msgid "Enter password:"
+msgstr "Masukkan sandi:"
+
+#: scheduler/client.c:2274
+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 "Masukkan nama pengguna dan sandi Anda atau nama pengguna dan sandi root untuk mengakses halaman ini. Apabila Anda menggunakan otentikasi Kerberos, pastikan bahwa Anda memiliki tiket Kerberos yang sah."
+
+#: cgi-bin/admin.c:3030
+msgid "Error Policy"
+msgstr "Polis Kesalahan"
+
+#: systemv/lpinfo.c:136 systemv/lpmove.c:103
+msgid "Error: need hostname after '-h' option!\n"
+msgstr "Kesalahan: perlu nama host usai opsi '-h'!\n"
+
+#: cgi-bin/admin.c:1982 cgi-bin/admin.c:2001
+msgid "Export Printers to Samba"
+msgstr "Ekspor Pencetak melalui Samba"
+
+#: systemv/cupstestdsc.c:176 systemv/cupstestdsc.c:193
+#: systemv/cupstestdsc.c:219 systemv/cupstestdsc.c:236
+#: systemv/cupstestdsc.c:260 systemv/cupstestdsc.c:278
+#: systemv/cupstestdsc.c:307 systemv/cupstestdsc.c:344
+#: systemv/cupstestdsc.c:354 systemv/cupstestdsc.c:364
+#: systemv/cupstestdsc.c:374 systemv/cupstestdsc.c:384
+#: systemv/cupstestdsc.c:392
+msgid "FAIL\n"
+msgstr "GAGAL\n"
+
+#: backend/usb-darwin.c:390
+#, c-format
+msgid "FATAL: Could not load %s\n"
+msgstr "FATAL: Tidak bisa memuat %s\n"
+
+#: scheduler/ipp.c:2303
+#, c-format
+msgid "File device URIs have been disabled! To enable, see the FileDevice directive in \"%s/cupsd.conf\"."
+msgstr "Berkas URI perangkat telah dinonaktifkan! Untuk mengaktifkannya, lihatlah petunjuk FileDevice dalam \"%s/cupsd.conf\"."
+
+#: backend/ipp.c:1466
+msgid "Fuser temperature high!"
+msgstr "Suhu fusi tinggi!"
+
+#: backend/ipp.c:1468
+msgid "Fuser temperature low!"
+msgstr "Suhu fusi rendah!"
+
+#: cups/ppd.c:678 cups/ppd.c:1025 cups/ppd.c:1095 cups/ppd.c:1231
+msgid "General"
+msgstr "Umum"
+
+#: scheduler/ipp.c:2811 scheduler/ipp.c:3100 scheduler/ipp.c:5633
+#: scheduler/ipp.c:6802 scheduler/ipp.c:7792 scheduler/ipp.c:8016
+#: scheduler/ipp.c:8383 scheduler/ipp.c:8889
+msgid "Got a printer-uri attribute but no job-id!"
+msgstr "Memperoleh atribut printer-uri tetapi bukan job-id!"
+
+#: cgi-bin/help.c:89 cgi-bin/help.c:130 cgi-bin/help.c:140 cgi-bin/help.c:170
+msgid "Help"
+msgstr "Bantuan"
+
+#: backend/lpd.c:694
+#, c-format
+msgid "INFO: Attempting to connect to host %s for printer %s\n"
+msgstr "INFO: Mencoba menghubungi host %s untuk pencetak %s\n"
+
+#: backend/socket.c:257
+#, c-format
+msgid "INFO: Attempting to connect to host %s on port %d\n"
+msgstr "INFO: Mencoba menghubungi host %s pada portal %d\n"
+
+#: backend/ipp.c:1200
+msgid "INFO: Canceling print job...\n"
+msgstr "INFO: Membatalkan tugas mencetak...\n"
+
+#: backend/ipp.c:574 backend/lpd.c:861 backend/socket.c:338
+#, c-format
+msgid "INFO: Connected to %s...\n"
+msgstr "INFO: Menghubungi %s...\n"
+
+#: backend/ipp.c:490
+#, c-format
+msgid "INFO: Connecting to %s on port %d...\n"
+msgstr "INFO: Menghubungi %s pada portal %d...\n"
+
+#: backend/lpd.c:995 backend/lpd.c:1124
+msgid "INFO: Control file sent successfully\n"
+msgstr "INFO: Berkas kontrol berhasil dikirim\n"
+
+#: backend/lpd.c:1082
+msgid "INFO: Data file sent successfully\n"
+msgstr "INFO: Berkas data berhasil dikirim\n"
+
+#: filter/imagetoraster.c:1139
+#, c-format
+msgid "INFO: Formatting page %d...\n"
+msgstr "INFO: Memformat halaman %d...\n"
+
+#: filter/imagetoraster.c:620
+msgid "INFO: Loading image file...\n"
+msgstr "INFO: Memuat berkas citra...\n"
+
+#: backend/socket.c:392
+msgid "INFO: Print file sent, waiting for printer to finish...\n"
+msgstr "INFO: Berkas cetak dikirim, menunggu pencetak selesai mengerjakannya...\n"
+
+#: backend/usb-darwin.c:407
+#, c-format
+msgid "INFO: Printer busy (status:0x%08x)\n"
+msgstr "INFO: Pencetak sibuk (status:0x%08x)\n"
+
+#: backend/ipp.c:946 backend/usb-unix.c:122
+msgid "INFO: Printer busy; will retry in 10 seconds...\n"
+msgstr "INFO: Pencetak sibuk; dicoba ulang 10 detik lagi...\n"
+
+#: backend/parallel.c:230 backend/scsi-irix.c:142 backend/scsi-linux.c:157
+#: backend/serial.c:251
+msgid "INFO: Printer busy; will retry in 30 seconds...\n"
+msgstr "INFO: Pencetak sibuk; dicoba ulang 30 detik lagi...\n"
+
+#: backend/usb-unix.c:414
+msgid "INFO: Printer busy; will retry in 5 seconds...\n"
+msgstr "INFO: Pencetak sibuk; dicoba ulang 5 detik lagi...\n"
+
+#: backend/ipp.c:665 backend/ipp.c:956
+msgid "INFO: Printer does not support IPP/1.1, trying IPP/1.0...\n"
+msgstr "INFO: Pencetak tidak mendukung IPP/1.1, mencoba IPP/1.0...\n"
+
+#: backend/usb-unix.c:507
+msgid "INFO: Printer is busy; will retry in 5 seconds...\n"
+msgstr "INFO: Pencetak sibuk; dicoba ulang 5 detik lagi...\n"
+
+#: backend/runloop.c:233 backend/runloop.c:333 backend/usb-darwin.c:1112
+msgid "INFO: Printer is currently off-line.\n"
+msgstr "INFO: Pencetak saat ini terputus.\n"
+
+#: backend/runloop.c:355 backend/usb-darwin.c:1094
+msgid "INFO: Printer is now on-line.\n"
+msgstr "INFO: Pencetak saat ini tersambung.\n"
+
+#: backend/parallel.c:235 backend/usb-unix.c:128
+msgid "INFO: Printer not connected; will retry in 30 seconds...\n"
+msgstr "INFO: Pencetak tak terhubung; dicoba ulang 30 detik lagi...\n"
+
+#: filter/rastertoepson.c:1090 filter/rastertohp.c:821
+#: filter/rastertolabel.c:1246
+#, c-format
+msgid "INFO: Printing page %d, %d%% complete...\n"
+msgstr "INFO: Mencetak halaman %d, %d%% selesai...\n"
+
+#: filter/imagetops.c:804
+#, c-format
+msgid "INFO: Printing page %d...\n"
+msgstr "INFO: Mencetak halaman %d...\n"
+
+#: backend/socket.c:416 filter/rastertoepson.c:1137 filter/rastertohp.c:873
+#: filter/rastertolabel.c:1295
+msgid "INFO: Ready to print.\n"
+msgstr "INFO: Siap mencetak.\n"
+
+#: backend/lpd.c:1096
+#, c-format
+msgid "INFO: Sending control file (%lu bytes)\n"
+msgstr "INFO: Mengirim berkas kontrol (%lu bita)\n"
+
+#: backend/lpd.c:967
+#, c-format
+msgid "INFO: Sending control file (%u bytes)\n"
+msgstr "INFO: Mengirim berkas kontrol (%u bita)\n"
+
+#: backend/usb-darwin.c:491
+msgid "INFO: Sending data\n"
+msgstr "INFO: Mengirim data\n"
+
+#: backend/lpd.c:1020
+#, c-format
+msgid "INFO: Sending data file (%ld bytes)\n"
+msgstr "INFO: Mengirim berkas data (%ld bita)\n"
+
+#: backend/lpd.c:1018
+#, c-format
+msgid "INFO: Sending data file (%lld bytes)\n"
+msgstr "INFO: Mengirim berkas data (%lld bita)\n"
+
+#: backend/parallel.c:286 backend/socket.c:375 backend/usb-unix.c:179
+#, c-format
+msgid "INFO: Sent print file, %ld bytes...\n"
+msgstr "INFO: Mengirim berkas cetak, %ld bita...\n"
+
+#: backend/parallel.c:284 backend/socket.c:373 backend/usb-unix.c:177
+#, c-format
+msgid "INFO: Sent print file, %lld bytes...\n"
+msgstr "INFO: Mengirim berkas cetak, %lld bita...\n"
+
+#: backend/lpd.c:1031
+#, c-format
+msgid "INFO: Spooling LPR job, %.0f%% complete...\n"
+msgstr "INFO: Menggulung tugas LPR, %.0f%% selesai...\n"
+
+#: backend/ipp.c:507 backend/ipp.c:744 backend/lpd.c:794
+#: backend/parallel.c:216 backend/scsi-irix.c:122 backend/scsi-linux.c:137
+#: backend/serial.c:237 backend/socket.c:278 backend/usb-unix.c:108
+msgid "INFO: Unable to contact printer, queuing on next printer in class...\n"
+msgstr "INFO: Tak bisa menghubungi pencetak, diantrikan ke pencetak selanjutnya pada kelas...\n"
+
+#: backend/ipp.c:1037
+msgid "INFO: Waiting for job to complete...\n"
+msgstr "INFO: Menunggu tugas diselesaikan...\n"
+
+#: cups/ppd.c:322
+msgid "Illegal control character"
+msgstr "Karakter kontrol ilegal"
+
+#: cups/ppd.c:323
+msgid "Illegal main keyword string"
+msgstr "String kata kunci utama ilegal"
+
+#: cups/ppd.c:324
+msgid "Illegal option keyword string"
+msgstr "String opsi kata kunci ilegal"
+
+#: cups/ppd.c:325
+msgid "Illegal translation string"
+msgstr "String translasi ilegal"
+
+#: cups/ppd.c:326
+msgid "Illegal whitespace character"
+msgstr "Karakter ilegal"
+
+#: backend/ipp.c:1458
+msgid "Ink/toner almost empty."
+msgstr "Tinta/toner hampir kosong."
+
+#: backend/ipp.c:1460
+msgid "Ink/toner empty!"
+msgstr "Tinta/toner kosong!"
+
+#: backend/ipp.c:1462
+msgid "Ink/toner waste bin almost full."
+msgstr "Baki buangan tinta/toner hampir penuh."
+
+#: backend/ipp.c:1464
+msgid "Ink/toner waste bin full!"
+msgstr "Baki buangan tinta/toner sudah penuh!"
+
+#: backend/ipp.c:1442
+msgid "Interlock open."
+msgstr "Sambungan terbuka."
+
+#: cups/ppd.c:313
+msgid "Internal error"
+msgstr "Kesalahan internal"
+
+#: cups/ppd.c:1321
+msgid "JCL"
+msgstr "JCL"
+
+#: scheduler/ipp.c:8089
+#, c-format
+msgid "Job #%d cannot be restarted - no files!"
+msgstr "Tugas #%d tidak bisa dicetak ulang - tidak ada berkas!"
+
+#: scheduler/ipp.c:2852 scheduler/ipp.c:3198 scheduler/ipp.c:5674
+#: scheduler/ipp.c:6679 scheduler/ipp.c:6843 scheduler/ipp.c:7024
+#: scheduler/ipp.c:7069 scheduler/ipp.c:7833 scheduler/ipp.c:8057
+#: scheduler/ipp.c:8424 scheduler/ipp.c:8930
+#, c-format
+msgid "Job #%d does not exist!"
+msgstr "Tugas #%d tidak ada!"
+
+#: scheduler/ipp.c:3229
+#, c-format
+msgid "Job #%d is already aborted - can't cancel."
+msgstr "Tugas #%d telah digagalkan - tidak bisa dibatalkan."
+
+#: scheduler/ipp.c:3223
+#, c-format
+msgid "Job #%d is already canceled - can't cancel."
+msgstr "Tugas #%d sudah dibatalkan - tidak bisa dibatalkan."
+
+#: scheduler/ipp.c:3235
+#, c-format
+msgid "Job #%d is already completed - can't cancel."
+msgstr "Tugas #%d sudah diselesaikan - tidak bisa dibatalkan."
+
+#: scheduler/ipp.c:7100 scheduler/ipp.c:8945
+#, c-format
+msgid "Job #%d is finished and cannot be altered!"
+msgstr "Tugas #%d sudah diselesaikan dan tidak dapat diubah!"
+
+#: scheduler/ipp.c:8071
+#, c-format
+msgid "Job #%d is not complete!"
+msgstr "Tugas #%d tidak selesai!"
+
+#: scheduler/ipp.c:2867
+#, c-format
+msgid "Job #%d is not held for authentication!"
+msgstr "Tugas #%d tidak ditahan untuk otentikasi!"
+
+#: scheduler/ipp.c:7847
+#, c-format
+msgid "Job #%d is not held!"
+msgstr "Tugas #%d tidak ditahan!"
+
+#: scheduler/ipp.c:6657
+#, c-format
+msgid "Job #%s does not exist!"
+msgstr "Tugas #%s tidak ada!"
+
+#: scheduler/ipp.c:5342
+#, c-format
+msgid "Job %d not found!"
+msgstr "Tugas %d tidak ketemu!"
+
+#: cgi-bin/ipp-var.c:858
+msgid "Job Completed"
+msgstr "Tugas Diselesaikan"
+
+#: cgi-bin/ipp-var.c:856
+msgid "Job Created"
+msgstr "Tugas Dibuat"
+
+#: cgi-bin/ipp-var.c:862
+msgid "Job Options Changed"
+msgstr "Perubahan Opsi Tugas"
+
+#: cgi-bin/ipp-var.c:860
+msgid "Job Stopped"
+msgstr "Tugas Dihentikan"
+
+#: scheduler/ipp.c:9026
+msgid "Job is completed and cannot be changed."
+msgstr "Tugas sudah diselesaikan dan tidak bisa diubah."
+
+#: cgi-bin/jobs.c:192
+msgid "Job operation failed:"
+msgstr "Operasi tugas gagal:"
+
+#: scheduler/ipp.c:9057 scheduler/ipp.c:9074 scheduler/ipp.c:9085
+msgid "Job state cannot be changed."
+msgstr "Status tugas tidak bisa diubah."
+
+#: scheduler/ipp.c:7936
+msgid "Job subscriptions cannot be renewed!"
+msgstr "Subkripsi tugas tidak bisa diperbaharui!"
+
+#: cgi-bin/jobs.c:102 cgi-bin/jobs.c:113 cgi-bin/jobs.c:189
+msgid "Jobs"
+msgstr "Tugas"
+
+#: scheduler/ipp.c:1962 scheduler/ipp.c:5265
+#, c-format
+msgid "Language \"%s\" not supported!"
+msgstr "Bahasa \"%s\" tidak didukung!"
+
+#: cups/ppd.c:321
+msgid "Line longer than the maximum allowed (255 characters)"
+msgstr "Baris melebihi panjang yang diperbolehkan (255 karakter)"
+
+#: cgi-bin/admin.c:2019
+msgid "List Available Printers"
+msgstr "Daftar Pencetak yang Tersedia"
+
+#: cups/ppd.c:725 cups/ppd.c:1286
+msgid "Media Size"
+msgstr "Ukuran Media"
+
+#: cups/ppd.c:729 cups/ppd.c:1290
+msgid "Media Source"
+msgstr "Sumber Media"
+
+#: cups/ppd.c:727 cups/ppd.c:1288
+msgid "Media Type"
+msgstr "Jenis Media"
+
+#: backend/ipp.c:1430
+msgid "Media jam!"
+msgstr "Media tersangkut!"
+
+#: backend/ipp.c:1448
+msgid "Media tray almost empty."
+msgstr "Baki media hampir kosong."
+
+#: backend/ipp.c:1450
+msgid "Media tray empty!"
+msgstr "Baki media kosong!"
+
+#: backend/ipp.c:1446
+msgid "Media tray missing!"
+msgstr "Baki media hilang!"
+
+#: backend/ipp.c:1428
+msgid "Media tray needs to be filled."
+msgstr "Baki media perlu diisi."
+
+#: cups/ppd.c:310
+msgid "Memory allocation error"
+msgstr "Kesalahan alokasi memori"
+
+#: cups/ppd.c:311
+msgid "Missing PPD-Adobe-4.x header"
+msgstr "Kehilangan tajuk PPD-Adobe-4.x"
+
+#: cups/ppd.c:320
+msgid "Missing asterisk in column 1"
+msgstr "Kehilangan asterik pada kolom 1"
+
+#: cups/adminutil.c:279
+#, c-format
+msgid "Missing double quote on line %d!"
+msgstr "Kehilangan tanda kutip pada baris %d!"
+
+#: cgi-bin/admin.c:1731 cgi-bin/admin.c:1816 cgi-bin/admin.c:2385
+#: cgi-bin/admin.c:2492 cgi-bin/admin.c:2765 cgi-bin/admin.c:3293
+msgid "Missing form variable!"
+msgstr "Kehilangan variabel formulir/bentuk!"
+
+#: scheduler/ipp.c:5931
+msgid "Missing notify-subscription-ids attribute!"
+msgstr "Kehilangan atribut notify-subscription-ids!"
+
+#: scheduler/ipp.c:2976
+msgid "Missing requesting-user-name attribute!"
+msgstr "Kehilangan atribut requesting-user-name!"
+
+#: scheduler/ipp.c:423
+msgid "Missing required attributes!"
+msgstr "Kehilangan atribut yang diperlukan!"
+
+#: cups/adminutil.c:260
+#, c-format
+msgid "Missing value on line %d!"
+msgstr "Kehilangan nilai pada baris %d!"
+
+#: cups/ppd.c:312
+msgid "Missing value string"
+msgstr "Kehilangan string nilai"
+
+#: systemv/lpinfo.c:403
+#, c-format
+msgid ""
+"Model:  name = %s\n"
+"        natural_language = %s\n"
+"        make-and-model = %s\n"
+"        device-id = %s\n"
+msgstr ""
+"Model:  nama = %s\n"
+"        bahasa_natural = %s\n"
+"        pembuat-dan-model = %s\n"
+"        id-perangkat = %s\n"
+
+#: cgi-bin/admin.c:421
+msgid "Modify Class"
+msgstr "Ubah Kelas"
+
+#: cgi-bin/admin.c:713
+msgid "Modify Printer"
+msgstr "Ubah Pencetak"
+
+#: cgi-bin/ipp-var.c:413 cgi-bin/ipp-var.c:484
+msgid "Move All Jobs"
+msgstr "Pindah Semua Tugas"
+
+#: cgi-bin/ipp-var.c:358 cgi-bin/ipp-var.c:411 cgi-bin/ipp-var.c:482
+msgid "Move Job"
+msgstr "Pindah Tugas"
+
+#: backend/ipp.c:974
+#, c-format
+msgid "NOTICE: Print file accepted - job ID %d.\n"
+msgstr "CATATAN: Berkas cetak diterima - ID tugas %d.\n"
+
+#: backend/ipp.c:968
+msgid "NOTICE: Print file accepted - job ID unknown.\n"
+msgstr "CATATAN: Berkas cetak diterima - ID tugas tak dikenal.\n"
+
+#: cups/ppd.c:309
+msgid "NULL PPD file pointer"
+msgstr "Penunjuk berkas PPD NULL"
+
+#: cups/ppd.c:1862
+msgid "No"
+msgstr "Tidak"
+
+#: cups/adminutil.c:795
+msgid "No Windows printer drivers are installed!"
+msgstr "Tak ada driver pencetak Windows yang terpasang!"
+
+#: scheduler/ipp.c:3155
+#, c-format
+msgid "No active jobs on %s!"
+msgstr "Tak ada tugas yang aktif pada %s!"
+
+#: scheduler/ipp.c:284
+msgid "No attributes in request!"
+msgstr "Tak ada atribut dalam permintaan!"
+
+#: scheduler/ipp.c:2881
+msgid "No authentication information provided!"
+msgstr "Tak ada informasi otentikasi yang tersedia!"
+
+#: scheduler/ipp.c:5522
+msgid "No default printer"
+msgstr "Tak ada pencetak utama"
+
+#: scheduler/ipp.c:6429
+msgid "No destinations added."
+msgstr "Tak ada tujuan yang ditambah."
+
+#: scheduler/ipp.c:7299 scheduler/ipp.c:8475
+msgid "No file!?!"
+msgstr "Tak ada berkas!?!"
+
+#: scheduler/ipp.c:5160
+msgid "No subscription attributes in request!"
+msgstr "Tak ada atribut subskripsi dalam permintaan!"
+
+#: scheduler/ipp.c:6742
+msgid "No subscriptions found."
+msgstr "Tidak ada subskripsi yang ditemukan."
+
+#: cgi-bin/admin.c:3084
+msgid "None"
+msgstr "Nihil"
+
+#: scheduler/ipp.c:1394
+msgid "Not allowed to print."
+msgstr "Tidak diperbolehkan mencetak."
+
+#: cups/ppd.c:307
+msgid "OK"
+msgstr "Oke"
+
+#: backend/ipp.c:1470
+msgid "OPC almost at end-of-life."
+msgstr "OPC nyaris di ujung hayat."
+
+#: backend/ipp.c:1472
+msgid "OPC at end-of-life!"
+msgstr "OPC sudah di ujung hayat!"
+
+#: cups/ppd.c:315
+msgid "OpenGroup without a CloseGroup first"
+msgstr "OpenGroup tanpa CloseGroup lebih dulu"
+
+#: cups/ppd.c:317
+msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
+msgstr "OpenUI/JCLOpenUI tanpa CloseUI/JCLCloseUI lebih dulu"
+
+#: cgi-bin/admin.c:3057
+msgid "Operation Policy"
+msgstr "Polis Operasi"
+
+#: cgi-bin/admin.c:2879
+msgid "Options Installed"
+msgstr "Opsi yang Terpasang"
+
+#: backend/ipp.c:1438
+msgid "Out of toner!"
+msgstr "Kehabisan toner!"
+
+#: cups/ppd.c:731 cups/ppd.c:1292
+msgid "Output Mode"
+msgstr "Mode Keluaran"
+
+#: backend/ipp.c:1454
+msgid "Output bin almost full."
+msgstr "Baki keluaran hampir penuh."
+
+#: backend/ipp.c:1456
+msgid "Output bin full!"
+msgstr "Baki keluaran telah penuh!"
+
+#: systemv/lpstat.c:1311 systemv/lpstat.c:1315
+#, c-format
+msgid "Output for printer %s is sent to %s\n"
+msgstr "Keluaran untuk pencetak %s dikirim ke %s\n"
+
+#: systemv/lpstat.c:1305
+#, c-format
+msgid "Output for printer %s is sent to remote printer %s on %s\n"
+msgstr "Keluaran untuk pencetak %s dikirim ke pencetak jarak jauh %s pada %s\n"
+
+#: systemv/lpstat.c:1329 systemv/lpstat.c:1333
+#, c-format
+msgid "Output for printer %s/%s is sent to %s\n"
+msgstr "Keluaran untuk pencetak %s/%s dikirim ke %s\n"
+
+#: systemv/lpstat.c:1323
+#, c-format
+msgid "Output for printer %s/%s is sent to remote printer %s on %s\n"
+msgstr "Keluaran untuk pencetak %s/%s dikirim %s pada %s\n"
+
+#: backend/ipp.c:1452
+msgid "Output tray missing!"
+msgstr "Baki keluaran hilang!"
+
+#: systemv/cupstestdsc.c:404
+msgid "PASS\n"
+msgstr "PASS\n"
+
+#: cgi-bin/admin.c:3078 cgi-bin/admin.c:3098
+msgid "PS Binary Protocol"
+msgstr "Protokol Biner PS"
+
+#: cups/auth.c:150
+#, c-format
+msgid "Password for %s on %s? "
+msgstr "Sandi untuk %s pada %s? "
+
+#: systemv/cupsaddsmb.c:246
+#, c-format
+msgid "Password for %s required to access %s via SAMBA: "
+msgstr "Sandi untuk %s diperlukan untuk mengakses %s via SAMBA: "
+
+#: cgi-bin/admin.c:3006
+msgid "Policies"
+msgstr "Polis"
+
+#: cups/notify.c:82
+msgid "Print Job:"
+msgstr "Tugas Cetak:"
+
+#: cgi-bin/ipp-var.c:597
+msgid "Print Test Page"
+msgstr "Cetak Halaman Tes"
+
+#: cgi-bin/ipp-var.c:850
+msgid "Printer Added"
+msgstr "Pencetak Ditambah"
+
+#: cgi-bin/ipp-var.c:854
+msgid "Printer Deleted"
+msgstr "Pencetak Dihapus"
+
+#: cgi-bin/printers.c:213 cgi-bin/printers.c:284
+msgid "Printer Maintenance"
+msgstr "Perawatan Pencetak"
+
+#: cgi-bin/ipp-var.c:852
+msgid "Printer Modified"
+msgstr "Pencetak Diubah"
+
+#: cgi-bin/ipp-var.c:848
+msgid "Printer Stopped"
+msgstr "Pencetak Dihentikan"
+
+#: backend/ipp.c:1434
+msgid "Printer off-line."
+msgstr "Pencetak terputus."
+
+#: cups/notify.c:126
+msgid "Printer:"
+msgstr "Pencetak:"
+
+#: cgi-bin/printers.c:161 cgi-bin/printers.c:330
+msgid "Printers"
+msgstr "Pencetak"
+
+#: cgi-bin/admin.c:161
+msgid "Purge Jobs"
+msgstr "Membersihkan Tugas"
+
+#: scheduler/ipp.c:1389
+msgid "Quota limit reached."
+msgstr "Batas kuota telah dicapai."
+
+#: berkeley/lpq.c:508
+msgid "Rank    Owner   Job     File(s)                         Total Size\n"
+msgstr "Urut    Tuan    Tgs     Berkas                          Ukur Total\n"
+
+#: berkeley/lpq.c:504
+msgid "Rank   Owner      Pri  Job        Files                       Total Size\n"
+msgstr "Urut   Tuan       Pri  Tugas      Berkas                      Ukuran Total\n"
+
+#: cgi-bin/admin.c:159
+msgid "Reject Jobs"
+msgstr "Tolak Tugas"
+
+#: cups/ppd.c:733 cups/ppd.c:1294
+msgid "Resolution"
+msgstr "Resolusi"
+
+#: cups/adminutil.c:2066
+#, c-format
+msgid "Running command: %s %s -N -A %s -c '%s'\n"
+msgstr "Menjalankan perintah: %s %s -N -A %s -c '%s'\n"
+
+#: cgi-bin/ipp-var.c:864
+msgid "Server Restarted"
+msgstr "Server Dinyalakan Ulang"
+
+#: cgi-bin/ipp-var.c:870
+msgid "Server Security Auditing"
+msgstr "Audit Sekuritas Server"
+
+#: cgi-bin/ipp-var.c:866
+msgid "Server Started"
+msgstr "Server Dijalankan"
+
+#: cgi-bin/ipp-var.c:868
+msgid "Server Stopped"
+msgstr "Server Dihentikan"
+
+#: cgi-bin/admin.c:2493 cgi-bin/admin.c:2539 cgi-bin/admin.c:2690
+#: cgi-bin/admin.c:2709
+msgid "Set Allowed Users"
+msgstr "Atur Pengguna yang Boleh"
+
+#: cgi-bin/admin.c:165
+msgid "Set As Default"
+msgstr "Atur Sebagai Utama"
+
+#: cgi-bin/admin.c:2750
+msgid "Set Class Options"
+msgstr "Atur Pilihan Kelas"
+
+#: cgi-bin/admin.c:2750 cgi-bin/admin.c:2849 cgi-bin/admin.c:3125
+msgid "Set Printer Options"
+msgstr "Atur Pilihan Pencetak"
+
+#: cgi-bin/admin.c:3294 cgi-bin/admin.c:3338 cgi-bin/admin.c:3356
+msgid "Set Publishing"
+msgstr "Atur Penerbitan"
+
+#: cgi-bin/admin.c:153
+msgid "Start Class"
+msgstr "Memulai Kelas"
+
+#: cgi-bin/admin.c:149
+msgid "Start Printer"
+msgstr "Memulai Pencetak"
+
+#: cgi-bin/admin.c:2981
+msgid "Starting Banner"
+msgstr "Menjalankan Pataka"
+
+#: cgi-bin/admin.c:155
+msgid "Stop Class"
+msgstr "Menghentikan Kelas"
+
+#: cgi-bin/admin.c:151
+msgid "Stop Printer"
+msgstr "Menghentikan Pencetak"
+
+#: scheduler/ipp.c:6178
+#, c-format
+msgid "The PPD file \"%s\" could not be found."
+msgstr "Berkas PPD \"%s\" tak bisa ditemukan."
+
+#: scheduler/ipp.c:6165
+#, c-format
+msgid "The PPD file \"%s\" could not be opened: %s"
+msgstr "Berkas PPD \"%s\" tak bisa dibuka: %s"
+
+#: cgi-bin/admin.c:579
+msgid "The class name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)."
+msgstr "Nama kelas paling banyak 127 karakter cetak dan tidak mengandung spasi, garis miring (/), atau pun tanda pagar (#)."
+
+#: scheduler/ipp.c:1989
+msgid "The notify-lease-duration attribute cannot be used with job subscriptions."
+msgstr "Atribut notify-lease-duration tidak bisa digunakan bersama subskripsi tugas."
+
+#: scheduler/ipp.c:1972 scheduler/ipp.c:5275
+#, c-format
+msgid "The notify-user-data value is too large (%d > 63 octets)!"
+msgstr "Nilai notify-user-data terlalu besar (%d > 63 oktet)!"
+
+#: cgi-bin/admin.c:783
+msgid "The printer name may only contain up to 127 printable characters and may not contain spaces, slashes (/), or the pound sign (#)."
+msgstr "Nama pencetak paling banyak 127 karakter cetak dan tidak mengandung spasi, garis miring (/), atau tanda pagar (#)."
+
+#: scheduler/ipp.c:1253
+msgid "The printer or class is not shared!"
+msgstr "Pencetak atau kelas tidak dikongsikan!"
+
+#: scheduler/ipp.c:797 scheduler/ipp.c:1088 scheduler/ipp.c:3012
+#: scheduler/ipp.c:3117 scheduler/ipp.c:4820 scheduler/ipp.c:5119
+#: scheduler/ipp.c:5418 scheduler/ipp.c:5771 scheduler/ipp.c:6361
+#: scheduler/ipp.c:6669 scheduler/ipp.c:6961 scheduler/ipp.c:7005
+#: scheduler/ipp.c:7314 scheduler/ipp.c:7705 scheduler/ipp.c:8805
+#: scheduler/ipp.c:9469 scheduler/ipp.c:9536 scheduler/ipp.c:9794
+msgid "The printer or class was not found."
+msgstr "Pencetak atau kelas tidak ditemukan."
+
+#: scheduler/ipp.c:903 scheduler/ipp.c:2175
+#, c-format
+msgid "The printer-uri \"%s\" contains invalid characters."
+msgstr "Terdapat karakter tidak sah pada printer-uri \"%s\"."
+
+#: scheduler/ipp.c:2957
+msgid "The printer-uri attribute is required!"
+msgstr "Atribut printer-uri diperlukan!"
+
+#: scheduler/ipp.c:887
+msgid "The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
+msgstr "Bentuk printer-uri seharusnya menuruti format \"ipp://HOSTNAME/classes/CLASSNAME\"."
+
+#: scheduler/ipp.c:2159
+msgid "The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
+msgstr "Bentuk printer-uri seharusnya menuruti format \"ipp://HOSTNAME/printers/PRINTERNAME\"."
+
+#: cgi-bin/admin.c:323
+msgid "The subscription name may not contain spaces, slashes (/), question marks (?), or the pound sign (#)."
+msgstr "Nama subskripsi tidak bisa mengandung spasi, garis miring (/), tanda tanya (?), atau tanda pagar (#)."
+
+#: backend/ipp.c:1436
+msgid "Toner low."
+msgstr "Toner lemah."
+
+#: scheduler/ipp.c:1383
+msgid "Too many active jobs."
+msgstr "Terlalu banyak tugas yang aktif."
+
+#: cgi-bin/admin.c:1587 cgi-bin/admin.c:1600 cgi-bin/admin.c:1624
+msgid "Unable to access cupsd.conf file:"
+msgstr "Tak bisa mengakses berkas cupsd.conf:"
+
+#: cgi-bin/admin.c:378
+msgid "Unable to add RSS subscription:"
+msgstr "Tak bisa menambah subskripsi RSS:"
+
+#: cgi-bin/admin.c:645
+msgid "Unable to add class:"
+msgstr "Tak bisa menambah kelas:"
+
+#: scheduler/ipp.c:1427
+#, c-format
+msgid "Unable to add job for destination \"%s\"!"
+msgstr "Tak bisa menambah tugas untuk tujuan \"%s\"!"
+
+#: cgi-bin/admin.c:1202
+msgid "Unable to add printer:"
+msgstr "Tak bisa menambah pencetak:"
+
+#: scheduler/ipp.c:1202
+msgid "Unable to allocate memory for file types!"
+msgstr "Tak bisa mengalokasikan memori untuk jenis berkas!"
+
+#: cgi-bin/admin.c:1298
+msgid "Unable to cancel RSS subscription:"
+msgstr "Tak bisa membatalkan subskripsi RSS:"
+
+#: cgi-bin/admin.c:3339
+msgid "Unable to change printer-is-shared attribute:"
+msgstr "Tak bisa mengubah atribut printer-is-shared:"
+
+#: cgi-bin/admin.c:2423 cgi-bin/admin.c:2691
+msgid "Unable to change printer:"
+msgstr "Tak bisa mengubah pencetak:"
+
+#: cgi-bin/admin.c:1368 cgi-bin/admin.c:1431
+msgid "Unable to change server settings:"
+msgstr "Tak bisa mengubah pengaturan server:"
+
+#: cups/adminutil.c:733
+#, c-format
+msgid "Unable to copy 64-bit CUPS printer driver files (%d)!"
+msgstr "Tak bisa menyalin berkas driver pencetak CUPS 64-bit (%d)!"
+
+#: cups/adminutil.c:698
+#, c-format
+msgid "Unable to copy 64-bit Windows printer driver files (%d)!"
+msgstr "Tak bisa menyalin berkas driver pencetak Windows 64-bit (%d)!"
+
+#: cups/adminutil.c:529
+#, c-format
+msgid "Unable to copy CUPS printer driver files (%d)!"
+msgstr "Tak bisa menyalin berkas driver pencetak CUPS (%d)!"
+
+#: scheduler/ipp.c:2516
+#, c-format
+msgid "Unable to copy PPD file - %s!"
+msgstr "Tak bisa menyalin berkas PPD - %s!"
+
+#: scheduler/ipp.c:2572
+msgid "Unable to copy PPD file!"
+msgstr "Tak bisa menyalin berkas PPD!"
+
+#: cups/adminutil.c:494
+#, c-format
+msgid "Unable to copy Windows 2000 printer driver files (%d)!"
+msgstr "Tak bisa menyalin berkas driver pencetak Windows 2000 (%d)!"
+
+#: cups/adminutil.c:617
+#, c-format
+msgid "Unable to copy Windows 9x printer driver files (%d)!"
+msgstr "Tak bisa menyalin berkas driver pencetak Windows 9x (%d)!"
+
+#: scheduler/ipp.c:2491
+#, c-format
+msgid "Unable to copy interface script - %s!"
+msgstr "Tak bisa menyalin skrip antarmuka - %s!"
+
+#: cgi-bin/admin.c:1478 cgi-bin/admin.c:1490 cgi-bin/printers.c:214
+msgid "Unable to create temporary file:"
+msgstr "Tak bisa membuat berkas temporer:"
+
+#: cgi-bin/admin.c:1778
+msgid "Unable to delete class:"
+msgstr "Tak bisa menghapus kelas:"
+
+#: cgi-bin/admin.c:1863
+msgid "Unable to delete printer:"
+msgstr "Tak bisa menghapus pencetak:"
+
+#: cgi-bin/admin.c:1602
+msgid "Unable to edit cupsd.conf files larger than 1MB!"
+msgstr "Tak bisa menyunting berkas cupsd.conf lebih dari 1MB!"
+
+#: cgi-bin/ipp-var.c:359
+msgid "Unable to find destination for job!"
+msgstr "Tak bisa menemukan tujuan untuk tugas!"
+
+#: cgi-bin/classes.c:350
+msgid "Unable to get class list:"
+msgstr "Tak bisa mendapatkan daftar kelas:"
+
+#: cgi-bin/classes.c:449
+msgid "Unable to get class status:"
+msgstr "Tak bisa mendapatkan status kelas:"
+
+#: cgi-bin/admin.c:1112
+msgid "Unable to get list of printer drivers:"
+msgstr "Tak bisa mendapatkan daftar driver pencetak:"
+
+#: cgi-bin/admin.c:2547
+msgid "Unable to get printer attributes:"
+msgstr "Tak bisa mendapatkan atribut pencetak:"
+
+#: cgi-bin/printers.c:514
+msgid "Unable to get printer list:"
+msgstr "Tak bisa mendapatkan daftar pencetak:"
+
+#: cgi-bin/printers.c:624
+msgid "Unable to get printer status:"
+msgstr "Tak bisa mendapatkan status pencetak:"
+
+#: cups/adminutil.c:572 cups/adminutil.c:776
+#, c-format
+msgid "Unable to install Windows 2000 printer driver files (%d)!"
+msgstr "Tak bisa memasang berkas driver pencetak Windows 2000 (%d)!"
+
+#: cups/adminutil.c:646
+#, c-format
+msgid "Unable to install Windows 9x printer driver files (%d)!"
+msgstr "Tak bisa memasang berkas driver pencetak Windows 9x (%d)!"
+
+#: cgi-bin/admin.c:644
+msgid "Unable to modify class:"
+msgstr "Tak bisa mengubah kelas:"
+
+#: cgi-bin/admin.c:1201
+msgid "Unable to modify printer:"
+msgstr "Tak bisa mengubah pencetak"
+
+#: cgi-bin/ipp-var.c:489
+msgid "Unable to move job"
+msgstr "Tak bisa memindahkan tugas"
+
+#: cgi-bin/ipp-var.c:491
+msgid "Unable to move jobs"
+msgstr "Tak bisa memindahkan tugas"
+
+#: cups/ppd.c:308
+msgid "Unable to open PPD file"
+msgstr "Tak bisa membuka berkas PPD"
+
+#: cgi-bin/admin.c:2790
+msgid "Unable to open PPD file:"
+msgstr "Tak bisa membuka berkas PPD:"
+
+#: cgi-bin/admin.c:2266
+msgid "Unable to open cupsd.conf file:"
+msgstr "Tak bisa membuka berkas cupsd.conf:"
+
+#: cgi-bin/ipp-var.c:600
+msgid "Unable to print test page:"
+msgstr "Tak bisa mencetak halaman tes:"
+
+#: cups/adminutil.c:2097
+#, c-format
+msgid "Unable to run \"%s\": %s\n"
+msgstr "Tak bisa menjalankan \"%s\": %s\n"
+
+#: cgi-bin/printers.c:287
+msgid "Unable to send maintenance job:"
+msgstr "Tak bisa mengirim tugas perawatan:"
+
+#: cups/adminutil.c:825
+#, c-format
+msgid "Unable to set Windows printer driver (%d)!"
+msgstr "Tak bisa mengeset driver pencetak Windows (%d)!"
+
+#: cgi-bin/admin.c:3240
+msgid "Unable to set options:"
+msgstr "Tak bisa mengeset opsi:"
+
+#: cgi-bin/admin.c:1540
+msgid "Unable to upload cupsd.conf file:"
+msgstr "Tak bisa mengunggah berkas cupsd.conf:"
+
+#: cups/ppd.c:332
+msgid "Unknown"
+msgstr "Tak dikenal"
+
+#: backend/ipp.c:1481
+#, c-format
+msgid "Unknown printer error (%s)!"
+msgstr "Kesalahan pencetak tak dikenal (%s)!"
+
+#: scheduler/ipp.c:9342
+#, c-format
+msgid "Unknown printer-error-policy \"%s\"."
+msgstr "printer-error-policy \"%s\" tak dikenal."
+
+#: scheduler/ipp.c:9327
+#, c-format
+msgid "Unknown printer-op-policy \"%s\"."
+msgstr "printer-op-policy \"%s\" tak dikenal."
+
+#: scheduler/ipp.c:7280 scheduler/ipp.c:8456
+#, c-format
+msgid "Unsupported compression \"%s\"!"
+msgstr "Kompresi \"%s\" tak didukung!"
+
+#: scheduler/ipp.c:9747
+#, c-format
+msgid "Unsupported compression attribute %s!"
+msgstr "Atribut kompresi %s tak didukung!"
+
+#: scheduler/ipp.c:9775
+#, c-format
+msgid "Unsupported format \"%s\"!"
+msgstr "Format \"%s\" tak didukung!"
+
+#: scheduler/ipp.c:1315 scheduler/ipp.c:8588
+#, c-format
+msgid "Unsupported format '%s'!"
+msgstr "Format '%s' tak didukung!"
+
+#: scheduler/ipp.c:7411 scheduler/ipp.c:8571
+#, c-format
+msgid "Unsupported format '%s/%s'!"
+msgstr "Format '%s/%s' tak didukung!"
+
+#: systemv/lpadmin.c:805
+msgid ""
+"Usage:\n"
+"\n"
+"    lpadmin [-h server] -d destination\n"
+"    lpadmin [-h server] -x destination\n"
+"    lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n"
+"                       [-r remove-class] [-v device] [-D description]\n"
+"                       [-P ppd-file] [-o name=value]\n"
+"                       [-u allow:user,user] [-u deny:user,user]\n"
+"\n"
+msgstr ""
+"Penggunaan:\n"
+"\n"
+"    lpadmin [-h server] -d tujuan\n"
+"    lpadmin [-h server] -x tujuan\n"
+"    lpadmin [-h server] -p pencetak [-c tambah-kelas] [-i antarmuka] [-m model]\n"
+"                       [-r buang-kelas] [-v perangkat] [-D deskripsi]\n"
+"                       [-P berkas-ppd] [-o nama=nilai]\n"
+"                       [-u allow:pengguna,pengguna] [-u deny:pengguna,pengguna]\n"
+"\n"
+
+#: backend/ipp.c:201 backend/lpd.c:189 backend/parallel.c:125
+#: backend/scsi.c:156 backend/serial.c:164 backend/socket.c:125
+#: backend/usb.c:187 filter/hpgl-main.c:148 filter/imagetops.c:115
+#: filter/imagetoraster.c:208 filter/pstops.c:235 filter/rastertoepson.c:1024
+#: filter/rastertohp.c:757 filter/rastertolabel.c:1171 filter/textcommon.c:518
+#, c-format
+msgid "Usage: %s job-id user title copies options [file]\n"
+msgstr "Penggunaan: %s id-tugas pengguna judul rangkap opsi [berkas]\n"
+
+#: filter/gziptoany.c:53
+#, c-format
+msgid "Usage: %s job-id user title copies options file\n"
+msgstr "Penggunaan: %s id-tugas pengguna judul rangkap opsi berkas\n"
+
+#: scheduler/cupsfilter.c:964
+msgid ""
+"Usage: convert [ options ]\n"
+"\n"
+"Options:\n"
+"\n"
+"  -f filename          Set file to be converted (otherwise stdin)\n"
+"  -o filename          Set file to be generated (otherwise stdout)\n"
+"  -i mime/type         Set input MIME type (otherwise auto-typed)\n"
+"  -j mime/type         Set output MIME type (otherwise application/pdf)\n"
+"  -P filename.ppd      Set PPD file\n"
+"  -a 'name=value ...'  Set option(s)\n"
+"  -U username          Set username for job\n"
+"  -J title             Set title\n"
+"  -c copies            Set number of copies\n"
+"  -u                   Remove the PPD file when finished\n"
+"  -D                   Remove the input file when finished\n"
+msgstr ""
+"Penggunaan: convert [ opsi ]\n"
+"\n"
+"Opsi:\n"
+"\n"
+"  -f namaberkas        Mengeset berkas untuk dikonversi (sebaliknya stdin)\n"
+"  -o namaberkas        Mengeset berkas untuk digenerasi (sebaliknya stdout)\n"
+"  -i mime/jenis        Mengeset jenis MIME masukan (sebaliknya auto-typed)\n"
+"  -j mime/jenis        Mengeset jenis MIME keluaran (sebaliknya application/pdf)\n"
+"  -P namaberkas.ppd    Mengeset berkas PPD\n"
+"  -a 'nama=nilai ...'  Mengeset opsi\n"
+"  -U namapengguna      Mengeset nama pengguna untuk tugas\n"
+"  -J judul             Mengeset judul\n"
+"  -c rangkap           Mengeset jumlah rangkap\n"
+"  -u                   Membuang berkas PPD setelah usai\n"
+"  -D                   Membuang berkas masukan setelah usai\n"
+
+#: systemv/cupsaddsmb.c:276
+msgid ""
+"Usage: cupsaddsmb [options] printer1 ... printerN\n"
+"       cupsaddsmb [options] -a\n"
+"\n"
+"Options:\n"
+"  -E               Encrypt the connection to the server\n"
+"  -H samba-server  Use the named SAMBA server\n"
+"  -U samba-user    Authenticate using the named SAMBA user\n"
+"  -a               Export all printers\n"
+"  -h cups-server   Use the named CUPS server\n"
+"  -v               Be verbose (show commands)\n"
+msgstr ""
+"Penggunaan: cupsaddsmb [opsi] pencetak1 ... pencetakN\n"
+"            cupsaddsmb [opsi] -a\n"
+"\n"
+"Opsi:\n"
+"  -E               Mengenkripsi koneksi ke server\n"
+"  -H samba-server  Menggunakan server SAMBA yang diberikan\n"
+"  -U samba-user    Otentikasi menggunakan nama pengguna SAMBA yang diberikan\n"
+"  -a               Mengekspor semua pencetak\n"
+"  -h cups-server   Menggunakan server CUPS yang ditentukan\n"
+"  -v               Menjadi verbose (menampilkan perintah)\n"
+
+#: systemv/cupsctl.c:195
+msgid ""
+"Usage: cupsctl [options] [param=value ... paramN=valueN]\n"
+"\n"
+"Options:\n"
+"\n"
+"    -E                      Enable encryption\n"
+"    -U username             Specify username\n"
+"    -h server[:port]        Specify server address\n"
+"\n"
+"    --[no-]debug-logging    Turn debug logging on/off\n"
+"    --[no-]remote-admin     Turn remote administration on/off\n"
+"    --[no-]remote-any       Allow/prevent access from the Internet\n"
+"    --[no-]remote-printers  Show/hide remote printers\n"
+"    --[no-]share-printers   Turn printer sharing on/off\n"
+"    --[no-]user-cancel-any  Allow/prevent users to cancel any job\n"
+msgstr ""
+"Penggunaan: cupsctl [opsi] [param=nilai ... paramN=nilaiN]\n"
+"\n"
+"Opsi:\n"
+"\n"
+"    -E                      Mengaktifkan enkripsi\n"
+"    -U namapengguna         Menentukan nama pengguna\n"
+"    -h server[:portal       Menentukan alamat server\n"
+"\n"
+"    --[no-]debug-logging    Mengaktifkan/tidak pencatat debug\n"
+"    --[no-]remote-admin     Mengaktifkan/tidak administrasi jarak jauh\n"
+"    --[no-]remote-any       Biarkan/cegah akses dari Internet\n"
+"    --[no-]remote-printers  Tampilkan/sembunyikan pencetak jarak jauh\n"
+"    --[no-]share-printers   Mengaktifkan/tidak pencetak yang dikongsi\n"
+"    --[no-]user-cancel-any  Biarkan/cegah pengguna biasa membatalkan tugas\n"
+
+#: scheduler/main.c:1806
+msgid ""
+"Usage: cupsd [-c config-file] [-f] [-F] [-h] [-l]\n"
+"\n"
+"-c config-file      Load alternate configuration file\n"
+"-f                  Run in the foreground\n"
+"-F                  Run in the foreground but detach\n"
+"-h                  Show this usage message\n"
+"-l                  Run cupsd from launchd(8)\n"
+msgstr ""
+"Penggunaan: cupsd [-c berkas-konfigurasi] [-f] [-F] [-h] [-l]\n"
+"\n"
+"-c berkas-konfigurasi  Memuat berkas konfigurasi alternatif\n"
+"-f                     Berjalan pada latar depan\n"
+"-F                     Berjalan pada latar depan tapi terpisah\n"
+"-h                     Tampilkan pesan ini\n"
+"-l                     Menjalankan cupsd dari launchd(8)\n"
+
+#: scheduler/cupsfilter.c:953
+msgid ""
+"Usage: cupsfilter -m mime/type [ options ] filename\n"
+"\n"
+"Options:\n"
+"\n"
+"  -c cupsd.conf    Set cupsd.conf file to use\n"
+"  -n copies        Set number of copies\n"
+"  -o name=value    Set option(s)\n"
+"  -p filename.ppd  Set PPD file\n"
+"  -t title         Set title\n"
+msgstr ""
+"Penggunaan: cupsfilter -m mime/jenis [ opsi ] namaberkas\n"
+"\n"
+"Opsi:\n"
+"\n"
+"  -c cupsd.conf      Mengeset berkas cupsd.conf untuk digunakan\n"
+"  -n salinan         Mengeset banyaknya salinan\n"
+"  -o nama=nilai      Mengeset opsi\n"
+"  -p namaberkas.ppd  Mengeset berkas PPD\n"
+"  -t judul           Mengeset judul\n"
+
+#: systemv/cupstestdsc.c:431
+msgid ""
+"Usage: cupstestdsc [options] filename.ps [... filename.ps]\n"
+"       cupstestdsc [options] -\n"
+"\n"
+"Options:\n"
+"\n"
+"    -h       Show program usage\n"
+"\n"
+"    Note: this program only validates the DSC comments, not the PostScript itself.\n"
+msgstr ""
+"Penggunaan: cupstestdsc [opsi] namaberkas.ps [... namaberkas.ps]\n"
+"            cupstestdsc [opsi] -\n"
+"\n"
+"Opsi:\n"
+"\n"
+"    -h       Menampilkan cara guna program\n"
+"\n"
+"    Catatan: program ini hanya memvalidasi komentar DSC, bukan PostScript itu sendiri.\n"
+
+#: systemv/cupstestppd.c:2409
+msgid ""
+"Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]\n"
+"       program | cupstestppd [options] -\n"
+"\n"
+"Options:\n"
+"\n"
+"    -R root-directory    Set alternate root\n"
+"    -W {all,none,constraints,defaults,filters,translations}\n"
+"                         Issue warnings instead of errors\n"
+"    -q                   Run silently\n"
+"    -r                   Use 'relaxed' open mode\n"
+"    -v                   Be slightly verbose\n"
+"    -vv                  Be very verbose\n"
+msgstr ""
+"Penggunaan: cupstestppd [opsi] namaberkas1.ppd[.gz] [... namaberkasN.ppd[.gz]]\n"
+"            program | cupstestppd [opsi] -\n"
+"\n"
+"Opsi:\n"
+"\n"
+"    -R direktori-root    Mengeset root alternatif\n"
+"    -W {all,none,constraints,defaults,filters,translations}\n"
+"                         Kabar peringatan ketimbang kesalahan\n"
+"    -q                   Berjalan sangat senyap\n"
+"    -r                   Menggunakan mode terbuka 'relaxed'\n"
+"    -v                   Menjadi tidak begitu verbose\n"
+"    -vv                  Menjadi sangat verbose\n"
+
+#: systemv/lpmove.c:138
+msgid "Usage: lpmove job/src dest\n"
+msgstr "Penggunaan: lpmove tugas/sumber tujuan\n"
+
+#: systemv/lpoptions.c:479
+msgid ""
+"Usage: lpoptions [-h server] [-E] -d printer\n"
+"       lpoptions [-h server] [-E] [-p printer] -l\n"
+"       lpoptions [-h server] [-E] -p printer -o option[=value] ...\n"
+"       lpoptions [-h server] [-E] -x printer\n"
+msgstr ""
+"Penggunaan: lpoptions [-h server] [-E] -d pencetak\n"
+"            lpoptions [-h server] [-E] [-p pencetak] -l\n"
+"            lpoptions [-h server] [-E] -p pencetak -o opsi[=nilai] ...\n"
+"            lpoptions [-h server] [-E] -x pencetak\n"
+
+#: systemv/lppasswd.c:493
+msgid "Usage: lppasswd [-g groupname]\n"
+msgstr "Penggunaan: lppasswd [-g namakelompok]\n"
+
+#: systemv/lppasswd.c:496
+msgid ""
+"Usage: lppasswd [-g groupname] [username]\n"
+"       lppasswd [-g groupname] -a [username]\n"
+"       lppasswd [-g groupname] -x [username]\n"
+msgstr ""
+"Penggunaan: lppasswd [-g namakelompok] [namapengguna]\n"
+"            lppasswd [-g namakelompok] -a [namapengguna]\n"
+"            lppasswd [-g namakelompok] -x [namapengguna]\n"
+
+#: berkeley/lpq.c:663
+msgid "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]\n"
+msgstr "Penggunaan: lpq [-P tujuan] [-U namapengguna] [-h namahost[:portal]] [-l] [+interval]\n"
+
+#: backend/snmp.c:317
+msgid "Usage: snmp [host-or-ip-address]\n"
+msgstr "Penggunaan: snmp [host-atau-alamat-ip]\n"
+
+#: backend/usb-darwin.c:1606
+#, c-format
+msgid "WARNING: Boolean expected for waiteof option \"%s\"\n"
+msgstr "PERINGATAN: Diharapkan boolean untuk opsi waiteof \"%s\"\n"
+
+#: backend/usb-darwin.c:476
+msgid "WARNING: Couldn't create read channel\n"
+msgstr "PERINGATAN: Tak akan membuat kanal!\n"
+
+#: backend/usb-darwin.c:459
+msgid "WARNING: Couldn't create side channel\n"
+msgstr "PERINGATAN: Tak akan membuat kanal sisi!\n"
+
+#: backend/pap.c:1283 backend/parallel.c:616 backend/serial.c:1250
+#: backend/socket.c:441 backend/usb-unix.c:565
+msgid "WARNING: Failed to read side-channel request!\n"
+msgstr "PERINGATAN: Gagal membaca permintaan side-channel (kanal sisi)!\n"
+
+#: filter/pstops.c:2145
+#, c-format
+msgid "WARNING: Option \"%s\" cannot be included via IncludeFeature!\n"
+msgstr "PERINGATAN: Opsi \"%s\" tidak akan disertakan via IncludeFeature!\n"
+
+#: backend/lpd.c:589
+#, c-format
+msgid "WARNING: Remote host did not respond with command status byte after %d seconds!\n"
+msgstr "PERINGATAN: Host jarak jauh tidak merespon pada bita status perintah usai %d detik!\n"
+
+#: backend/lpd.c:982 backend/lpd.c:1111
+#, c-format
+msgid "WARNING: Remote host did not respond with control status byte after %d seconds!\n"
+msgstr "PERINGATAN: Host jarak jauh tidak merespon pada bita kontrol status usai %d detik!\n"
+
+#: backend/lpd.c:1067
+#, c-format
+msgid "WARNING: Remote host did not respond with data status byte after %d seconds!\n"
+msgstr "PERINGATAN: Host jarak jauh tidak merespon pada bita status data usai %d detik!\n"
+
+#: backend/scsi-irix.c:205 backend/scsi-linux.c:224
+#, c-format
+msgid "WARNING: SCSI command timed out (%d); retrying...\n"
+msgstr "PERINGATAN: Perintah SCSI kehabisan waktu (%d); mencoba ulang...\n"
+
+#: filter/pstops.c:1026
+msgid "WARNING: This document does not conform to the Adobe Document Structuring Conventions and may not print correctly!\n"
+msgstr "PERINGATAN: Dokumen ini tidak sesuai dengan Adobe Document Structuring Conventions dan mungkin tidak tercetak dengan benar!\n"
+
+#: filter/pstops.c:2152
+#, c-format
+msgid "WARNING: Unknown choice \"%s\" for option \"%s\"!\n"
+msgstr "PERINGATAN: Pilihan \"%s\" tak dikenal untuk opsi \"%s\"!\n"
+
+#: filter/pstops.c:2138
+#, c-format
+msgid "WARNING: Unknown option \"%s\"!\n"
+msgstr "PERINGATAN: Opsi \"%s\" tak dikenal!\n"
+
+#: backend/serial.c:373
+#, c-format
+msgid "WARNING: Unsupported baud rate %s!\n"
+msgstr "PERINGATAN: Tak mendukung baud rate %s!\n"
+
+#: backend/ipp.c:534 backend/ipp.c:647 backend/lpd.c:820 backend/socket.c:302
+#, c-format
+msgid "WARNING: recoverable: Network host '%s' is busy; will retry in %d seconds...\n"
+msgstr "PERINGATAN: pemulihan: Host jaringan '%s' sibuk; akan dicoba ulang dalam %d detik...\n"
+
+#: cups/adminutil.c:800
+msgid "Warning, no Windows 2000 printer drivers are installed!"
+msgstr "Peringatan, tak ada driver pencetak Windows 2000 yang terpasang!"
+
+#: cups/ppd.c:1860
+msgid "Yes"
+msgstr "Ya"
+
+#: scheduler/client.c:2284
+#, c-format
+msgid "You must access this page using the URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A>."
+msgstr "Anda harus mengakses halaman ini melalui URL <A HREF=\"https://%s:%d%s\">https://%s:%d%s</A>."
+
+#: cups/notify.c:102
+msgid "aborted"
+msgstr "digagalkan"
+
+#: cups/notify.c:99
+msgid "canceled"
+msgstr "dibatalkan"
+
+#: cups/notify.c:105
+msgid "completed"
+msgstr "diselesaikan"
+
+#: scheduler/cupsfilter.c:300
+msgid "convert: Use the -f option to specify a file to convert.\n"
+msgstr "konversi: Gunakan opsi -f untuk menentukan berkas yang hendak dikonversi.\n"
+
+#: scheduler/ipp.c:5591
+msgid "cups-deviced failed to execute."
+msgstr "cups-deviced gagal dieksekusi."
+
+#: scheduler/ipp.c:6100 scheduler/ipp.c:6328
+msgid "cups-driverd failed to execute."
+msgstr "cups-driverd gagal dieksekusi."
+
+#: systemv/cupsaddsmb.c:226
+#, c-format
+msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s\n"
+msgstr "cupsaddsmb: Tak ada berkas PPD untuk pencetak \"%s\" - %s\n"
+
+#: systemv/cupsctl.c:189
+#, c-format
+msgid "cupsctl: Unknown option \"%s\"!\n"
+msgstr "cupsctl: Opsi tak dikenal \"%s\"!\n"
+
+#: systemv/cupsctl.c:191
+#, c-format
+msgid "cupsctl: Unknown option \"-%c\"!\n"
+msgstr "cupsctl: Opsi tak dikenal \"-%c\"!\n"
+
+#: scheduler/main.c:178
+msgid "cupsd: Expected config filename after \"-c\" option!\n"
+msgstr "cupsd: Diharapkan nama berkas konfigurasi usai opsi \"-c\"!\n"
+
+#: scheduler/main.c:253
+#, c-format
+msgid "cupsd: Unknown argument \"%s\" - aborting!\n"
+msgstr "cupsd: Argumen \"%s\" tak dikenal - digagalkan!\n"
+
+#: scheduler/main.c:246
+#, c-format
+msgid "cupsd: Unknown option \"%c\" - aborting!\n"
+msgstr "cupsd: Opsi \"%c\" tak dikenal- digagalkan!\n"
+
+#: scheduler/main.c:233
+msgid "cupsd: launchd(8) support not compiled in, running in normal mode.\n"
+msgstr "cupsd: dukungan launchd(8) tidak dikompilasi serta, menjalankan dalam mode normal.\n"
+
+#: scheduler/cupsfilter.c:308
+msgid "cupsfilter: Only one filename can be specified!\n"
+msgstr "cupsfilter: Hanya satu nama berkas yang bisa ditentukan!\n"
+
+#: systemv/cupstestppd.c:201
+msgid "cupstestppd: The -q option is incompatible with the -v option.\n"
+msgstr "cupstestppd: Opsi -q tidak cocok dengan opsi -v.\n"
+
+#: systemv/cupstestppd.c:217
+msgid "cupstestppd: The -v option is incompatible with the -q option.\n"
+msgstr "cupstestppd: Opsi -v tidak cocok dengan opsi -q.\n"
+
+#: systemv/lpstat.c:1351 systemv/lpstat.c:1354 systemv/lpstat.c:1357
+#, c-format
+msgid "device for %s/%s: %s\n"
+msgstr "perangkat untuk %s/%s: %s\n"
+
+#: systemv/lpstat.c:1338 systemv/lpstat.c:1341 systemv/lpstat.c:1344
+#, c-format
+msgid "device for %s: %s\n"
+msgstr "perangkat untuk %s: %s\n"
+
+#: cups/notify.c:90
+msgid "held"
+msgstr "ditahan"
+
+#: berkeley/lpc.c:214
+msgid "help\t\tget help on commands\n"
+msgstr "bantuan\t\tmemperoleh bantuan dari baris perintah\n"
+
+#: cups/notify.c:131
+msgid "idle"
+msgstr "menganggur"
+
+#: scheduler/ipp.c:6950
+msgid "job-printer-uri attribute missing!"
+msgstr "Atribut job-printer-uri hilang!"
+
+#: systemv/lpadmin.c:141 systemv/lpadmin.c:453
+msgid "lpadmin: Class name can only contain printable characters!\n"
+msgstr "lpadmin: Nama kelas hanya boleh diisi karakter cetak!\n"
+
+#: systemv/lpadmin.c:750
+msgid "lpadmin: Expected PPD after '-P' option!\n"
+msgstr "lpadmin: Diharapkan PPD usai opsi '-P'!\n"
+
+#: systemv/lpadmin.c:491
+msgid "lpadmin: Expected allow/deny:userlist after '-u' option!\n"
+msgstr "lpadmin: Diharapkan allow/deny:daftarpengguna usai opsi '-u'!\n"
+
+#: systemv/lpadmin.c:442
+msgid "lpadmin: Expected class after '-r' option!\n"
+msgstr "lpadmin: Diharapkan kelas usai opsi '-r'!\n"
+
+#: systemv/lpadmin.c:130
+msgid "lpadmin: Expected class name after '-c' option!\n"
+msgstr "lpadmin: Diharapkan nama kelas usai opsi '-c'!\n"
+
+#: systemv/lpadmin.c:643
+msgid "lpadmin: Expected description after '-D' option!\n"
+msgstr "lpadmin: Diharapkan deskripsi usai opsi '-D'!\n"
+
+#: systemv/lpadmin.c:550
+msgid "lpadmin: Expected device URI after '-v' option!\n"
+msgstr "lpadmin: Diharapkan URI perangkat usai opsi '-v'!\n"
+
+#: systemv/lpadmin.c:659
+msgid "lpadmin: Expected file type(s) after '-I' option!\n"
+msgstr "lpadmin: Diharapkan jenis berkas usai opsi '-I'!\n"
+
+#: systemv/lpadmin.c:212
+msgid "lpadmin: Expected hostname after '-h' option!\n"
+msgstr "lpadmin: Diharapkan nama host usai opsi '-h'!\n"
+
+#: systemv/lpadmin.c:257
+msgid "lpadmin: Expected interface after '-i' option!\n"
+msgstr "lpadmin: Diharapkan antarmuka usai opsi '-i'!\n"
+
+#: systemv/lpadmin.c:704
+msgid "lpadmin: Expected location after '-L' option!\n"
+msgstr "lpadmin: Diharapkan lokasi usai opsi '-L'!\n"
+
+#: systemv/lpadmin.c:338
+msgid "lpadmin: Expected model after '-m' option!\n"
+msgstr "lpadmin: Diharapkan model usai opsi '-m'!\n"
+
+#: systemv/lpadmin.c:358
+msgid "lpadmin: Expected name=value after '-o' option!\n"
+msgstr "lpadmin: Diharapkan nama=nilai usai opsi '-o'!\n"
+
+#: systemv/lpadmin.c:391
+msgid "lpadmin: Expected printer after '-p' option!\n"
+msgstr "lpadmin: Diharapkan pencetak usai opsi '-p'!\n"
+
+#: systemv/lpadmin.c:174
+msgid "lpadmin: Expected printer name after '-d' option!\n"
+msgstr "lpadmin: Diharapkan nama pencetak usai opsi '-d'!\n"
+
+#: systemv/lpadmin.c:584
+msgid "lpadmin: Expected printer or class after '-x' option!\n"
+msgstr "lpadmin: Diharapkan pencetak atau kelas usai opsi '-x'!\n"
+
+#: systemv/lpadmin.c:1127
+msgid "lpadmin: No member names were seen!\n"
+msgstr "lpadmin: Tak ada nama anggota yang terlihat!\n"
+
+#: systemv/lpadmin.c:893
+#, c-format
+msgid "lpadmin: Printer %s is already a member of class %s.\n"
+msgstr "lpadmin: Pencetak %s sudah menjadi anggota kelas %s.\n"
+
+#: systemv/lpadmin.c:1141
+#, c-format
+msgid "lpadmin: Printer %s is not a member of class %s.\n"
+msgstr "lpadmin: Pencetak %s bukanlah anggota kelas %s.\n"
+
+#: systemv/lpadmin.c:185 systemv/lpadmin.c:402 systemv/lpadmin.c:595
+msgid "lpadmin: Printer name can only contain printable characters!\n"
+msgstr "lpadmin: Nama pencetak hanya bisa mengandung karakter cetak!\n"
+
+#: systemv/lpadmin.c:115
+msgid ""
+"lpadmin: Unable to add a printer to the class:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa menambah pencetak ke kelas:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:106 systemv/lpadmin.c:159 systemv/lpadmin.c:230
+#: systemv/lpadmin.c:291 systemv/lpadmin.c:310 systemv/lpadmin.c:376
+#: systemv/lpadmin.c:417 systemv/lpadmin.c:523 systemv/lpadmin.c:569
+#: systemv/lpadmin.c:615 systemv/lpadmin.c:677 systemv/lpadmin.c:723
+#: systemv/lpadmin.c:784
+#, c-format
+msgid "lpadmin: Unable to connect to server: %s\n"
+msgstr "lpadmin: Tak bisa terkoneksi ke server: %s\n"
+
+#: systemv/lpadmin.c:1843
+#, c-format
+msgid "lpadmin: Unable to create temporary file - %s\n"
+msgstr "lpadmin: Tak bisa membuat berkas temporer - %s\n"
+
+#: systemv/lpadmin.c:1452
+#, c-format
+msgid "lpadmin: Unable to create temporary file: %s\n"
+msgstr "lpadmin: Tak bisa membuat berkas temporer: %s\n"
+
+#: systemv/lpadmin.c:1853
+#, c-format
+msgid "lpadmin: Unable to open PPD file \"%s\" - %s\n"
+msgstr "lpadmin: Tak bisa membuka berkas PPD \"%s\" - %s\n"
+
+#: systemv/lpadmin.c:1460
+#, c-format
+msgid "lpadmin: Unable to open file \"%s\": %s\n"
+msgstr "lpadmin: Tak bisa membuka berkas \"%s\": %s\n"
+
+#: systemv/lpadmin.c:426
+msgid ""
+"lpadmin: Unable to remove a printer from the class:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa membuang pencetak dari kelas:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:732
+msgid ""
+"lpadmin: Unable to set the PPD file:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa mengeset berkas PPD:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:532
+msgid ""
+"lpadmin: Unable to set the device URI:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa mengeset URI perangkat:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:319
+msgid ""
+"lpadmin: Unable to set the interface script or PPD file:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa mengeset skrip antarmuka atau berkas PPD:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:239
+msgid ""
+"lpadmin: Unable to set the interface script:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa mengeset skrip antarmuka:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:624
+msgid ""
+"lpadmin: Unable to set the printer description:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa mengeset deskripsi pencetak:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:686
+msgid ""
+"lpadmin: Unable to set the printer location:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa mengeset lokasi pencetak:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:793
+msgid ""
+"lpadmin: Unable to set the printer options:\n"
+"         You must specify a printer name first!\n"
+msgstr ""
+"lpadmin: Tak bisa mengeset opsi pencetak:\n"
+"         Anda harus menentukan nama pencetak lebih dulu!\n"
+
+#: systemv/lpadmin.c:508
+#, c-format
+msgid "lpadmin: Unknown allow/deny option \"%s\"!\n"
+msgstr "lpadmin: Opsi boleh/larang tak dikenal \"%s\"!\n"
+
+#: systemv/lpadmin.c:766
+#, c-format
+msgid "lpadmin: Unknown argument '%s'!\n"
+msgstr "lpadmin: Argumen tak dikenal '%s'!\n"
+
+#: systemv/lpadmin.c:761
+#, c-format
+msgid "lpadmin: Unknown option '%c'!\n"
+msgstr "lpadmin: Pilihan tak dikenal '%c'!\n"
+
+#: systemv/lpadmin.c:665
+msgid "lpadmin: Warning - content type list ignored!\n"
+msgstr "lpadmin: Peringatan - jenis isi diabaikan!\n"
+
+#: berkeley/lpc.c:81 berkeley/lpc.c:109 berkeley/lpc.c:145
+msgid "lpc> "
+msgstr "lpc> "
+
+#: systemv/lpinfo.c:91 systemv/lpinfo.c:110
+#, c-format
+msgid "lpinfo: Unable to connect to server: %s\n"
+msgstr "lpinfo: Tak bisa terkoneksi ke server: %s\n"
+
+#: systemv/lpinfo.c:151
+#, c-format
+msgid "lpinfo: Unknown argument '%s'!\n"
+msgstr "lpinfo: Argumen tak dikenal '%s'!\n"
+
+#: systemv/lpinfo.c:145
+#, c-format
+msgid "lpinfo: Unknown option '%c'!\n"
+msgstr "lpinfo: Pilihan tak dikenal '%c'!\n"
+
+#: systemv/lpmove.c:149
+#, c-format
+msgid "lpmove: Unable to connect to server: %s\n"
+msgstr "lpmove: Tak bisa terkoneksi ke server: %s\n"
+
+#: systemv/lpmove.c:131
+#, c-format
+msgid "lpmove: Unknown argument '%s'!\n"
+msgstr "lpmove: Argumen tak dikenal '%s'!\n"
+
+#: systemv/lpmove.c:112
+#, c-format
+msgid "lpmove: Unknown option '%c'!\n"
+msgstr "lpmove: Pilihan tak dikenal '%c'!\n"
+
+#: systemv/lpoptions.c:152 systemv/lpoptions.c:170 systemv/lpoptions.c:246
+msgid "lpoptions: No printers!?!\n"
+msgstr "lpoptions: Tak ada pencetak!?!\n"
+
+#: systemv/lpoptions.c:221
+#, c-format
+msgid "lpoptions: Unable to add printer or instance: %s\n"
+msgstr "lpoptions: Tak bisa menambah pencetak: %s\n"
+
+#: systemv/lpoptions.c:446
+#, c-format
+msgid "lpoptions: Unable to get PPD file for %s: %s\n"
+msgstr "lpoptions: Tak bisa mendapatkan berkas PPD untuk %s: %s\n"
+
+#: systemv/lpoptions.c:455
+#, c-format
+msgid "lpoptions: Unable to open PPD file for %s!\n"
+msgstr "lpoptions: Tak bisa membuka berkas PPD untuk %s!\n"
+
+#: systemv/lpoptions.c:102
+msgid "lpoptions: Unknown printer or class!\n"
+msgstr "lpoptions: Pencetak atau kelas tak dikenal!\n"
+
+#: systemv/lppasswd.c:185
+msgid "lppasswd: Only root can add or delete passwords!\n"
+msgstr "lppasswd: Hanya root yang bisa menambah atau menghapus sandi!\n"
+
+#: systemv/lppasswd.c:314
+msgid "lppasswd: Password file busy!\n"
+msgstr "lppasswd: Berkas sandi sedang sibuk!\n"
+
+#: systemv/lppasswd.c:447
+msgid "lppasswd: Password file not updated!\n"
+msgstr "lppasswd: Berkas sandi tidak diperbaharui!\n"
+
+#: systemv/lppasswd.c:414
+msgid "lppasswd: Sorry, password doesn't match!\n"
+msgstr "lppasswd: Maaf, sandi tidak cocok!\n"
+
+#: systemv/lppasswd.c:264
+msgid ""
+"lppasswd: Sorry, password rejected.\n"
+"Your password must be at least 6 characters long, cannot contain\n"
+"your username, and must contain at least one letter and number.\n"
+msgstr ""
+"lppasswd: Maaf, sandi ditolak.\n"
+"Sandi Anda harus setidaknya 6 karakter, tidak memuat\n"
+"nama pengguna Anda, dan harusnya memiliki satu huruf serta angka.\n"
+
+#: systemv/lppasswd.c:240
+msgid "lppasswd: Sorry, passwords don't match!\n"
+msgstr "lppasswd: Maaf, sandi tidak cocok!\n"
+
+#: systemv/lppasswd.c:211 systemv/lppasswd.c:229
+#, c-format
+msgid "lppasswd: Unable to copy password string: %s\n"
+msgstr "lppasswd: Tidak bisa menyalin string sandi: %s\n"
+
+#: systemv/lppasswd.c:317 systemv/lppasswd.c:326 systemv/lppasswd.c:344
+#, c-format
+msgid "lppasswd: Unable to open password file: %s\n"
+msgstr "lppasswd: Tak bisa membuka berkas sandi: %s\n"
+
+#: systemv/lppasswd.c:379 systemv/lppasswd.c:392 systemv/lppasswd.c:424
+#, c-format
+msgid "lppasswd: Unable to write to password file: %s\n"
+msgstr "lppasswd: Tak bisa menulis ke berkas sandi: %s\n"
+
+#: systemv/lppasswd.c:462
+#, c-format
+msgid "lppasswd: failed to backup old password file: %s\n"
+msgstr "lppasswd: gagal mencadangkan berkas sandi yang lama: %s\n"
+
+#: systemv/lppasswd.c:475
+#, c-format
+msgid "lppasswd: failed to rename password file: %s\n"
+msgstr "lppasswd: gagal mengubah nama berkas sandi: %s\n"
+
+#: systemv/lppasswd.c:404
+#, c-format
+msgid "lppasswd: user \"%s\" and group \"%s\" do not exist.\n"
+msgstr "lppasswd: pengguna \"%s\" dan kelompok \"%s\" tidak ada.\n"
+
+#: berkeley/lprm.c:74 berkeley/lprm.c:170
+msgid "lprm: Unable to contact server!\n"
+msgstr "lprm: Tak bisa menghubungi server!\n"
+
+#: systemv/lpstat.c:1104
+#, c-format
+msgid "lpstat: error - %s environment variable names non-existent destination \"%s\"!\n"
+msgstr "lpstat: kesalahan - nama variabel lingkungan %s bukanlah tujuan yang ada \"%s\"!\n"
+
+#: systemv/lpstat.c:1033
+#, c-format
+msgid "members of class %s:\n"
+msgstr "anggota kelas %s:\n"
+
+#: berkeley/lpq.c:575
+msgid "no entries\n"
+msgstr "tak ada entri\n"
+
+#: systemv/lpstat.c:1108
+msgid "no system default destination\n"
+msgstr "tak ada tujuan sistem utama\n"
+
+#: scheduler/ipp.c:5324
+msgid "notify-events not specified!"
+msgstr "notify-events tidak dispesifikasikan!"
+
+#: scheduler/ipp.c:5229
+#, c-format
+msgid "notify-recipient-uri URI \"%s\" uses unknown scheme!"
+msgstr "URI notify-recipient-uri \"%s\" memakai skema tak dikenal!"
+
+#: scheduler/ipp.c:3285 scheduler/ipp.c:5948 scheduler/ipp.c:6571
+#: scheduler/ipp.c:7925
+#, c-format
+msgid "notify-subscription-id %d no good!"
+msgstr "notify-subscription-id %d tidak baik!"
+
+#: cups/adminutil.c:922
+#, c-format
+msgid "open of %s failed: %s"
+msgstr "membuka %s gagal: %s"
+
+#: cups/notify.c:87
+msgid "pending"
+msgstr "tunda"
+
+#: systemv/lpstat.c:2024
+#, c-format
+msgid "printer %s disabled since %s -\n"
+msgstr "pencetak %s ditiadakan sejak %s -\n"
+
+#: systemv/lpstat.c:2013
+#, c-format
+msgid "printer %s is idle.  enabled since %s\n"
+msgstr "pencetak %s sedang menganggur.  diaktifkan sejak %s\n"
+
+#: systemv/lpstat.c:2018
+#, c-format
+msgid "printer %s now printing %s-%d.  enabled since %s\n"
+msgstr "pencetak %s saat ini tengah mencetak %s-%d.  diaktifkan sejak %s\n"
+
+#: systemv/lpstat.c:2136
+#, c-format
+msgid "printer %s/%s disabled since %s -\n"
+msgstr "pencetak %s/%s dinonaktifkan sejak %s -\n"
+
+#: systemv/lpstat.c:2122
+#, c-format
+msgid "printer %s/%s is idle.  enabled since %s\n"
+msgstr "pencetak %s/%s sedang menganggur.  diaktifkan sejak %s\n"
+
+#: systemv/lpstat.c:2129
+#, c-format
+msgid "printer %s/%s now printing %s-%d.  enabled since %s\n"
+msgstr "pencetak %s/%s saat ini tengah mencetak %s-%d.  diaktifkan sejak %s\n"
+
+#: cups/notify.c:93 cups/notify.c:134
+msgid "processing"
+msgstr "memproses"
+
+#: systemv/lp.c:722
+#, c-format
+msgid "request id is %s-%d (%d file(s))\n"
+msgstr "identitas permintaan adalah %s-%d (%d berkas)\n"
+
+#: systemv/lpstat.c:2256
+msgid "scheduler is not running\n"
+msgstr "penjadwal tidak berjalan\n"
+
+#: systemv/lpstat.c:2254
+msgid "scheduler is running\n"
+msgstr "penjadwal tengah berjalan\n"
+
+#: cups/adminutil.c:2168
+#, c-format
+msgid "stat of %s failed: %s"
+msgstr "status dari %s gagal: %s"
+
+#: berkeley/lpc.c:216
+msgid "status\t\tshow status of daemon and queue\n"
+msgstr "status\t\tmenampilkan status daemon dan antrian\n"
+
+#: cups/notify.c:96 cups/notify.c:137
+msgid "stopped"
+msgstr "dihentikan"
+
+#: systemv/lpstat.c:1082
+#, c-format
+msgid "system default destination: %s\n"
+msgstr "tujuan standar sistem: %s\n"
+
+#: systemv/lpstat.c:1079
+#, c-format
+msgid "system default destination: %s/%s\n"
+msgstr "tujuan standar sistem: %s/%s\n"
+
+#: cups/notify.c:108 cups/notify.c:140
+msgid "unknown"
+msgstr "tak dikenal"
+
+#: cups/notify.c:117
+msgid "untitled"
+msgstr "tak berjudul"
+
diff --git a/locale/ppdc_id.po b/locale/ppdc_id.po
new file mode 100644 (file)
index 0000000..96b4644
--- /dev/null
@@ -0,0 +1,592 @@
+# Template message catalog for the CUPS PPD compiler.
+msgid "Color Mode"
+msgstr "Color Mode"
+
+msgid "2-Sided Printing"
+msgstr "2-Sided Printing"
+
+msgid "Media Source"
+msgstr "Media Source"
+
+msgid "Options Installed"
+msgstr "Options Installed"
+
+msgid "Paper Type"
+msgstr "Paper Type"
+
+msgid "Duplex Unit"
+msgstr "Duplex Unit"
+
+msgid "Optional Input Tray"
+msgstr "Optional Input Tray"
+
+msgid "Optional Hard Disk"
+msgstr "Optional Hard Disk"
+
+msgid "Media Size"
+msgstr "Media Size"
+
+msgid "8 x 10\""
+msgstr "8 x 10\""
+
+msgid "9 x 11\""
+msgstr "9 x 11\""
+
+msgid "9x12 Closed Booklet Envelope"
+msgstr "9x12 Closed Booklet Envelope"
+
+msgid "A3 (297 x 420 mm)"
+msgstr "A3 (297 x 420 mm)"
+
+msgid "A3 (Oversize)"
+msgstr "A3 (Oversize)"
+
+msgid "Full Bleed A3"
+msgstr "Full Bleed A3"
+
+msgid "A3 Oversize Tray"
+msgstr "A3 Oversize Tray"
+
+msgid "A4 (210 x 297 mm)"
+msgstr "A4 (210 x 297 mm)"
+
+msgid "Full Bleed A4"
+msgstr "Full Bleed A4"
+
+msgid "A4 (Small)"
+msgstr "A4 (Small)"
+
+msgid "A5 (148 x 210 mm)"
+msgstr "A5 (148 x 210 mm)"
+
+msgid "A6 (105 x 148 mm)"
+msgstr "A6 (105 x 148 mm)"
+
+msgid "A6 Card"
+msgstr "A6 Card"
+
+msgid "C"
+msgstr "C"
+
+msgid "D"
+msgstr "D"
+
+msgid "E"
+msgstr "E"
+
+msgid "ARCH A"
+msgstr "ARCH A"
+
+msgid "ARCH B"
+msgstr "ARCH B"
+
+msgid "ARCH C"
+msgstr "ARCH C"
+
+msgid "ARCH D"
+msgstr "ARCH D"
+
+msgid "ARCH E"
+msgstr "ARCH E"
+
+msgid "Adhesive Paper"
+msgstr "Adhesive Paper"
+
+msgid "ANSI C"
+msgstr "ANSI C"
+
+msgid "ANSI D"
+msgstr "ANSI D"
+
+msgid "ANSI E"
+msgstr "ANSI E"
+
+msgid "Auto Select"
+msgstr "Auto Select"
+
+msgid "JB0"
+msgstr "JB0"
+
+msgid "JB1"
+msgstr "JB1"
+
+msgid "JB2"
+msgstr "JB2"
+
+msgid "JB3"
+msgstr "JB3"
+
+msgid "B4 (JIS)"
+msgstr "B4 (JIS)"
+
+msgid "JIS B5"
+msgstr "JIS B5"
+
+msgid "B6 (JIS)"
+msgstr "B6 (JIS)"
+
+msgid "Black"
+msgstr "Black"
+
+msgid "Bond Paper"
+msgstr "Bond Paper"
+
+msgid "Bin 1"
+msgstr "Bin 1"
+
+msgid "Bin 10"
+msgstr "Bin 10"
+
+msgid "Bin 2"
+msgstr "Bin 2"
+
+msgid "Bin 3"
+msgstr "Bin 3"
+
+msgid "Bin 4"
+msgstr "Bin 4"
+
+msgid "Bin 5"
+msgstr "Bin 5"
+
+msgid "Bin 6"
+msgstr "Bin 6"
+
+msgid "Bin 7"
+msgstr "Bin 7"
+
+msgid "Bin 8"
+msgstr "Bin 8"
+
+msgid "Bin 9"
+msgstr "Bin 9"
+
+msgid "Black Only"
+msgstr "Black Only"
+
+msgid "Bypass Tray"
+msgstr "Bypass Tray"
+
+msgid "9 Envelope"
+msgstr "9 Envelope"
+
+msgid "C5 Envelope"
+msgstr "C5 Envelope"
+
+msgid "Envelope C6"
+msgstr "Envelope C6"
+
+msgid "Color"
+msgstr "Color"
+
+msgid "Card Stock"
+msgstr "Card Stock"
+
+msgid "Paper Cassette"
+msgstr "Paper Cassette"
+
+msgid "Heavy Weight Matte"
+msgstr "Heavy Weight Matte"
+
+msgid "Colored Paper"
+msgstr "Colored Paper"
+
+msgid "Env Comm10"
+msgstr "Env Comm10"
+
+msgid "Printer Default"
+msgstr "Printer Default"
+
+msgid "Long Edge"
+msgstr "Long Edge"
+
+msgid "Short Edge"
+msgstr "Short Edge"
+
+msgid "#10 Envelope"
+msgstr "#10 Envelope"
+
+msgid "C4 Envelope"
+msgstr "C4 Envelope"
+
+msgid "C5 Envelope"
+msgstr "C5 Envelope"
+
+msgid "C6 Env."
+msgstr "C6 Env."
+
+msgid "Envelope MAX"
+msgstr "Envelope MAX"
+
+msgid "Choukei 4 Gou"
+msgstr "Choukei 4 Gou"
+
+msgid "DL Envelope"
+msgstr "DL Envelope"
+
+msgid "B4 Envelope"
+msgstr "B4 Envelope"
+
+msgid "Env ISO B5"
+msgstr "Env ISO B5"
+
+msgid "B6 "
+msgstr "B6 "
+
+msgid "Kaku #2 envelope"
+msgstr "Kaku #2 envelope"
+
+msgid "Monarch Envelope"
+msgstr "Monarch Envelope"
+
+msgid "#6 3/4 Envelope"
+msgstr "#6 3/4 Envelope"
+
+msgid "Envelope #4"
+msgstr "Envelope #4"
+
+msgid "Envelope Feeder"
+msgstr "Envelope Feeder"
+
+msgid "7.25 x 10.5\""
+msgstr "7.25 x 10.5\""
+
+msgid "Off"
+msgstr "Off"
+
+msgid "Finisher Tray"
+msgstr "Finisher Tray"
+
+msgid "Glossy Paper"
+msgstr "Glossy Paper"
+
+msgid "Glossy Film"
+msgstr "Glossy Film"
+
+msgid "Black and White"
+msgstr "Black and White"
+
+msgid "Statement"
+msgstr "Statement"
+
+msgid "A0"
+msgstr "A0"
+
+msgid "A1"
+msgstr "A1"
+
+msgid "A2"
+msgstr "A2"
+
+msgid "A3"
+msgstr "A3"
+
+msgid "A4"
+msgstr "A4"
+
+msgid "ISO B3"
+msgstr "ISO B3"
+
+msgid "ISO B4"
+msgstr "ISO B4"
+
+msgid "B5"
+msgstr "B5"
+
+msgid "B6"
+msgstr "B6"
+
+msgid "Tab Stock"
+msgstr "Tab Stock"
+
+msgid "Inkjet Paper"
+msgstr "Inkjet Paper"
+
+msgid "Installed"
+msgstr "Installed"
+
+msgid "Iron-On Transfer"
+msgstr "Iron-On Transfer"
+
+msgid "JB0"
+msgstr "JB0"
+
+msgid "JB1"
+msgstr "JB1"
+
+msgid "JB2"
+msgstr "JB2"
+
+msgid "JB3"
+msgstr "JB3"
+
+msgid "JB4"
+msgstr "JB4"
+
+msgid "Hagaki"
+msgstr "Hagaki"
+
+msgid "Ofuku Hagaki"
+msgstr "Ofuku Hagaki"
+
+msgid "Labels"
+msgstr "Labels"
+
+msgid "Tray 4"
+msgstr "Tray 4"
+
+msgid "US Legal"
+msgstr "US Legal"
+
+msgid "Legal (Small)"
+msgstr "Legal (Small)"
+
+msgid "US Letter"
+msgstr "US Letter"
+
+msgid "Full Bleed US Letter"
+msgstr "Full Bleed US Letter"
+
+msgid "Letter Plus"
+msgstr "Letter Plus"
+
+msgid "Letter (Small)"
+msgstr "Letter (Small)"
+
+msgid "Lower Tray"
+msgstr "Lower Tray"
+
+msgid "Mailbox"
+msgstr "Mailbox"
+
+msgid "Manual Feed"
+msgstr "Manual Feed"
+
+msgid "Manual Envelope"
+msgstr "Manual Envelope"
+
+msgid "Middle Tray"
+msgstr "Middle Tray"
+
+msgid "Off"
+msgstr "Off"
+
+msgid "Not Installed"
+msgstr "Not Installed"
+
+msgid "On"
+msgstr "On"
+
+msgid "Oversize A0"
+msgstr "Oversize A0"
+
+msgid "Oversize A1"
+msgstr "Oversize A1"
+
+msgid "Oversize A2"
+msgstr "Oversize A2"
+
+msgid "None"
+msgstr "None"
+
+msgid "Bin 1"
+msgstr "Bin 1"
+
+msgid "Bin 2"
+msgstr "Bin 2"
+
+msgid "Bin 3"
+msgstr "Bin 3"
+
+msgid "Bin 4"
+msgstr "Bin 4"
+
+msgid "Bin 5"
+msgstr "Bin 5"
+
+msgid "Bin 6"
+msgstr "Bin 6"
+
+msgid "Bin 7"
+msgstr "Bin 7"
+
+msgid "Bin 8"
+msgstr "Bin 8"
+
+msgid "Mailbox Tray 1"
+msgstr "Mailbox Tray 1"
+
+msgid "Mailbox Tray 10"
+msgstr "Mailbox Tray 10"
+
+msgid "Mailbox Tray 2"
+msgstr "Mailbox Tray 2"
+
+msgid "Mailbox Tray 3"
+msgstr "Mailbox Tray 3"
+
+msgid "Mailbox Tray 4"
+msgstr "Mailbox Tray 4"
+
+msgid "Mailbox Tray 5"
+msgstr "Mailbox Tray 5"
+
+msgid "Mailbox Tray 6"
+msgstr "Mailbox Tray 6"
+
+msgid "Mailbox Tray 7"
+msgstr "Mailbox Tray 7"
+
+msgid "Mailbox Tray 8"
+msgstr "Mailbox Tray 8"
+
+msgid "Mailbox Tray 9"
+msgstr "Mailbox Tray 9"
+
+msgid "24\" x 108\""
+msgstr "24\" x 108\""
+
+msgid "24\" x 48\""
+msgstr "24\" x 48\""
+
+msgid "24\" x 60\""
+msgstr "24\" x 60\""
+
+msgid "24\" x 72\""
+msgstr "24\" x 72\""
+
+msgid "24\" x 84\""
+msgstr "24\" x 84\""
+
+msgid "24\" x 96\""
+msgstr "24\" x 96\""
+
+msgid "36\" x 108\""
+msgstr "36\" x 108\""
+
+msgid "36\" x 60\""
+msgstr "36\" x 60\""
+
+msgid "36\" x 72\""
+msgstr "36\" x 72\""
+
+msgid "36\" x 84\""
+msgstr "36\" x 84\""
+
+msgid "36\" x 96\""
+msgstr "36\" x 96\""
+
+msgid "42\" x 60\""
+msgstr "42\" x 60\""
+
+msgid "42\" x 72\""
+msgstr "42\" x 72\""
+
+msgid "42\" x 84\""
+msgstr "42\" x 84\""
+
+msgid "54\" x 72\""
+msgstr "54\" x 72\""
+
+msgid "54\" x 84\""
+msgstr "54\" x 84\""
+
+msgid "54\" x 96\""
+msgstr "54\" x 96\""
+
+msgid "60\" x 72\""
+msgstr "60\" x 72\""
+
+msgid "60\" x 84\""
+msgstr "60\" x 84\""
+
+msgid "60\" x 96\""
+msgstr "60\" x 96\""
+
+msgid "Photo Paper"
+msgstr "Photo Paper"
+
+msgid "Plain Paper"
+msgstr "Plain Paper"
+
+msgid "Letterhead"
+msgstr "Letterhead"
+
+msgid "Printer Default"
+msgstr "Printer Default"
+
+msgid "Color"
+msgstr "Color"
+
+msgid "Recycled Paper"
+msgstr "Recycled Paper"
+
+msgid "Roll Feed"
+msgstr "Roll Feed"
+
+msgid "Roll 1"
+msgstr "Roll 1"
+
+msgid "Roll 2"
+msgstr "Roll 2"
+
+msgid "Cut Sheet"
+msgstr "Cut Sheet"
+
+msgid "Super B"
+msgstr "Super B"
+
+msgid "Toyo"
+msgstr "Toyo"
+
+msgid "Tab Stock"
+msgstr "Tab Stock"
+
+msgid "11x17"
+msgstr "11x17"
+
+msgid "11x17 (Oversize)"
+msgstr "11x17 (Oversize)"
+
+msgid "12x18"
+msgstr "12x18"
+
+msgid "Full Bleed Tabloid"
+msgstr "Full Bleed Tabloid"
+
+msgid "11x17"
+msgstr "11x17"
+
+msgid "Thick Paper"
+msgstr "Thick Paper"
+
+msgid "Top Output Tray"
+msgstr "Top Output Tray"
+
+msgid "Top Output Tray"
+msgstr "Top Output Tray"
+
+msgid "Transparency"
+msgstr "Transparency"
+
+msgid "Tray 1"
+msgstr "Tray 1"
+
+msgid "Tray 2"
+msgstr "Tray 2"
+
+msgid "Tray 3"
+msgstr "Tray 3"
+
+msgid "Tray 4"
+msgstr "Tray 4"
+
+msgid "Tray 5"
+msgstr "Tray 5"
+
+msgid "Tray 6"
+msgstr "Tray 6"
+
+msgid "Upper Tray"
+msgstr "Upper Tray"
+
index 72477b7cd05aa4755c54497cc8d3e1aa057117ae..c89770b08aa8e9c124c3212d2e39b9cc21349cc9 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6657 2007-07-13 01:01:14Z mike $"
+# "$Id: Makefile 7601 2008-05-20 21:08:08Z mike $"
 #
 #   Man page makefile for the Common UNIX Printing System (CUPS).
 #
@@ -223,5 +223,5 @@ mantohtml:  mantohtml.o
 
 
 #
-# End of "$Id: Makefile 6657 2007-07-13 01:01:14Z mike $".
+# End of "$Id: Makefile 7601 2008-05-20 21:08:08Z mike $".
 #
index 3063b09a81c0b083182c68f4829fd09ef87881ba..477d125e9c18025733cc1d0f1217a3c37029c281 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: accept.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: accept.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   accept/reject man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -75,5 +75,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: accept.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: accept.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index e4524707f3f05408a7ffcd196a7aee756fbf9a88..b8a52d9ba99d2f89bf2236de8e6fa1cc63f8b170 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: backend.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: backend.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   Backend man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -175,5 +175,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: backend.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: backend.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 646467a23b3db11a5699e2ea09f7b782e329e804..babaeed8de058351b7fb4e6ca2041253bed9396d 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: cancel.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cancel man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -71,5 +71,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: cancel.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 5987f68bf8454a6fb2626b8a243c303f549646e2..882192770cce7943b7729fd58acee576a0e01509 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: classes.conf.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: classes.conf.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   classes.conf man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -114,5 +114,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: classes.conf.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: classes.conf.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 683edeaaf474f6e7e0f68bc46723d475336f976b..d860a379885c784899625ff4dd4d6522fddd67a7 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: commandtoescpx.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   rastertoescpx man page for the CUPS Driver Development Kit.
 .\"
@@ -29,5 +29,5 @@ cupsprofile(1), ppdc(1), ppdhtml(1), ppdi(1), ppdmerge(1), ppdpo(1), ppdcfile(5)
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: commandtoescpx.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index dec7add2edd15d445474aa8ca044d552bcc66895..529a4cf64b859aad3c2a8ce54d9101e605a1eacc 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: commandtopclx.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   rastertopclx man page for the CUPS Driver Development Kit.
 .\"
@@ -29,5 +29,5 @@ cupsprofile(1), ppdc(1), ppdhtml(1), ppdi(1), ppdmerge(1), ppdpo(1), ppdcfile(5)
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: commandtopclx.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 6e6e014eaa9d2621d16e258834c618f1c81ee45e..761261553f3dbad47580c68e07ca9f6b9c37b70b 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cups-config.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: cups-config.man 7646 2008-06-16 17:26:20Z mike $"
 .\"
 .\"   cups-config man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -106,5 +106,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: cups-config.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: cups-config.man 7646 2008-06-16 17:26:20Z mike $".
 .\"
index 9db1f07c620a0ccd57bf4dff9706d05004dba533..c3a99334f8145bb80bc672d36853f5dd8d65574f 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cups-deviced.man.in 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: cups-deviced.man.in 7646 2008-06-16 17:26:20Z mike $"
 .\"
 .\"   cups-deviced man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -40,5 +40,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: cups-deviced.man.in 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: cups-deviced.man.in 7646 2008-06-16 17:26:20Z mike $".
 .\"
index b84a78fe78aedfc34f2618bb2ce688caf08ba2a0..576d3612a0f9a5cb4a29e636f5603bdfc02b6521 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cups-driverd.man.in 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: cups-driverd.man.in 7662 2008-06-17 14:34:20Z mike $"
 .\"
 .\"   cups-driverd man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -101,5 +101,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: cups-driverd.man.in 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: cups-driverd.man.in 7662 2008-06-17 14:34:20Z mike $".
 .\"
index 6c8cd3ddc6f2f63436f40e33695be346c558ba26..6c06e75aed2834ce36588f9a872643e83bae914e 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cups-lpd.man.in 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: cups-lpd.man.in 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cups-lpd man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -114,5 +114,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: cups-lpd.man.in 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: cups-lpd.man.in 7600 2008-05-20 21:06:23Z mike $".
 .\"
index b6a3ba12010b620b1f169acbfdc8dee6f3532977..17a9719c6f943a13c35eebe01ac73c54bf577a0a 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cups-polld.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: cups-polld.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cups-polld man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -34,5 +34,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: cups-polld.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: cups-polld.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 4374cf6845a551429ce16be709febb3d73f208ff..bb8e4b8b54bd5cfa785a66f0c0dc7785be68a128 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: cups-snmp.conf.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   snmp.conf man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -69,5 +69,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: cups-snmp.conf.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 8321459358384a986a2e3b7e9270d2929eef8b0b..00e05ebfa278bdf75200edac2bb06e59f1f8788c 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cupsaddsmb.man.in 6729 2007-07-26 00:30:52Z mike $"
+.\" "$Id: cupsaddsmb.man.in 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cupsaddsmb man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -210,5 +210,5 @@ http://www.cups.org/windows/
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: cupsaddsmb.man.in 6729 2007-07-26 00:30:52Z mike $".
+.\" End of "$Id: cupsaddsmb.man.in 7600 2008-05-20 21:06:23Z mike $".
 .\"
index f88fee99cb6b7d770c6f735168d2b14170b496ff..dc4929d7bf72e4fd1dae997f3d91b9f194d1ff32 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: cupsctl.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cupsctl man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -101,5 +101,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: cupsctl.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 875a087c82aefee5c8c94af7cea46bcb579b094a..5423988e9c2660aa1676121ca18c342f14a30da8 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cupsd.conf.man.in 7002 2007-10-01 23:07:37Z mike $"
+.\" "$Id: cupsd.conf.man.in 7645 2008-06-16 17:21:10Z mike $"
 .\"
 .\"   cupsd.conf man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -618,5 +618,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: cupsd.conf.man.in 7002 2007-10-01 23:07:37Z mike $".
+.\" End of "$Id: cupsd.conf.man.in 7645 2008-06-16 17:21:10Z mike $".
 .\"
index bdcff0316225a193ab843d5d0bd897e935d24ec7..e754a64f56c5f56579f63cc45c0e7b32cb4c939d 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cupsd.man.in 6875 2007-08-27 23:25:06Z mike $"
+.\" "$Id: cupsd.man.in 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cupsd man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -69,5 +69,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: cupsd.man.in 6875 2007-08-27 23:25:06Z mike $".
+.\" End of "$Id: cupsd.man.in 7600 2008-05-20 21:06:23Z mike $".
 .\"
index a45518fdf2a73ee07d95b46746385bbf67d5f23d..a466213fefa203601e9279b91d50775896c76f5d 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cupsenable.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: cupsenable.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cupsenable/cupsdisable man page for the Common UNIX Printing System
 .\"   (CUPS).
@@ -80,5 +80,5 @@ http://localhost:631/help
 Copyright 2007 by Apple Inc.
 
 .\"
-.\" End of "$Id: cupsenable.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: cupsenable.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 0ccddc88a14b499109069fc5db17cab81b247dbe..a2d5c087d85777ccbdf9e5e29c38b0103d9ffd59 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: cupsfilter.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cupsfilter man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -76,5 +76,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: cupsfilter.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index fb9d245fd09397a36562c4dc0d152e95b835f320..ce1c3a4d0a353d56e63166387dc701b441be75f8 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: cupstestdsc.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cupstestdsc man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -46,5 +46,5 @@ Specification, Version 3.0.
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: cupstestdsc.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 9cbfbd0e433b80e41c5e240090f281c774523908..311c71808cf088639f430b0c5eff82c44a8ec061 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cupstestppd.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: cupstestppd.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   cupstestppd man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -143,5 +143,5 @@ Adobe PostScript Printer Description File Format Specification, Version 4.3.
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: cupstestppd.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: cupstestppd.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 17849f661aff86cef29ed1546995679c276b82fd..049e378f36b83fe8e3d7d08382ea3570fd74f233 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: filter.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: filter.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   filter man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -224,5 +224,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: filter.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: filter.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index e505e23c3af05a2cfdd205b649f01e20696d8e71..f2e4ef9af321026a4142da4847a8a516e095586c 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lp.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lp.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lp man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -239,5 +239,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: lp.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lp.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index ab6fc264ee599dcbcc3032a908fa5c7490c44d51..91658aafbf0441736595d8b4bfb8ab69c4cb5e27 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lpadmin.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lpadmin.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lpadmin man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -203,5 +203,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: lpadmin.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lpadmin.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index be2add31212a627083000af016087877f14e7d2c..caa9896afe4b76d1e9027045f740665d9c2fdc3a 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lpc.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lpc.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lpc man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -67,5 +67,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: lpc.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lpc.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 81a583c1b79221719c04da92acc82c98a9dc2d83..fff2ddd48426d210655f5d5107f714f16658750d 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lpinfo.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lpinfo.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lpinfo man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -61,5 +61,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: lpinfo.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lpinfo.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 0447fbc98819935221ddca87d9ea46cc05ccf700..5bd406ffbd195ee0d2e0ca788014ed275b7c5d22 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lpmove.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lpmove.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lpmove man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -62,5 +62,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: lpmove.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lpmove.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index ac9f7d4dfd7804a9a7574690d2e2692571969ded..c446142b8f63e39f725641e1dd78cc26c7332633 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lpoptions.man.in 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lpoptions.man.in 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lpoptions man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -131,5 +131,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: lpoptions.man.in 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lpoptions.man.in 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 7aa830430c6895026c0d2a6150ba63c7a977439a..93e89e0b7c5771625571e51f456de871090fa30d 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lppasswd.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lppasswd.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lpadmin man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -64,5 +64,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: lppasswd.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lppasswd.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 5745011d4ad1d57849e4e59fdbd22faaaf100259..8bbe47b5627f142de06d8070b7f79ee0e8107c3e 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lpq.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lpq.man 7646 2008-06-16 17:26:20Z mike $"
 .\"
 .\"   lpq man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -68,5 +68,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: lpq.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lpq.man 7646 2008-06-16 17:26:20Z mike $".
 .\"
index d381cf76c0ab36d123a8be36f755d19e676dd1b1..d678e61f2d911b1013953c99acd0b2adac6db99a 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lpr.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lpr.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lpr man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -114,5 +114,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: lpr.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lpr.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 937b079bd65d766e443ce5fe10ab38e152b001f0..6f24d09a2b5b535b23df9b858e9605e4aad44b07 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lprm.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lprm.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lprm man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -61,5 +61,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: lprm.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lprm.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 96ae4c8f63ba3a111a5da28df401cfa10b52fb75..47294c5a5978a1e113b9aa30f3654e6e64869277 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: lpstat.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: lpstat.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   lpstat man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -135,5 +135,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: lpstat.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: lpstat.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 192079bbc3fa6226a6dccc47640b368237f589bc..c6d9d39324e864f3ce18d9d1f7916708b98ead16 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: mailto.conf.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   mailto.conf man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -56,5 +56,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: mailto.conf.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 9ae8de71df4edb49a2f0f803dfb9889b964610cb..12059ac45cc3696b5fcf32cd07066a6720a7c5eb 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: mantohtml.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: mantohtml.c 7662 2008-06-17 14:34:20Z mike $"
  *
  *   Man page to HTML conversion program.
  *
@@ -716,5 +716,5 @@ strmove(char       *d,                      /* I - Destination */
 
 
 /*
- * End of "$Id: mantohtml.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: mantohtml.c 7662 2008-06-17 14:34:20Z mike $".
  */
index 3ff7ae0844382367ddf5e5b87ac1a971bf7f7992..9c91a65c73c85a50ce09384044a56ccd1af3606b 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: mime.convs.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: mime.convs.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   mime.convs man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -42,5 +42,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: mime.convs.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: mime.convs.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 24659a9919c978ea331426011edc8c58130e8303..ce785907fa435e00e8e97b95cccacbc94ad7ca57 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: mime.types.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: mime.types.man 7670 2008-06-17 22:42:08Z mike $"
 .\"
 .\"   mime.types man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -95,5 +95,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id: mime.types.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: mime.types.man 7670 2008-06-17 22:42:08Z mike $".
 .\"
index f352cfd6ab7434aca94a3f0fcc780aae2b6b0832..66c682eea903451963eb1bff0ef7275ab96f8b9d 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: ppdc.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   ppdc man page for the Common UNIX Printing System.
 .\"
@@ -76,5 +76,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: ppdc.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index d032cb670c7fa74465d165bc7e2bfe8d3341e773..de4f951293ffbed2ffbc098507a5597ae2c5d662 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: ppdcfile.man 7607 2008-05-21 01:06:23Z mike $"
 .\"
 .\"   ppdcfile man page for the Common UNIX Printing System.
 .\"
@@ -167,5 +167,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: ppdcfile.man 7607 2008-05-21 01:06:23Z mike $".
 .\"
index 2d20f07cb8a558711386649202a0725866da4cf2..5727e6e30cb5f3f3d20042baf140454b23f02418 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: ppdhtml.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   ppdhtml man page for the Common UNIX Printing System.
 .\"
@@ -36,5 +36,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: ppdhtml.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 526b9437c3f0728934ae0eff733548521c8df6d9..85db4346ba7fb751af81c3350ad515531e4e82a2 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: ppdi.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   ppdi man page for the Common UNIX Printing System.
 .\"
@@ -42,5 +42,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: ppdi.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 132c40ebc054625e1fc0108af1de99b447feca07..45bb02e1aeda91a8a14cb7ff3421b4b27f3b9515 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: ppdmerge.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   ppdmerge man page for the Common UNIX Printing System.
 .\"
@@ -43,5 +43,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: ppdmerge.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 4f3f4867f28efd29e5491c3c7f26c2eaa5fd6b39..e353d1760123ffbac4ef86d7ea58f3c8a694671f 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: ppdpo.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   ppdpo man page for the Common UNIX Printing System.
 .\"
@@ -42,5 +42,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: ppdpo.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 56da5db47aea4aa09efb56e0e115e4e8fa3e6181..7abd1cd46b8352d2a8e22d3f10172d471f00a96d 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: printers.conf.man 6649 2007-07-11 21:46:42Z mike $"
+.\" "$Id: printers.conf.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   printers.conf man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -118,5 +118,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id: printers.conf.man 6649 2007-07-11 21:46:42Z mike $".
+.\" End of "$Id: printers.conf.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 0cd04f703d3b85e9f92b80571904045fe8ab7ed5..ab653513671fa7365d5bedd436b41979942242d8 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: rastertoescpx.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   rastertoescpx man page for the Common UNIX Printing System.
 .\"
@@ -31,5 +31,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: rastertoescpx.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 2f53f0b6a0131f53d3c53a5d1dcfa6a195f81d7d..266ecf3b716cffea48c19f33e9feb7ee94d62750 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: rastertopclx.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   rastertopclx man page for the Common UNIX Printing System.
 .\"
@@ -31,5 +31,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007-2008 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: rastertopclx.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index a760a47b74c8665215c5f385637defd5a316c1a8..d51763d22660c5beaa749f7a8850cce7e34a83e2 100644 (file)
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id$"
+.\" "$Id: subscriptions.conf.man 7600 2008-05-20 21:06:23Z mike $"
 .\"
 .\"   subscriptions.conf man page for the Common UNIX Printing System (CUPS).
 .\"
@@ -85,5 +85,5 @@ http://localhost:631/help
 .SH COPYRIGHT
 Copyright 2007 by Apple Inc.
 .\"
-.\" End of "$Id$".
+.\" End of "$Id: subscriptions.conf.man 7600 2008-05-20 21:06:23Z mike $".
 .\"
index 8f3b583187df0f5a940a0bd5d58454fe22b85146..2083948e439891c7f49ec7f13fa362723950c0f0 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Port monitor makefile for the Common UNIX Printing System (CUPS).
 #
@@ -135,5 +135,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index 365a620399d8bbf0db5451cd028e34aaae5a6713..4f05e374f7cbd6a58a6d162dcdae4adebc7a7d53 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Notifier makefile for the Common UNIX Printing System (CUPS).
 #
@@ -143,5 +143,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index 3376065fe7e2edd9991c24ac025b79bac5ae1a83..ca6c85f069fa7dc8086e8253caa2073a39ee858b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: mailto.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: mailto.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   "mailto" notifier for the Common UNIX Printing System (CUPS).
  *
@@ -786,5 +786,5 @@ print_attributes(ipp_t *ipp,                /* I - IPP request */
 
 
 /*
- * End of "$Id: mailto.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: mailto.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 03f1199bbabd615d24dfd394e291bf90a01e2da9..aac3abf3944405148e0dd34c0b810dfe7e3f7df2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: rss.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: rss.c 7451 2008-04-14 20:02:39Z mike $"
  *
  *   RSS notifier for the Common UNIX Printing System (CUPS).
  *
@@ -697,5 +697,5 @@ xml_escape(const char *s)           /* I - String to escape */
 
 
 /*
- * End of "$Id: rss.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: rss.c 7451 2008-04-14 20:02:39Z mike $".
  */
index 48324fd8a886d560662974bc64b07c5907665026..c0ffc9b524b6ac68f83cda491954813e6ed74720 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: cups.list.in 7014 2007-10-10 21:57:43Z mike $"
+# "$Id: cups.list.in 7693 2008-06-25 17:12:28Z mike $"
 #
 #   ESP Package Manager (EPM) file list for the Common UNIX Printing
 #   System (CUPS).
 %replaces LPRng
 %requires cups-libs 1:@CUPS_VERSION@
 
+# Replace all of the old localization subpackages from CUPS 1.2/1.3
+%replaces cups-da
+%replaces cups-de
+%replaces cups-es
+%replaces cups-et
+%replaces cups-fi
+%replaces cups-fr
+%replaces cups-he
+%replaces cups-id
+%replaces cups-it
+%replaces cups-ja
+%replaces cups-ko
+%replaces cups-nl
+%replaces cups-no
+%replaces cups-pl
+%replaces cups-pt
+%replaces cups-ru
+%replaces cups-sv
+%replaces cups-zh
+
+
 %format deb
 %provides cupsys
 %provides cupsys-client
 %provides cupsys-bsd
 %requires cups-libs
 
+# Replace all of the old localization subpackages from CUPS 1.2/1.3
+%replaces cups-da
+%replaces cups-de
+%replaces cups-es
+%replaces cups-et
+%replaces cups-fi
+%replaces cups-fr
+%replaces cups-he
+%replaces cups-id
+%replaces cups-it
+%replaces cups-ja
+%replaces cups-ko
+%replaces cups-nl
+%replaces cups-no
+%replaces cups-pl
+%replaces cups-pt
+%replaces cups-ru
+%replaces cups-sv
+%replaces cups-zh
+
+
 %format pkg
 %replaces SUNWlpmsg LP Alerts
 %replaces SUNWlpr LP Print Service, (Root)
 %incompat fw_cups 0 0 1289999999 1289999999
 %requires cups.sw.libs
 
+# Replace all of the old localization subpackages from CUPS 1.2/1.3
+%replaces cups.sw.da
+%replaces cups.sw.de
+%replaces cups.sw.es
+%replaces cups.sw.et
+%replaces cups.sw.fi
+%replaces cups.sw.fr
+%replaces cups.sw.he
+%replaces cups.sw.id
+%replaces cups.sw.it
+%replaces cups.sw.ja
+%replaces cups.sw.ko
+%replaces cups.sw.nl
+%replaces cups.sw.no
+%replaces cups.sw.pl
+%replaces cups.sw.pt
+%replaces cups.sw.ru
+%replaces cups.sw.sv
+%replaces cups.sw.zh
+
 %format portable
 %requires cups-libs
 
+# Replace all of the old localization subpackages from CUPS 1.2/1.3
+%replaces cups-da
+%replaces cups-de
+%replaces cups-es
+%replaces cups-et
+%replaces cups-fi
+%replaces cups-fr
+%replaces cups-he
+%replaces cups-id
+%replaces cups-it
+%replaces cups-ja
+%replaces cups-ko
+%replaces cups-nl
+%replaces cups-no
+%replaces cups-pl
+%replaces cups-pt
+%replaces cups-ru
+%replaces cups-sv
+%replaces cups-zh
+
 %format all
 
 %subpackage libs
@@ -711,5 +793,5 @@ f 0644 root sys $XINETD/cups-lpd init/cups-lpd
 %subpackage
 
 #
-# End of "$Id: cups.list.in 7014 2007-10-10 21:57:43Z mike $".
+# End of "$Id: cups.list.in 7693 2008-06-25 17:12:28Z mike $".
 #
index 4e564c176c8f98fb14edce391de17f77695a8bb7..3246b0b00823dabc8af2c87359711a58b790bc66 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: cups.spec.in 6889 2007-08-29 22:23:35Z mike $"
+# "$Id: cups.spec.in 7693 2008-06-25 17:12:28Z mike $"
 #
 #   RPM "spec" file for the Common UNIX Printing System (CUPS).
 #
@@ -51,6 +51,9 @@ BuildRoot: /tmp/%{name}-root
 Requires: %{name}-libs = %{epoch}:%{version}
 Obsoletes: lpd, lpr, LPRng
 Provides: lpd, lpr, LPRng
+Obsoletes: cups-da, cups-de, cups-es, cups-et, cups-fi, cups-fr, cups-he
+Obsoletes: cups-id, cups-it, cups-ja, cups-ko, cups-nl, cups-no, cups-pl
+Obsoletes: cups-pt, cups-ru, cups-sv, cups-zh
 
 %package devel
 Summary: Common UNIX Printing System - development environment
@@ -356,5 +359,5 @@ rm -rf $RPM_BUILD_ROOT
 
 
 #
-# End of "$Id: cups.spec.in 6889 2007-08-29 22:23:35Z mike $".
+# End of "$Id: cups.spec.in 7693 2008-06-25 17:12:28Z mike $".
 #
index 256a93a0f84b612c39f6b80c429e21ccaafbd3bf..abcd072690eb5edc36785d2a5e7ce775a933d12a 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6801 2007-08-16 18:42:49Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Scheduler Makefile for the Common UNIX Printing System (CUPS).
 #
@@ -525,5 +525,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6801 2007-08-16 18:42:49Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index f065a1f5162e47cd444ef40ecebe4efaf92731b1..d0d5641bceea53ad59028c40702ed31aa6d5f908 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: auth.c 6947 2007-09-12 21:09:49Z mike $"
+ * "$Id: auth.c 7673 2008-06-18 22:31:26Z mike $"
  *
  *   Authorization routines for the Common UNIX Printing System (CUPS).
  *
@@ -666,7 +666,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
            if (pamerr != PAM_SUCCESS)
            {
              cupsdLogMessage(CUPSD_LOG_ERROR,
-                             "cupsdAuthorize: pam_start() returned %d (%s)!\n",
+                             "cupsdAuthorize: pam_start() returned %d (%s)!",
                              pamerr, pam_strerror(pamh, pamerr));
              return;
            }
@@ -676,7 +676,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
            if (pamerr != PAM_SUCCESS)
              cupsdLogMessage(CUPSD_LOG_WARN,
                              "cupsdAuthorize: pam_set_item() returned %d "
-                             "(%s)!\n", pamerr, pam_strerror(pamh, pamerr));
+                             "(%s)!", pamerr, pam_strerror(pamh, pamerr));
 #  endif /* HAVE_PAM_SET_ITEM && PAM_RHOST */
 
            pamerr = pam_authenticate(pamh, PAM_SILENT);
@@ -684,7 +684,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
            {
              cupsdLogMessage(CUPSD_LOG_ERROR,
                              "cupsdAuthorize: pam_authenticate() returned %d "
-                             "(%s)!\n",
+                             "(%s)!",
                              pamerr, pam_strerror(pamh, pamerr));
              pam_end(pamh, 0);
              return;
@@ -695,7 +695,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
            {
              cupsdLogMessage(CUPSD_LOG_ERROR,
                              "cupsdAuthorize: pam_acct_mgmt() returned %d "
-                             "(%s)!\n",
+                             "(%s)!",
                              pamerr, pam_strerror(pamh, pamerr));
              pam_end(pamh, 0);
              return;
@@ -713,8 +713,8 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */
 
 
            cupsdLogMessage(CUPSD_LOG_DEBUG,
-                           "cupsdAuthorize: AIX authenticate of username \"%s\"",
-                            username);
+                           "cupsdAuthorize: AIX authenticate of username "
+                           "\"%s\"", username);
 
            reenter = 1;
            if (authenticate(username, password, &reenter, &authmsg) != 0)
@@ -2743,5 +2743,5 @@ to64(char          *s,                    /* O - Output string */
 
 
 /*
- * End of "$Id: auth.c 6947 2007-09-12 21:09:49Z mike $".
+ * End of "$Id: auth.c 7673 2008-06-18 22:31:26Z mike $".
  */
index 2679420f0b38edca379c1297d1962f3fbfce13a8..b5bb653629e27e341f72882c75b442779f10b15c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: auth.h 6780 2007-08-08 20:50:42Z mike $"
+ * "$Id: auth.h 7317 2008-02-15 22:29:27Z mike $"
  *
  *   Authorization definitions for the Common UNIX Printing System (CUPS)
  *   scheduler.
@@ -155,5 +155,5 @@ extern http_status_t        cupsdIsAuthorized(cupsd_client_t *con, const char *owner);
 
 
 /*
- * End of "$Id: auth.h 6780 2007-08-08 20:50:42Z mike $".
+ * End of "$Id: auth.h 7317 2008-02-15 22:29:27Z mike $".
  */
index 66305fb0869c65f8547fee5ea6b3cecfb5b5c966..ef73d2e7cf5859b722544a28e9776df889ff06f3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: banners.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: banners.c 7221 2008-01-16 22:20:08Z mike $"
  *
  *   Banner routines for the Common UNIX Printing System (CUPS).
  *
@@ -220,5 +220,5 @@ free_banners(void)
 
 
 /*
- * End of "$Id: banners.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: banners.c 7221 2008-01-16 22:20:08Z mike $".
  */
index 35f07c6475fae1596f64dcac5cb4d1508ee9af67..650363401d42302f897c118912426a819a5f523c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cert.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: cert.c 7673 2008-06-18 22:31:26Z mike $"
  *
  *   Authentication certificate routines for the Common UNIX
  *   Printing System (CUPS).
@@ -311,7 +311,7 @@ cupsdDeleteCert(int pid)            /* I - Process ID */
       snprintf(filename, sizeof(filename), "%s/certs/%d", StateDir, pid);
       if (unlink(filename))
        cupsdLogMessage(CUPSD_LOG_ERROR,
-                       "cupsdDeleteCert: Unable to remove %s!\n", filename);
+                       "cupsdDeleteCert: Unable to remove %s!", filename);
 
       return;
     }
@@ -343,7 +343,7 @@ cupsdDeleteAllCerts(void)
     snprintf(filename, sizeof(filename), "%s/certs/%d", StateDir, cert->pid);
     if (unlink(filename))
       cupsdLogMessage(CUPSD_LOG_ERROR,
-                      "cupsdDeleteAllCerts: Unable to remove %s!\n", filename);
+                      "cupsdDeleteAllCerts: Unable to remove %s!", filename);
 
    /*
     * Free memory...
@@ -437,5 +437,5 @@ cupsdInitCerts(void)
 
 
 /*
- * End of "$Id: cert.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: cert.c 7673 2008-06-18 22:31:26Z mike $".
  */
index d1158802bdef80e4616a1c658ddb6c26d62375d1..976600146f2b9a5f38f590e4b613c8155853a64c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cert.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: cert.h 7383 2008-03-20 20:58:07Z mike $"
  *
  *   Authentication certificate definitions for the Common UNIX
  *   Printing System (CUPS).
@@ -53,5 +53,5 @@ extern void           cupsdInitCerts(void);
 
 
 /*
- * End of "$Id: cert.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: cert.h 7383 2008-03-20 20:58:07Z mike $".
  */
index 3e905b448c7ccbb01927b158ca1ed2bdaa2c9dc0..7fa3c4c5e407d85eb11720cf6d38dc426aa0587d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: classes.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: classes.c 7608 2008-05-21 01:37:21Z mike $"
  *
  *   Printer class routines for the Common UNIX Printing System (CUPS).
  *
@@ -956,5 +956,5 @@ cupsdUpdateImplicitClasses(void)
 
 
 /*
- * End of "$Id: classes.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: classes.c 7608 2008-05-21 01:37:21Z mike $".
  */
index f56ed64a267339a8de31393cd3135958319b75e0..cf83656736c87914047dd63a2df0018b48966566 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: client.c 6999 2007-09-28 19:46:53Z mike $"
+ * "$Id: client.c 7673 2008-06-18 22:31:26Z mike $"
  *
  *   Client routines for the Common UNIX Printing System (CUPS) scheduler.
  *
@@ -1214,7 +1214,7 @@ cupsdReadClient(cupsd_client_t *con)      /* I - Client to read from */
       if ((status = cupsdIsAuthorized(con, NULL)) != HTTP_OK)
       {
         cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                       "cupsdReadClient: Unauthorized request for %s...\n",
+                       "cupsdReadClient: Unauthorized request for %s...",
                        con->uri);
        cupsdSendError(con, status, CUPSD_AUTH_NONE);
        cupsdCloseClient(con);
@@ -3695,7 +3695,7 @@ is_cgi(cupsd_client_t *con,               /* I - Client connection */
 
 
   cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                  "is_cgi(con=%p, filename=\"%s\", filestats=%p, type=%s/%s)\n",
+                  "is_cgi(con=%p, filename=\"%s\", filestats=%p, type=%s/%s)",
                  con, filename, filestats, type ? type->super : "unknown",
                  type ? type->type : "unknown");
 
@@ -4893,5 +4893,5 @@ write_pipe(cupsd_client_t *con)           /* I - Client connection */
 
 
 /*
- * End of "$Id: client.c 6999 2007-09-28 19:46:53Z mike $".
+ * End of "$Id: client.c 7673 2008-06-18 22:31:26Z mike $".
  */
index e6d946d4768ccc6443ed2f6b6ac9160b72abaef8..c817e7cce6fee752e5b8093468b4ce3874a44688 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: client.h 6947 2007-09-12 21:09:49Z mike $"
+ * "$Id: client.h 7470 2008-04-18 23:24:24Z mike $"
  *
  *   Client definitions for the Common UNIX Printing System (CUPS) scheduler.
  *
@@ -134,5 +134,5 @@ extern void cupsdWriteClient(cupsd_client_t *con);
 
 
 /*
- * End of "$Id: client.h 6947 2007-09-12 21:09:49Z mike $".
+ * End of "$Id: client.h 7470 2008-04-18 23:24:24Z mike $".
  */
index c9eb950fad27d6b98d226ee4d2cf5a42b6a89141..955dc2df1eb4aba02e12d4f7c60cc5532861e1fd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: conf.c 6930 2007-09-08 00:28:06Z mike $"
+ * "$Id: conf.c 7694 2008-06-26 00:23:20Z mike $"
  *
  *   Configuration routines for the Common UNIX Printing System (CUPS).
  *
@@ -1116,22 +1116,23 @@ cupsdReadConfiguration(void)
     snprintf(temp, sizeof(temp), "%s/filter", ServerBin);
     snprintf(mimedir, sizeof(mimedir), "%s/mime", DataDir);
 
-    MimeDatabase = mimeLoad(ServerRoot, temp);
+    MimeDatabase = mimeLoadTypes(NULL, mimedir);
+    MimeDatabase = mimeLoadTypes(MimeDatabase, ServerRoot);
+    MimeDatabase = mimeLoadFilters(MimeDatabase, mimedir, temp);
+    MimeDatabase = mimeLoadFilters(MimeDatabase, ServerRoot, temp);
 
     if (!MimeDatabase)
     {
       cupsdLogMessage(CUPSD_LOG_EMERG,
-                      "Unable to load MIME database from \'%s\'!", ServerRoot);
+                      "Unable to load MIME database from \"%s\" or \"%s\"!",
+                     mimedir, ServerRoot);
       exit(errno);
     }
 
-    if (!access(mimedir, 0))
-      MimeDatabase = mimeMerge(MimeDatabase, mimedir, temp);
-
     cupsdLogMessage(CUPSD_LOG_INFO,
-                    "Loaded MIME database from \'%s\': %d types, %d filters...",
-                    ServerRoot, mimeNumTypes(MimeDatabase),
-                   mimeNumFilters(MimeDatabase));
+                    "Loaded MIME database from \"%s\" and \"%s\": %d types, "
+                   "%d filters...", mimedir, ServerRoot,
+                   mimeNumTypes(MimeDatabase), mimeNumFilters(MimeDatabase));
 
    /*
     * Create a list of MIME types for the document-format-supported
@@ -3400,5 +3401,5 @@ read_policy(cups_file_t *fp,              /* I - Configuration file */
 
 
 /*
- * End of "$Id: conf.c 6930 2007-09-08 00:28:06Z mike $".
+ * End of "$Id: conf.c 7694 2008-06-26 00:23:20Z mike $".
  */
index 2a91e5ceb81207c0db30cd26adf7c2905e8fb3c7..d5c483cc44120f11385b7030255b00e9048ab7b9 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: conf.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: conf.h 7674 2008-06-18 23:18:32Z mike $"
  *
  *   Configuration file definitions for the Common UNIX Printing System (CUPS)
  *   scheduler.
@@ -225,6 +225,11 @@ extern int cupsdLogGSSMessage(int level, int major_status,
                                   int minor_status,
                                   const char *message, ...);
 #endif /* HAVE_GSSAPI */
+extern int     cupsdLogJob(cupsd_job_t *job, int level, const char *message, ...)
+#ifdef __GNUC__
+__attribute__ ((__format__ (__printf__, 3, 4)))
+#endif /* __GNUC__ */
+;
 extern int     cupsdLogMessage(int level, const char *message, ...)
 #ifdef __GNUC__
 __attribute__ ((__format__ (__printf__, 2, 3)))
@@ -233,8 +238,9 @@ __attribute__ ((__format__ (__printf__, 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);
+extern int     cupsdWriteErrorLog(int level, const char *message);
 
 
 /*
- * End of "$Id: conf.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: conf.h 7674 2008-06-18 23:18:32Z mike $".
  */
index a912358f13ee9503895bc3998291a0209587558c..4d05b53c06e94fa19be21fbe0d435dd0d1067be4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cups-deviced.c 7011 2007-10-10 21:13:35Z mike $"
+ * "$Id: cups-deviced.c 7624 2008-06-09 15:55:04Z mike $"
  *
  *   Device scanning mini-daemon for the Common UNIX Printing System (CUPS).
  *
@@ -719,5 +719,5 @@ start_backend(const char *name,             /* I - Backend to run */
 
 
 /*
- * End of "$Id: cups-deviced.c 7011 2007-10-10 21:13:35Z mike $".
+ * End of "$Id: cups-deviced.c 7624 2008-06-09 15:55:04Z mike $".
  */
index 013f1de899ef5bc33bdc6368b26cf50aa6ae832c..ed364c721e458a82e19c053be2da597f245ca241 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cups-driverd.c 6762 2007-08-02 18:05:03Z mike $"
+ * "$Id: cups-driverd.c 7652 2008-06-16 17:56:27Z mike $"
  *
  *   PPD/driver support for the Common UNIX Printing System (CUPS).
  *
@@ -1704,5 +1704,5 @@ load_drivers(void)
 
 
 /*
- * End of "$Id: cups-driverd.c 6762 2007-08-02 18:05:03Z mike $".
+ * End of "$Id: cups-driverd.c 7652 2008-06-16 17:56:27Z mike $".
  */
index 7e810f4ca3e93720b9e03730e23f9423296100dd..ca918c462d86b85765fdbf0d4f95cf4da6aa08df 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cups-lpd.c 6781 2007-08-08 21:09:31Z mike $"
+ * "$Id: cups-lpd.c 7221 2008-01-16 22:20:08Z mike $"
  *
  *   Line Printer Daemon interface for the Common UNIX Printing System (CUPS).
  *
@@ -1702,5 +1702,5 @@ smart_gets(char *s,                       /* I - Pointer to line buffer */
 
 
 /*
- * End of "$Id: cups-lpd.c 6781 2007-08-08 21:09:31Z mike $".
+ * End of "$Id: cups-lpd.c 7221 2008-01-16 22:20:08Z mike $".
  */
index 9ffc46d2cd0acd17de33a38a652980d5ecf1f9ee..b7165b5c928f906ccac36167c54332b1432df522 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cups-polld.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: cups-polld.c 7198 2008-01-08 00:12:17Z mike $"
  *
  *   Polling daemon for the Common UNIX Printing System (CUPS).
  *
@@ -471,5 +471,5 @@ sighup_handler(int sig)                     /* I - Signal number */
 
 
 /*
- * End of "$Id: cups-polld.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: cups-polld.c 7198 2008-01-08 00:12:17Z mike $".
  */
index 0b68f781a7f36833c7de29658cfa1e41babe59b5..b4304ce830ab4d79a4d8ed877ace89507d978806 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cupsd.h 6875 2007-08-27 23:25:06Z mike $"
+ * "$Id: cupsd.h 7317 2008-02-15 22:29:27Z mike $"
  *
  *   Main header file for the Common UNIX Printing System (CUPS) scheduler.
  *
@@ -234,5 +234,5 @@ extern void cupsdStopSelect(void);
 extern int     cupsdRemoveFile(const char *filename);
 
 /*
- * End of "$Id: cupsd.h 6875 2007-08-27 23:25:06Z mike $".
+ * End of "$Id: cupsd.h 7317 2008-02-15 22:29:27Z mike $".
  */
index 3ece2f4b2437a41b8f40eadcb749e6dee8d7506d..f60c284fa87d9957423544e2f8420a8d01cfb442 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cupsfilter.c 6879 2007-08-29 20:26:50Z mike $"
+ * "$Id: cupsfilter.c 7694 2008-06-26 00:23:20Z mike $"
  *
  *   CUPS filtering program for the Common UNIX Printing System (CUPS).
  *
@@ -353,18 +353,22 @@ main(int  argc,                           /* I - Number of command-line args */
   if (read_cupsd_conf(cupsdconf))
     return (1);
 
-  if ((mime = mimeLoad(ServerRoot, Path)) == NULL)
+  snprintf(mimedir, sizeof(mimedir), "%s/mime", DataDir);
+
+  mime = mimeLoadTypes(NULL, mimedir);
+  mime = mimeLoadTypes(mime, ServerRoot);
+  mime = mimeLoadFilters(mime, mimedir, Path);
+  mime = mimeLoadFilters(mime, ServerRoot, Path);
+
+  if (!mime)
   {
     _cupsLangPrintf(stderr,
-                    _("%s: Unable to read MIME database from \"%s\"!\n"),
-                   command, ServerRoot);
+                    _("%s: Unable to read MIME database from \"%s\" or "
+                     "\"%s\"!\n"),
+                   command, mimedir, ServerRoot);
     return (1);
   }
 
-  snprintf(mimedir, sizeof(mimedir), "%s/mime", DataDir);
-  if (!access(mimedir, 0))
-    mime = mimeMerge(mime, mimedir, Path);
-
  /*
   * Get the source and destination types...
   */
@@ -1140,5 +1144,5 @@ usage(const char *command,                /* I - Command name */
 
 
 /*
- * End of "$Id: cupsfilter.c 6879 2007-08-29 20:26:50Z mike $".
+ * End of "$Id: cupsfilter.c 7694 2008-06-26 00:23:20Z mike $".
  */
index 9b7b285c48c63b4141b776f8d17254370b8cab11..51509b850f7e42096b4d10250260341bb1c6b401 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: dirsvc.c 7003 2007-10-01 23:10:13Z mike $"
+ * "$Id: dirsvc.c 7676 2008-06-18 23:42:37Z mike $"
  *
  *   Directory services routines for the Common UNIX Printing System (CUPS).
  *
@@ -29,7 +29,6 @@
  *   cupsdStopBrowsing()        - Stop sending and receiving broadcast
  *                                information.
  *   cupsdStopPolling()         - Stop polling servers as needed.
- *   cupsdUpdateDNSSDBrowse()   - Handle DNS-SD queries.
  *   cupsdUpdateDNSSDName()     - Update the computer name we use for
  *                                browsing...
  *   cupsdUpdateLDAPBrowse()    - Scan for new printers via LDAP...
@@ -44,6 +43,7 @@
  *   dnssdRegisterCallback()    - DNSServiceRegister callback.
  *   dnssdRegisterPrinter()     - Start sending broadcast information for a
  *                                printer or update the broadcast contents.
+ *   dnssdUpdate()              - Handle DNS-SD queries.
  *   get_hostconfig()           - Get an /etc/hostconfig service setting.
  *   is_local_queue()           - Determine whether the URI points at a local
  *                                queue.
@@ -128,6 +128,7 @@ static void dnssdRegisterCallback(DNSServiceRef sdRef,
                                      const char *name, const char *regtype,
                                      const char *domain, void *context);
 static void    dnssdRegisterPrinter(cupsd_printer_t *p);
+static void    dnssdUpdate(void);
 #endif /* HAVE_DNSSD */
 
 #ifdef HAVE_OPENLDAP
@@ -1058,7 +1059,7 @@ cupsdStartBrowsing(void)
       */
 
       cupsdAddSelect(DNSServiceRefSockFD(DNSSDRef),
-                    (cupsd_selfunc_t)cupsdUpdateDNSSDBrowse, NULL, NULL);
+                    (cupsd_selfunc_t)dnssdUpdate, NULL, NULL);
 
      /*
       * Then get the port we use for registrations.  If we are not listening
@@ -1475,23 +1476,6 @@ cupsdStopPolling(void)
 
 
 #ifdef HAVE_DNSSD
-/*
- * 'cupsdUpdateDNSSDBrowse()' - Handle DNS-SD queries.
- */
-
-void
-cupsdUpdateDNSSDBrowse(void)
-{
-  DNSServiceErrorType  sdErr;          /* Service discovery error */
-
-
-  if ((sdErr = DNSServiceProcessResult(DNSSDRef)) != kDNSServiceErr_NoError)
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                    "DNS Service Discovery registration error %d!",
-                   sdErr);
-}
-
-
 /*
  * 'cupsdUpdateDNSSDName()' - Update the computer name we use for browsing...
  */
@@ -2308,6 +2292,23 @@ dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */
       free(printer_txt);
   }
 }
+
+
+/*
+ * 'dnssdUpdate()' - Handle DNS-SD queries.
+ */
+
+static void
+dnssdUpdate(void)
+{
+  DNSServiceErrorType  sdErr;          /* Service discovery error */
+
+
+  if ((sdErr = DNSServiceProcessResult(DNSSDRef)) != kDNSServiceErr_NoError)
+    cupsdLogMessage(CUPSD_LOG_ERROR,
+                    "DNS Service Discovery registration error %d!",
+                   sdErr);
+}
 #endif /* HAVE_DNSSD */
 
 
@@ -3324,7 +3325,7 @@ send_ldap_browse(cupsd_printer_t *p)      /* I - Printer to register */
                  NULL
                };
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_ldap_browse: %s\n", p->name);
+  cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_ldap_browse: %s", p->name);
 
  /*
   * Everything in ldap is ** so we fudge around it...
@@ -4278,5 +4279,5 @@ update_smb(int onoff)                     /* I - 1 = turn on, 0 = turn off */
 
 
 /*
- * End of "$Id: dirsvc.c 7003 2007-10-01 23:10:13Z mike $".
+ * End of "$Id: dirsvc.c 7676 2008-06-18 23:42:37Z mike $".
  */
index 16693c293c3a7d3d29b2dbfc24d9fb75d388ed5d..60c22c3bd0ccbb66bf76770c7bb273b8922196ff 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: dirsvc.h 6930 2007-09-08 00:28:06Z mike $"
+ * "$Id: dirsvc.h 7676 2008-06-18 23:42:37Z mike $"
  *
  *   Directory services definitions for the Common UNIX Printing System
  *   (CUPS) scheduler.
@@ -188,7 +188,6 @@ extern void cupsdStartPolling(void);
 extern void    cupsdStopBrowsing(void);
 extern void    cupsdStopPolling(void);
 #ifdef HAVE_DNSSD
-extern void    cupsdUpdateDNSSDBrowse(void);
 extern void    cupsdUpdateDNSSDName(void);
 #endif /* HAVE_DNSSD */
 #ifdef HAVE_LDAP
@@ -198,5 +197,5 @@ extern void cupsdUpdateSLPBrowse(void);
 
 
 /*
- * End of "$Id: dirsvc.h 6930 2007-09-08 00:28:06Z mike $".
+ * End of "$Id: dirsvc.h 7676 2008-06-18 23:42:37Z mike $".
  */
index a7813f9f176f7b3f975a66e2aaa85a6d98c008c8..3eb9213a56baf3d0d393c44f014f3e872060169d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: env.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: env.c 7673 2008-06-18 22:31:26Z mike $"
  *
  *   Environment management routines for the Common UNIX Printing System (CUPS).
  *
@@ -185,7 +185,7 @@ cupsdSetEnv(const char *name,               /* I - Name of variable */
 
   cupsdSetStringf(common_env + i, "%s=%s", name, value);
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdSetEnv: %s\n", common_env[i]);
+  cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdSetEnv: %s", common_env[i]);
 }
 
 
@@ -236,5 +236,5 @@ clear_env(void)
 
 
 /*
- * End of "$Id: env.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: env.c 7673 2008-06-18 22:31:26Z mike $".
  */
index 73344b6aed60d7c9bbf573299ac2cf498bb14d41..6df0483f9866afa161f127e42e020e86e35e90cd 100644 (file)
@@ -1,9 +1,9 @@
 /*
- * "$Id: filter.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: filter.c 7694 2008-06-26 00:23:20Z mike $"
  *
  *   File type conversion routines for the Common UNIX Printing System (CUPS).
  *
- *   Copyright 2007 by Apple Inc.
+ *   Copyright 2007-2008 by Apple Inc.
  *   Copyright 1997-2007 by Easy Software Products, all rights reserved.
  *
  *   These coded instructions, statements, and computer programs are the
@@ -403,5 +403,5 @@ find_filters(mime_t           *mime,        /* I - MIME database */
 
 
 /*
- * End of "$Id: filter.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: filter.c 7694 2008-06-26 00:23:20Z mike $".
  */
index ac80acb7ff0208f1c1a4adf3958f1afc5b7fca4d..7562cd9e2888739b85d93328f60ac73fceaf697a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ipp.c 7014 2007-10-10 21:57:43Z mike $"
+ * "$Id: ipp.c 7682 2008-06-21 00:06:02Z mike $"
  *
  *   IPP routines for the Common UNIX Printing System (CUPS) scheduler.
  *
@@ -796,8 +796,8 @@ cupsdTimeoutJob(cupsd_job_t *job)   /* I - Job to timeout */
     * Yes...
     */
 
-    cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Adding end banner page \"%s\".",
-                    job->id, attr->values[1].string.text);
+    cupsdLogJob(job, CUPSD_LOG_INFO, "Adding end banner page \"%s\".",
+                attr->values[1].string.text);
 
     if ((kbytes = copy_banner(NULL, job, attr->values[1].string.text)) < 0)
       return (-1);
@@ -1754,10 +1754,10 @@ add_job(cupsd_client_t  *con,           /* I - Client connection */
 
           cupsdSetString(&attr->values[0].string.text, Classification);
 
-         cupsdLogMessage(CUPSD_LOG_NOTICE, "[Job %d] CLASSIFICATION FORCED "
-                                           "job-sheets=\"%s,none\", "
-                                           "job-originating-user-name=\"%s\"",
-                        job->id, Classification, job->username);
+         cupsdLogJob(job, CUPSD_LOG_NOTICE, "CLASSIFICATION FORCED "
+                                            "job-sheets=\"%s,none\", "
+                                            "job-originating-user-name=\"%s\"",
+                     Classification, job->username);
        }
        else if (attr->num_values == 2 &&
                 strcmp(attr->values[0].string.text,
@@ -1771,11 +1771,11 @@ add_job(cupsd_client_t  *con,           /* I - Client connection */
 
           cupsdSetString(&attr->values[1].string.text, attr->values[0].string.text);
 
-         cupsdLogMessage(CUPSD_LOG_NOTICE, "[Job %d] CLASSIFICATION FORCED "
-                                           "job-sheets=\"%s,%s\", "
-                                           "job-originating-user-name=\"%s\"",
-                        job->id, attr->values[0].string.text,
-                        attr->values[1].string.text, job->username);
+         cupsdLogJob(job, CUPSD_LOG_NOTICE, "CLASSIFICATION FORCED "
+                                            "job-sheets=\"%s,%s\", "
+                                            "job-originating-user-name=\"%s\"",
+                     attr->values[0].string.text,
+                     attr->values[1].string.text, job->username);
        }
        else if (strcmp(attr->values[0].string.text, Classification) &&
                 strcmp(attr->values[0].string.text, "none") &&
@@ -1784,18 +1784,18 @@ add_job(cupsd_client_t  *con,           /* I - Client connection */
                   strcmp(attr->values[1].string.text, "none"))))
         {
          if (attr->num_values == 1)
-            cupsdLogMessage(CUPSD_LOG_NOTICE,
-                           "[Job %d] CLASSIFICATION OVERRIDDEN "
-                           "job-sheets=\"%s\", "
-                           "job-originating-user-name=\"%s\"",
-                      job->id, attr->values[0].string.text, job->username);
+            cupsdLogJob(job, CUPSD_LOG_NOTICE,
+                       "CLASSIFICATION OVERRIDDEN "
+                       "job-sheets=\"%s\", "
+                       "job-originating-user-name=\"%s\"",
+                       attr->values[0].string.text, job->username);
           else
-            cupsdLogMessage(CUPSD_LOG_NOTICE,
-                           "[Job %d] CLASSIFICATION OVERRIDDEN "
-                           "job-sheets=\"%s,%s\",fffff "
-                           "job-originating-user-name=\"%s\"",
-                           job->id, attr->values[0].string.text,
-                           attr->values[1].string.text, job->username);
+            cupsdLogJob(job, CUPSD_LOG_NOTICE,
+                       "CLASSIFICATION OVERRIDDEN "
+                       "job-sheets=\"%s,%s\",fffff "
+                       "job-originating-user-name=\"%s\"",
+                       attr->values[0].string.text,
+                       attr->values[1].string.text, job->username);
         }
       }
       else if (strcmp(attr->values[0].string.text, Classification) &&
@@ -1824,18 +1824,18 @@ add_job(cupsd_client_t  *con,           /* I - Client connection */
         }
 
         if (attr->num_values > 1)
-         cupsdLogMessage(CUPSD_LOG_NOTICE,
-                         "[Job %d] CLASSIFICATION FORCED "
-                         "job-sheets=\"%s,%s\", "
-                         "job-originating-user-name=\"%s\"",
-                         job->id, attr->values[0].string.text,
-                         attr->values[1].string.text, job->username);
+         cupsdLogJob(job, CUPSD_LOG_NOTICE,
+                     "CLASSIFICATION FORCED "
+                     "job-sheets=\"%s,%s\", "
+                     "job-originating-user-name=\"%s\"",
+                     attr->values[0].string.text,
+                     attr->values[1].string.text, job->username);
         else
-         cupsdLogMessage(CUPSD_LOG_NOTICE,
-                         "[Job %d] CLASSIFICATION FORCED "
-                         "job-sheets=\"%s\", "
-                         "job-originating-user-name=\"%s\"",
-                        job->id, Classification, job->username);
+         cupsdLogJob(job, CUPSD_LOG_NOTICE,
+                     "CLASSIFICATION FORCED "
+                     "job-sheets=\"%s\", "
+                     "job-originating-user-name=\"%s\"",
+                     Classification, job->username);
       }
     }
 
@@ -1845,9 +1845,8 @@ add_job(cupsd_client_t  *con,             /* I - Client connection */
 
     if (!(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT)))
     {
-      cupsdLogMessage(CUPSD_LOG_INFO,
-                      "[Job %d] Adding start banner page \"%s\".",
-                      job->id, attr->values[0].string.text);
+      cupsdLogJob(job, CUPSD_LOG_INFO, "Adding start banner page \"%s\".",
+                 attr->values[0].string.text);
 
       if ((kbytes = copy_banner(con, job, attr->values[0].string.text)) < 0)
       {
@@ -3669,8 +3668,7 @@ authenticate_job(cupsd_client_t  *con,    /* I - Client connection */
 
   cupsdReleaseJob(job);
 
-  cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Authenticated by \"%s\".", jobid,
-                  con->username);
+  cupsdLogJob(job, CUPSD_LOG_INFO, "Authenticated by \"%s\".", con->username);
 }
 
 
@@ -4011,10 +4009,10 @@ cancel_job(cupsd_client_t  *con,        /* I - Client connection */
 
   if (purge)
     cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Purged by \"%s\".", jobid,
-                    username);
+                   username);
   else
     cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Canceled by \"%s\".", jobid,
-                    username);
+                   username);
 
   con->response->request.status.status_code = IPP_OK;
 }
@@ -5690,8 +5688,8 @@ create_job(cupsd_client_t  *con,  /* I - Client connection */
   * Save and log the job...
   */
 
-  cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Queued on \"%s\" by \"%s\".",
-                  job->id, job->dest, job->username);
+  cupsdLogJob(job, CUPSD_LOG_INFO, "Queued on \"%s\" by \"%s\".",
+             job->dest, job->username);
 }
 
 
@@ -7945,8 +7943,7 @@ hold_job(cupsd_client_t  *con,            /* I - Client connection */
                   "Job job-hold-until value changed by user.");
   }
 
-  cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Held by \"%s\".", jobid,
-                  username);
+  cupsdLogJob(job, CUPSD_LOG_INFO, "Held by \"%s\".", username);
 
   con->response->request.status.status_code = IPP_OK;
 }
@@ -8519,11 +8516,10 @@ print_job(cupsd_client_t  *con,         /* I - Client connection */
   * Log and save the job...
   */
 
-  cupsdLogMessage(CUPSD_LOG_INFO,
-                  "[Job %d] File of type %s/%s queued by \"%s\".", job->id,
-                 filetype->super, filetype->type, job->username);
-  cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] hold_until=%d", job->id,
-                  (int)job->hold_until);
+  cupsdLogJob(job, CUPSD_LOG_INFO,
+             "File of type %s/%s queued by \"%s\".",
+             filetype->super, filetype->type, job->username);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG, "hold_until=%d", (int)job->hold_until);
 
  /*
   * Start the job if possible...
@@ -8930,8 +8926,7 @@ release_job(cupsd_client_t  *con, /* I - Client connection */
   cupsdAddEvent(CUPSD_EVENT_JOB_STATE, cupsdFindDest(job->dest), job,
                 "Job released by user.");
 
-  cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Released by \"%s\".", jobid,
-                  username);
+  cupsdLogJob(job, CUPSD_LOG_INFO, "Released by \"%s\".", username);
 
   con->response->request.status.status_code = IPP_OK;
 }
@@ -9150,8 +9145,7 @@ restart_job(cupsd_client_t  *con, /* I - Client connection */
 
   cupsdRestartJob(job);
 
-  cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Restarted by \"%s\".", jobid,
-                  username);
+  cupsdLogJob(job, CUPSD_LOG_INFO, "Restarted by \"%s\".", username);
 
   con->response->request.status.status_code = IPP_OK;
 }
@@ -9395,8 +9389,7 @@ save_krb5_creds(cupsd_client_t *con,      /* I - Client connection */
   cupsdSetStringf(&(job->ccname), "KRB5CCNAME=FILE:%s",
                   krb5_cc_get_name(KerberosContext, job->ccache));
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] save_krb5_creds: %s", job->id,
-                  job->ccname);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2, "save_krb5_creds: %s", job->ccname);
 #  endif /* HAVE_KRB5_CC_NEW_UNIQUE || HAVE_HEIMDAL */
 }
 #endif /* HAVE_GSSAPI && HAVE_KRB5_H */
@@ -9439,6 +9432,7 @@ send_document(cupsd_client_t  *con,       /* I - Client connection */
   struct stat          fileinfo;       /* File information */
   int                  kbytes;         /* Size of file */
   int                  compression;    /* Type of compression */
+  int                  start_job;      /* Start the job? */
 
 
   cupsdLogMessage(CUPSD_LOG_DEBUG2, "send_document(%p[%d], %s)", con,
@@ -9608,7 +9602,7 @@ send_document(cupsd_client_t  *con,       /* I - Client connection */
     ipp_attribute_t    *doc_name;      /* document-name attribute */
 
 
-    cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Auto-typing file...", job->id);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG, "Auto-typing file...");
 
     doc_name = ippFindAttribute(con->request, "document-name", IPP_TAG_NAME);
     filetype = mimeFileType(MimeDatabase, con->filename,
@@ -9618,9 +9612,8 @@ send_document(cupsd_client_t  *con,       /* I - Client connection */
     if (!filetype)
       filetype = mimeType(MimeDatabase, super, type);
 
-    cupsdLogMessage(CUPSD_LOG_DEBUG,
-                   "[Job %d] Request file type is %s/%s.", job->id,
-                   filetype->super, filetype->type);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG, "Request file type is %s/%s.",
+               filetype->super, filetype->type);
   }
   else
     filetype = mimeType(MimeDatabase, super, type);
@@ -9703,9 +9696,8 @@ send_document(cupsd_client_t  *con,       /* I - Client connection */
 
   cupsdClearString(&con->filename);
 
-  cupsdLogMessage(CUPSD_LOG_INFO,
-                  "[Job %d] File of type %s/%s queued by \"%s\".", job->id,
-                  filetype->super, filetype->type, job->username);
+  cupsdLogJob(job, CUPSD_LOG_INFO, "File of type %s/%s queued by \"%s\".",
+             filetype->super, filetype->type, job->username);
 
  /*
   * Start the job if this is the last document...
@@ -9743,16 +9735,7 @@ send_document(cupsd_client_t  *con,      /* I - Client connection */
     job->dirty = 1;
     cupsdMarkDirty(CUPSD_DIRTY_JOBS);
 
-   /*
-    * Start the job if possible...  Since cupsdCheckJobs() can cancel a
-    * job if it doesn't print, we need to re-find the job afterwards...
-    */
-
-    jobid = job->id;
-
-    cupsdCheckJobs();
-
-    job = cupsdFindJob(jobid);
+    start_job = 1;
   }
   else
   {
@@ -9769,6 +9752,8 @@ send_document(cupsd_client_t  *con,       /* I - Client connection */
 
       cupsdMarkDirty(CUPSD_DIRTY_JOBS);
     }
+
+    start_job = 0;
   }
 
  /*
@@ -9784,10 +9769,17 @@ send_document(cupsd_client_t  *con,     /* I - Client connection */
   ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_INTEGER, "job-id", jobid);
 
   ippAddInteger(con->response, IPP_TAG_JOB, IPP_TAG_ENUM, "job-state",
-                job ? job->state_value : IPP_JOB_CANCELED);
+                job->state_value);
   add_job_state_reasons(con, job);
 
   con->response->request.status.status_code = IPP_OK;
+
+ /*
+  * Start the job if necessary...
+  */
+
+  if (start_job)
+    cupsdCheckJobs();
 }
 
 
@@ -11035,5 +11027,5 @@ validate_user(cupsd_job_t    *job,      /* I - Job */
 
 
 /*
- * End of "$Id: ipp.c 7014 2007-10-10 21:57:43Z mike $".
+ * End of "$Id: ipp.c 7682 2008-06-21 00:06:02Z mike $".
  */
index 68c68651f15e9b7c426ea35ec85d2bfc45daff9c..890da354112ba195430bd7fdadca1bd3a47f06b1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: job.c 7005 2007-10-01 23:45:48Z mike $"
+ * "$Id: job.c 7682 2008-06-21 00:06:02Z mike $"
  *
  *   Job management routines for the Common UNIX Printing System (CUPS).
  *
@@ -436,9 +436,9 @@ cupsdCheckJobs(void)
        * cancel the job...
        */
 
-        cupsdLogMessage(CUPSD_LOG_WARN,
-                       "[Job %d] Printer/class %s has gone away; canceling job!",
-                       job->id, job->dest);
+        cupsdLogJob(job, CUPSD_LOG_WARN,
+                   "Printer/class %s has gone away; canceling job!",
+                   job->dest);
 
        cupsdAddEvent(CUPSD_EVENT_JOB_COMPLETED, job->printer, job,
                       "Job canceled because the destination printer/class has "
@@ -567,12 +567,12 @@ cupsdFinishJob(cupsd_job_t *job)  /* I - Job */
   ipp_attribute_t      *attr;          /* job-hold-until attribute */
 
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] File %d is complete.",
-                  job->id, job->current_file - 1);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG, "File %d is complete.",
+             job->current_file - 1);
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                  "[Job %d] cupsdFinishJob: job->status is %d",
-                  job->id, job->status);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+             "cupsdFinishJob: job->status is %d",
+             job->status);
 
   if (job->status_buffer &&
       (job->status < 0 || job->current_file >= job->num_files))
@@ -583,9 +583,9 @@ cupsdFinishJob(cupsd_job_t *job)    /* I - Job */
 
     cupsdRemoveSelect(job->status_buffer->fd);
 
-    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                   "[Job %d] cupsdFinishJob: Closing status pipes [ %d %d ]...",
-                   job->id, job->status_pipes[0], job->status_pipes[1]);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+               "cupsdFinishJob: Closing status pipes [ %d %d ]...",
+               job->status_pipes[0], job->status_pipes[1]);
 
     cupsdClosePipe(job->status_pipes);
     cupsdStatBufDelete(job->status_buffer);
@@ -618,15 +618,15 @@ cupsdFinishJob(cupsd_job_t *job)  /* I - Job */
     else
       exit_code = job->status;
 
-    cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Backend returned status %d (%s)",
-                    job->id, exit_code,
-                   exit_code == CUPS_BACKEND_FAILED ? "failed" :
-                       exit_code == CUPS_BACKEND_AUTH_REQUIRED ?
-                           "authentication required" :
-                       exit_code == CUPS_BACKEND_HOLD ? "hold job" :
-                       exit_code == CUPS_BACKEND_STOP ? "stop printer" :
-                       exit_code == CUPS_BACKEND_CANCEL ? "cancel job" :
-                       exit_code < 0 ? "crashed" : "unknown");
+    cupsdLogJob(job, CUPSD_LOG_INFO, "Backend returned status %d (%s)",
+               exit_code,
+               exit_code == CUPS_BACKEND_FAILED ? "failed" :
+                   exit_code == CUPS_BACKEND_AUTH_REQUIRED ?
+                       "authentication required" :
+                   exit_code == CUPS_BACKEND_HOLD ? "hold job" :
+                   exit_code == CUPS_BACKEND_STOP ? "stop printer" :
+                   exit_code == CUPS_BACKEND_CANCEL ? "cancel job" :
+                   exit_code < 0 ? "crashed" : "unknown");
 
    /*
     * Do what needs to be done...
@@ -680,10 +680,10 @@ cupsdFinishJob(cupsd_job_t *job)  /* I - Job */
              * Too many tries...
              */
 
-             cupsdLogMessage(CUPSD_LOG_ERROR,
-                             "[Job %d] Canceling job since it could not be "
-                             "sent after %d tries.",
-                             job->id, JobRetryLimit);
+             cupsdLogJob(job, CUPSD_LOG_ERROR,
+                         "Canceling job since it could not be "
+                         "sent after %d tries.",
+                         JobRetryLimit);
 
              cupsdCancelJob(job, 0, IPP_JOB_ABORTED);
            }
@@ -800,8 +800,7 @@ cupsdFinishJob(cupsd_job_t *job)    /* I - Job */
     * Filter had errors; stop job...
     */
 
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                    "[Job %d] Job stopped due to filter errors.", job->id);
+    cupsdLogJob(job, CUPSD_LOG_ERROR, "Job stopped due to filter errors.");
     cupsdStopJob(job, 1);
     job->dirty = 1;
     cupsdMarkDirty(CUPSD_DIRTY_JOBS);
@@ -831,8 +830,7 @@ cupsdFinishJob(cupsd_job_t *job)    /* I - Job */
       * Close out this job...
       */
 
-      cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Completed successfully.",
-                     job->id);
+      cupsdLogJob(job, CUPSD_LOG_INFO, "Completed successfully.");
       cupsdCancelJob(job, 0, IPP_JOB_COMPLETED);
       cupsdCheckJobs();
     }
@@ -1063,8 +1061,7 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
 
   if ((job->attrs = ippNew()) == NULL)
   {
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                    "[Job %d] Ran out of memory for job attributes!", job->id);
+    cupsdLogJob(job, CUPSD_LOG_ERROR, "Ran out of memory for job attributes!");
     return;
   }
 
@@ -1072,14 +1069,14 @@ cupsdLoadJob(cupsd_job_t *job)          /* I - Job */
   * Load job attributes...
   */
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Loading attributes...", job->id);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG, "Loading attributes...");
 
   snprintf(jobfile, sizeof(jobfile), "%s/c%05d", RequestRoot, job->id);
   if ((fp = cupsFileOpen(jobfile, "r")) == NULL)
   {
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                   "[Job %d] Unable to open job control file \"%s\" - %s!",
-                   job->id, jobfile, strerror(errno));
+    cupsdLogJob(job, CUPSD_LOG_ERROR,
+               "Unable to open job control file \"%s\" - %s!",
+               jobfile, strerror(errno));
     ippDelete(job->attrs);
     job->attrs = NULL;
     return;
@@ -1087,9 +1084,9 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
 
   if (ippReadIO(fp, (ipp_iocb_t)cupsFileRead, 1, NULL, job->attrs) != IPP_DATA)
   {
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                    "[Job %d] Unable to read job control file \"%s\"!",
-                   job->id, jobfile);
+    cupsdLogJob(job, CUPSD_LOG_ERROR,
+               "Unable to read job control file \"%s\"!",
+               jobfile);
     cupsFileClose(fp);
     ippDelete(job->attrs);
     job->attrs = NULL;
@@ -1106,10 +1103,8 @@ cupsdLoadJob(cupsd_job_t *job)           /* I - Job */
   if ((job->state = ippFindAttribute(job->attrs, "job-state",
                                      IPP_TAG_ENUM)) == NULL)
   {
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                   "[Job %d] Missing or bad job-state attribute in "
-                   "control file!",
-                   job->id);
+    cupsdLogJob(job, CUPSD_LOG_ERROR,
+               "Missing or bad job-state attribute in control file!");
     ippDelete(job->attrs);
     job->attrs = NULL;
     unlink(jobfile);
@@ -1123,9 +1118,8 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
     if ((attr = ippFindAttribute(job->attrs, "job-printer-uri",
                                  IPP_TAG_URI)) == NULL)
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                     "[Job %d] No job-printer-uri attribute in control file!",
-                     job->id);
+      cupsdLogJob(job, CUPSD_LOG_ERROR,
+                 "No job-printer-uri attribute in control file!");
       ippDelete(job->attrs);
       job->attrs = NULL;
       unlink(jobfile);
@@ -1135,9 +1129,9 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
     if ((dest = cupsdValidateDest(attr->values[0].string.text, &(job->dtype),
                                   &destptr)) == NULL)
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                     "[Job %d] Unable to queue job for destination \"%s\"!",
-                     job->id, attr->values[0].string.text);
+      cupsdLogJob(job, CUPSD_LOG_ERROR,
+                 "Unable to queue job for destination \"%s\"!",
+                 attr->values[0].string.text);
       ippDelete(job->attrs);
       job->attrs = NULL;
       unlink(jobfile);
@@ -1148,9 +1142,8 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
   }
   else if ((destptr = cupsdFindDest(job->dest)) == NULL)
   {
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                   "[Job %d] Unable to queue job for destination \"%s\"!",
-                   job->id, job->dest);
+    cupsdLogJob(job, CUPSD_LOG_ERROR,
+               "Unable to queue job for destination \"%s\"!", job->dest);
     ippDelete(job->attrs);
     job->attrs = NULL;
     unlink(jobfile);
@@ -1166,9 +1159,8 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
     if ((attr = ippFindAttribute(job->attrs, "job-priority",
                                 IPP_TAG_INTEGER)) == NULL)
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                     "[Job %d] Missing or bad job-priority attribute in "
-                     "control file!", job->id);
+      cupsdLogJob(job, CUPSD_LOG_ERROR,
+                 "Missing or bad job-priority attribute in control file!");
       ippDelete(job->attrs);
       job->attrs = NULL;
       unlink(jobfile);
@@ -1183,9 +1175,9 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
     if ((attr = ippFindAttribute(job->attrs, "job-originating-user-name",
                                 IPP_TAG_NAME)) == NULL)
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                     "[Job %d] Missing or bad job-originating-user-name "
-                     "attribute in control file!", job->id);
+      cupsdLogJob(job, CUPSD_LOG_ERROR,
+                 "Missing or bad job-originating-user-name attribute in "
+                 "control file!");
       ippDelete(job->attrs);
       job->attrs = NULL;
       unlink(jobfile);
@@ -1233,9 +1225,8 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
       if (access(jobfile, 0))
         break;
 
-      cupsdLogMessage(CUPSD_LOG_DEBUG,
-                      "[Job %d] Auto-typing document file \"%s\"...",
-                      job->id, jobfile);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG,
+                 "Auto-typing document file \"%s\"...", jobfile);
 
       if (fileid > job->num_files)
       {
@@ -1255,9 +1246,8 @@ cupsdLoadJob(cupsd_job_t *job)            /* I - Job */
 
         if (!compressions || !filetypes)
        {
-          cupsdLogMessage(CUPSD_LOG_ERROR,
-                         "[Job %d] Ran out of memory for job file types!",
-                         job->id);
+          cupsdLogJob(job, CUPSD_LOG_ERROR,
+                     "Ran out of memory for job file types!");
          return;
        }
 
@@ -1522,9 +1512,9 @@ cupsdSaveJob(cupsd_job_t *job)            /* I - Job */
 
   if ((fp = cupsFileOpen(filename, "w")) == NULL)
   {
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                    "[Job %d] Unable to create job control file \"%s\" - %s.",
-                    job->id, filename, strerror(errno));
+    cupsdLogJob(job, CUPSD_LOG_ERROR,
+               "Unable to create job control file \"%s\" - %s.",
+               filename, strerror(errno));
     return;
   }
 
@@ -1535,8 +1525,7 @@ cupsdSaveJob(cupsd_job_t *job)            /* I - Job */
 
   if (ippWriteIO(fp, (ipp_iocb_t)cupsFileWrite, 1, NULL,
                  job->attrs) != IPP_DATA)
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                    "[Job %d] Unable to write job control file!", job->id);
+    cupsdLogJob(job, CUPSD_LOG_ERROR, "Unable to write job control file!");
 
   cupsFileClose(fp);
 
@@ -1756,8 +1745,7 @@ cupsdStopJob(cupsd_job_t *job,            /* I - Job */
   int  i;                              /* Looping var */
 
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                  "[Job %d] cupsdStopJob: force = %d", job->id, force);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2, "cupsdStopJob: force = %d", force);
 
   if (job->state_value != IPP_JOB_PROCESSING)
     return;
@@ -1790,18 +1778,18 @@ cupsdStopJob(cupsd_job_t *job,          /* I - Job */
   cupsdDestroyProfile(job->profile);
   job->profile = NULL;
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] Closing print pipes [ %d %d ]...",
-                  job->id, job->print_pipes[0], job->print_pipes[1]);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2, "Closing print pipes [ %d %d ]...",
+             job->print_pipes[0], job->print_pipes[1]);
 
   cupsdClosePipe(job->print_pipes);
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] Closing back pipes [ %d %d ]...",
-                  job->id, job->back_pipes[0], job->back_pipes[1]);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2, "Closing back pipes [ %d %d ]...",
+             job->back_pipes[0], job->back_pipes[1]);
 
   cupsdClosePipe(job->back_pipes);
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] Closing side pipes [ %d %d ]...",
-                  job->id, job->side_pipes[0], job->side_pipes[1]);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2, "Closing side pipes [ %d %d ]...",
+             job->side_pipes[0], job->side_pipes[1]);
 
   cupsdClosePipe(job->side_pipes);
 
@@ -1813,9 +1801,8 @@ cupsdStopJob(cupsd_job_t *job,            /* I - Job */
 
     cupsdRemoveSelect(job->status_buffer->fd);
 
-    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                    "[Job %d] Closing status pipes [ %d %d ]...", job->id,
-                    job->status_pipes[0], job->status_pipes[1]);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG2, "Closing status pipes [ %d %d ]...",
+               job->status_pipes[0], job->status_pipes[1]);
 
     cupsdClosePipe(job->status_pipes);
     cupsdStatBufDelete(job->status_buffer);
@@ -2093,7 +2080,7 @@ load_job_cache(const char *filename)      /* I - job.cache filename */
       if (!job)
       {
         cupsdLogMessage(CUPSD_LOG_EMERG,
-                       "[Job %d] Unable to allocate memory for job!", jobid);
+                       "[Job %d] Unable to allocate memory for job!", jobid);
         break;
       }
 
@@ -2107,7 +2094,7 @@ load_job_cache(const char *filename)      /* I - job.cache filename */
       job->status_pipes[0] = -1;
       job->status_pipes[1] = -1;
 
-      cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Loading from cache...", job->id);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG, "Loading from cache...");
     }
     else if (!job)
     {
@@ -2175,8 +2162,7 @@ load_job_cache(const char *filename)      /* I - job.cache filename */
                 job->id);
         if (access(jobfile, 0))
        {
-         cupsdLogMessage(CUPSD_LOG_INFO,
-                         "[Job %d] Data files have gone away!", job->id);
+         cupsdLogJob(job, CUPSD_LOG_INFO, "Data files have gone away!");
           job->num_files = 0;
          continue;
        }
@@ -2186,9 +2172,9 @@ load_job_cache(const char *filename)      /* I - job.cache filename */
 
         if (!job->filetypes || !job->compressions)
        {
-         cupsdLogMessage(CUPSD_LOG_EMERG,
-                         "[Job %d] Unable to allocate memory for %d files!",
-                         job->id, job->num_files);
+         cupsdLogJob(job, CUPSD_LOG_EMERG,
+                     "Unable to allocate memory for %d files!",
+                     job->num_files);
           break;
        }
       }
@@ -2226,9 +2212,9 @@ load_job_cache(const char *filename)      /* I - job.cache filename */
         * If the original MIME type is unknown, auto-type it!
        */
 
-        cupsdLogMessage(CUPSD_LOG_ERROR,
-                       "[Job %d] Unknown MIME type %s/%s for file %d!",
-                       job->id, super, type, number + 1);
+        cupsdLogJob(job, CUPSD_LOG_ERROR,
+                   "Unknown MIME type %s/%s for file %d!",
+                   super, type, number + 1);
 
         snprintf(jobfile, sizeof(jobfile), "%s/d%05d-%03d", RequestRoot,
                 job->id, number + 1);
@@ -2519,14 +2505,12 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
   static int           optlength = 0;  /* Length of option buffer */
 
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] start_job: file = %d/%d",
-                  job->id, job->current_file, job->num_files);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: file = %d/%d",
+             job->current_file, job->num_files);
 
   if (job->num_files == 0)
   {
-    cupsdLogMessage(CUPSD_LOG_ERROR, "[Job %d] No files, canceling job!",
-                    job->id);
-
+    cupsdLogJob(job, CUPSD_LOG_ERROR, "No files, canceling job!");
     cupsdCancelJob(job, 0, IPP_JOB_ABORTED);
     return;
   }
@@ -2546,8 +2530,7 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
     * filtering...
     */
 
-    cupsdLogMessage(CUPSD_LOG_DEBUG,
-                    "[Job %d] Sending job to queue tagged as raw...", job->id);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG, "Sending job to queue tagged as raw...");
 
     filters = NULL;
   }
@@ -2562,9 +2545,9 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
 
     if (!filters)
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                      "[Job %d] Unable to convert file %d to printable format!",
-                     job->current_file, job->id);
+      cupsdLogJob(job, CUPSD_LOG_ERROR,
+                 "Unable to convert file %d to printable format!",
+                 job->current_file);
       cupsdLogMessage(CUPSD_LOG_INFO,
                       "Hint: Do you have Ghostscript installed?");
 
@@ -2645,13 +2628,12 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
 
     cupsArrayDelete(filters);
 
-    cupsdLogMessage(CUPSD_LOG_INFO,
-                    "[Job %d] Holding because filter limit has been reached.",
-                    job->id);
-    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                    "[Job %d] start_job: file=%d, cost=%d, level=%d, limit=%d",
-                    job->id, job->current_file, job->cost, FilterLevel,
-                   FilterLimit);
+    cupsdLogJob(job, CUPSD_LOG_INFO,
+               "Holding because filter limit has been reached.");
+    cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+               "start_job: file=%d, cost=%d, level=%d, limit=%d",
+               job->current_file, job->cost, FilterLevel,
+               FilterLimit);
     return;
   }
 
@@ -2674,9 +2656,8 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
 
     if (!cupsArrayInsert(filters, &gziptoany_filter))
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                      "[Job %d] Unable to add decompression filter - %s",
-                     job->id, strerror(errno));
+      cupsdLogJob(job, CUPSD_LOG_ERROR,
+                 "Unable to add decompression filter - %s", strerror(errno));
 
       cupsArrayDelete(filters);
 
@@ -2711,9 +2692,8 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
 
     if (!cupsArrayAdd(filters, &port_monitor))
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                      "[Job %d] Unable to add port monitor - %s",
-                      job->id, strerror(errno));
+      cupsdLogJob(job, CUPSD_LOG_ERROR,
+                 "Unable to add port monitor - %s", strerror(errno));
 
       cupsArrayDelete(filters);
 
@@ -2732,9 +2712,9 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
 
   if (cupsArrayCount(filters) > MAX_FILTERS)
   {
-    cupsdLogMessage(CUPSD_LOG_ERROR,
-                   "[Job %d] Too many filters (%d > %d), unable to print!",
-                   job->id, cupsArrayCount(filters), MAX_FILTERS);
+    cupsdLogJob(job, CUPSD_LOG_ERROR,
+               "Too many filters (%d > %d), unable to print!",
+               cupsArrayCount(filters), MAX_FILTERS);
 
     cupsArrayDelete(filters);
     cupsdCancelJob(job, 0, IPP_JOB_STOPPED);
@@ -2801,21 +2781,19 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
 
   if (job->job_sheets == NULL)
   {
-    cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] No job-sheets attribute.",
-                    job->id);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG, "No job-sheets attribute.");
     if ((job->job_sheets =
          ippFindAttribute(job->attrs, "job-sheets", IPP_TAG_ZERO)) != NULL)
-      cupsdLogMessage(CUPSD_LOG_DEBUG,
-                      "[Job %d] ... but someone added one without setting "
-                     "job_sheets!", job->id);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG,
+                 "... but someone added one without setting job_sheets!");
   }
   else if (job->job_sheets->num_values == 1)
-    cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] job-sheets=%s", job->id,
-                    job->job_sheets->values[0].string.text);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG, "job-sheets=%s",
+               job->job_sheets->values[0].string.text);
   else
-    cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] job-sheets=%s,%s", job->id,
-               job->job_sheets->values[0].string.text,
-               job->job_sheets->values[1].string.text);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG, "job-sheets=%s,%s",
+                job->job_sheets->values[0].string.text,
+                job->job_sheets->values[1].string.text);
 
   if (printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT))
     banner_page = 0;
@@ -2831,8 +2809,7 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
   else
     banner_page = 0;
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] banner_page = %d", job->id,
-                  banner_page);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG, "banner_page = %d", banner_page);
 
  /*
   * Building the options string is harder than it needs to be, but
@@ -2853,9 +2830,8 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
 
     if (optptr == NULL)
     {
-      cupsdLogMessage(CUPSD_LOG_CRIT,
-                      "[Job %d] Unable to allocate %d bytes for option buffer!",
-                     job->id, i);
+      cupsdLogJob(job, CUPSD_LOG_CRIT,
+                 "Unable to allocate %d bytes for option buffer!", i);
 
       cupsArrayDelete(filters);
 
@@ -3080,8 +3056,8 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
   }
 
   for (i = 0; argv[i]; i ++)
-    cupsdLogMessage(CUPSD_LOG_DEBUG,
-                    "[Job %d] argv[%d]=\"%s\"", job->id, i, argv[i]);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG,
+               "argv[%d]=\"%s\"", i, argv[i]);
 
  /*
   * Create environment variable strings for the filters...
@@ -3220,14 +3196,13 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
 
   for (i = 0; i < envc; i ++)
     if (!strncmp(envp[i], "AUTH_", 5))
-      cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] envp[%d]=\"AUTH_%c****\"",
-                      job->id, i, envp[i][5]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG, "envp[%d]=\"AUTH_%c****\"", i,
+                  envp[i][5]);
     else if (strncmp(envp[i], "DEVICE_URI=", 11))
-      cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] envp[%d]=\"%s\"",
-                      job->id, i, envp[i]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG, "envp[%d]=\"%s\"", i, envp[i]);
     else
-      cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] envp[%d]=\"DEVICE_URI=%s\"",
-                      job->id, i, sani_uri);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG, "envp[%d]=\"DEVICE_URI=%s\"", i,
+                  sani_uri);
 
   if (printer->remote)
     job->current_file = job->num_files;
@@ -3247,9 +3222,8 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
   {
     if (cupsdOpenPipe(job->status_pipes))
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                      "[Job %d] Unable to create job status pipes - %s.",
-                     job->id, strerror(errno));
+      cupsdLogJob(job, CUPSD_LOG_ERROR,
+                 "Unable to create job status pipes - %s.", strerror(errno));
       snprintf(printer->state_message, sizeof(printer->state_message),
               "Unable to create status pipes - %s.", strerror(errno));
 
@@ -3262,12 +3236,11 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
       goto abort_job;
     }
 
-    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                    "[Job %d] start_job: status_pipes = [ %d %d ]",
-                   job->id, job->status_pipes[0], job->status_pipes[1]);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+               "start_job: status_pipes = [ %d %d ]",
+               job->status_pipes[0], job->status_pipes[1]);
 
-    job->status_buffer = cupsdStatBufNew(job->status_pipes[0], "[Job %d]",
-                                        job->id);
+    job->status_buffer = cupsdStatBufNew(job->status_pipes[0], NULL);
     job->status_level  = CUPSD_LOG_INFO;
   }
 
@@ -3291,9 +3264,8 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
     {
       if (cupsdOpenPipe(filterfds[slot]))
       {
-       cupsdLogMessage(CUPSD_LOG_ERROR,
-                       "[Job %d] Unable to create job filter pipes - %s.",
-                       job->id, strerror(errno));
+       cupsdLogJob(job, CUPSD_LOG_ERROR,
+                   "Unable to create job filter pipes - %s.", strerror(errno));
        snprintf(printer->state_message, sizeof(printer->state_message),
                "Unable to create filter pipes - %s.", strerror(errno));
        cupsdAddPrinterHistory(printer);
@@ -3313,9 +3285,9 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
        {
          if (cupsdOpenPipe(job->print_pipes))
          {
-           cupsdLogMessage(CUPSD_LOG_ERROR,
-                           "[Job %d] Unable to create job backend pipes - %s.",
-                           job->id, strerror(errno));
+           cupsdLogJob(job, CUPSD_LOG_ERROR,
+                       "Unable to create job backend pipes - %s.",
+                       strerror(errno));
            snprintf(printer->state_message, sizeof(printer->state_message),
                    "Unable to create backend pipes - %s.", strerror(errno));
            cupsdAddPrinterHistory(printer);
@@ -3350,9 +3322,9 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
 
            if (job->print_pipes[1] < 0)
            {
-              cupsdLogMessage(CUPSD_LOG_ERROR,
-                             "[Job %d] Unable to open output file \"%s\" - %s.",
-                             job->id, printer->device_uri, strerror(errno));
+              cupsdLogJob(job, CUPSD_LOG_ERROR,
+                         "Unable to open output file \"%s\" - %s.",
+                         printer->device_uri, strerror(errno));
               snprintf(printer->state_message, sizeof(printer->state_message),
                       "Unable to open output file \"%s\" - %s.",
                       printer->device_uri, strerror(errno));
@@ -3369,38 +3341,34 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
           }
        }
 
-       cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                       "[Job %d] start_job: print_pipes = [ %d %d ]",
-                        job->id, job->print_pipes[0], job->print_pipes[1]);
+       cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+                   "start_job: print_pipes = [ %d %d ]",
+                   job->print_pipes[0], job->print_pipes[1]);
       }
 
       filterfds[slot][0] = job->print_pipes[0];
       filterfds[slot][1] = job->print_pipes[1];
     }
 
-    cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] start_job: filter=\"%s\"",
-                    job->id, command);
-    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                    "[Job %d] start_job: filterfds[%d]=[ %d %d ]",
-                    job->id, slot, filterfds[slot][0], filterfds[slot][1]);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: filter=\"%s\"", command);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: filterfds[%d]=[ %d %d ]",
+               slot, filterfds[slot][0], filterfds[slot][1]);
 
     pid = cupsdStartProcess(command, argv, envp, filterfds[!slot][0],
                             filterfds[slot][1], job->status_pipes[1],
                            job->back_pipes[0], job->side_pipes[0], 0,
                            job->profile, job->filters + i);
 
-    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                    "[Job %d] start_job: Closing filter pipes for slot %d "
-                   "[ %d %d ]...",
-                    job->id, !slot, filterfds[!slot][0], filterfds[!slot][1]);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+               "start_job: Closing filter pipes for slot %d [ %d %d ]...",
+               !slot, filterfds[!slot][0], filterfds[!slot][1]);
 
     cupsdClosePipe(filterfds[!slot]);
 
     if (pid == 0)
     {
-      cupsdLogMessage(CUPSD_LOG_ERROR,
-                      "[Job %d] Unable to start filter \"%s\" - %s.",
-                      job->id, filter->filter, strerror(errno));
+      cupsdLogJob(job, CUPSD_LOG_ERROR, "Unable to start filter \"%s\" - %s.",
+                 filter->filter, strerror(errno));
       snprintf(printer->state_message, sizeof(printer->state_message),
                "Unable to start filter \"%s\" - %s.",
                filter->filter, strerror(errno));
@@ -3414,14 +3382,15 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
       goto abort_job;
     }
 
-    cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Started filter %s (PID %d)",
-                    job->id, command, pid);
+    cupsdLogJob(job, CUPSD_LOG_INFO, "Started filter %s (PID %d)", command,
+                pid);
 
     argv[6] = NULL;
     slot    = !slot;
   }
 
   cupsArrayDelete(filters);
+  filters = NULL;
 
  /*
   * Finally, pipe the final output into a backend process if needed...
@@ -3450,11 +3419,9 @@ start_job(cupsd_job_t     *job,          /* I - Job ID */
       filterfds[slot][0] = -1;
       filterfds[slot][1] = -1;
 
-      cupsdLogMessage(CUPSD_LOG_DEBUG2, "[Job %d] start_job: backend=\"%s\"",
-                      job->id, command);
-      cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                      "[Job %d] start_job: filterfds[%d] = [ %d %d ]", job->id,
-                     slot, filterfds[slot][0], filterfds[slot][1]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: backend=\"%s\"", command);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG2, "start_job: filterfds[%d] = [ %d %d ]",
+                 slot, filterfds[slot][0], filterfds[slot][1]);
 
       pid = cupsdStartProcess(command, argv, envp, filterfds[!slot][0],
                              filterfds[slot][1], job->status_pipes[1],
@@ -3463,9 +3430,8 @@ start_job(cupsd_job_t     *job,           /* I - Job ID */
 
       if (pid == 0)
       {
-       cupsdLogMessage(CUPSD_LOG_ERROR,
-                       "[Job %d] Unable to start backend \"%s\" - %s.",
-                       job->id, method, strerror(errno));
+       cupsdLogJob(job, CUPSD_LOG_ERROR, "Unable to start backend \"%s\" - %s.",
+                   method, strerror(errno));
        snprintf(printer->state_message, sizeof(printer->state_message),
                 "Unable to start backend \"%s\" - %s.", method,
                 strerror(errno));
@@ -3478,34 +3444,34 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
       }
       else
       {
-       cupsdLogMessage(CUPSD_LOG_INFO, "[Job %d] Started backend %s (PID %d)",
-                       job->id, command, pid);
+       cupsdLogJob(job, CUPSD_LOG_INFO, "Started backend %s (PID %d)",
+                   command, pid);
       }
     }
 
     if (job->current_file == job->num_files)
     {
-      cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                      "[Job %d] start_job: Closing print pipes [ %d %d ]...",
-                     job->id, job->print_pipes[0], job->print_pipes[1]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+                 "start_job: Closing print pipes [ %d %d ]...",
+                 job->print_pipes[0], job->print_pipes[1]);
 
       cupsdClosePipe(job->print_pipes);
 
-      cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                      "[Job %d] start_job: Closing back pipes [ %d %d ]...",
-                     job->id, job->back_pipes[0], job->back_pipes[1]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+                 "start_job: Closing back pipes [ %d %d ]...",
+                 job->back_pipes[0], job->back_pipes[1]);
 
       cupsdClosePipe(job->back_pipes);
 
-      cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                      "[Job %d] start_job: Closing side pipes [ %d %d ]...",
-                     job->id, job->side_pipes[0], job->side_pipes[1]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+                 "start_job: Closing side pipes [ %d %d ]...",
+                 job->side_pipes[0], job->side_pipes[1]);
 
       cupsdClosePipe(job->side_pipes);
 
-      cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                     "[Job %d] start_job: Closing status output pipe %d...",
-                     job->id, job->status_pipes[1]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+                 "start_job: Closing status output pipe %d...",
+                 job->status_pipes[1]);
 
       close(job->status_pipes[1]);
       job->status_pipes[1] = -1;
@@ -3518,25 +3484,24 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
 
     if (job->current_file == job->num_files)
     {
-      cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                      "[Job %d] start_job: Closing print pipes [ %d %d ]...",
-                     job->id, job->print_pipes[0], job->print_pipes[1]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+                 "start_job: Closing print pipes [ %d %d ]...",
+                 job->print_pipes[0], job->print_pipes[1]);
 
       cupsdClosePipe(job->print_pipes);
 
-      cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                     "[Job %d] start_job: Closing status output pipe %d...",
-                     job->id, job->status_pipes[1]);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+                 "start_job: Closing status output pipe %d...",
+                 job->status_pipes[1]);
 
       close(job->status_pipes[1]);
       job->status_pipes[1] = -1;
     }
   }
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                 "[Job %d] start_job: Closing filter pipes for slot %d "
-                 "[ %d %d ]...",
-                 job->id, slot, filterfds[slot][0], filterfds[slot][1]);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+             "start_job: Closing filter pipes for slot %d [ %d %d ]...",
+             slot, filterfds[slot][0], filterfds[slot][1]);
   cupsdClosePipe(filterfds[slot]);
 
   if (printer->remote && job->num_files > 1)
@@ -3565,16 +3530,15 @@ start_job(cupsd_job_t     *job,         /* I - Job ID */
 
   for (slot = 0; slot < 2; slot ++)
   {
-    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                    "[Job %d] start_job: Closing filter pipes for slot %d "
-                   "[ %d %d ]...",
-                    job->id, slot, filterfds[slot][0], filterfds[slot][1]);
+    cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+               "start_job: Closing filter pipes for slot %d [ %d %d ]...",
+               slot, filterfds[slot][0], filterfds[slot][1]);
     cupsdClosePipe(filterfds[slot]);
   }
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                  "[Job %d] start_job: Closing status pipes [ %d %d ]...",
-                  job->id, job->status_pipes[0], job->status_pipes[1]);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG2,
+             "start_job: Closing status pipes [ %d %d ]...",
+             job->status_pipes[0], job->status_pipes[1]);
   cupsdClosePipe(job->status_pipes);
   cupsdStatBufDelete(job->status_buffer);
 
@@ -3604,7 +3568,7 @@ unload_job(cupsd_job_t *job)              /* I - Job */
   if (!job->attrs)
     return;
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] Unloading...", job->id);
+  cupsdLogJob(job, CUPSD_LOG_DEBUG, "Unloading...");
 
   ippDelete(job->attrs);
 
@@ -3646,8 +3610,7 @@ update_job(cupsd_job_t *job)              /* I - Job to check */
       * job sheet count...
       */
 
-      if (LogLevel >= CUPSD_LOG_DEBUG)
-        cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] PAGE: %s", job->id, message);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG, "PAGE: %s", message);
 
       if (job->sheets)
       {
@@ -3677,11 +3640,11 @@ update_job(cupsd_job_t *job)            /* I - Job to check */
            * Quota limit exceeded, cancel job in progress immediately...
            */
 
-           cupsdLogMessage(CUPSD_LOG_INFO,
-                           "[Job %d] Canceled because pages exceed user %s "
-                           "quota limit on printer %s (%s).",
-                           job->id, job->username, job->printer->name,
-                           job->printer->info);
+           cupsdLogJob(job, CUPSD_LOG_INFO,
+                       "Canceled because pages exceed user %s "
+                       "quota limit on printer %s (%s).",
+                       job->username, job->printer->name,
+                       job->printer->info);
 
            cupsdCancelJob(job, 1, IPP_JOB_CANCELED);
            return;
@@ -3700,9 +3663,7 @@ update_job(cupsd_job_t *job)              /* I - Job to check */
     }
     else if (loglevel == CUPSD_LOG_STATE)
     {
-      if (LogLevel >= CUPSD_LOG_DEBUG)
-        cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] STATE: %s", job->id,
-                       message);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG, "STATE: %s", message);
 
       if (!strcmp(message, "paused"))
       {
@@ -3729,8 +3690,7 @@ update_job(cupsd_job_t *job)              /* I - Job to check */
       const char       *attr;          /* Attribute */
 
 
-      if (LogLevel >= CUPSD_LOG_DEBUG)
-        cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] ATTR: %s", job->id, message);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG, "ATTR: %s", message);
 
       num_attrs = cupsParseOptions(message, 0, &attrs);
 
@@ -3773,6 +3733,13 @@ update_job(cupsd_job_t *job)             /* I - Job to check */
        event |= CUPSD_EVENT_PRINTER_STATE;
       }
 
+      if ((attr = cupsGetOption("marker-message", num_attrs, attrs)) != NULL)
+      {
+        cupsdSetPrinterAttr(job->printer, "marker-message", (char *)attr);
+       job->printer->marker_time = time(NULL);
+       event |= CUPSD_EVENT_PRINTER_STATE;
+      }
+
       if ((attr = cupsGetOption("marker-names", num_attrs, attrs)) != NULL)
       {
         cupsdSetPrinterAttr(job->printer, "marker-names", (char *)attr);
@@ -3799,8 +3766,7 @@ update_job(cupsd_job_t *job)              /* I - Job to check */
       cups_option_t    *keywords;      /* Keywords */
 
 
-      if (LogLevel >= CUPSD_LOG_DEBUG)
-        cupsdLogMessage(CUPSD_LOG_DEBUG, "[Job %d] PPD: %s", job->id, message);
+      cupsdLogJob(job, CUPSD_LOG_DEBUG, "PPD: %s", message);
 
       num_keywords = cupsParseOptions(message, 0, &keywords);
 
@@ -3837,23 +3803,28 @@ update_job(cupsd_job_t *job)            /* I - Job to check */
       event |= CUPSD_EVENT_PRINTER_STATE;
     }
 #endif /* __APPLE__ */
-    else if (loglevel <= job->status_level)
+    else
     {
-     /*
-      * Some message to show in the printer-state-message attribute...
-      */
+      cupsdLogJob(job, loglevel, "%s", message);
 
-      if (loglevel != CUPSD_LOG_NOTICE)
-        job->status_level = loglevel;
+      if (loglevel <= job->status_level)
+      {
+       /*
+       * Some messages show in the printer-state-message attribute...
+       */
 
-      strlcpy(job->printer->state_message, message,
-              sizeof(job->printer->state_message));
-      cupsdAddPrinterHistory(job->printer);
+       if (loglevel != CUPSD_LOG_NOTICE)
+         job->status_level = loglevel;
 
-      if (loglevel <= CUPSD_LOG_INFO)
-        event |= CUPSD_EVENT_PRINTER_STATE;
+       strlcpy(job->printer->state_message, message,
+               sizeof(job->printer->state_message));
+       cupsdAddPrinterHistory(job->printer);
 
-      update_job_attrs(job);
+       if (loglevel <= CUPSD_LOG_INFO)
+         event |= CUPSD_EVENT_PRINTER_STATE;
+
+       update_job_attrs(job);
+      }
     }
 
     if (!strchr(job->status_buffer->buffer, '\n'))
@@ -3971,5 +3942,5 @@ update_job_attrs(cupsd_job_t *job)        /* I - Job to update */
 
 
 /*
- * End of "$Id: job.c 7005 2007-10-01 23:45:48Z mike $".
+ * End of "$Id: job.c 7682 2008-06-21 00:06:02Z mike $".
  */
index 09bf75ce00627bfb9ff1cc6c18bf8f181c527218..e1e30432464e6ea800f37a654bc639c6c71afd55 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: job.h 6755 2007-08-01 19:02:47Z mike $"
+ * "$Id: job.h 7468 2008-04-18 18:31:59Z mike $"
  *
  *   Print job definitions for the Common UNIX Printing System (CUPS) scheduler.
  *
@@ -131,5 +131,5 @@ extern void         cupsdUnloadCompletedJobs(void);
 
 
 /*
- * End of "$Id: job.h 6755 2007-08-01 19:02:47Z mike $".
+ * End of "$Id: job.h 7468 2008-04-18 18:31:59Z mike $".
  */
index bf2fa4c0204f92140ea15e49833958a34d82ca91..dfe99c290bcd1e4212e3f2489e9e38e0baa0d1ad 100644 (file)
@@ -10,8 +10,8 @@ _mimeFilterLookup
 _mimeFirstFilter
 _mimeFirstType
 _mimeLoad
-_mimeMerge
-_mimeNew
+_mimeLoadFilters
+_mimeLoadTypes
 _mimeNextFilter
 _mimeNextType
 _mimeNumFilters
index 931bc9de1d566332cdbfe135b0d81798627f9794..361ff677c2b17ba6566a9b110fb7c6eafe85af93 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: listen.c 6788 2007-08-13 17:20:14Z mike $"
+ * "$Id: listen.c 7673 2008-06-18 22:31:26Z mike $"
  *
  *   Server listening routines for the Common UNIX Printing System (CUPS)
  *   scheduler.
@@ -151,7 +151,7 @@ cupsdStartListening(void)
 
   if ((ServerAddrs = httpAddrGetList(ServerName, AF_UNSPEC, NULL)) == NULL)
     cupsdLogMessage(CUPSD_LOG_ERROR,
-                    "Unable to find IP address for server name \"%s\"!\n",
+                    "Unable to find IP address for server name \"%s\"!",
                    ServerName);
 
  /*
@@ -428,5 +428,5 @@ cupsdStopListening(void)
 
 
 /*
- * End of "$Id: listen.c 6788 2007-08-13 17:20:14Z mike $".
+ * End of "$Id: listen.c 7673 2008-06-18 22:31:26Z mike $".
  */
index 4a21b0856bac03e0a58006d409f71e7aa306de8a..fde21215e59f1e527e1e5f23a44fa12d2883a2fb 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: log.c 6875 2007-08-27 23:25:06Z mike $"
+ * "$Id: log.c 7697 2008-06-27 15:56:00Z mike $"
  *
  *   Log file routines for the Common UNIX Printing System (CUPS).
  *
  *
  *   cupsdGetDateTime()   - Returns a pointer to a date/time string.
  *   cupsdLogGSSMessage() - Log a GSSAPI error...
+ *   cupsdLogJob()        - Log a job message.
  *   cupsdLogMessage()    - Log a message to the error log file.
  *   cupsdLogPage()       - Log a page to the page log file.
  *   cupsdLogRequest()    - Log an HTTP request in Common Log Format.
+ *   cupsdWriteErrorLog() - Write a line to the ErrorLog.
  *   check_log_file()     - Open/rotate a log file if it needs it.
+ *   format_log_line()    - Format a line for a log file.
  */
 
 /*
 #include <syslog.h>
 
 
+/*
+ * Local globals...
+ */
+
+static int     log_linesize = 0;       /* Size of line for output file */
+static char    *log_line = NULL;       /* Line for output file */
+
+
 /*
  * Local functions...
  */
 
-static int     check_log_file(cups_file_t **, const char *);
+static int     check_log_file(cups_file_t **lf, const char *logname);
+static char    *format_log_line(const char *message, va_list ap);
 
 
 /*
@@ -157,176 +169,94 @@ cupsdLogGSSMessage(
 
 
 /*
- * 'cupsdLogMessage()' - Log a message to the error log file.
+ * 'cupsdLogJob()' - Log a job message.
  */
 
 int                                    /* O - 1 on success, 0 on error */
-cupsdLogMessage(int        level,      /* I - Log level */
-                const char *message,   /* I - printf-style message string */
-               ...)                    /* I - Additional args as needed */
+cupsdLogJob(cupsd_job_t *job,          /* I - Job */
+            int         level,         /* I - Log level */
+           const char  *message,       /* I - Printf-style message string */
+           ...)                        /* I - Additional arguments as needed */
 {
-  int                  len;            /* Length of message */
   va_list              ap;             /* Argument pointer */
-  static const char    levels[] =      /* Log levels... */
-               {
-                 ' ',
-                 'X',
-                 'A',
-                 'C',
-                 'E',
-                 'W',
-                 'N',
-                 'I',
-                 'D',
-                 'd'
-               };
-#ifdef HAVE_VSYSLOG
-  static const int     syslevels[] =   /* SYSLOG levels... */
-               {
-                 0,
-                 LOG_EMERG,
-                 LOG_ALERT,
-                 LOG_CRIT,
-                 LOG_ERR,
-                 LOG_WARNING,
-                 LOG_NOTICE,
-                 LOG_INFO,
-                 LOG_DEBUG,
-                 LOG_DEBUG
-               };
-#endif /* HAVE_VSYSLOG */
-  static int           linesize = 0;   /* Size of line for output file */
-  static char          *line = NULL;   /* Line for output file */
+  char                 jobmsg[1024],   /* Format string for job message */
+                       *line;          /* Message line */
 
 
  /*
   * See if we want to log this message...
   */
 
-  if (TestConfigFile)
-  {
-    if (level <= CUPSD_LOG_WARN)
-    {
-      va_start(ap, message);
-      vfprintf(stderr, message, ap);
-      putc('\n', stderr);
-      va_end(ap);
-    }
-
+  if (TestConfigFile || level > LogLevel || !ErrorLog)
     return (1);
-  }
 
   if (level > LogLevel || !ErrorLog)
     return (1);
 
-#ifdef HAVE_VSYSLOG
- /*
-  * See if we are logging errors via syslog...
-  */
-
-  if (!strcmp(ErrorLog, "syslog"))
-  {
-    va_start(ap, message);
-    vsyslog(syslevels[level], message, ap);
-    va_end(ap);
-
-    return (1);
-  }
-#endif /* HAVE_VSYSLOG */
-
- /*
-  * Not using syslog; check the log file...
-  */
-
-  if (!check_log_file(&ErrorFile, ErrorLog))
-    return (0);
-
  /*
-  * Print the log level and date/time...
+  * Format and write the log message...
   */
 
-  cupsFilePrintf(ErrorFile, "%c %s ", levels[level], cupsdGetDateTime(time(NULL)));
+  snprintf(jobmsg, sizeof(jobmsg), "[Job %d] %s", job->id, message);
 
- /*
-  * Allocate the line buffer as needed...
-  */
+  va_start(ap, message);
+  line = format_log_line(jobmsg, ap);
+  va_end(ap);
 
-  if (!linesize)
-  {
-    linesize = 8192;
-    line     = malloc(linesize);
+  if (line)
+    return (cupsdWriteErrorLog(level, line));
+  else
+    return (cupsdWriteErrorLog(CUPSD_LOG_ERROR,
+                               "Unable to allocate memory for log line!"));
+}
 
-    if (!line)
-    {
-      cupsFilePrintf(ErrorFile,
-                     "ERROR: Unable to allocate memory for line - %s\n",
-                     strerror(errno));
-      cupsFileFlush(ErrorFile);
 
-      return (0);
-    }
-  }
+/*
+ * 'cupsdLogMessage()' - Log a message to the error log file.
+ */
 
- /*
-  * Format the log message...
-  */
+int                                    /* O - 1 on success, 0 on error */
+cupsdLogMessage(int        level,      /* I - Log level */
+                const char *message,   /* I - printf-style message string */
+               ...)                    /* I - Additional args as needed */
+{
+  va_list              ap;             /* Argument pointer */
+  char                 *line;          /* Message line */
 
-  va_start(ap, message);
-  len = vsnprintf(line, linesize, message, ap);
-  va_end(ap);
 
  /*
-  * Resize the buffer as needed...
+  * See if we want to log this message...
   */
 
-  if (len >= linesize)
+  if (TestConfigFile)
   {
-    char       *temp;                  /* Temporary string pointer */
-
-
-    len ++;
-
-    if (len < 8192)
-      len = 8192;
-    else if (len > 65536)
-      len = 65536;
-
-    temp = realloc(line, len);
-
-    if (temp)
+    if (level <= CUPSD_LOG_WARN)
     {
-      line     = temp;
-      linesize = len;
+      va_start(ap, message);
+      vfprintf(stderr, message, ap);
+      putc('\n', stderr);
+      va_end(ap);
     }
 
-    va_start(ap, message);
-    len = vsnprintf(line, linesize, message, ap);
-    va_end(ap);
+    return (1);
   }
 
-  if (len >= linesize)
-    len = linesize - 1;
-
- /*
-  * Then the log message...
-  */
-
-  cupsFilePuts(ErrorFile, line);
-
- /*
-  * Then a newline...
-  */
-
-  if (len > 0 && line[len - 1] != '\n')
-    cupsFilePutChar(ErrorFile, '\n');
+  if (level > LogLevel || !ErrorLog)
+    return (1);
 
  /*
-  * Flush the line to the file and return...
+  * Format and write the log message...
   */
 
-  cupsFileFlush(ErrorFile);
+  va_start(ap, message);
+  line = format_log_line(message, ap);
+  va_end(ap);
 
-  return (1);
+  if (line)
+    return (cupsdWriteErrorLog(level, line));
+  else
+    return (cupsdWriteErrorLog(CUPSD_LOG_ERROR,
+                               "Unable to allocate memory for log line!"));
 }
 
 
@@ -414,8 +344,10 @@ cupsdLogPage(cupsd_job_t *job,             /* I - Job being printed */
              * Pull the name from inside the brackets...
              */
 
-             memcpy(name, format + 1, nameend - format - 2);
-             name[nameend - format - 2] = '\0';
+             memcpy(name, format + 1, nameend - format - 1);
+             name[nameend - format - 1] = '\0';
+
+             format = nameend;
 
              if ((attr = ippFindAttribute(job->attrs, name,
                                           IPP_TAG_ZERO)) != NULL)
@@ -424,8 +356,6 @@ cupsdLogPage(cupsd_job_t *job,              /* I - Job being printed */
                * Add the attribute value...
                */
 
-               format = nameend;
-
                 for (i = 0;
                     i < attr->num_values &&
                         bufptr < (buffer + sizeof(buffer) - 1);
@@ -606,6 +536,75 @@ cupsdLogRequest(cupsd_client_t *con,       /* I - Request to log */
 }
 
 
+/*
+ * 'cupsdWriteErrorLog()' - Write a line to the ErrorLog.
+ */
+
+int                                    /* O - 1 on success, 0 on failure */
+cupsdWriteErrorLog(int        level,   /* I - Log level */
+                   const char *message)        /* I - Message string */
+{
+  static const char    levels[] =      /* Log levels... */
+               {
+                 ' ',
+                 'X',
+                 'A',
+                 'C',
+                 'E',
+                 'W',
+                 'N',
+                 'I',
+                 'D',
+                 'd'
+               };
+#ifdef HAVE_VSYSLOG
+  static const int     syslevels[] =   /* SYSLOG levels... */
+               {
+                 0,
+                 LOG_EMERG,
+                 LOG_ALERT,
+                 LOG_CRIT,
+                 LOG_ERR,
+                 LOG_WARNING,
+                 LOG_NOTICE,
+                 LOG_INFO,
+                 LOG_DEBUG,
+                 LOG_DEBUG
+               };
+#endif /* HAVE_VSYSLOG */
+
+
+#ifdef HAVE_VSYSLOG
+ /*
+  * See if we are logging errors via syslog...
+  */
+
+  if (!strcmp(ErrorLog, "syslog"))
+  {
+    syslog(syslevels[level], "%s", message);
+    return (1);
+  }
+#endif /* HAVE_VSYSLOG */
+
+ /*
+  * Not using syslog; check the log file...
+  */
+
+  if (!check_log_file(&ErrorFile, ErrorLog))
+    return (0);
+
+ /*
+  * Write the log message...
+  */
+
+  cupsFilePrintf(ErrorFile, "%c %s %s\n", levels[level],
+                 cupsdGetDateTime(time(NULL)), message);
+  cupsFileFlush(ErrorFile);
+
+  return (1);
+}
+
+
 /*
  * 'check_log_file()' - Open/rotate a log file if it needs it.
  */
@@ -765,5 +764,70 @@ check_log_file(cups_file_t **lf,   /* IO - Log file */
 
 
 /*
- * End of "$Id: log.c 6875 2007-08-27 23:25:06Z mike $".
+ * 'format_log_line()' - Format a line for a log file.
+ *
+ * This function resizes a global string buffer as needed.  Each call returns
+ * a pointer to this buffer, so the contents are only good until the next call
+ * to format_log_line()...
+ */
+
+static char *                          /* O - Text or NULL on error */
+format_log_line(const char *message,   /* I - Printf-style format string */
+                va_list    ap)         /* I - Argument list */
+{
+  int  len;                            /* Length of formatted line */
+
+
+ /*
+  * Allocate the line buffer as needed...
+  */
+
+  if (!log_linesize)
+  {
+    log_linesize = 8192;
+    log_line     = malloc(log_linesize);
+
+    if (!log_line)
+      return (NULL);
+  }
+
+ /*
+  * Format the log message...
+  */
+
+  len = vsnprintf(log_line, log_linesize, message, ap);
+
+ /*
+  * Resize the buffer as needed...
+  */
+
+  if (len >= log_linesize)
+  {
+    char       *temp;                  /* Temporary string pointer */
+
+
+    len ++;
+
+    if (len < 8192)
+      len = 8192;
+    else if (len > 65536)
+      len = 65536;
+
+    temp = realloc(log_line, len);
+
+    if (temp)
+    {
+      log_line     = temp;
+      log_linesize = len;
+    }
+
+    len = vsnprintf(log_line, log_linesize, message, ap);
+  }
+
+  return (log_line);
+}
+
+
+/*
+ * End of "$Id: log.c 7697 2008-06-27 15:56:00Z mike $".
  */
index 54334523b3335e7e9fd228e3b879a6ac219f9a8e..e3319467aa8e9f6fcecde4eaf9880958b3bce427 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: main.c 6914 2007-09-05 21:05:04Z mike $"
+ * "$Id: main.c 7681 2008-06-20 21:06:02Z mike $"
  *
  *   Scheduler main loop for the Common UNIX Printing System (CUPS).
  *
@@ -489,7 +489,7 @@ main(int  argc,                             /* I - Number of command-line args */
       {
         snprintf(tempfile, sizeof(tempfile), "%s/%s", TempDir, dent->filename);
 
-       if (cupsdRemoveFile(tempfile))
+       if (unlink(tempfile))
          cupsdLogMessage(CUPSD_LOG_ERROR,
                          "Unable to remove temporary file \"%s\" - %s",
                          tempfile, strerror(errno));
@@ -2019,5 +2019,5 @@ usage(int status)                 /* O - Exit status */
 
 
 /*
- * End of "$Id: main.c 6914 2007-09-05 21:05:04Z mike $".
+ * End of "$Id: main.c 7681 2008-06-20 21:06:02Z mike $".
  */
index cee81209e9102cc8d3678c68e148a2d804f07ae0..890f2ea0641e12d1fd22342b5e8b53ad4627820d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: mime.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: mime.c 7694 2008-06-26 00:23:20Z mike $"
  *
  *   MIME database file routines for the Common UNIX Printing System (CUPS).
  *
@@ -72,6 +72,7 @@ static void   load_convs(mime_t *mime, const char *filename,
                           const char *filterpath,
                           cups_array_t *filtercache);
 static void    load_types(mime_t *mime, const char *filename);
+static mime_t  *mime_new(void);
 
 
 /*
@@ -192,73 +193,50 @@ mimeFirstType(mime_t *mime)               /* I - MIME database */
 
 /*
  * 'mimeLoad()' - Create a new MIME database from disk.
+ *
+ * This function uses @link mimeLoadFilters@ and @link mimeLoadTypes@ to
+ * create a MIME database from a single directory.
  */
 
 mime_t *                               /* O - New MIME database */
 mimeLoad(const char *pathname,         /* I - Directory to load */
          const char *filterpath)       /* I - Directory to load */
 {
-  return (mimeMerge(NULL, pathname, filterpath));
+  return (mimeLoadFilters(mimeLoadTypes(NULL, pathname), pathname, filterpath));
 }
 
 
 /*
- * 'mimeMerge()' - Merge a MIME database from disk with the current one.
+ * 'mimeLoadFilters()' - Load filter definitions from disk.
+ *
+ * This function loads all of the .convs files from the specified directory.
+ * Use @link mimeLoadTypes@ to load all types before you load the filters.
  */
 
-mime_t *                               /* O - Updated MIME database */
-mimeMerge(mime_t     *mime,            /* I - MIME database to add to */
-          const char *pathname,                /* I - Directory to load */
-          const char *filterpath)      /* I - Directory to load */
+mime_t *                               /* O - MIME database */
+mimeLoadFilters(mime_t     *mime,      /* I - MIME database */
+                const char *pathname,  /* I - Directory to load from */
+                const char *filterpath)        /* I - Default filter program directory */
 {
   cups_dir_t   *dir;                   /* Directory */
   cups_dentry_t        *dent;                  /* Directory entry */
-  char         filename[1024];         /* Full filename of types/converts file */
+  char         filename[1024];         /* Full filename of .convs file */
   cups_array_t *filtercache;           /* Filter cache */
 
 
  /*
-  * First open the directory specified by pathname...  Return NULL if nothing
-  * was read or if the pathname is NULL...
+  * Range check input...
   */
 
-  if (!pathname)
-    return (NULL);
-
-  if ((dir = cupsDirOpen(pathname)) == NULL)
-    return (NULL);
+  if (!mime || !pathname || !filterpath)
+    return (mime);
 
  /*
-  * If "mime" is NULL, make a new, blank database...
+  * Then open the directory specified by pathname...
   */
 
-  if (!mime)
-    mime = mimeNew();
-  if (!mime)
-  {
-    cupsDirClose(dir);
-    return (NULL);
-  }
-
- /*
-  * Read all the .types files...
-  */
-
-  while ((dent = cupsDirRead(dir)) != NULL)
-  {
-    if (strlen(dent->filename) > 6 &&
-        !strcmp(dent->filename + strlen(dent->filename) - 6, ".types"))
-    {
-     /*
-      * Load a mime.types file...
-      */
-
-      snprintf(filename, sizeof(filename), "%s/%s", pathname, dent->filename);
-      load_types(mime, filename);
-    }
-  }
-
-  cupsDirRewind(dir);
+  if ((dir = cupsDirOpen(pathname)) == NULL)
+    return (mime);
 
  /*
   * Read all the .convs files...
@@ -289,13 +267,62 @@ mimeMerge(mime_t     *mime,               /* I - MIME database to add to */
 
 
 /*
- * 'mimeNew()' - Create a new, empty MIME database.
+ * 'mimeLoadTypes()' - Load type definitions from disk.
+ *
+ * This function loads all of the .types files from the specified directory.
+ * Use @link mimeLoadFilters@ to load all filters after you load the types.
  */
 
 mime_t *                               /* O - MIME database */
-mimeNew(void)
+mimeLoadTypes(mime_t     *mime,                /* I - MIME database or @code NULL@ to create a new one */
+              const char *pathname)    /* I - Directory to load from */
 {
-  return ((mime_t *)calloc(1, sizeof(mime_t)));
+  cups_dir_t   *dir;                   /* Directory */
+  cups_dentry_t        *dent;                  /* Directory entry */
+  char         filename[1024];         /* Full filename of .types file */
+
+
+ /*
+  * First open the directory specified by pathname...
+  */
+
+  if ((dir = cupsDirOpen(pathname)) == NULL)
+    return (mime);
+
+ /*
+  * If "mime" is NULL, make a new, empty database...
+  */
+
+  if (!mime)
+    mime = mime_new();
+
+  if (!mime)
+  {
+    cupsDirClose(dir);
+    return (NULL);
+  }
+
+ /*
+  * Read all the .types files...
+  */
+
+  while ((dent = cupsDirRead(dir)) != NULL)
+  {
+    if (strlen(dent->filename) > 6 &&
+        !strcmp(dent->filename + strlen(dent->filename) - 6, ".types"))
+    {
+     /*
+      * Load a mime.types file...
+      */
+
+      snprintf(filename, sizeof(filename), "%s/%s", pathname, dent->filename);
+      load_types(mime, filename);
+    }
+  }
+
+  cupsDirClose(dir);
+
+  return (mime);
 }
 
 
@@ -474,6 +501,10 @@ load_convs(mime_t       *mime,             /* I - MIME database */
   int          cost;                   /* Cost of filter */
 
 
+  DEBUG_printf(("load_convs(mime=%p, filename=\"%s\", filterpath=\"%s\", "
+                "filtercache=%p)\n", mime, filename, filterpath, filtercache));
+
+
  /*
   * First try to open the file...
   */
@@ -481,8 +512,6 @@ load_convs(mime_t       *mime,              /* I - MIME database */
   if ((fp = cupsFileOpen(filename, "r")) == NULL)
     return;
 
-  DEBUG_printf(("\"%s\":\n", filename));
-
  /*
   * Then read each line from the file, skipping any comments in the file...
   */
@@ -493,8 +522,6 @@ load_convs(mime_t       *mime,              /* I - MIME database */
     * Skip blank lines and lines starting with a #...
     */
 
-    DEBUG_puts(line);
-
     if (!line[0] || line[0] == '#')
       continue;
 
@@ -544,7 +571,8 @@ load_convs(mime_t       *mime,              /* I - MIME database */
 
     if ((dsttype = mimeType(mime, super, type)) == NULL)
     {
-      DEBUG_printf(("    Destination type %s/%s not found!\n", super, type));
+      DEBUG_printf(("load_convs: Destination type %s/%s not found!\n",
+                    super, type));
       continue;
     }
 
@@ -578,7 +606,8 @@ load_convs(mime_t       *mime,              /* I - MIME database */
 
       if (!add_fcache(filtercache, filter, filterpath))
       {
-        DEBUG_printf(("    Filter %s not found in %s!\n", filter, filterpath)); 
+        DEBUG_printf(("load_convs: Filter %s not found in %s!\n", filter,
+                     filterpath)); 
         continue;
       }
     }
@@ -653,6 +682,8 @@ load_types(mime_t     *mime,                /* I - MIME database */
   mime_type_t  *typeptr;               /* New MIME type */
 
 
+  DEBUG_printf(("load_types(mime=%p, filename=\"%s\")\n", mime, filename));
+
  /*
   * First try to open the file...
   */
@@ -660,8 +691,6 @@ load_types(mime_t     *mime,                /* I - MIME database */
   if ((fp = cupsFileOpen(filename, "r")) == NULL)
     return;
 
-  DEBUG_printf(("\"%s\":\n", filename));
-
  /*
   * Then read each line from the file, skipping any comments in the file...
   */
@@ -672,8 +701,6 @@ load_types(mime_t     *mime,                /* I - MIME database */
     * Skip blank lines and lines starting with a #...
     */
 
-    DEBUG_puts(line);
-
     if (!line[0] || line[0] == '#')
       continue;
 
@@ -732,5 +759,16 @@ load_types(mime_t     *mime,               /* I - MIME database */
 
 
 /*
- * End of "$Id: mime.c 6649 2007-07-11 21:46:42Z mike $".
+ * 'mime_new()' - Create a new, empty MIME database.
+ */
+
+static mime_t *                                /* O - MIME database */
+mime_new(void)
+{
+  return ((mime_t *)calloc(1, sizeof(mime_t)));
+}
+
+
+/*
+ * End of "$Id: mime.c 7694 2008-06-26 00:23:20Z mike $".
  */
index 975ab79f47246566adc403392873f3078729cede..019496495b17946c227fa93add94cfda677ced91 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: mime.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: mime.h 7694 2008-06-26 00:23:20Z mike $"
  *
  *   MIME type/conversion database definitions for the Common UNIX Printing System (CUPS).
  *
@@ -113,9 +113,9 @@ typedef struct _mime_s                      /**** MIME Database ****/
 
 extern void            mimeDelete(mime_t *mime);
 extern mime_t          *mimeLoad(const char *pathname, const char *filterpath);
-extern mime_t          *mimeMerge(mime_t *mime, const char *pathname,
-                                  const char *filterpath);
-extern mime_t          *mimeNew(void);
+extern mime_t          *mimeLoadFilters(mime_t *mime, const char *pathname,
+                                        const char *filterpath);
+extern mime_t          *mimeLoadTypes(mime_t *mime, const char *pathname);
 
 extern mime_type_t     *mimeAddType(mime_t *mime, const char *super,
                                     const char *type);
@@ -147,5 +147,5 @@ extern int          mimeNumFilters(mime_t *mime);
 #endif /* !_CUPS_MIME_H_ */
 
 /*
- * End of "$Id: mime.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: mime.h 7694 2008-06-26 00:23:20Z mike $".
  */
index d550af4c8d2fbff3ed4c687043cd9d3665602a5f..4fefbd16a45fbacb5954f18df25b016e11ebecd4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: policy.c 6895 2007-08-30 00:09:27Z mike $"
+ * "$Id: policy.c 7673 2008-06-18 22:31:26Z mike $"
  *
  *   Policy routines for the Common UNIX Printing System (CUPS).
  *
@@ -276,7 +276,7 @@ cupsdFindPolicyOp(cupsd_policy_t *p,        /* I - Policy */
                        *po;            /* Current policy operation */
 
 
-  cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdFindPolicyOp(p=%p, op=%x(%s))\n",
+  cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdFindPolicyOp(p=%p, op=%x(%s))",
                   p, op, ippOpString(op));
 
  /*
@@ -348,5 +348,5 @@ hash_op(cupsd_location_t *op)               /* I - Operation */
 
 
 /*
- * End of "$Id: policy.c 6895 2007-08-30 00:09:27Z mike $".
+ * End of "$Id: policy.c 7673 2008-06-18 22:31:26Z mike $".
  */
index c2ae13f2c571acb97512ad1fb5f517b7aa13efb9..c5f4a91a93beab466c5dfc93811606f3d893a1fd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: printers.c 7608 2008-05-21 01:37:21Z mike $"
+ * "$Id: printers.c 7677 2008-06-19 23:22:19Z mike $"
  *
  *   Printer routines for the Common UNIX Printing System (CUPS).
  *
@@ -1569,6 +1569,24 @@ cupsdSaveAllPrinters(void)
       cupsFilePuts(fp, "\n");
     }
 
+    if ((marker = ippFindAttribute(printer->attrs, "marker-message",
+                                   IPP_TAG_TEXT)) != NULL)
+    {
+      cupsFilePrintf(fp, "Attribute %s ", marker->name);
+
+      if (!ptr && (ptr = strchr(marker->values[0].string.text, '#')) != NULL)
+      {
+       cupsFileWrite(fp, marker->values[0].string.text,
+                     ptr - marker->values[0].string.text);
+       cupsFilePutChar(fp, '\\');
+       cupsFilePuts(fp, ptr);
+      }
+      else
+       cupsFilePuts(fp, marker->values[0].string.text);
+
+      cupsFilePuts(fp, "\n");
+    }
+
     if ((marker = ippFindAttribute(printer->attrs, "marker-names",
                                    IPP_TAG_NAME)) != NULL)
     {
@@ -1860,6 +1878,8 @@ cupsdSetPrinterAttr(
 
     if (!strcmp(name, "marker-types"))
       value_tag = IPP_TAG_KEYWORD;
+    else if (!strcmp(name, "marker-message"))
+      value_tag = IPP_TAG_TEXT;
     else
       value_tag = IPP_TAG_NAME;
 
@@ -1871,7 +1891,12 @@ cupsdSetPrinterAttr(
     }
 
     if (attr)
+    {
+      for (i = 0; i < attr->num_values; i ++)
+       _cupsStrFree(attr->values[i].string.text);
+
       attr->num_values = count;
+    }
     else
       attr = ippAddStrings(p->attrs, IPP_TAG_PRINTER, value_tag, name,
                            count, NULL, NULL);
@@ -1889,7 +1914,6 @@ cupsdSetPrinterAttr(
       if ((ptr = strchr(value, ',')) != NULL)
         *ptr++ = '\0';
 
-      _cupsStrFree(attr->values[i].string.text);
       attr->values[i].string.text = _cupsStrAlloc(value);
 
       if (ptr)
@@ -4311,5 +4335,5 @@ write_irix_state(cupsd_printer_t *p)      /* I - Printer to update */
 
 
 /*
- * End of "$Id: printers.c 7608 2008-05-21 01:37:21Z mike $".
+ * End of "$Id: printers.c 7677 2008-06-19 23:22:19Z mike $".
  */
index b14b1b19680d05d5e88925494263350cf6e7fedf..0853b2edab6c8835a7e9df19d68d4a8274d97660 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: printers.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: printers.h 7564 2008-05-15 00:57:43Z mike $"
  *
  *   Printer definitions for the Common UNIX Printing System (CUPS) scheduler.
  *
@@ -176,5 +176,5 @@ extern void         cupsdWritePrintcap(void);
 
 
 /*
- * End of "$Id: printers.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: printers.h 7564 2008-05-15 00:57:43Z mike $".
  */
index d37b07915c973d638bd9b1c76cb652b5524e2ce9..b0481296c78962e9fe7c8fae6b4404015d44b686 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: process.c 6987 2007-09-25 15:43:44Z mike $"
+ * "$Id: process.c 7256 2008-01-25 00:48:54Z mike $"
  *
  *   Process management routines for the Common UNIX Printing System (CUPS).
  *
@@ -494,5 +494,5 @@ cupsd_requote(char       *dst,              /* I - Destination buffer */
 
 
 /*
- * End of "$Id: process.c 6987 2007-09-25 15:43:44Z mike $".
+ * End of "$Id: process.c 7256 2008-01-25 00:48:54Z mike $".
  */
index a2e1925d141b7b394375a75dfd6232721ea8e6cf..6f68436856ee725a9c047876d93b3e01a01488a4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: select.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: select.c 7093 2007-11-30 19:09:36Z mike $"
  *
  *   Select abstraction functions for the Common UNIX Printing System (CUPS).
  *
@@ -1018,5 +1018,5 @@ find_fd(int fd)                           /* I - File descriptor */
 
 
 /*
- * End of "$Id: select.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: select.c 7093 2007-11-30 19:09:36Z mike $".
  */
index 9483ae65898c1a02f4cf0028592fb434b2e4e3ea..d44e4ee7366f332ae09d74d7187808f314f8ad82 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: server.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: server.c 7468 2008-04-18 18:31:59Z mike $"
  *
  *   Server start/stop routines for the Common UNIX Printing System (CUPS).
  *
@@ -214,5 +214,5 @@ cupsdStopServer(void)
 
 
 /*
- * End of "$Id: server.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: server.c 7468 2008-04-18 18:31:59Z mike $".
  */
index a650f867b375e696433310dd82f84fdfd9167e06..c4959cfbefe4ce386cfb3a38f945f6fae7bb81f4 100644 (file)
@@ -1,10 +1,10 @@
 /*
- * "$Id: statbuf.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: statbuf.c 7674 2008-06-18 23:18:32Z mike $"
  *
  *   Status buffer routines for the Common UNIX Printing System (CUPS)
  *   scheduler.
  *
- *   Copyright 2007 by Apple Inc.
+ *   Copyright 2007-2008 by Apple Inc.
  *   Copyright 1997-2006 by Easy Software Products, all rights reserved.
  *
  *   These coded instructions, statements, and computer programs are the
@@ -15,8 +15,8 @@
  *
  * Contents:
  *
- *   cupsdStatBufNew()    - Create a new status buffer.
  *   cupsdStatBufDelete() - Destroy a status buffer.
+ *   cupsdStatBufNew()    - Create a new status buffer.
  *   cupsdStatBufUpdate() - Update the status buffer.
  */
 
 #include <stdarg.h>
 
 
+/*
+ * 'cupsdStatBufDelete()' - Destroy a status buffer.
+ */
+
+void
+cupsdStatBufDelete(cupsd_statbuf_t *sb)        /* I - Status buffer */
+{
+ /*
+  * Range check input...
+  */
+
+  if (!sb)
+    return;
+
+ /*
+  * Close the status pipe and free memory used...
+  */
+
+  close(sb->fd);
+
+  free(sb);
+}
+
+
 /*
  * 'cupsdStatBufNew()' - Create a new status buffer.
  */
@@ -89,30 +113,6 @@ cupsdStatBufNew(int fd,                     /* I - File descriptor of pipe */
 }
 
 
-/*
- * 'cupsdStatBufDelete()' - Destroy a status buffer.
- */
-
-void
-cupsdStatBufDelete(cupsd_statbuf_t *sb)        /* I - Status buffer */
-{
- /*
-  * Range check input...
-  */
-
-  if (!sb)
-    return;
-
- /*
-  * Close the status pipe and free memory used...
-  */
-
-  close(sb->fd);
-
-  free(sb);
-}
-
-
 /*
  * 'cupsdStatBufUpdate()' - Update the status buffer.
  */
@@ -288,20 +288,23 @@ cupsdStatBufUpdate(cupsd_statbuf_t *sb,   /* I - Status buffer */
   * Send it to the log file as needed...
   */
 
-  if (*loglevel > CUPSD_LOG_NONE &&
-      (*loglevel != CUPSD_LOG_INFO || LogLevel == CUPSD_LOG_DEBUG2))
+  if (sb->prefix[0])
   {
-   /*
-    * General status message; send it to the error_log file...
-    */
+    if (*loglevel > CUPSD_LOG_NONE &&
+       (*loglevel != CUPSD_LOG_INFO || LogLevel == CUPSD_LOG_DEBUG2))
+    {
+     /*
+      * General status message; send it to the error_log file...
+      */
 
-    if (message[0] == '[')
-      cupsdLogMessage(*loglevel, "%s", message);
-    else
-      cupsdLogMessage(*loglevel, "%s %s", sb->prefix, message);
+      if (message[0] == '[')
+       cupsdLogMessage(*loglevel, "%s", message);
+      else
+       cupsdLogMessage(*loglevel, "%s %s", sb->prefix, message);
+    }
+    else if (*loglevel < CUPSD_LOG_NONE && LogLevel == CUPSD_LOG_DEBUG2)
+      cupsdLogMessage(CUPSD_LOG_DEBUG2, "%s %s", sb->prefix, sb->buffer);
   }
-  else if (*loglevel < CUPSD_LOG_NONE && LogLevel == CUPSD_LOG_DEBUG2)
-    cupsdLogMessage(CUPSD_LOG_DEBUG2, "%s %s", sb->prefix, sb->buffer);
 
  /*
   * Copy the message to the line buffer...
@@ -326,5 +329,5 @@ cupsdStatBufUpdate(cupsd_statbuf_t *sb,     /* I - Status buffer */
 
 
 /*
- * End of "$Id: statbuf.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: statbuf.c 7674 2008-06-18 23:18:32Z mike $".
  */
index 385e68c9b022f041e44d402f22d0608c1953061a..c42c6fdb7088dcc43845ee775ed73fc1d934246e 100644 (file)
@@ -1,10 +1,10 @@
 /*
- * "$Id: statbuf.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: statbuf.h 7674 2008-06-18 23:18:32Z mike $"
  *
  *   Status buffer definitions for the Common UNIX Printing System (CUPS)
  *   scheduler.
  *
- *   Copyright 2007 by Apple Inc.
+ *   Copyright 2007-2008 by Apple Inc.
  *   Copyright 1997-2005 by Easy Software Products, all rights reserved.
  *
  *   These coded instructions, statements, and computer programs are the
@@ -39,12 +39,12 @@ typedef struct                              /**** Status buffer */
  * Prototypes...
  */
 
-extern cupsd_statbuf_t *cupsdStatBufNew(int fd, const char *prefix, ...);
 extern void            cupsdStatBufDelete(cupsd_statbuf_t *sb);
+extern cupsd_statbuf_t *cupsdStatBufNew(int fd, const char *prefix, ...);
 extern char            *cupsdStatBufUpdate(cupsd_statbuf_t *sb, int *loglevel,
                                            char *line, int linelen);
 
 
 /*
- * End of "$Id: statbuf.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: statbuf.h 7674 2008-06-18 23:18:32Z mike $".
  */
index cea357fd34812051c82ccba9ecf3993fd6df290c..4f92f873b74662e955bc3418ab41ed8418145215 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: subscriptions.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: subscriptions.c 7673 2008-06-18 22:31:26Z mike $"
  *
  *   Subscription routines for the Common UNIX Printing System (CUPS) scheduler.
  *
@@ -1363,7 +1363,7 @@ cupsd_send_notification(
 
 
   cupsdLogMessage(CUPSD_LOG_DEBUG2,
-                  "cupsd_send_notification(sub=%p(%d), event=%p(%s))\n",
+                  "cupsd_send_notification(sub=%p(%d), event=%p(%s))",
                   sub, sub->id, event, cupsdEventName(event->event));
 
  /*
@@ -1616,5 +1616,5 @@ cupsd_update_notifier(void)
 
 
 /*
- * End of "$Id: subscriptions.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: subscriptions.c 7673 2008-06-18 22:31:26Z mike $".
  */
index 7f112fa0cb1ff087be557a714e67a8f88222d47e..ab0154b7138a5de9f6457b2ae37b5f5c0fa8becf 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: subscriptions.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: subscriptions.h 7253 2008-01-23 22:18:15Z mike $"
  *
  *   Subscription definitions for the Common UNIX Printing System (CUPS) scheduler.
  *
@@ -163,5 +163,5 @@ extern void cupsdStopAllNotifiers(void);
 
 
 /*
- * End of "$Id: subscriptions.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: subscriptions.h 7253 2008-01-23 22:18:15Z mike $".
  */
index b6d1751423a741d2b17972ac6f1f0db418300dd1..cffb285a7498396b7c44b723666f8feab5193eed 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: sysman.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: sysman.c 7676 2008-06-18 23:42:37Z mike $"
  *
  *   System management definitions for the Common UNIX Printing System (CUPS).
  *
  *                                     doing something.
  *   cupsdStartSystemMonitor()       - Start monitoring for system change.
  *   cupsdStopSystemMonitor()        - Stop monitoring for system change.
- *   cupsdUpdateSystemMonitor()      - Update the current system state.
  *   sysEventThreadEntry()           - A thread to receive power and computer
  *                                     name change notifications.
  *   sysEventPowerNotifier()         - Handle power notification events.
  *   sysEventConfigurationNotifier() - Computer name changed notification
  *                                     callback.
  *   sysEventTimerNotifier()         - Handle delayed event notifications.
+ *   sysUpdate()                     - Update the current system state.
  */
 
 
@@ -230,6 +230,7 @@ static void sysEventConfigurationNotifier(SCDynamicStoreRef store,
                                              CFArrayRef changedKeys,
                                              void *context);
 static void    sysEventTimerNotifier(CFRunLoopTimerRef timer, void *context);
+static void    sysUpdate(void);
 
 
 /*
@@ -249,8 +250,7 @@ cupsdStartSystemMonitor(void)
     return;
   }
 
-  cupsdAddSelect(SysEventPipes[0], (cupsd_selfunc_t)cupsdUpdateSystemMonitor,
-                 NULL, NULL);
+  cupsdAddSelect(SysEventPipes[0], (cupsd_selfunc_t)sysUpdate, NULL, NULL);
 
  /*
   * Set non-blocking mode on the descriptor we will be receiving notification
@@ -313,174 +313,6 @@ cupsdStopSystemMonitor(void)
 }
 
 
-/*
- * 'cupsdUpdateSystemMonitor()' - Update the current system state.
- */
-
-void
-cupsdUpdateSystemMonitor(void)
-{
-  int                  i;              /* Looping var */
-  cupsd_sysevent_t     sysevent;       /* The system event */
-  cupsd_printer_t      *p;             /* Printer information */
-
-
- /*
-  * Drain the event pipe...
-  */
-
-  while (read((int)SysEventPipes[0], &sysevent, sizeof(sysevent))
-             == sizeof(sysevent))
-  {
-    if (sysevent.event & SYSEVENT_CANSLEEP)
-    {
-     /*
-      * If there are active printers that don't have the connecting-to-device
-      * printer-state-reason then cancel the sleep request (i.e. this reason
-      * indicates a job that is not yet connected to the printer)...
-      */
-
-      for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
-           p;
-          p = (cupsd_printer_t *)cupsArrayNext(Printers))
-      {
-        if (p->job)
-        {
-         for (i = 0; i < p->num_reasons; i ++)
-           if (!strcmp(p->reasons[i], "connecting-to-device"))
-             break;
-
-         if (!p->num_reasons || i >= p->num_reasons)
-           break;
-        }
-      }
-
-      if (p)
-      {
-        cupsdLogMessage(CUPSD_LOG_INFO,
-                       "System sleep canceled because printer %s is active",
-                       p->name);
-        IOCancelPowerChange(sysevent.powerKernelPort,
-                           sysevent.powerNotificationID);
-      }
-      else
-      {
-       cupsdLogMessage(CUPSD_LOG_DEBUG, "System wants to sleep");
-        IOAllowPowerChange(sysevent.powerKernelPort,
-                          sysevent.powerNotificationID);
-      }
-    }
-
-    if (sysevent.event & SYSEVENT_WILLSLEEP)
-    {
-      cupsdLogMessage(CUPSD_LOG_DEBUG, "System going to sleep");
-
-      Sleeping = 1;
-
-      cupsdStopAllJobs(0);
-
-      for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
-           p;
-          p = (cupsd_printer_t *)cupsArrayNext(Printers))
-      {
-       if (p->type & CUPS_PRINTER_DISCOVERED)
-       {
-         cupsdLogMessage(CUPSD_LOG_DEBUG,
-                         "Deleting remote destination \"%s\"", p->name);
-         cupsArraySave(Printers);
-         cupsdDeletePrinter(p, 0);
-         cupsArrayRestore(Printers);
-       }
-       else
-       {
-         cupsdLogMessage(CUPSD_LOG_DEBUG,
-                         "Deregistering local printer \"%s\"", p->name);
-         cupsdDeregisterPrinter(p, 0);
-       }
-      }
-
-      cupsdCleanDirty();
-
-      IOAllowPowerChange(sysevent.powerKernelPort,
-                         sysevent.powerNotificationID);
-    }
-
-    if (sysevent.event & SYSEVENT_WOKE)
-    {
-      cupsdLogMessage(CUPSD_LOG_DEBUG, "System woke from sleep");
-      IOAllowPowerChange(sysevent.powerKernelPort,
-                         sysevent.powerNotificationID);
-      Sleeping = 0;
-      cupsdCheckJobs();
-    }
-
-    if (sysevent.event & SYSEVENT_NETCHANGED)
-    {
-      if (!Sleeping)
-      {
-        cupsdLogMessage(CUPSD_LOG_DEBUG,
-                       "System network configuration changed");
-
-       /*
-        * Resetting browse_time before calling cupsdSendBrowseList causes
-       * browse packets to be sent for local shared printers.
-        */
-
-       for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
-            p;
-            p = (cupsd_printer_t *)cupsArrayNext(Printers))
-         p->browse_time = 0;
-
-        cupsdSendBrowseList();
-       cupsdRestartPolling();
-      }
-      else
-        cupsdLogMessage(CUPSD_LOG_DEBUG,
-                       "System network configuration changed; "
-                       "ignored while sleeping");
-    }
-
-    if (sysevent.event & SYSEVENT_NAMECHANGED)
-    {
-      if (!Sleeping)
-      {
-        cupsdLogMessage(CUPSD_LOG_DEBUG, "Computer name changed");
-
-       /*
-       * De-register the individual printers...
-       */
-
-       for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
-            p;
-            p = (cupsd_printer_t *)cupsArrayNext(Printers))
-         cupsdDeregisterPrinter(p, 1);
-
-       /*
-        * Update the computer name...
-       */
-
-       cupsdUpdateDNSSDName();
-
-       /*
-       * Now re-register them...
-       */
-
-       for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
-            p;
-            p = (cupsd_printer_t *)cupsArrayNext(Printers))
-       {
-         p->browse_time = 0;
-         cupsdRegisterPrinter(p);
-       }
-      }
-      else
-        cupsdLogMessage(CUPSD_LOG_DEBUG,
-                       "Computer name changed; ignored while sleeping");
-    }
-  }
-}
-
-
 /*
  * 'sysEventThreadEntry()' - A thread to receive power and computer name
  *                           change notifications.
@@ -843,9 +675,177 @@ sysEventTimerNotifier(
     threadData->sysevent.event = 0;
   }
 }
+
+
+/*
+ * 'sysUpdate()' - Update the current system state.
+ */
+
+static void
+sysUpdate(void)
+{
+  int                  i;              /* Looping var */
+  cupsd_sysevent_t     sysevent;       /* The system event */
+  cupsd_printer_t      *p;             /* Printer information */
+
+
+ /*
+  * Drain the event pipe...
+  */
+
+  while (read((int)SysEventPipes[0], &sysevent, sizeof(sysevent))
+             == sizeof(sysevent))
+  {
+    if (sysevent.event & SYSEVENT_CANSLEEP)
+    {
+     /*
+      * If there are active printers that don't have the connecting-to-device
+      * printer-state-reason then cancel the sleep request (i.e. this reason
+      * indicates a job that is not yet connected to the printer)...
+      */
+
+      for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
+           p;
+          p = (cupsd_printer_t *)cupsArrayNext(Printers))
+      {
+        if (p->job)
+        {
+         for (i = 0; i < p->num_reasons; i ++)
+           if (!strcmp(p->reasons[i], "connecting-to-device"))
+             break;
+
+         if (!p->num_reasons || i >= p->num_reasons)
+           break;
+        }
+      }
+
+      if (p)
+      {
+        cupsdLogMessage(CUPSD_LOG_INFO,
+                       "System sleep canceled because printer %s is active",
+                       p->name);
+        IOCancelPowerChange(sysevent.powerKernelPort,
+                           sysevent.powerNotificationID);
+      }
+      else
+      {
+       cupsdLogMessage(CUPSD_LOG_DEBUG, "System wants to sleep");
+        IOAllowPowerChange(sysevent.powerKernelPort,
+                          sysevent.powerNotificationID);
+      }
+    }
+
+    if (sysevent.event & SYSEVENT_WILLSLEEP)
+    {
+      cupsdLogMessage(CUPSD_LOG_DEBUG, "System going to sleep");
+
+      Sleeping = 1;
+
+      cupsdStopAllJobs(0);
+
+      for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
+           p;
+          p = (cupsd_printer_t *)cupsArrayNext(Printers))
+      {
+       if (p->type & CUPS_PRINTER_DISCOVERED)
+       {
+         cupsdLogMessage(CUPSD_LOG_DEBUG,
+                         "Deleting remote destination \"%s\"", p->name);
+         cupsArraySave(Printers);
+         cupsdDeletePrinter(p, 0);
+         cupsArrayRestore(Printers);
+       }
+       else
+       {
+         cupsdLogMessage(CUPSD_LOG_DEBUG,
+                         "Deregistering local printer \"%s\"", p->name);
+         cupsdDeregisterPrinter(p, 0);
+       }
+      }
+
+      cupsdCleanDirty();
+
+      IOAllowPowerChange(sysevent.powerKernelPort,
+                         sysevent.powerNotificationID);
+    }
+
+    if (sysevent.event & SYSEVENT_WOKE)
+    {
+      cupsdLogMessage(CUPSD_LOG_DEBUG, "System woke from sleep");
+      IOAllowPowerChange(sysevent.powerKernelPort,
+                         sysevent.powerNotificationID);
+      Sleeping = 0;
+      cupsdCheckJobs();
+    }
+
+    if (sysevent.event & SYSEVENT_NETCHANGED)
+    {
+      if (!Sleeping)
+      {
+        cupsdLogMessage(CUPSD_LOG_DEBUG,
+                       "System network configuration changed");
+
+       /*
+        * Resetting browse_time before calling cupsdSendBrowseList causes
+       * browse packets to be sent for local shared printers.
+        */
+
+       for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
+            p;
+            p = (cupsd_printer_t *)cupsArrayNext(Printers))
+         p->browse_time = 0;
+
+        cupsdSendBrowseList();
+       cupsdRestartPolling();
+      }
+      else
+        cupsdLogMessage(CUPSD_LOG_DEBUG,
+                       "System network configuration changed; "
+                       "ignored while sleeping");
+    }
+
+    if (sysevent.event & SYSEVENT_NAMECHANGED)
+    {
+      if (!Sleeping)
+      {
+        cupsdLogMessage(CUPSD_LOG_DEBUG, "Computer name changed");
+
+       /*
+       * De-register the individual printers...
+       */
+
+       for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
+            p;
+            p = (cupsd_printer_t *)cupsArrayNext(Printers))
+         cupsdDeregisterPrinter(p, 1);
+
+       /*
+        * Update the computer name...
+       */
+
+       cupsdUpdateDNSSDName();
+
+       /*
+       * Now re-register them...
+       */
+
+       for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
+            p;
+            p = (cupsd_printer_t *)cupsArrayNext(Printers))
+       {
+         p->browse_time = 0;
+         cupsdRegisterPrinter(p);
+       }
+      }
+      else
+        cupsdLogMessage(CUPSD_LOG_DEBUG,
+                       "Computer name changed; ignored while sleeping");
+    }
+  }
+}
 #endif /* __APPLE__ */
 
 
 /*
- * End of "$Id: sysman.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: sysman.c 7676 2008-06-18 23:42:37Z mike $".
  */
index 50ef17f96e23a274f6c9a37de69af323eee7ebf4..282f7b5bc67e4cde264e537524fb691706692ebc 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: sysman.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: sysman.h 7676 2008-06-18 23:42:37Z mike $"
  *
  *   System management definitions for the Common UNIX Printing System (CUPS).
  *
@@ -53,9 +53,8 @@ extern void   cupsdMarkDirty(int what);
 extern void    cupsdSetBusyState(void);
 extern void    cupsdStartSystemMonitor(void);
 extern void    cupsdStopSystemMonitor(void);
-extern void    cupsdUpdateSystemMonitor(void);
 
 
 /*
- * End of "$Id: sysman.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: sysman.h 7676 2008-06-18 23:42:37Z mike $".
  */
index 130aaaaa21317e00dbc3e0370cba235e8aab8790..3eface432e3b2ce31458b219040c261c2dd24b83 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: testmime.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: testmime.c 7670 2008-06-17 22:42:08Z mike $"
  *
  *   MIME test program for the Common UNIX Printing System (CUPS).
  *
@@ -322,5 +322,5 @@ type_dir(mime_t     *mime,          /* I - MIME database */
 
 
 /*
- * End of "$Id: testmime.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: testmime.c 7670 2008-06-17 22:42:08Z mike $".
  */
index 4b740675eca755c5bb4449ee5f4389b7d50f7934..11cdfcae676fee0526acf35b1a9884fdb3906e3f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: testspeed.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: testspeed.c 7688 2008-06-24 04:34:52Z mike $"
  *
  *   Scheduler speed test for the Common UNIX Printing System (CUPS).
  *
  * Include necessary headers...
  */
 
-#include <stdio.h>
-#include <stdlib.h>
-#include <ctype.h>
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/wait.h>
+#include <cups/string.h>
 #include <cups/cups.h>
 #include <cups/language.h>
 #include <cups/debug.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#include <sys/wait.h>
 #include <errno.h>
 
 
@@ -366,5 +364,5 @@ usage(void)
 
 
 /*
- * End of "$Id: testspeed.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: testspeed.c 7688 2008-06-24 04:34:52Z mike $".
  */
index f40d10b2b37b2a8358032edc25e634c3666b677a..6532b9c08b79a39b9ca23b9a8f02dd597d089232 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: type.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: type.c 7694 2008-06-26 00:23:20Z mike $"
  *
  *   MIME typing routines for the Common UNIX Printing System (CUPS).
  *
@@ -157,7 +157,7 @@ mimeAddTypeRule(mime_type_t *mt,    /* I - Type to add to */
   logic  = MIME_MAGIC_NOP;
   invert = 0;
 
-  DEBUG_printf(("%s/%s: %s\n", mt->super, mt->type, rule));
+  DEBUG_printf(("mimeAddTypeRule: %s/%s: %s\n", mt->super, mt->type, rule));
 
   while (*rule != '\0')
   {
@@ -166,13 +166,13 @@ mimeAddTypeRule(mime_type_t *mt,  /* I - Type to add to */
 
     if (*rule == '(')
     {
-      DEBUG_puts("new parenthesis group");
+      DEBUG_puts("mimeAddTypeRule: New parenthesis group");
       logic = MIME_MAGIC_NOP;
       rule ++;
     }
     else if (*rule == ')')
     {
-      DEBUG_puts("close paren...");
+      DEBUG_puts("mimeAddTypeRule: Close paren...");
       if (current == NULL || current->parent == NULL)
         return (-1);
 
@@ -208,11 +208,12 @@ mimeAddTypeRule(mime_type_t *mt,  /* I - Type to add to */
         current->prev   = NULL;
        current->parent = temp;
 
-        DEBUG_printf(("creating new AND group %p...\n", temp));
+        DEBUG_printf(("mimeAddTypeRule: Creating new AND group %p...\n", temp));
       }
       else
       {
-        DEBUG_printf(("setting group %p op to AND...\n", current->parent));
+        DEBUG_printf(("mimeAddTypeRule: Setting group %p op to AND...\n",
+                     current->parent));
         current->parent->op = MIME_MAGIC_AND;
       }
 
@@ -238,7 +239,8 @@ mimeAddTypeRule(mime_type_t *mt,    /* I - Type to add to */
          if ((temp = calloc(1, sizeof(mime_magic_t))) == NULL)
            return (-1);
 
-          DEBUG_printf(("creating new AND group %p inside OR group\n", temp));
+          DEBUG_printf(("mimeAddTypeRule: Creating new AND group %p inside OR "
+                       "group\n", temp));
 
           while (current->prev != NULL)
          {
@@ -258,7 +260,7 @@ mimeAddTypeRule(mime_type_t *mt,    /* I - Type to add to */
          * This isn't the top rule, so go up one level...
          */
 
-          DEBUG_puts("going up one level");
+          DEBUG_puts("mimeAddTypeRule: Going up one level");
          current = current->parent;
        }
       }
@@ -268,7 +270,7 @@ mimeAddTypeRule(mime_type_t *mt,    /* I - Type to add to */
     }
     else if (*rule == '!')
     {
-      DEBUG_puts("NOT");
+      DEBUG_puts("mimeAddTypeRule: NOT");
       invert = 1;
       rule ++;
     }
@@ -441,7 +443,8 @@ mimeAddTypeRule(mime_type_t *mt,    /* I - Type to add to */
         * Add parenthetical grouping...
        */
 
-        DEBUG_printf(("making new OR group %p for parenthesis...\n", temp));
+        DEBUG_printf(("mimeAddTypeRule: Making new OR group %p for "
+                     "parenthesis...\n", temp));
 
         temp->op = MIME_MAGIC_OR;
 
@@ -454,8 +457,8 @@ mimeAddTypeRule(mime_type_t *mt,    /* I - Type to add to */
         logic = MIME_MAGIC_OR;
       }
 
-      DEBUG_printf(("adding %p: %s, op = %d, logic = %d, invert = %d\n",
-                    temp, name, op, logic, invert));
+      DEBUG_printf(("mimeAddTypeRule: adding %p: %s, op=%d, logic=%d, "
+                    "invert=%d\n", temp, name, op, logic, invert));
 
      /*
       * Fill in data for the rule...
@@ -543,10 +546,7 @@ mimeFileType(mime_t     *mime,             /* I - MIME database */
 
 
   DEBUG_printf(("mimeFileType(mime=%p, pathname=\"%s\", filename=\"%s\", "
-                "compression=%p)\n",
-                mime, pathname ? pathname : "(nil)",
-               filename ? filename : "(nil)",
-               compression));
+                "compression=%p)\n", mime, pathname, filename, compression));
 
  /*
   * Range check input parameters...
@@ -803,7 +803,7 @@ checkrules(const char      *filename,       /* I - Filename */
          break;
 
       case MIME_MAGIC_STRING :
-          DEBUG_printf(("    string(%d, \"%s\")\n", rules->offset,
+          DEBUG_printf(("checkrules: string(%d, \"%s\")\n", rules->offset,
                        rules->value.stringv));
 
          /*
@@ -822,7 +822,7 @@ checkrules(const char      *filename,       /* I - Filename */
                                      sizeof(fb->buffer));
            fb->offset = rules->offset;
 
-            DEBUG_printf(("        loaded %d byte fb->buffer at %d, starts "
+            DEBUG_printf(("checkrules: loaded %d byte fb->buffer at %d, starts "
                          "with \"%c%c%c%c\"...\n",
                          fb->length, fb->offset, fb->buffer[0], fb->buffer[1],
                          fb->buffer[2], fb->buffer[3]));
@@ -838,7 +838,7 @@ checkrules(const char      *filename,       /* I - Filename */
          else
             result = (memcmp(fb->buffer + rules->offset - fb->offset,
                             rules->value.stringv, rules->length) == 0);
-          DEBUG_printf(("    result=%d\n", result));
+          DEBUG_printf(("checkrules: result=%d\n", result));
          break;
 
       case MIME_MAGIC_ISTRING :
@@ -1039,8 +1039,8 @@ checkrules(const char      *filename,     /* I - Filename */
     * the the rule set is false...
     */
 
-    DEBUG_printf(("    result of test %p (MIME_MAGIC_%s) is %d\n", rules,
-                  debug_tests[rules->op], result));
+    DEBUG_printf(("checkrules: result of test %p (MIME_MAGIC_%s) is %d\n",
+                  rules, debug_tests[rules->op], result));
 
     if ((result && logic == MIME_MAGIC_OR) ||
         (!result && logic == MIME_MAGIC_AND))
@@ -1162,5 +1162,5 @@ patmatch(const char *s,           /* I - String to match against */
 
 
 /*
- * End of "$Id: type.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: type.c 7694 2008-06-26 00:23:20Z mike $".
  */
index 115bbf8b3b5ed6bad2f77b5989b20f49762c34c8..c876c9a045378cc7cc18a75f1853d590fba17dc4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: util.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: util.c 7621 2008-06-06 18:55:35Z mike $"
  *
  *   Mini-daemon utility functions for the Common UNIX Printing System (CUPS).
  *
@@ -446,5 +446,5 @@ cupsdSendIPPTrailer(void)
 
 
 /*
- * End of "$Id: util.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: util.c 7621 2008-06-06 18:55:35Z mike $".
  */
index 420030771318a8fbb67a1780176722b592250328..05642f3a90ed416f71d21c286cf77090d829af6d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: util.h 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: util.h 7621 2008-06-06 18:55:35Z mike $"
  *
  *   Mini-daemon utility definitions for the Common UNIX Printing System (CUPS).
  *
@@ -50,5 +50,5 @@ extern void           cupsdSendIPPTrailer(void);
 #endif /* !_CUPSD_UTIL_H_ */
 
 /*
- * End of "$Id: util.h 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: util.h 7621 2008-06-06 18:55:35Z mike $".
  */
index 348b858b41cc27a12baeec2453e13b64d8252ba0..24e557113776857bba05d4d8b37fd2faa02087cf 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: phpcups.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: phpcups.c 7624 2008-06-09 15:55:04Z mike $"
  *
  *   Printing utilities for the Common UNIX Printing System (CUPS).
  *
@@ -483,5 +483,5 @@ PHP_FUNCTION(cups_print_files)
 
 
 /*
- * End of "$Id: phpcups.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: phpcups.c 7624 2008-06-09 15:55:04Z mike $".
  */
index 23b498f20fbafe667598a684a383ce455c3e29bc..6e39c798b6528a1ac13303542e86200204928b39 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Standards makefile for the Common UNIX Printing System (CUPS).
 #
@@ -143,5 +143,5 @@ rfctohtml:  rfctohtml.o ../cups/libcups.a
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
diff --git a/standards/pwg5107.1.pdf b/standards/pwg5107.1.pdf
new file mode 100644 (file)
index 0000000..018ce9c
Binary files /dev/null and b/standards/pwg5107.1.pdf differ
diff --git a/standards/wd-ippstate10-20061107.pdf b/standards/wd-ippstate10-20061107.pdf
new file mode 100644 (file)
index 0000000..22ddf13
Binary files /dev/null and b/standards/wd-ippstate10-20061107.pdf differ
index 4c5775e8f29f662a29f18a020d65052d988b8155..1c8a8e3a7c524f181f4a8dd8bcec1e9d20433734 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   System V commands makefile for the Common UNIX Printing System (CUPS).
 #
@@ -267,5 +267,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index e7efddad74d6b1473de4f3caed39de70d90027cd..20e3af373a4e81be8ed9b90a5a3a55b81bf23f75 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: accept.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: accept.c 7221 2008-01-16 22:20:08Z mike $"
  *
  *   "accept", "disable", "enable", and "reject" commands for the Common
  *   UNIX Printing System (CUPS).
@@ -282,5 +282,5 @@ main(int  argc,                             /* I - Number of command-line arguments */
 
 
 /*
- * End of "$Id: accept.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: accept.c 7221 2008-01-16 22:20:08Z mike $".
  */
index 2ce5f84a1c79c607d431224444ec76fc38952419..18b1a2f6b66a334ddf07ab24461da8638881b375 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cupsaddsmb.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: cupsaddsmb.c 7033 2007-10-19 02:11:28Z mike $"
  *
  *   "cupsaddsmb" command for the Common UNIX Printing System (CUPS).
  *
@@ -298,5 +298,5 @@ usage(void)
 
 
 /*
- * End of "$Id: cupsaddsmb.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: cupsaddsmb.c 7033 2007-10-19 02:11:28Z mike $".
  */
index e11f6dc4669305cdfa2b6c93f9519beddc0d3fb8..b3b3ff0cea48f16a6ce16db01bcd34758983ad54 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: cupstestppd.c 6927 2007-09-07 16:51:00Z mike $"
+ * "$Id: cupstestppd.c 7637 2008-06-11 17:25:36Z mike $"
  *
  *   PPD test program for the Common UNIX Printing System (CUPS).
  *
@@ -2603,5 +2603,5 @@ valid_utf8(const char *s)         /* I - String to check */
 
 
 /*
- * End of "$Id: cupstestppd.c 6927 2007-09-07 16:51:00Z mike $".
+ * End of "$Id: cupstestppd.c 7637 2008-06-11 17:25:36Z mike $".
  */
index e0e3ad9ff3f9c9b4c7215054a80aecf778b89695..4448ecf62cc73b2bb0eb3f5d69092194aa283188 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lpadmin.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: lpadmin.c 7059 2007-11-02 19:15:17Z mike $"
  *
  *   "lpadmin" command for the Common UNIX Printing System (CUPS).
  *
@@ -1977,5 +1977,5 @@ validate_name(const char *name)           /* I - Name to check */
 
 
 /*
- * End of "$Id: lpadmin.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: lpadmin.c 7059 2007-11-02 19:15:17Z mike $".
  */
index 137304994c7009b4ebe32486fb3aa35f008a84e7..bd7fb0311b07faaf9f0fd4e4e04e15bddc2237ea 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lpinfo.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: lpinfo.c 7460 2008-04-16 02:19:54Z mike $"
  *
  *   "lpinfo" command for the Common UNIX Printing System (CUPS).
  *
@@ -351,5 +351,5 @@ show_models(http_t *http,           /* I - HTTP connection to server */
 
 
 /*
- * End of "$Id: lpinfo.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: lpinfo.c 7460 2008-04-16 02:19:54Z mike $".
  */
index 88d2a154ae7364de3f49f9eed076810aceb98a14..7af5e8dc199025022b610f2e649cefaeadac90ba 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lpmove.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: lpmove.c 7219 2008-01-14 22:00:02Z mike $"
  *
  *   "lpmove" command for the Common UNIX Printing System (CUPS).
  *
@@ -217,5 +217,5 @@ move_job(http_t     *http,          /* I - HTTP connection to server */
 
 
 /*
- * End of "$Id: lpmove.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: lpmove.c 7219 2008-01-14 22:00:02Z mike $".
  */
index 132523be66c3036718564944e18a774123be7732..0dc5d0b56772f8961d48df257d754dd31a89280f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lpoptions.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: lpoptions.c 7669 2008-06-17 22:02:33Z mike $"
  *
  *   Printer option program for the Common UNIX Printing System (CUPS).
  *
@@ -546,5 +546,5 @@ usage(void)
 
 
 /*
- * End of "$Id: lpoptions.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: lpoptions.c 7669 2008-06-17 22:02:33Z mike $".
  */
index 98bc733e5b596201f6c8f7f83a97f05fc70acc03..ba63ae2c6815a0af78521f8f9e033d4e40d12605 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: lpstat.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: lpstat.c 7620 2008-06-06 17:24:22Z mike $"
  *
  *   "lpstat" command for the Common UNIX Printing System (CUPS).
  *
@@ -2266,5 +2266,5 @@ show_scheduler(http_t *http)      /* I - HTTP connection to server */
 
 
 /*
- * End of "$Id: lpstat.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: lpstat.c 7620 2008-06-06 17:24:22Z mike $".
  */
index 3bd01c847dd6b78963cf7e8a0d44436a2d026b3b..831c1c96827ab64ce8730b2707dc64377d464de6 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   Template makefile for the Common UNIX Printing System (CUPS).
 #
@@ -187,5 +187,5 @@ uninstall-languages:
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index d403d074fa3ed05d314147113162a92863ed7e86..30aeccc4550ee62176afe55fe5af74ac307c40c1 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: 4.3-job-ops.test 6379 2007-03-21 14:57:22Z mike $"
+# "$Id: 4.3-job-ops.test 7550 2008-05-12 16:40:40Z mike $"
 #
 #   Verify that the IPP job operations work.
 #
 }
 
 #
-# End of "$Id: 4.3-job-ops.test 6379 2007-03-21 14:57:22Z mike $"
+# End of "$Id: 4.3-job-ops.test 7550 2008-05-12 16:40:40Z mike $"
 #
index 2e054ea474aa1456696a35364ccf937b4760a4e5..30bda2d46fe3b1964970aba6bc3bab35865f92a8 100644 (file)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# "$Id: 5.1-lpadmin.sh 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: 5.1-lpadmin.sh 7494 2008-04-25 18:36:46Z mike $"
 #
 #   Test the lpadmin command.
 #
@@ -51,5 +51,5 @@ fi
 echo ""
 
 #
-# End of "$Id: 5.1-lpadmin.sh 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: 5.1-lpadmin.sh 7494 2008-04-25 18:36:46Z mike $".
 #
index d1928eb5406b87087cf7e6dc3b82c981ce7270c8..c048d7867626dd25e199741236e465ba8dcbd7cb 100644 (file)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# "$Id: 5.5-lp.sh 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: 5.5-lp.sh 7415 2008-03-31 22:33:20Z mike $"
 #
 #   Test the lp command.
 #
@@ -74,5 +74,5 @@ echo ""
 ./waitjobs.sh
 
 #
-# End of "$Id: 5.5-lp.sh 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: 5.5-lp.sh 7415 2008-03-31 22:33:20Z mike $".
 #
index a1fe01d35e5a269993f03c2280861d212414e39d..7dabf84c642e870b9d00440ccfcd4e4235456e9f 100644 (file)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# "$Id: 5.6-lpr.sh 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: 5.6-lpr.sh 7409 2008-03-29 00:26:03Z mike $"
 #
 #   Test the lpr command.
 #
@@ -74,5 +74,5 @@ echo ""
 ./waitjobs.sh
 
 #
-# End of "$Id: 5.6-lpr.sh 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: 5.6-lpr.sh 7409 2008-03-29 00:26:03Z mike $".
 #
index fe323db15ee4534ccd0d98162f34af3308cd25ea..bcb7211693524fd466596e443ffc4b257f818c79 100644 (file)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# "$Id: 5.7-lprm.sh 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: 5.7-lprm.sh 7409 2008-03-29 00:26:03Z mike $"
 #
 #   Test the lprm command.
 #
@@ -43,5 +43,5 @@ fi
 echo ""
 
 #
-# End of "$Id: 5.7-lprm.sh 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: 5.7-lprm.sh 7409 2008-03-29 00:26:03Z mike $".
 #
index 90a688d522b0a66077e693a96c7ee54db75086e1..7cf31b0da0505bed847375bea9e21f2dc3ab01b3 100644 (file)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# "$Id: 5.8-cancel.sh 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: 5.8-cancel.sh 7409 2008-03-29 00:26:03Z mike $"
 #
 #   Test the cancel command.
 #
@@ -41,5 +41,5 @@ fi
 echo ""
 
 #
-# End of "$Id: 5.8-cancel.sh 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: 5.8-cancel.sh 7409 2008-03-29 00:26:03Z mike $".
 #
index 99f8fa9600a88d06cd0fc3c9bcafdd9e3136df2e..1698aca3dafa0d602b810e3e0a95700a4d5db32d 100644 (file)
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $"
 #
 #   IPP test makefile for the Common UNIX Printing System (CUPS).
 #
@@ -106,5 +106,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
+# End of "$Id: Makefile 7558 2008-05-12 23:46:44Z mike $".
 #
index 6bd9923c073a3639cfd67f4b38ae758a4abb70f7..5b22888edde73a914a83a00b8db854818ca0a24f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * "$Id: ipptest.c 6649 2007-07-11 21:46:42Z mike $"
+ * "$Id: ipptest.c 7219 2008-01-14 22:00:02Z mike $"
  *
  *   IPP test command for the Common UNIX Printing System (CUPS).
  *
@@ -945,5 +945,5 @@ usage(const char *option)           /* I - Option string or NULL */
 
 
 /*
- * End of "$Id: ipptest.c 6649 2007-07-11 21:46:42Z mike $".
+ * End of "$Id: ipptest.c 7219 2008-01-14 22:00:02Z mike $".
  */
index 89fb1d800968026a8f71d8e46f39343a87764353..ae6fcb4976439a9b3541c5855281a0b58812f766 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# "$Id: run-stp-tests.sh 6649 2007-07-11 21:46:42Z mike $"
+# "$Id: run-stp-tests.sh 7697 2008-06-27 15:56:00Z mike $"
 #
 #   Perform the complete set of IPP compliance tests specified in the
 #   CUPS Software Test Plan.
@@ -213,6 +213,7 @@ mkdir /tmp/cups-$user/certs
 mkdir /tmp/cups-$user/share
 mkdir /tmp/cups-$user/share/banners
 mkdir /tmp/cups-$user/share/drv
+mkdir /tmp/cups-$user/share/mime
 mkdir /tmp/cups-$user/share/model
 mkdir /tmp/cups-$user/share/ppdc
 mkdir /tmp/cups-$user/interfaces
@@ -254,6 +255,8 @@ ln -s $root/data /tmp/cups-$user/share/charsets
 ln -s $root/data /tmp/cups-$user/share
 ln -s $root/fonts /tmp/cups-$user/share
 ln -s $root/ppdc/sample.drv /tmp/cups-$user/share/drv
+ln -s $root/conf/mime.types /tmp/cups-$user/share/mime
+ln -s $root/conf/mime.convs /tmp/cups-$user/share/mime
 ln -s $root/data/*.h /tmp/cups-$user/share/ppdc
 ln -s $root/data/*.defs /tmp/cups-$user/share/ppdc
 ln -s $root/templates /tmp/cups-$user/share
@@ -326,11 +329,8 @@ $encryption
 </Policy>
 EOF
 
-touch /tmp/cups-$user/classes.conf
-touch /tmp/cups-$user/printers.conf
-
 #
-# Setup lots of test queues - 500 with PPD files, 500 without...
+# Setup lots of test queues - half with PPD files, half without...
 #
 
 echo "Creating printers.conf for test..."
@@ -372,9 +372,6 @@ done
 
 cp /tmp/cups-$user/printers.conf /tmp/cups-$user/printers.conf.orig
 
-cp $root/conf/mime.types /tmp/cups-$user/mime.types
-cp $root/conf/mime.convs /tmp/cups-$user/mime.convs
-
 #
 # Setup the paths...
 #
@@ -709,6 +706,16 @@ else
        echo "<P>PASS: $count debug2 messages.</P>" >>$strfile
 fi
 
+# Page log file...
+if grep -q 'testfile.pdf Letter' /tmp/cups-$user/log/page_log; then
+       echo "PASS: page_log formatted correctly."
+       echo "<P>PASS: page_log formatted correctly.</P>" >>$strfile
+else
+       echo "FAIL: page_log formatted incorrectly."
+       echo "<P>FAIL: page_log formatted incorrectly.</P>" >>$strfile
+       fail=`expr $fail + 1`
+fi
+
 # Log files...
 echo "<H2>access_log</H2>" >>$strfile
 echo "<PRE>" >>$strfile
@@ -754,5 +761,5 @@ if test $fail != 0; then
 fi
 
 #
-# End of "$Id: run-stp-tests.sh 6649 2007-07-11 21:46:42Z mike $"
+# End of "$Id: run-stp-tests.sh 7697 2008-06-27 15:56:00Z mike $"
 #
index 9f4b39938a936e21f1c15cc2828f286a3ed4422c..418cb93597c7a3cb5a425fffaf2250373663b3ae 100644 (file)
Binary files a/test/testfile.jpg and b/test/testfile.jpg differ
index b91eab50cc5b0ecc6255de54671e269177fd2251..433577179840d3d626229e113e7471fd44b7e638 100644 (file)
Binary files a/test/testfile.pdf and b/test/testfile.pdf differ
index c20d94f15dae2f3588d6b2cbe0c3b4b85be57909..4d15387eafb32078208179166fd9137eb49469ed 100755 (executable)
@@ -4,8 +4,6 @@
 #
 
 for file in *.o; do
-       echo -n "$file: "
-
        functions=""
 
        for function in `nm -g $file | grep "T " | awk '{print $3}'`; do
@@ -27,8 +25,8 @@ for file in *.o; do
        done
 
        if test -z "$functions"; then
-               echo "OK"
+               echo "$file: OK"
        else
-               echo $functions
+               echo "$file: $functions"
        fi
 done