From 4ef75dec452714e919523663c5b801c52159fb42 Mon Sep 17 00:00:00 2001 From: Michael Sweet Date: Tue, 15 Mar 2016 10:40:41 -0400 Subject: [PATCH] Import CUPS v2.0.2 --- CHANGES.txt | 45 +- INSTALL.txt | 6 +- Makefile | 6 +- README.txt | 4 +- backend/org.cups.usb-quirks | 3 + backend/usb-libusb.c | 17 +- cgi-bin/help-index.c | 6 +- conf/cups-files.conf.in | 7 +- config-scripts/cups-common.m4 | 9 +- config-scripts/cups-network.m4 | 11 +- config-scripts/cups-ssl.m4 | 16 +- config-scripts/cups-startup.m4 | 6 +- config.h.in | 13 +- configure | 327 +-- cups/cups.h | 8 +- cups/debug.c | 16 +- cups/file.c | 5 +- cups/globals.c | 10 +- cups/http-private.h | 10 +- cups/http.c | 6 +- cups/ipp.c | 26 +- cups/language.c | 40 +- cups/ppd-cache.c | 25 +- cups/tls-darwin.c | 9 +- cups/tls-gnutls.c | 33 +- cups/tls-sspi.c | 9 +- cups/transcode.c | 20 +- cups/usersys.c | 629 ++--- cups/util.c | 8 +- cups/versioning.h | 9 +- doc/es/index.html.in | 2 +- doc/help/man-cups-files.conf.html | 43 +- doc/help/man-cupsd.conf.html | 126 +- doc/help/network.html | 4 +- doc/help/policies.html | 14 +- doc/index.html.in | 2 +- doc/ja/index.html.in | 55 + filter/pstops.c | 7 +- filter/raster.c | 19 +- locale/Makefile | 10 +- locale/cups_ja.po | 2023 ++++++++++++++++- man/cups-files.conf.man.in | 31 +- man/cupsd.conf.man.in | 68 +- man/mantohtml.c | 151 +- packaging/cups.spec | 12 +- packaging/cups.spec.in | 8 +- scheduler/colorman.c | 14 +- scheduler/conf.c | 138 +- scheduler/cupsfilter.c | 6 +- scheduler/dirsvc.c | 23 +- scheduler/job.c | 33 +- scheduler/printers.c | 16 +- scheduler/process.c | 30 +- systemv/cupstestppd.c | 30 +- templates/es/trailer.tmpl | 2 +- templates/ja/add-class.tmpl | 37 + templates/ja/add-printer.tmpl | 44 + templates/ja/add-rss-subscription.tmpl | 44 + templates/ja/admin.tmpl | 97 + templates/ja/choose-device.tmpl | 49 + templates/ja/choose-make.tmpl | 61 + templates/ja/choose-model.tmpl | 57 + templates/ja/choose-serial.tmpl | 49 + templates/ja/choose-uri.tmpl | 40 + templates/ja/class-added.tmpl | 3 + templates/ja/class-confirm.tmpl | 6 + templates/ja/class-deleted.tmpl | 3 + templates/ja/class-jobs-header.tmpl | 1 + templates/ja/class-modified.tmpl | 3 + templates/ja/class.tmpl | 41 + templates/ja/classes-header.tmpl | 1 + templates/ja/classes.tmpl | 11 + templates/ja/command.tmpl | 8 + templates/ja/edit-config.tmpl | 20 + templates/ja/error-op.tmpl | 6 + templates/ja/error.tmpl | 5 + templates/ja/header.tmpl.in | 35 + templates/ja/help-header.tmpl | 47 + templates/ja/help-printable.tmpl | 9 + templates/ja/help-trailer.tmpl | 0 templates/ja/job-cancel.tmpl | 3 + templates/ja/job-hold.tmpl | 3 + templates/ja/job-move.tmpl | 23 + templates/ja/job-moved.tmpl | 5 + templates/ja/job-release.tmpl | 3 + templates/ja/job-restart.tmpl | 3 + templates/ja/jobs-header.tmpl | 5 + templates/ja/jobs.tmpl | 36 + templates/ja/list-available-printers.tmpl | 7 + templates/ja/modify-class.tmpl | 31 + templates/ja/modify-printer.tmpl | 39 + templates/ja/norestart.tmpl | 4 + templates/ja/option-boolean.tmpl | 6 + templates/ja/option-conflict.tmpl | 7 + templates/ja/option-header.tmpl | 5 + templates/ja/option-pickmany.tmpl | 6 + templates/ja/option-pickone.tmpl | 18 + templates/ja/option-trailer.tmpl | 5 + templates/ja/pager.tmpl | 6 + templates/ja/printer-accept.tmpl | 5 + templates/ja/printer-added.tmpl | 4 + templates/ja/printer-cancel-jobs.tmpl | 5 + templates/ja/printer-configured.tmpl | 4 + templates/ja/printer-confirm.tmpl | 5 + templates/ja/printer-default.tmpl | 8 + templates/ja/printer-deleted.tmpl | 3 + templates/ja/printer-jobs-header.tmpl | 1 + templates/ja/printer-modified.tmpl | 4 + templates/ja/printer-reject.tmpl | 5 + templates/ja/printer-start.tmpl | 5 + templates/ja/printer-stop.tmpl | 5 + templates/ja/printer.tmpl | 43 + templates/ja/printers-header.tmpl | 1 + templates/ja/printers.tmpl | 11 + templates/ja/restart.tmpl | 4 + templates/ja/samba-export.tmpl | 55 + templates/ja/samba-exported.tmpl | 1 + templates/ja/search.tmpl | 10 + templates/ja/set-printer-options-header.tmpl | 24 + templates/ja/set-printer-options-trailer.tmpl | 14 + templates/ja/subscription-added.tmpl | 1 + templates/ja/subscription-canceled.tmpl | 1 + templates/ja/test-page.tmpl | 4 + templates/ja/trailer.tmpl | 5 + templates/ja/users.tmpl | 27 + templates/trailer.tmpl | 2 +- test/5.1-lpadmin.sh | 8 +- test/5.4-lpstat.sh | 6 +- test/Makefile | 6 +- test/ippfind.c | 14 +- test/ippserver.c | 43 +- test/ipptool.c | 10 +- test/run-stp-tests.sh | 97 +- test/test.convs | 1 - vcnet/config.h | 11 +- xcode/CUPS.xcodeproj/project.pbxproj | 8 +- xcode/config.h | 18 +- 137 files changed, 4595 insertions(+), 982 deletions(-) create mode 100644 doc/ja/index.html.in create mode 100644 templates/ja/add-class.tmpl create mode 100644 templates/ja/add-printer.tmpl create mode 100644 templates/ja/add-rss-subscription.tmpl create mode 100644 templates/ja/admin.tmpl create mode 100644 templates/ja/choose-device.tmpl create mode 100644 templates/ja/choose-make.tmpl create mode 100644 templates/ja/choose-model.tmpl create mode 100644 templates/ja/choose-serial.tmpl create mode 100644 templates/ja/choose-uri.tmpl create mode 100644 templates/ja/class-added.tmpl create mode 100644 templates/ja/class-confirm.tmpl create mode 100644 templates/ja/class-deleted.tmpl create mode 100644 templates/ja/class-jobs-header.tmpl create mode 100644 templates/ja/class-modified.tmpl create mode 100644 templates/ja/class.tmpl create mode 100644 templates/ja/classes-header.tmpl create mode 100644 templates/ja/classes.tmpl create mode 100644 templates/ja/command.tmpl create mode 100644 templates/ja/edit-config.tmpl create mode 100644 templates/ja/error-op.tmpl create mode 100644 templates/ja/error.tmpl create mode 100644 templates/ja/header.tmpl.in create mode 100644 templates/ja/help-header.tmpl create mode 100644 templates/ja/help-printable.tmpl create mode 100644 templates/ja/help-trailer.tmpl create mode 100644 templates/ja/job-cancel.tmpl create mode 100644 templates/ja/job-hold.tmpl create mode 100644 templates/ja/job-move.tmpl create mode 100644 templates/ja/job-moved.tmpl create mode 100644 templates/ja/job-release.tmpl create mode 100644 templates/ja/job-restart.tmpl create mode 100644 templates/ja/jobs-header.tmpl create mode 100644 templates/ja/jobs.tmpl create mode 100644 templates/ja/list-available-printers.tmpl create mode 100644 templates/ja/modify-class.tmpl create mode 100644 templates/ja/modify-printer.tmpl create mode 100644 templates/ja/norestart.tmpl create mode 100644 templates/ja/option-boolean.tmpl create mode 100644 templates/ja/option-conflict.tmpl create mode 100644 templates/ja/option-header.tmpl create mode 100644 templates/ja/option-pickmany.tmpl create mode 100644 templates/ja/option-pickone.tmpl create mode 100644 templates/ja/option-trailer.tmpl create mode 100644 templates/ja/pager.tmpl create mode 100644 templates/ja/printer-accept.tmpl create mode 100644 templates/ja/printer-added.tmpl create mode 100644 templates/ja/printer-cancel-jobs.tmpl create mode 100644 templates/ja/printer-configured.tmpl create mode 100644 templates/ja/printer-confirm.tmpl create mode 100644 templates/ja/printer-default.tmpl create mode 100644 templates/ja/printer-deleted.tmpl create mode 100644 templates/ja/printer-jobs-header.tmpl create mode 100644 templates/ja/printer-modified.tmpl create mode 100644 templates/ja/printer-reject.tmpl create mode 100644 templates/ja/printer-start.tmpl create mode 100644 templates/ja/printer-stop.tmpl create mode 100644 templates/ja/printer.tmpl create mode 100644 templates/ja/printers-header.tmpl create mode 100644 templates/ja/printers.tmpl create mode 100644 templates/ja/restart.tmpl create mode 100644 templates/ja/samba-export.tmpl create mode 100644 templates/ja/samba-exported.tmpl create mode 100644 templates/ja/search.tmpl create mode 100644 templates/ja/set-printer-options-header.tmpl create mode 100644 templates/ja/set-printer-options-trailer.tmpl create mode 100644 templates/ja/subscription-added.tmpl create mode 100644 templates/ja/subscription-canceled.tmpl create mode 100644 templates/ja/test-page.tmpl create mode 100644 templates/ja/trailer.tmpl create mode 100644 templates/ja/users.tmpl diff --git a/CHANGES.txt b/CHANGES.txt index 1d1b67e8d..f290340ef 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,6 +1,49 @@ -CHANGES.txt - 2.0.1 - 2014-11-14 +CHANGES.txt - 2.0.2 - 2015-02-03 -------------------------------- +CHANGES IN CUPS V2.0.2 + + - Security: cupsRasterReadPixels buffer overflow with invalid page + header and compressed raster data (STR #4551) + - Command-line programs were not localized on Mac OS X + () + - The scheduler incorrectly cleared the MakeModel string in the + printers.conf file after a restart () + - CUPS did not compile with older versions of GNU TLS (STR #4527) + - CUPS did not compile without Avahi or mDNSResponder (STR #4523) + - ippLength() did not return the correct length for IPP_TAG_CONST + string values. + - The scheduler incorrectly aborted jobs after a job was restarted + () + - The cups-files.conf file contained the old ServerCertificate/Key + directives instead of ServerKeychain. + - Fixed builds when no SSL/TLS library is available, or when explicitly + disabled (STR #4531) + - Fixed an OpenBSD charset transcoding issue. + - Fixed USB printing on OpenBSD (STR #4525) + - The --without-xinetd configure option did not work (STR #4542) + - Backends needing to load OS X kernel extensions did not work + () + - Mapping of PPD keywords to IPP keywords did not work if the PPD + keyword was already an IPP keyword () + - cupsGetPPD* sent bad requests (STR #4567) + - ippserver used the wrong temporary directory on Windows (STR #4547) + - ippserver did not handle Bonjour registrations properly (STR #4548) + - The scheduler could crash during shutdown if Avahi was shutdown + first (STR #4550) + - Added a USB quirk rule for Intermec printers (STR #4553) + - The scheduler did not always log which configuration file had the + error (STR #4559) + - The ippfind and ipptool programs now correctly match hostnames with + trailing dots (STR #4563) + - The ipptool timeout option did not work (STR #4515) + - Fixed several issues with client.conf, CUPS_SERVER, and the "-h" + option of most commands (STR #4528) + - Another change for OpenBSD (STR #4526) + - Added Japanese localization (STR #4524) + - Documentation changes (STR #4569) + + CHANGES IN CUPS V2.0.1 - Security: SSLv3 is now disabled by default to protect against the diff --git a/INSTALL.txt b/INSTALL.txt index 0609e6e25..ac44d1170 100644 --- a/INSTALL.txt +++ b/INSTALL.txt @@ -1,4 +1,4 @@ -INSTALL - CUPS v2.0.1 - 2014-11-14 +INSTALL - CUPS v2.0.2 - 2015-02-03 ---------------------------------- This file describes how to compile and install CUPS from source code. For more @@ -141,6 +141,10 @@ INSTALLING THE SOFTWARE gmake install ENTER + Use the BUILDROOT variable to install to an alternate root directory: + + make BUILDROOT=/some/other/root/directory install ENTER + You can also build binary packages that can be installed on other machines using the RPM spec file ("packaging/cups.spec") or EPM list file ("packaging/cups.list"). The latter also supports building of binary RPMs, diff --git a/Makefile b/Makefile index 84d3cce02..f5aa07c06 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 12145 2014-09-02 15:00:50Z msweet $" +# "$Id: Makefile 12415 2015-01-21 00:03:08Z msweet $" # # Top-level Makefile for CUPS. # @@ -105,7 +105,7 @@ distclean: clean $(RM) doc/index.html $(RM) man/client.conf.man man/cups-files.conf.man man/cups-lpd.man man/cups-snmp.man man/cupsaddsmb.man man/cupsd.conf.man man/cupsd.man man/lpoptions.man $(RM) packaging/cups.list - $(RM) scheduler/cups-lpd.xinetd scheduler/cups.sh scheduler/cups.xml scheduler/org.cups.cups-lpd.plist scheduler/org.cups.cupsd.path scheduler/org.cups.cupsd.service scheduler/org.cups.cupsd.socket + $(RM) scheduler/cups-lpd.xinetd scheduler/cups.sh scheduler/cups.xml scheduler/org.cups.cups-lpd.plist scheduler/org.cups.cups-lpdAT.service scheduler/org.cups.cupsd.path scheduler/org.cups.cupsd.service scheduler/org.cups.cupsd.socket $(RM) templates/header.tmpl -$(RM) doc/*/index.html -$(RM) templates/*/header.tmpl @@ -348,5 +348,5 @@ dist: all # -# End of "$Id: Makefile 12145 2014-09-02 15:00:50Z msweet $". +# End of "$Id: Makefile 12415 2015-01-21 00:03:08Z msweet $". # diff --git a/README.txt b/README.txt index 4ce7eaee1..20c149793 100644 --- a/README.txt +++ b/README.txt @@ -1,4 +1,4 @@ -README - CUPS v2.0.1 - 2014-11-14 +README - CUPS v2.0.2 - 2015-02-03 --------------------------------- Looking for compile instructions? Read the file "INSTALL.txt" instead... @@ -140,7 +140,7 @@ PRINTING FILES LEGAL STUFF - CUPS is Copyright 2007-2014 by Apple Inc. CUPS and the CUPS logo are + CUPS is Copyright 2007-2015 by Apple Inc. CUPS and the CUPS logo are trademarks of Apple Inc. The MD5 Digest code is Copyright 1999 Aladdin Enterprises. diff --git a/backend/org.cups.usb-quirks b/backend/org.cups.usb-quirks index 6566b73bc..3076a9bd3 100644 --- a/backend/org.cups.usb-quirks +++ b/backend/org.cups.usb-quirks @@ -224,3 +224,6 @@ # Canon MX320 (STR #4482) 0x04A9 0x1736 unidir + +# All Intermec devices (STR #4553) +0x067e no-reattach diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c index b0d996c0d..bab2bc588 100644 --- a/backend/usb-libusb.c +++ b/backend/usb-libusb.c @@ -1,5 +1,5 @@ /* - * "$Id: usb-libusb.c 11594 2014-02-14 20:09:01Z msweet $" + * "$Id: usb-libusb.c 12349 2014-12-09 22:10:52Z msweet $" * * LIBUSB interface code for CUPS. * @@ -915,7 +915,7 @@ find_device(usb_cb_t cb, /* I - Callback function */ write_endp = endp; } - if (write_endp >= 0) + if (write_endp != 0xff) { /* * Save the best match so far... @@ -1451,9 +1451,14 @@ open_device(usb_printer_t *printer, /* I - Printer */ else { printer->usblp_attached = 0; - fprintf(stderr, "DEBUG: Failed to check whether %04x:%04x has the \"usblp\" kernel module attached\n", - devdesc.idVendor, devdesc.idProduct); - goto error; + + if (errcode != LIBUSB_ERROR_NOT_SUPPORTED) + { + fprintf(stderr, + "DEBUG: Failed to check whether %04x:%04x has the \"usblp\" " + "kernel module attached\n", devdesc.idVendor, devdesc.idProduct); + goto error; + } } /* @@ -1999,6 +2004,6 @@ soft_reset_printer( /* - * End of "$Id: usb-libusb.c 11594 2014-02-14 20:09:01Z msweet $". + * End of "$Id: usb-libusb.c 12349 2014-12-09 22:10:52Z msweet $". */ diff --git a/cgi-bin/help-index.c b/cgi-bin/help-index.c index 50cac45d6..cda5e966c 100644 --- a/cgi-bin/help-index.c +++ b/cgi-bin/help-index.c @@ -1,5 +1,5 @@ /* - * "$Id: help-index.c 11594 2014-02-14 20:09:01Z msweet $" + * "$Id: help-index.c 12344 2014-12-09 21:36:11Z msweet $" * * Online help index routines for CUPS. * @@ -884,7 +884,7 @@ help_load_file( DEBUG_printf(("2help_load_file(hi=%p, filename=\"%s\", relative=\"%s\", " - "mtime=%ld)", hi, filename, relative, mtime)); + "mtime=%ld)", hi, filename, relative, (long)mtime)); if ((fp = cupsFileOpen(filename, "r")) == NULL) return (-1); @@ -1306,5 +1306,5 @@ help_sort_words(help_word_t *w1, /* I - Second word */ /* - * End of "$Id: help-index.c 11594 2014-02-14 20:09:01Z msweet $". + * End of "$Id: help-index.c 12344 2014-12-09 21:36:11Z msweet $". */ diff --git a/conf/cups-files.conf.in b/conf/cups-files.conf.in index 71683a654..4a78ba615 100644 --- a/conf/cups-files.conf.in +++ b/conf/cups-files.conf.in @@ -75,11 +75,8 @@ PageLog @CUPS_LOGDIR@/page_log # Location of helper programs... #ServerBin @CUPS_SERVERBIN@ -# SSL/TLS certificate for the scheduler... -#ServerCertificate @CUPS_SERVERCERT@ - -# SSL/TLS private key for the scheduler... -#ServerKey @CUPS_SERVERKEY@ +# SSL/TLS keychain for the scheduler... +#ServerKeychain @CUPS_SERVERKEYCHAIN@ # Location of other configuration files... #ServerRoot @CUPS_SERVERROOT@ diff --git a/config-scripts/cups-common.m4 b/config-scripts/cups-common.m4 index 30b04233a..495cc0b7d 100644 --- a/config-scripts/cups-common.m4 +++ b/config-scripts/cups-common.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-common.m4 12195 2014-10-02 18:45:59Z msweet $" +dnl "$Id: cups-common.m4 12336 2014-12-09 21:19:52Z msweet $" dnl dnl Common configuration stuff for CUPS. dnl @@ -20,7 +20,7 @@ dnl Set the name of the config header file... AC_CONFIG_HEADER(config.h) dnl Version number information... -CUPS_VERSION=2.0.1 +CUPS_VERSION=2.0.2 CUPS_REVISION= #if test -z "$CUPS_REVISION" -a -d .svn; then # CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`" @@ -145,6 +145,9 @@ AC_CHECK_HEADER(iconv.h, AC_SEARCH_LIBS(iconv_open,iconv, AC_DEFINE(HAVE_ICONV_H) SAVELIBS="$SAVELIBS $LIBS") + AC_SEARCH_LIBS(libiconv_open,iconv, + AC_DEFINE(HAVE_ICONV_H) + SAVELIBS="$SAVELIBS $LIBS") LIBS="$SAVELIBS") dnl Checks for Mini-XML (www.minixml.org)... @@ -462,5 +465,5 @@ esac AC_SUBST(BUILDDIRS) dnl -dnl End of "$Id: cups-common.m4 12195 2014-10-02 18:45:59Z msweet $". +dnl End of "$Id: cups-common.m4 12336 2014-12-09 21:19:52Z msweet $". dnl diff --git a/config-scripts/cups-network.m4 b/config-scripts/cups-network.m4 index 12c39fc2c..a2df1d53b 100644 --- a/config-scripts/cups-network.m4 +++ b/config-scripts/cups-network.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-network.m4 11719 2014-03-21 18:07:23Z msweet $" +dnl "$Id: cups-network.m4 12325 2014-12-09 20:28:51Z msweet $" dnl dnl Networking stuff for CUPS. dnl @@ -13,7 +13,12 @@ dnl which should have been included with this file. If this file is dnl file is missing or damaged, see the license at "http://www.cups.org/". dnl -AC_CHECK_HEADER(resolv.h,AC_DEFINE(HAVE_RESOLV_H)) +AC_CHECK_HEADER(resolv.h,AC_DEFINE(HAVE_RESOLV_H),,[ +#include +#include +#include +#include +#include ]) AC_SEARCH_LIBS(socket, socket) AC_SEARCH_LIBS(gethostbyaddr, nsl) AC_SEARCH_LIBS(getifaddrs, nsl, AC_DEFINE(HAVE_GETIFADDRS)) @@ -67,5 +72,5 @@ AC_SUBST(CUPS_DEFAULT_DOMAINSOCKET) AC_SUBST(CUPS_LISTEN_DOMAINSOCKET) dnl -dnl End of "$Id: cups-network.m4 11719 2014-03-21 18:07:23Z msweet $". +dnl End of "$Id: cups-network.m4 12325 2014-12-09 20:28:51Z msweet $". dnl diff --git a/config-scripts/cups-ssl.m4 b/config-scripts/cups-ssl.m4 index 97760ca24..fdd3c56e9 100644 --- a/config-scripts/cups-ssl.m4 +++ b/config-scripts/cups-ssl.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-ssl.m4 12122 2014-08-28 12:55:52Z msweet $" +dnl "$Id: cups-ssl.m4 12290 2014-12-05 17:25:55Z msweet $" dnl dnl TLS stuff for CUPS. dnl @@ -20,8 +20,7 @@ AC_ARG_ENABLE(gnutls, [ --enable-gnutls use GNU TLS for SSL/TLS support SSLFLAGS="" SSLLIBS="" have_ssl=0 -CUPS_SERVERCERT="" -CUPS_SERVERKEY="" +CUPS_SERVERKEYCHAIN="" if test x$enable_ssl != xno; then dnl Look for CDSA... @@ -31,7 +30,7 @@ if test x$enable_ssl != xno; then have_ssl=1 AC_DEFINE(HAVE_SSL) AC_DEFINE(HAVE_CDSASSL) - CUPS_SERVERCERT="/Library/Keychains/System.keychain" + CUPS_SERVERKEYCHAIN="/Library/Keychains/System.keychain" dnl Check for the various security headers... AC_CHECK_HEADER(Security/SecureTransportPriv.h, @@ -76,12 +75,12 @@ if test x$enable_ssl != xno; then fi if test $have_ssl = 1; then - CUPS_SERVERCERT="ssl/server.crt" - CUPS_SERVERKEY="ssl/server.key" + CUPS_SERVERKEYCHAIN="ssl" SAVELIBS="$LIBS" LIBS="$LIBS $SSLLIBS" AC_CHECK_FUNC(gnutls_transport_set_pull_timeout_function, AC_DEFINE(HAVE_GNUTLS_TRANSPORT_SET_PULL_TIMEOUT_FUNCTION)) + AC_CHECK_FUNC(gnutls_priority_set_direct, AC_DEFINE(HAVE_GNUTLS_PRIORITY_SET_DIRECT)) LIBS="$SAVELIBS" fi fi @@ -96,8 +95,7 @@ elif test x$enable_cdsa = xyes -o x$enable_gnutls = xyes; then AC_MSG_ERROR([Unable to enable SSL support.]) fi -AC_SUBST(CUPS_SERVERCERT) -AC_SUBST(CUPS_SERVERKEY) +AC_SUBST(CUPS_SERVERKEYCHAIN) AC_SUBST(IPPALIASES) AC_SUBST(SSLFLAGS) AC_SUBST(SSLLIBS) @@ -106,5 +104,5 @@ EXPORT_SSLLIBS="$SSLLIBS" AC_SUBST(EXPORT_SSLLIBS) dnl -dnl End of "$Id: cups-ssl.m4 12122 2014-08-28 12:55:52Z msweet $". +dnl End of "$Id: cups-ssl.m4 12290 2014-12-05 17:25:55Z msweet $". dnl diff --git a/config-scripts/cups-startup.m4 b/config-scripts/cups-startup.m4 index 946aacbfb..0053aa790 100644 --- a/config-scripts/cups-startup.m4 +++ b/config-scripts/cups-startup.m4 @@ -1,5 +1,5 @@ dnl -dnl "$Id: cups-startup.m4 11747 2014-03-27 01:15:48Z msweet $" +dnl "$Id: cups-startup.m4 12351 2014-12-09 22:18:45Z msweet $" dnl dnl Launch-on-demand/startup stuff for CUPS. dnl @@ -166,11 +166,11 @@ if test "x$xinetd" = x; then fi done fi -elif test "x$xinet" != xno; then +elif test "x$xinetd" != xno; then XINETD="$xinetd" fi dnl -dnl End of "$Id: cups-startup.m4 11747 2014-03-27 01:15:48Z msweet $". +dnl End of "$Id: cups-startup.m4 12351 2014-12-09 22:18:45Z msweet $". dnl diff --git a/config.h.in b/config.h.in index 0d11eff69..802e25925 100644 --- a/config.h.in +++ b/config.h.in @@ -1,5 +1,5 @@ /* - * "$Id: config.h.in 12140 2014-08-30 01:51:22Z msweet $" + * "$Id: config.h.in 12329 2014-12-09 20:50:51Z msweet $" * * Configuration file for CUPS. * @@ -305,6 +305,13 @@ #undef HAVE_GNUTLS_TRANSPORT_SET_PULL_TIMEOUT_FUNCTION +/* + * Do we have the gnutls_priority_set_direct function? + */ + +#undef HAVE_GNUTLS_PRIORITY_SET_DIRECT + + /* * What Security framework headers do we have? */ @@ -624,7 +631,7 @@ #ifdef HAVE_ARC4RANDOM # define CUPS_RAND() arc4random() -# define CUPS_SRAND(v) arc4random_stir() +# define CUPS_SRAND(v) #elif defined(HAVE_RANDOM) # define CUPS_RAND() random() # define CUPS_SRAND(v) srandom(v) @@ -712,5 +719,5 @@ static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); } #endif /* !_CUPS_CONFIG_H_ */ /* - * End of "$Id: config.h.in 12140 2014-08-30 01:51:22Z msweet $". + * End of "$Id: config.h.in 12329 2014-12-09 20:50:51Z msweet $". */ diff --git a/configure b/configure index 0598fdb3c..1b36f7209 100755 --- a/configure +++ b/configure @@ -1,11 +1,9 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68. +# Generated by GNU Autoconf 2.69. # # -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software -# Foundation, Inc. +# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. # # # This configure script is free software; the Free Software Foundation @@ -134,6 +132,31 @@ export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH +# Use a proper internal environment variable to ensure we don't fall + # into an infinite loop, continuously re-executing ourselves. + if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then + _as_can_reexec=no; export _as_can_reexec; + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +as_fn_exit 255 + fi + # We don't want this to propagate to other subprocesses. + { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : emulate sh @@ -167,7 +190,8 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : else exitcode=1; echo positional parameters were not saved. fi -test x\$exitcode = x0 || exit 1" +test x\$exitcode = x0 || exit 1 +test -x / || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && @@ -212,21 +236,25 @@ IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : - # We cannot yet assume a decent shell, so we have to provide a - # neutralization value for shells without unset; and this also - # works around shells that cannot unset nonexistent variables. - # Preserve -v and -x to the replacement shell. - BASH_ENV=/dev/null - ENV=/dev/null - (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV - export CONFIG_SHELL - case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; - esac - exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} + export CONFIG_SHELL + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +exit 255 fi if test x$as_have_required = xno; then : @@ -328,6 +356,14 @@ $as_echo X"$as_dir" | } # as_fn_mkdir_p + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take @@ -449,6 +485,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits chmod +x "$as_me.lineno" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } + # If we had to re-execute with $CONFIG_SHELL, we're ensured to have + # already done that, so ensure we don't try to do so again and fall + # in an infinite loop. This has already happened in practice. + _as_can_reexec=no; export _as_can_reexec # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). @@ -483,16 +523,16 @@ if (echo >conf$$.file) 2>/dev/null; then # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. + # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' + as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else - as_ln_s='cp -p' + as_ln_s='cp -pR' fi else - as_ln_s='cp -p' + as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null @@ -504,28 +544,8 @@ else as_mkdir_p=false fi -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x +as_test_x='test -x' +as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -659,8 +679,7 @@ EXPORT_SSLLIBS SSLLIBS SSLFLAGS IPPALIASES -CUPS_SERVERKEY -CUPS_SERVERCERT +CUPS_SERVERKEYCHAIN LIBGCRYPTCONFIG LIBGNUTLSCONFIG PTHREAD_FLAGS @@ -1359,8 +1378,6 @@ target=$target_alias if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe - $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used" >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi @@ -1684,9 +1701,9 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF configure -generated by GNU Autoconf 2.68 +generated by GNU Autoconf 2.69 -Copyright (C) 2010 Free Software Foundation, Inc. +Copyright (C) 2012 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF @@ -1837,7 +1854,7 @@ $as_echo "$ac_try_echo"; } >&5 test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext + test -x conftest$ac_exeext }; then : ac_retval=0 else @@ -2144,7 +2161,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by $as_me, which was -generated by GNU Autoconf 2.68. Invocation command line was +generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2520,7 +2537,7 @@ esac ac_config_headers="$ac_config_headers config.h" -CUPS_VERSION=2.0.1 +CUPS_VERSION=2.0.2 CUPS_REVISION= #if test -z "$CUPS_REVISION" -a -d .svn; then # CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`" @@ -2569,7 +2586,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -2617,7 +2634,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -2661,7 +2678,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3105,8 +3122,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include -#include -#include +struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); @@ -3356,7 +3372,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3400,7 +3416,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CXX="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3602,7 +3618,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3642,7 +3658,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_RANLIB="ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3695,7 +3711,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3735,7 +3751,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_CHMOD="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3775,7 +3791,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_GZIP="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3815,7 +3831,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_LD="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3855,7 +3871,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_LN="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3895,7 +3911,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_MV="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3935,7 +3951,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_RM="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3975,7 +3991,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_RMDIR="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4015,7 +4031,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4055,7 +4071,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_XDGOPEN="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4131,7 +4147,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4174,7 +4190,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4584,7 +4600,7 @@ do for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue + as_fn_executable_p "$ac_path_GREP" || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in @@ -4650,7 +4666,7 @@ do for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue + as_fn_executable_p "$ac_path_EGREP" || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in @@ -4967,6 +4983,64 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_iconv_open" >&5 $as_echo "$ac_cv_search_iconv_open" >&6; } ac_res=$ac_cv_search_iconv_open +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + $as_echo "#define HAVE_ICONV_H 1" >>confdefs.h + + SAVELIBS="$SAVELIBS $LIBS" +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing libiconv_open" >&5 +$as_echo_n "checking for library containing libiconv_open... " >&6; } +if ${ac_cv_search_libiconv_open+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char libiconv_open (); +int +main () +{ +return libiconv_open (); + ; + return 0; +} +_ACEOF +for ac_lib in '' iconv; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_libiconv_open=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_libiconv_open+:} false; then : + break +fi +done +if ${ac_cv_search_libiconv_open+:} false; then : + +else + ac_cv_search_libiconv_open=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_libiconv_open" >&5 +$as_echo "$ac_cv_search_libiconv_open" >&6; } +ac_res=$ac_cv_search_libiconv_open if test "$ac_res" != no; then : test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" $as_echo "#define HAVE_ICONV_H 1" >>confdefs.h @@ -6829,7 +6903,13 @@ esac -ac_fn_c_check_header_mongrel "$LINENO" "resolv.h" "ac_cv_header_resolv_h" "$ac_includes_default" +ac_fn_c_check_header_compile "$LINENO" "resolv.h" "ac_cv_header_resolv_h" " +#include +#include +#include +#include +#include +" if test "x$ac_cv_header_resolv_h" = xyes; then : $as_echo "#define HAVE_RESOLV_H 1" >>confdefs.h @@ -7518,7 +7598,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_KRB5CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -7561,7 +7641,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_KRB5CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8007,8 +8087,7 @@ fi SSLFLAGS="" SSLLIBS="" have_ssl=0 -CUPS_SERVERCERT="" -CUPS_SERVERKEY="" +CUPS_SERVERKEYCHAIN="" if test x$enable_ssl != xno; then if test $have_ssl = 0 -a "x$enable_cdsassl" != "xno"; then @@ -8021,7 +8100,7 @@ if test "x$ac_cv_header_Security_SecureTransport_h" = xyes; then : $as_echo "#define HAVE_CDSASSL 1" >>confdefs.h - CUPS_SERVERCERT="/Library/Keychains/System.keychain" + CUPS_SERVERKEYCHAIN="/Library/Keychains/System.keychain" ac_fn_c_check_header_mongrel "$LINENO" "Security/SecureTransportPriv.h" "ac_cv_header_Security_SecureTransportPriv_h" "$ac_includes_default" if test "x$ac_cv_header_Security_SecureTransportPriv_h" = xyes; then : @@ -8111,7 +8190,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_LIBGNUTLSCONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8154,7 +8233,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_LIBGNUTLSCONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8209,7 +8288,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_LIBGCRYPTCONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8252,7 +8331,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_LIBGCRYPTCONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8307,8 +8386,7 @@ fi fi if test $have_ssl = 1; then - CUPS_SERVERCERT="ssl/server.crt" - CUPS_SERVERKEY="ssl/server.key" + CUPS_SERVERKEYCHAIN="ssl" SAVELIBS="$LIBS" LIBS="$LIBS $SSLLIBS" @@ -8316,6 +8394,12 @@ fi if test "x$ac_cv_func_gnutls_transport_set_pull_timeout_function" = xyes; then : $as_echo "#define HAVE_GNUTLS_TRANSPORT_SET_PULL_TIMEOUT_FUNCTION 1" >>confdefs.h +fi + + ac_fn_c_check_func "$LINENO" "gnutls_priority_set_direct" "ac_cv_func_gnutls_priority_set_direct" +if test "x$ac_cv_func_gnutls_priority_set_direct" = xyes; then : + $as_echo "#define HAVE_GNUTLS_PRIORITY_SET_DIRECT 1" >>confdefs.h + fi LIBS="$SAVELIBS" @@ -8339,7 +8423,6 @@ fi - EXPORT_SSLLIBS="$SSLLIBS" @@ -8809,6 +8892,8 @@ _ACEOF esac rm -rf conftest* fi + + fi @@ -9207,7 +9292,7 @@ if test "x$xinetd" = x; then fi done fi -elif test "x$xinet" != xno; then +elif test "x$xinetd" != xno; then XINETD="$xinetd" fi @@ -9806,7 +9891,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_JAVA="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -9869,7 +9954,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -9932,7 +10017,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PHPCGI="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -9973,7 +10058,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PHP="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -10041,7 +10126,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -10510,16 +10595,16 @@ if (echo >conf$$.file) 2>/dev/null; then # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. + # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' + as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else - as_ln_s='cp -p' + as_ln_s='cp -pR' fi else - as_ln_s='cp -p' + as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null @@ -10579,28 +10664,16 @@ else as_mkdir_p=false fi -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -10622,7 +10695,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # values after options handling. ac_log=" This file was extended by $as_me, which was -generated by GNU Autoconf 2.68. Invocation command line was +generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -10684,10 +10757,10 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ config.status -configured by $0, generated by GNU Autoconf 2.68, +configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" -Copyright (C) 2010 Free Software Foundation, Inc. +Copyright (C) 2012 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." @@ -10776,7 +10849,7 @@ fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then - set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' diff --git a/cups/cups.h b/cups/cups.h index e8bf4cc9d..aeb7ca9c0 100644 --- a/cups/cups.h +++ b/cups/cups.h @@ -1,5 +1,5 @@ /* - * "$Id: cups.h 12195 2014-10-02 18:45:59Z msweet $" + * "$Id: cups.h 12266 2014-11-19 16:05:28Z msweet $" * * API definitions for CUPS. * @@ -49,10 +49,10 @@ extern "C" { * Constants... */ -# define CUPS_VERSION 2.0001 +# define CUPS_VERSION 2.0002 # define CUPS_VERSION_MAJOR 2 # define CUPS_VERSION_MINOR 0 -# define CUPS_VERSION_PATCH 1 +# define CUPS_VERSION_PATCH 2 # define CUPS_BC_FD 3 /* Back-channel file descriptor for @@ -628,5 +628,5 @@ extern int cupsSetServerCredentials(const char *path, const char *common_name, #endif /* !_CUPS_CUPS_H_ */ /* - * End of "$Id: cups.h 12195 2014-10-02 18:45:59Z msweet $". + * End of "$Id: cups.h 12266 2014-11-19 16:05:28Z msweet $". */ diff --git a/cups/debug.c b/cups/debug.c index d6c38f7d7..5514f773b 100644 --- a/cups/debug.c +++ b/cups/debug.c @@ -1,5 +1,5 @@ /* - * "$Id: debug.c 11558 2014-02-06 18:33:34Z msweet $" + * "$Id: debug.c 12328 2014-12-09 20:38:47Z msweet $" * * Debugging functions for CUPS. * @@ -97,7 +97,7 @@ debug_vsnprintf(char *buffer, /* O - Output buffer */ type; /* Format type character */ int width, /* Width of field */ prec; /* Number of characters of precision */ - char tformat[100], /* Temporary format string for sprintf() */ + char tformat[100], /* Temporary format string for snprintf() */ *tptr, /* Pointer into temporary format */ temp[1024]; /* Buffer for formatted numbers */ char *s; /* Pointer to string */ @@ -232,7 +232,7 @@ debug_vsnprintf(char *buffer, /* O - Output buffer */ if ((size_t)(width + 2) > sizeof(temp)) break; - sprintf(temp, tformat, va_arg(ap, double)); + snprintf(temp, sizeof(temp), tformat, va_arg(ap, double)); bytes += (int)strlen(temp); @@ -256,13 +256,13 @@ debug_vsnprintf(char *buffer, /* O - Output buffer */ # ifdef HAVE_LONG_LONG if (size == 'L') - sprintf(temp, tformat, va_arg(ap, long long)); + snprintf(temp, sizeof(temp), tformat, va_arg(ap, long long)); else # endif /* HAVE_LONG_LONG */ if (size == 'l') - sprintf(temp, tformat, va_arg(ap, long)); + snprintf(temp, sizeof(temp), tformat, va_arg(ap, long)); else - sprintf(temp, tformat, va_arg(ap, int)); + snprintf(temp, sizeof(temp), tformat, va_arg(ap, int)); bytes += (int)strlen(temp); @@ -277,7 +277,7 @@ debug_vsnprintf(char *buffer, /* O - Output buffer */ if ((size_t)(width + 2) > sizeof(temp)) break; - sprintf(temp, tformat, va_arg(ap, void *)); + snprintf(temp, sizeof(temp), tformat, va_arg(ap, void *)); bytes += (int)strlen(temp); @@ -643,5 +643,5 @@ _cups_debug_set(const char *logfile, /* I - Log file or NULL */ /* - * End of "$Id: debug.c 11558 2014-02-06 18:33:34Z msweet $". + * End of "$Id: debug.c 12328 2014-12-09 20:38:47Z msweet $". */ diff --git a/cups/file.c b/cups/file.c index f1b65e677..8e8a5469f 100644 --- a/cups/file.c +++ b/cups/file.c @@ -1,5 +1,5 @@ /* - * "$Id: file.c 11627 2014-02-20 16:15:09Z msweet $" + * "$Id: file.c 12297 2014-12-08 19:26:32Z msweet $" * * File functions for CUPS. * @@ -288,6 +288,7 @@ _cupsFileCheckFilter( switch (result) { + default : case _CUPS_FILE_CHECK_OK : prefix = "DEBUG2"; break; @@ -2671,5 +2672,5 @@ cups_write(cups_file_t *fp, /* I - CUPS file */ /* - * End of "$Id: file.c 11627 2014-02-20 16:15:09Z msweet $". + * End of "$Id: file.c 12297 2014-12-08 19:26:32Z msweet $". */ diff --git a/cups/globals.c b/cups/globals.c index 374f85005..c48c32144 100644 --- a/cups/globals.c +++ b/cups/globals.c @@ -1,5 +1,5 @@ /* - * "$Id: globals.c 12124 2014-08-28 15:37:22Z msweet $" + * "$Id: globals.c 12481 2015-02-03 12:45:14Z msweet $" * * Global variable access routines for CUPS. * @@ -216,9 +216,9 @@ cups_globals_alloc(void) memset(cg, 0, sizeof(_cups_globals_t)); cg->encryption = (http_encryption_t)-1; cg->password_cb = (cups_password_cb2_t)_cupsGetPassword; - cg->any_root = 1; - cg->expired_certs = 1; - cg->validate_certs = 0; + cg->any_root = -1; + cg->expired_certs = -1; + cg->validate_certs = -1; #ifdef DEBUG /* @@ -394,5 +394,5 @@ cups_globals_init(void) /* - * End of "$Id: globals.c 12124 2014-08-28 15:37:22Z msweet $". + * End of "$Id: globals.c 12481 2015-02-03 12:45:14Z msweet $". */ diff --git a/cups/http-private.h b/cups/http-private.h index 7156bf869..3a8c18c02 100644 --- a/cups/http-private.h +++ b/cups/http-private.h @@ -1,9 +1,9 @@ /* - * "$Id: http-private.h 12243 2014-11-12 12:12:59Z msweet $" + * "$Id: http-private.h 12419 2015-01-22 15:51:20Z msweet $" * * Private HTTP definitions for CUPS. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -186,10 +186,6 @@ typedef gnutls_certificate_credentials_t *http_tls_credentials_t; # if !defined(HAVE_SECBASEPRIV_H) && defined(HAVE_CSSMERRORSTRING) /* Declare prototype for function in that header... */ extern const char *cssmErrorString(int error); # endif /* !HAVE_SECBASEPRIV_H && HAVE_CSSMERRORSTRING */ -# ifndef HAVE_SECITEMPRIV_H /* Declare constants from that header... */ -extern const CFTypeRef kSecClassCertificate; -extern const CFTypeRef kSecClassIdentity; -# endif /* !HAVE_SECITEMPRIV_H */ # if !defined(HAVE_SECIDENTITYSEARCHPRIV_H) && defined(HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY) /* Declare prototype for function in that header... */ extern OSStatus SecIdentitySearchCreateWithPolicy(SecPolicyRef policy, CFStringRef idString, CSSM_KEYUSE keyUsage, @@ -442,5 +438,5 @@ extern int _httpWait(http_t *http, int msec, int usessl); #endif /* !_CUPS_HTTP_PRIVATE_H_ */ /* - * End of "$Id: http-private.h 12243 2014-11-12 12:12:59Z msweet $". + * End of "$Id: http-private.h 12419 2015-01-22 15:51:20Z msweet $". */ diff --git a/cups/http.c b/cups/http.c index 23d56d2de..6c8f5797e 100644 --- a/cups/http.c +++ b/cups/http.c @@ -1,5 +1,5 @@ /* - * "$Id: http.c 12230 2014-10-21 13:55:24Z msweet $" + * "$Id: http.c 12334 2014-12-09 21:01:55Z msweet $" * * HTTP routines for CUPS. * @@ -4032,7 +4032,7 @@ http_debug_hex(const char *prefix, /* I - Prefix for line */ for (i = 0; i < bytes; i += 16) { for (j = 0, ptr = start; j < 16 && (i + j) < bytes; j ++, ptr += 2) - sprintf(ptr, "%02X", buffer[i + j] & 255); + snprintf(ptr, 3, "%02X", buffer[i + j] & 255); while (j < 16) { @@ -4850,5 +4850,5 @@ http_write_chunk(http_t *http, /* I - HTTP connection */ /* - * End of "$Id: http.c 12230 2014-10-21 13:55:24Z msweet $". + * End of "$Id: http.c 12334 2014-12-09 21:01:55Z msweet $". */ diff --git a/cups/ipp.c b/cups/ipp.c index cc5eebcf8..6ef17ecd7 100644 --- a/cups/ipp.c +++ b/cups/ipp.c @@ -1,9 +1,9 @@ /* - * "$Id: ipp.c 12093 2014-08-19 12:10:17Z msweet $" + * "$Id: ipp.c 12469 2015-02-01 04:51:08Z msweet $" * * Internet Printing Protocol functions for CUPS. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -2032,7 +2032,7 @@ ippFindNextAttribute(ipp_t *ipp, /* I - IPP message */ *childattr; /* Child attribute */ ipp_tag_t value_tag; /* Value tag */ char parent[1024], /* Parent attribute name */ - *child; /* Child attribute name */ + *child = NULL; /* Child attribute name */ DEBUG_printf(("2ippFindNextAttribute(ipp=%p, name=\"%s\", type=%02x(%s))", @@ -6675,7 +6675,7 @@ ipp_length(ipp_t *ipp, /* I - IPP message or collection */ DEBUG_printf(("5ipp_length: attr->name=\"%s\", attr->num_values=%d, " "bytes=" CUPS_LLFMT, attr->name, attr->num_values, CUPS_LLCAST bytes)); - if (attr->value_tag < IPP_TAG_EXTENSION) + if ((attr->value_tag & ~IPP_TAG_CUPS_CONST) < IPP_TAG_EXTENSION) bytes += (size_t)attr->num_values;/* Value tag for each value */ else bytes += (size_t)(5 * attr->num_values); @@ -6830,6 +6830,22 @@ ipp_read_http(http_t *http, /* I - Client connection */ break; } } + else if (http->used == 0 && http->timeout_value > 0) + { + /* + * Wait up to timeout seconds for more data on blocking sockets... + */ + + if (!httpWait(http, (int)(1000 * http->timeout_value))) + { + /* + * Signal no data... + */ + + bytes = -1; + break; + } + } if ((bytes = httpRead2(http, (char *)buffer, length - (size_t)tbytes)) < 0) { @@ -7046,5 +7062,5 @@ ipp_write_file(int *fd, /* I - File descriptor */ /* - * End of "$Id: ipp.c 12093 2014-08-19 12:10:17Z msweet $". + * End of "$Id: ipp.c 12469 2015-02-01 04:51:08Z msweet $". */ diff --git a/cups/language.c b/cups/language.c index 035f9d259..7888af098 100644 --- a/cups/language.c +++ b/cups/language.c @@ -1,5 +1,5 @@ /* - * "$Id: language.c 11558 2014-02-06 18:33:34Z msweet $" + * "$Id: language.c 12266 2014-11-19 16:05:28Z msweet $" * * I18N/language support for CUPS. * @@ -1139,7 +1139,7 @@ appleLangDefault(void) int i; /* Looping var */ CFBundleRef bundle; /* Main bundle (if any) */ CFArrayRef bundleList; /* List of localizations in bundle */ - CFPropertyListRef localizationList; + CFPropertyListRef localizationList = NULL; /* List of localization data */ CFStringRef languageName; /* Current name */ CFStringRef localeName; /* Canonical from of name */ @@ -1165,14 +1165,42 @@ appleLangDefault(void) else if ((bundle = CFBundleGetMainBundle()) != NULL && (bundleList = CFBundleCopyBundleLocalizations(bundle)) != NULL) { + CFURLRef resources = CFBundleCopyResourcesDirectoryURL(bundle); + DEBUG_puts("3appleLangDefault: Getting localizationList from bundle."); - localizationList = - CFBundleCopyPreferredLocalizationsFromArray(bundleList); + if (resources) + { + CFStringRef cfpath = CFURLCopyPath(resources); + char path[1024]; + + if (cfpath) + { + /* + * See if we have an Info.plist file in the bundle... + */ + + CFStringGetCString(cfpath, path,sizeof(path), kCFStringEncodingUTF8); + DEBUG_printf(("3appleLangDefault: Got a resource URL (\"%s\")", path)); + strlcat(path, "Contents/Info.plist", sizeof(path)); + + if (!access(path, R_OK)) + localizationList = CFBundleCopyPreferredLocalizationsFromArray(bundleList); + else + DEBUG_puts("3appleLangDefault: No Info.plist, ignoring resource URL..."); + + CFRelease(cfpath); + } + + CFRelease(resources); + } + else + DEBUG_puts("3appleLangDefault: No resource URL."); CFRelease(bundleList); } - else + + if (!localizationList) { DEBUG_puts("3appleLangDefault: Getting localizationList from preferences."); @@ -1560,5 +1588,5 @@ cups_unquote(char *d, /* O - Unquoted string */ /* - * End of "$Id: language.c 11558 2014-02-06 18:33:34Z msweet $". + * End of "$Id: language.c 12266 2014-11-19 16:05:28Z msweet $". */ diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c index f72fc9bf0..851cb0bea 100644 --- a/cups/ppd-cache.c +++ b/cups/ppd-cache.c @@ -1,9 +1,9 @@ /* - * "$Id: ppd-cache.c 12124 2014-08-28 15:37:22Z msweet $" + * "$Id: ppd-cache.c 12434 2015-01-28 16:29:06Z msweet $" * * PPD cache implementation for CUPS. * - * Copyright 2010-2014 by Apple Inc. + * Copyright 2010-2015 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -2691,6 +2691,25 @@ pwg_unppdize_name(const char *ppd, /* I - PPD keyword */ *end; /* End of name buffer */ + if (_cups_islower(*ppd)) + { + /* + * Already lowercase name, use as-is? + */ + + const char *ppdptr; /* Pointer into PPD keyword */ + + for (ppdptr = ppd + 1; *ppdptr; ppdptr ++) + if (_cups_isupper(*ppdptr) || strchr(dashchars, *ppdptr)) + break; + + if (!*ppdptr) + { + strlcpy(name, ppd, namesize); + return; + } + } + for (ptr = name, end = name + namesize - 1; *ppd && ptr < end; ppd ++) { if (_cups_isalnum(*ppd) || *ppd == '-') @@ -2712,5 +2731,5 @@ pwg_unppdize_name(const char *ppd, /* I - PPD keyword */ /* - * End of "$Id: ppd-cache.c 12124 2014-08-28 15:37:22Z msweet $". + * End of "$Id: ppd-cache.c 12434 2015-01-28 16:29:06Z msweet $". */ diff --git a/cups/tls-darwin.c b/cups/tls-darwin.c index 3509a4766..02a44045d 100644 --- a/cups/tls-darwin.c +++ b/cups/tls-darwin.c @@ -1,9 +1,9 @@ /* - * "$Id: tls-darwin.c 12215 2014-10-20 18:24:56Z msweet $" + * "$Id: tls-darwin.c 12481 2015-02-03 12:45:14Z msweet $" * * TLS support code for CUPS on OS X. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -546,6 +546,9 @@ httpCredentialsGetTrust( if ((secCert = http_cdsa_create_credential((http_credential_t *)cupsArrayFirst(credentials))) == NULL) return (HTTP_TRUST_UNKNOWN); + if (cg->any_root < 0) + _cupsSetDefaults(); + /* * Look this common name up in the default keychains... */ @@ -1779,5 +1782,5 @@ http_cdsa_write( /* - * End of "$Id: tls-darwin.c 12215 2014-10-20 18:24:56Z msweet $". + * End of "$Id: tls-darwin.c 12481 2015-02-03 12:45:14Z msweet $". */ diff --git a/cups/tls-gnutls.c b/cups/tls-gnutls.c index e8a795c41..00ff2234c 100644 --- a/cups/tls-gnutls.c +++ b/cups/tls-gnutls.c @@ -1,9 +1,9 @@ /* - * "$Id: tls-gnutls.c 12215 2014-10-20 18:24:56Z msweet $" + * "$Id: tls-gnutls.c 12481 2015-02-03 12:45:14Z msweet $" * * TLS support code for CUPS using GNU TLS. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -407,6 +407,9 @@ httpCredentialsGetTrust( if ((cert = http_gnutls_create_credential((http_credential_t *)cupsArrayFirst(credentials))) == NULL) return (HTTP_TRUST_UNKNOWN); + if (cg->any_root < 0) + _cupsSetDefaults(); + /* * Look this common name up in the default keychains... */ @@ -1107,7 +1110,6 @@ _httpTLSStart(http_t *http) /* I - Connection to server */ keyfile[1024]; /* Private key file */ int have_creds = 0; /* Have credentials? */ - if (http->fields[HTTP_FIELD_HOST][0]) { /* @@ -1197,14 +1199,31 @@ _httpTLSStart(http_t *http) /* I - Connection to server */ return (-1); } +#ifdef HAVE_GNUTLS_PRIORITY_SET_DIRECT if (!tls_options) - gnutls_priority_set_direct(http->tls, "NORMAL:-ARCFOUR-128:VERS-TLS-ALL:-VERS-SSL3.0", NULL); + gnutls_priority_set_direct(http->tls, "NORMAL:-ARCFOUR-128:+VERS-TLS-ALL:-VERS-SSL3.0", NULL); else if ((tls_options & _HTTP_TLS_ALLOW_SSL3) && (tls_options & _HTTP_TLS_ALLOW_RC4)) gnutls_priority_set_direct(http->tls, "NORMAL", NULL); else if (tls_options & _HTTP_TLS_ALLOW_SSL3) - gnutls_priority_set_direct(http->tls, "NORMAL:-ARCFOUR-128:VERS-TLS-ALL", NULL); + gnutls_priority_set_direct(http->tls, "NORMAL:-ARCFOUR-128:+VERS-TLS-ALL", NULL); else - gnutls_priority_set_direct(http->tls, "NORMAL:VERS-TLS-ALL:-VERS-SSL3.0", NULL); + gnutls_priority_set_direct(http->tls, "NORMAL:+VERS-TLS-ALL:-VERS-SSL3.0", NULL); + +#else + gnutls_priority_t priority; /* Priority */ + + if (!tls_options) + gnutls_priority_init(&priority, "NORMAL:-ARCFOUR-128:+VERS-TLS-ALL:-VERS-SSL3.0", NULL); + else if ((tls_options & _HTTP_TLS_ALLOW_SSL3) && (tls_options & _HTTP_TLS_ALLOW_RC4)) + gnutls_priority_init(&priority, "NORMAL", NULL); + else if (tls_options & _HTTP_TLS_ALLOW_SSL3) + gnutls_priority_init(&priority, "NORMAL:-ARCFOUR-128:+VERS-TLS-ALL", NULL); + else + gnutls_priority_init(&priority, "NORMAL:+VERS-TLS-ALL:-VERS-SSL3.0", NULL); + + gnutls_priority_set(http->tls, priority); + gnutls_priority_deinit(priority); +#endif /* HAVE_GNUTLS_PRIORITY_SET_DIRECT */ gnutls_transport_set_ptr(http->tls, (gnutls_transport_ptr_t)http); gnutls_transport_set_pull_function(http->tls, http_gnutls_read); @@ -1313,5 +1332,5 @@ _httpTLSWrite(http_t *http, /* I - Connection to server */ /* - * End of "$Id: tls-gnutls.c 12215 2014-10-20 18:24:56Z msweet $". + * End of "$Id: tls-gnutls.c 12481 2015-02-03 12:45:14Z msweet $". */ diff --git a/cups/tls-sspi.c b/cups/tls-sspi.c index b8e4a3fae..28596befe 100644 --- a/cups/tls-sspi.c +++ b/cups/tls-sspi.c @@ -1,10 +1,10 @@ /* - * "$Id: tls-sspi.c 12215 2014-10-20 18:24:56Z msweet $" + * "$Id: tls-sspi.c 12481 2015-02-03 12:45:14Z msweet $" * * TLS support for CUPS on Windows using the Security Support Provider * Interface (SSPI). * - * Copyright 2010-2014 by Apple Inc. + * Copyright 2010-2015 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -262,6 +262,9 @@ httpCredentialsGetTrust( if (!cert) return (HTTP_TRUST_UNKNOWN); + if (cg->any_root < 0) + _cupsSetDefaults(); + if (cg->any_root) certFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA; @@ -2413,5 +2416,5 @@ http_sspi_verify( /* - * End of "$Id: tls-sspi.c 12215 2014-10-20 18:24:56Z msweet $". + * End of "$Id: tls-sspi.c 12481 2015-02-03 12:45:14Z msweet $". */ diff --git a/cups/transcode.c b/cups/transcode.c index e3e7c8347..f1b26459c 100644 --- a/cups/transcode.c +++ b/cups/transcode.c @@ -1,5 +1,5 @@ /* - * "$Id: transcode.c 11594 2014-02-14 20:09:01Z msweet $" + * "$Id: transcode.c 12332 2014-12-09 20:58:45Z msweet $" * * Transcoding support for CUPS. * @@ -154,11 +154,15 @@ cupsCharsetToUTF8( if (map_encoding != encoding) { + char toset[1024]; /* Destination character set */ + _cupsCharmapFlush(); + snprintf(toset, sizeof(toset), "%s//IGNORE", _cupsEncodingName(encoding)); + + map_encoding = encoding; map_from_utf8 = iconv_open(_cupsEncodingName(encoding), "UTF-8"); - map_to_utf8 = iconv_open("UTF-8", _cupsEncodingName(encoding)); - map_encoding = encoding; + map_to_utf8 = iconv_open("UTF-8", toset); } if (map_to_utf8 != (iconv_t)-1) @@ -279,11 +283,15 @@ cupsUTF8ToCharset( if (map_encoding != encoding) { + char toset[1024]; /* Destination character set */ + _cupsCharmapFlush(); - map_from_utf8 = iconv_open(_cupsEncodingName(encoding), "UTF-8"); - map_to_utf8 = iconv_open("UTF-8", _cupsEncodingName(encoding)); + snprintf(toset, sizeof(toset), "%s//IGNORE", _cupsEncodingName(encoding)); + map_encoding = encoding; + map_from_utf8 = iconv_open(_cupsEncodingName(encoding), "UTF-8"); + map_to_utf8 = iconv_open("UTF-8", toset); } if (map_from_utf8 != (iconv_t)-1) @@ -708,5 +716,5 @@ cupsUTF32ToUTF8( /* - * End of "$Id: transcode.c 11594 2014-02-14 20:09:01Z msweet $" + * End of "$Id: transcode.c 12332 2014-12-09 20:58:45Z msweet $" */ diff --git a/cups/usersys.c b/cups/usersys.c index 2e5472b10..cf187af41 100644 --- a/cups/usersys.c +++ b/cups/usersys.c @@ -1,9 +1,9 @@ /* - * "$Id: usersys.c 12215 2014-10-20 18:24:56Z msweet $" + * "$Id: usersys.c 12481 2015-02-03 12:45:14Z msweet $" * * User, system, and password routines for CUPS. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -38,22 +38,45 @@ #define _CUPS_PASSCHAR '*' /* Character that is echoed for password */ +/* + * Local types... + */ + +typedef struct _cups_client_conf_s /**** client.conf config data ****/ +{ +#ifdef HAVE_SSL + int ssl_options; /* SSLOptions values */ +#endif /* HAVE_SSL */ + int any_root, /* Allow any (e.g., self-signed) root */ + expired_certs, /* Allow expired certs */ + validate_certs; /* Validate certificates */ + http_encryption_t encryption; /* Encryption setting */ + char user[65], /* User name */ + server_name[256]; + /* Server hostname */ +#ifdef HAVE_GSSAPI + char gss_service_name[32]; + /* Kerberos service name */ +#endif /* HAVE_GSSAPI */ +} _cups_client_conf_t; + + /* * Local functions... */ -static void cups_read_client_conf(cups_file_t *fp, - _cups_globals_t *cg, - const char *cups_encryption, - const char *cups_server, - const char *cups_user, +static void cups_finalize_client_conf(_cups_client_conf_t *cc); +static void cups_init_client_conf(_cups_client_conf_t *cc); +static void cups_read_client_conf(cups_file_t *fp, _cups_client_conf_t *cc); +static void cups_set_encryption(_cups_client_conf_t *cc, const char *value); #ifdef HAVE_GSSAPI - const char *cups_gssservicename, +static void cups_set_gss_service_name(_cups_client_conf_t *cc, const char *value); #endif /* HAVE_GSSAPI */ - const char *cups_anyroot, - const char *cups_expiredcerts, - const char *cups_validatecerts, - int ssl_options); +static void cups_set_server_name(_cups_client_conf_t *cc, const char *value); +#ifdef HAVE_SSL +static void cups_set_ssl_options(_cups_client_conf_t *cc, const char *value); +#endif /* HAVE_SSL */ +static void cups_set_user(_cups_client_conf_t *cc, const char *value); /* @@ -826,96 +849,252 @@ void _cupsSetDefaults(void) { cups_file_t *fp; /* File */ - const char *home, /* Home directory of user */ - *cups_encryption, /* CUPS_ENCRYPTION env var */ - *cups_server, /* CUPS_SERVER env var */ - *cups_user, /* CUPS_USER/USER env var */ -#ifdef HAVE_GSSAPI - *cups_gssservicename, /* CUPS_GSSSERVICENAME env var */ -#endif /* HAVE_GSSAPI */ - *cups_anyroot, /* CUPS_ANYROOT env var */ - *cups_expiredcerts, /* CUPS_EXPIREDCERTS env var */ - *cups_validatecerts; /* CUPS_VALIDATECERTS env var */ + const char *home; /* Home directory of user */ char filename[1024]; /* Filename */ + _cups_client_conf_t cc; /* client.conf values */ _cups_globals_t *cg = _cupsGlobals(); /* Pointer to library globals */ DEBUG_puts("_cupsSetDefaults()"); /* - * First collect environment variables... + * Load initial client.conf values... + */ + + cups_init_client_conf(&cc); + + /* + * Read the /etc/cups/client.conf and ~/.cups/client.conf files, if + * present. + */ + + snprintf(filename, sizeof(filename), "%s/client.conf", cg->cups_serverroot); + if ((fp = cupsFileOpen(filename, "r")) != NULL) + { + cups_read_client_conf(fp, &cc); + cupsFileClose(fp); + } + +# ifdef HAVE_GETEUID + if ((geteuid() == getuid() || !getuid()) && getegid() == getgid() && (home = getenv("HOME")) != NULL) +# elif !defined(WIN32) + if (getuid() && (home = getenv("HOME")) != NULL) +# else + if ((home = getenv("HOME")) != NULL) +# endif /* HAVE_GETEUID */ + { + /* + * Look for ~/.cups/client.conf... + */ + + snprintf(filename, sizeof(filename), "%s/.cups/client.conf", home); + if ((fp = cupsFileOpen(filename, "r")) != NULL) + { + cups_read_client_conf(fp, &cc); + cupsFileClose(fp); + } + } + + /* + * Finalize things so every client.conf value is set... */ - cups_encryption = getenv("CUPS_ENCRYPTION"); - cups_server = getenv("CUPS_SERVER"); + cups_finalize_client_conf(&cc); + + if (cg->encryption == (http_encryption_t)-1) + cg->encryption = cc.encryption; + + if (!cg->server[0] || !cg->ipp_port) + cupsSetServer(cc.server_name); + + if (!cg->ipp_port) + { + const char *ipp_port; /* IPP_PORT environment variable */ + + if ((ipp_port = getenv("IPP_PORT")) != NULL) + { + if ((cg->ipp_port = atoi(ipp_port)) <= 0) + cg->ipp_port = CUPS_DEFAULT_IPP_PORT; + } + else + cg->ipp_port = CUPS_DEFAULT_IPP_PORT; + } + + if (!cg->user[0]) + strlcpy(cg->user, cc.user, sizeof(cg->user)); + +#ifdef HAVE_GSSAPI + if (!cg->gss_service_name[0]) + strlcpy(cg->gss_service_name, cc.gss_service_name, sizeof(cg->gss_service_name)); +#endif /* HAVE_GSSAPI */ + + if (cg->any_root < 0) + cg->any_root = cc.any_root; + + if (cg->expired_certs < 0) + cg->expired_certs = cc.expired_certs; + + if (cg->validate_certs < 0) + cg->validate_certs = cc.validate_certs; + +#ifdef HAVE_SSL + _httpTLSSetOptions(cc.ssl_options); +#endif /* HAVE_SSL */ +} + + +/* + * 'cups_boolean_value()' - Convert a string to a boolean value. + */ + +static int /* O - Boolean value */ +cups_boolean_value(const char *value) /* I - String value */ +{ + return (!_cups_strcasecmp(value, "yes") || !_cups_strcasecmp(value, "on") || !_cups_strcasecmp(value, "true")); +} + + +/* + * 'cups_finalize_client_conf()' - Finalize client.conf values. + */ + +static void +cups_finalize_client_conf( + _cups_client_conf_t *cc) /* I - client.conf values */ +{ + const char *value; /* Environment variable */ + + + if ((value = getenv("CUPS_ANYROOT")) != NULL) + cc->any_root = cups_boolean_value(value); + + if ((value = getenv("CUPS_ENCRYPTION")) != NULL) + cups_set_encryption(cc, value); + + if ((value = getenv("CUPS_EXPIREDCERTS")) != NULL) + cc->expired_certs = cups_boolean_value(value); + #ifdef HAVE_GSSAPI - cups_gssservicename = getenv("CUPS_GSSSERVICENAME"); + if ((value = getenv("CUPS_GSSSERVICENAME")) != NULL) + cups_set_gss_service_name(cc, value); #endif /* HAVE_GSSAPI */ - cups_anyroot = getenv("CUPS_ANYROOT"); - cups_expiredcerts = getenv("CUPS_EXPIREDCERTS"); - cups_user = getenv("CUPS_USER"); - cups_validatecerts = getenv("CUPS_VALIDATECERTS"); + + if ((value = getenv("CUPS_SERVER")) != NULL) + cups_set_server_name(cc, value); + + if ((value = getenv("CUPS_USER")) != NULL) + cups_set_user(cc, value); + + if ((value = getenv("CUPS_VALIDATECERTS")) != NULL) + cc->validate_certs = cups_boolean_value(value); /* - * Then, if needed, read the ~/.cups/client.conf or /etc/cups/client.conf - * files to get the default values... + * Then apply defaults for those values that haven't been set... */ - if (cg->encryption == (http_encryption_t)-1 || !cg->server[0] || - !cg->user[0] || !cg->ipp_port) + if (cc->any_root < 0) + cc->any_root = 1; + + if (cc->encryption == (http_encryption_t)-1) + cc->encryption = HTTP_ENCRYPTION_IF_REQUESTED; + + if (cc->expired_certs < 0) + cc->expired_certs = 1; + +#ifdef HAVE_GSSAPI + if (!cc->gss_service_name[0]) + cups_set_gss_service_name(cc, CUPS_DEFAULT_GSSSERVICENAME); +#endif /* HAVE_GSSAPI */ + + if (!cc->server_name[0]) { +#ifdef CUPS_DEFAULT_DOMAINSOCKET /* - * Look for CUPS_SERVERROOT/client.conf... + * If we are compiled with domain socket support, only use the + * domain socket if it exists and has the right permissions... */ - snprintf(filename, sizeof(filename), "%s/client.conf", - cg->cups_serverroot); - fp = cupsFileOpen(filename, "r"); + struct stat sockinfo; /* Domain socket information */ + + if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) && + (sockinfo.st_mode & S_IRWXO) == S_IRWXO) + cups_set_server_name(cc, CUPS_DEFAULT_DOMAINSOCKET); + else +#endif /* CUPS_DEFAULT_DOMAINSOCKET */ + cups_set_server_name(cc, "localhost"); + } + if (!cc->user[0]) + { +#ifdef WIN32 /* - * Read the configuration file and apply any environment variables; both - * functions handle NULL cups_file_t pointers... + * Get the current user name from the OS... */ - cups_read_client_conf(fp, cg, cups_encryption, cups_server, cups_user, -#ifdef HAVE_GSSAPI - cups_gssservicename, -#endif /* HAVE_GSSAPI */ - cups_anyroot, cups_expiredcerts, cups_validatecerts, 1); - cupsFileClose(fp); + DWORD size; /* Size of string */ + size = sizeof(cc->user); + if (!GetUserName(cc->user, &size)) +#else /* - * Then user defaults, if it is safe to do so... + * Try the USER environment variable as the default username... */ -# ifdef HAVE_GETEUID - if ((geteuid() == getuid() || !getuid()) && getegid() == getgid() && (home = getenv("HOME")) != NULL) -# elif !defined(WIN32) - if (getuid() && (home = getenv("HOME")) != NULL) -# else - if ((home = getenv("HOME")) != NULL) -# endif /* HAVE_GETEUID */ + const char *envuser = getenv("USER"); + /* Default username */ + struct passwd *pw = NULL; /* Account information */ + + if (envuser) { /* - * Look for ~/.cups/client.conf... + * Validate USER matches the current UID, otherwise don't allow it to + * override things... This makes sure that printing after doing su + * or sudo records the correct username. */ - snprintf(filename, sizeof(filename), "%s/.cups/client.conf", home); - fp = cupsFileOpen(filename, "r"); + if ((pw = getpwnam(envuser)) != NULL && pw->pw_uid != getuid()) + pw = NULL; + } + + if (!pw) + pw = getpwuid(getuid()); + if (pw) + strlcpy(cc->user, pw->pw_name, sizeof(cc->user)); + else +#endif /* WIN32 */ + { /* - * Read the configuration file and apply any environment variables; both - * functions handle NULL cups_file_t pointers... + * Use the default "unknown" user name... */ - cups_read_client_conf(fp, cg, cups_encryption, cups_server, cups_user, -#ifdef HAVE_GSSAPI - cups_gssservicename, -#endif /* HAVE_GSSAPI */ - cups_anyroot, cups_expiredcerts, cups_validatecerts, 0); - cupsFileClose(fp); + strlcpy(cc->user, "unknown", sizeof(cc->user)); } } + + if (cc->validate_certs < 0) + cc->validate_certs = 0; +} + + +/* + * 'cups_init_client_conf()' - Initialize client.conf values. + */ + +static void +cups_init_client_conf( + _cups_client_conf_t *cc) /* I - client.conf values */ +{ + /* + * Clear all values to "not set"... + */ + + memset(cc, 0, sizeof(_cups_client_conf_t)); + + cc->encryption = (http_encryption_t)-1; + cc->any_root = -1; + cc->expired_certs = -1; + cc->validate_certs = -1; } @@ -925,34 +1104,12 @@ _cupsSetDefaults(void) static void cups_read_client_conf( - cups_file_t *fp, /* I - File to read */ - _cups_globals_t *cg, /* I - Global data */ - const char *cups_encryption, /* I - CUPS_ENCRYPTION env var */ - const char *cups_server, /* I - CUPS_SERVER env var */ - const char *cups_user, /* I - CUPS_USER env var */ -#ifdef HAVE_GSSAPI - const char *cups_gssservicename, - /* I - CUPS_GSSSERVICENAME env var */ -#endif /* HAVE_GSSAPI */ - const char *cups_anyroot, /* I - CUPS_ANYROOT env var */ - const char *cups_expiredcerts, /* I - CUPS_EXPIREDCERTS env var */ - const char *cups_validatecerts,/* I - CUPS_VALIDATECERTS env var */ - int ssl_options) /* I - Allow setting of SSLOptions? */ + cups_file_t *fp, /* I - File to read */ + _cups_client_conf_t *cc) /* I - client.conf values */ { int linenum; /* Current line number */ char line[1024], /* Line from file */ - *value, /* Pointer into line */ - encryption[1024], /* Encryption value */ -#ifndef __APPLE__ - server_name[1024], /* ServerName value */ -#endif /* !__APPLE__ */ - user[256], /* User value */ - any_root[1024], /* AllowAnyRoot value */ - expired_certs[1024], /* AllowExpiredCerts value */ - validate_certs[1024]; /* ValidateCerts value */ -#ifdef HAVE_GSSAPI - char gss_service_name[32]; /* GSSServiceName value */ -#endif /* HAVE_GSSAPI */ + *value; /* Pointer into line */ /* @@ -962,222 +1119,150 @@ cups_read_client_conf( linenum = 0; while (cupsFileGetConf(fp, line, sizeof(line), &value, &linenum)) { - if (!cups_encryption && cg->encryption == (http_encryption_t)-1 && - !_cups_strcasecmp(line, "Encryption") && value) - { - strlcpy(encryption, value, sizeof(encryption)); - cups_encryption = encryption; - } + if (!_cups_strcasecmp(line, "Encryption") && value) + cups_set_encryption(cc, value); #ifndef __APPLE__ /* - * The Server directive is not supported on OS X due to app sandboxing - * restrictions, i.e. not all apps request network access. + * The ServerName directive is not supported on OS X due to app + * sandboxing restrictions, i.e. not all apps request network access. */ - else if (!cups_server && (!cg->server[0] || !cg->ipp_port) && - !_cups_strcasecmp(line, "ServerName") && value) - { - strlcpy(server_name, value, sizeof(server_name)); - cups_server = server_name; - } + else if (!_cups_strcasecmp(line, "ServerName") && value) + cups_set_server_name(cc, value); #endif /* !__APPLE__ */ - else if (!cups_user && !_cups_strcasecmp(line, "User") && value) - { - strlcpy(user, value, sizeof(user)); - cups_user = user; - } - else if (!cups_anyroot && !_cups_strcasecmp(line, "AllowAnyRoot") && value) - { - strlcpy(any_root, value, sizeof(any_root)); - cups_anyroot = any_root; - } - else if (!cups_expiredcerts && !_cups_strcasecmp(line, "AllowExpiredCerts") && + else if (!_cups_strcasecmp(line, "User") && value) + cups_set_user(cc, value); + else if (!_cups_strcasecmp(line, "AllowAnyRoot") && value) + cc->any_root = cups_boolean_value(value); + else if (!_cups_strcasecmp(line, "AllowExpiredCerts") && value) - { - strlcpy(expired_certs, value, sizeof(expired_certs)); - cups_expiredcerts = expired_certs; - } - else if (!cups_validatecerts && !_cups_strcasecmp(line, "ValidateCerts") && value) - { - strlcpy(validate_certs, value, sizeof(validate_certs)); - cups_validatecerts = validate_certs; - } + cc->expired_certs = cups_boolean_value(value); + else if (!_cups_strcasecmp(line, "ValidateCerts") && value) + cc->validate_certs = cups_boolean_value(value); #ifdef HAVE_GSSAPI - else if (!cups_gssservicename && !_cups_strcasecmp(line, "GSSServiceName") && - value) - { - strlcpy(gss_service_name, value, sizeof(gss_service_name)); - cups_gssservicename = gss_service_name; - } + else if (!_cups_strcasecmp(line, "GSSServiceName") && value) + cups_set_gss_service_name(cc, value); #endif /* HAVE_GSSAPI */ - else if (ssl_options && !_cups_strcasecmp(line, "SSLOptions") && value) - { - /* - * SSLOptions [AllowRC4] [AllowSSL3] [None] - */ +#ifdef HAVE_SSL + else if (!_cups_strcasecmp(line, "SSLOptions") && value) + cups_set_ssl_options(cc, value); +#endif /* HAVE_SSL */ + } +} - int options = 0; /* SSL/TLS options */ - char *start, /* Start of option */ - *end; /* End of option */ - for (start = value; *start; start = end) - { - /* - * Find end of keyword... - */ - - end = start; - while (*end && !_cups_isspace(*end)) - end ++; - - if (*end) - *end++ = '\0'; - - /* - * Compare... - */ - - if (!_cups_strcasecmp(start, "AllowRC4")) - options |= _HTTP_TLS_ALLOW_RC4; - else if (!_cups_strcasecmp(start, "AllowSSL3")) - options |= _HTTP_TLS_ALLOW_SSL3; - else if (!_cups_strcasecmp(start, "None")) - options = 0; - } +/* + * 'cups_set_encryption()' - Set the Encryption value. + */ - _httpTLSSetOptions(options); - } - } +static void +cups_set_encryption( + _cups_client_conf_t *cc, /* I - client.conf values */ + const char *value) /* I - Value */ +{ + if (!_cups_strcasecmp(value, "never")) + cc->encryption = HTTP_ENCRYPTION_NEVER; + else if (!_cups_strcasecmp(value, "always")) + cc->encryption = HTTP_ENCRYPTION_ALWAYS; + else if (!_cups_strcasecmp(value, "required")) + cc->encryption = HTTP_ENCRYPTION_REQUIRED; + else + cc->encryption = HTTP_ENCRYPTION_IF_REQUESTED; +} - /* - * Set values... - */ - if (cg->encryption == (http_encryption_t)-1 && cups_encryption) - { - if (!_cups_strcasecmp(cups_encryption, "never")) - cg->encryption = HTTP_ENCRYPTION_NEVER; - else if (!_cups_strcasecmp(cups_encryption, "always")) - cg->encryption = HTTP_ENCRYPTION_ALWAYS; - else if (!_cups_strcasecmp(cups_encryption, "required")) - cg->encryption = HTTP_ENCRYPTION_REQUIRED; - else - cg->encryption = HTTP_ENCRYPTION_IF_REQUESTED; - } +/* + * 'cups_set_gss_service_name()' - Set the GSSServiceName value. + */ - if ((!cg->server[0] || !cg->ipp_port) && cups_server) - cupsSetServer(cups_server); +#ifdef HAVE_GSSAPI +static void +cups_set_gss_service_name( + _cups_client_conf_t *cc, /* I - client.conf values */ + const char *value) /* I - Value */ +{ + strlcpy(cc->gss_service_name, value, sizeof(cc->gss_service_name)); +} +#endif /* HAVE_GSSAPI */ - if (!cg->server[0]) - { -#ifdef CUPS_DEFAULT_DOMAINSOCKET - /* - * If we are compiled with domain socket support, only use the - * domain socket if it exists and has the right permissions... - */ - struct stat sockinfo; /* Domain socket information */ +/* + * 'cups_set_server_name()' - Set the ServerName value. + */ - if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) && - (sockinfo.st_mode & S_IRWXO) == S_IRWXO) - cups_server = CUPS_DEFAULT_DOMAINSOCKET; - else -#endif /* CUPS_DEFAULT_DOMAINSOCKET */ - cups_server = "localhost"; +static void +cups_set_server_name( + _cups_client_conf_t *cc, /* I - client.conf values */ + const char *value) /* I - Value */ +{ + strlcpy(cc->server_name, value, sizeof(cc->server_name)); +} - cupsSetServer(cups_server); - } - if (!cg->ipp_port) - { - const char *ipp_port; /* IPP_PORT environment variable */ +/* + * 'cups_set_ssl_options()' - Set the SSLOptions value. + */ - if ((ipp_port = getenv("IPP_PORT")) != NULL) - { - if ((cg->ipp_port = atoi(ipp_port)) <= 0) - cg->ipp_port = CUPS_DEFAULT_IPP_PORT; - } - else - cg->ipp_port = CUPS_DEFAULT_IPP_PORT; - } +#ifdef HAVE_SSL +static void +cups_set_ssl_options( + _cups_client_conf_t *cc, /* I - client.conf values */ + const char *value) /* I - Value */ +{ + /* + * SSLOptions [AllowRC4] [AllowSSL3] [None] + */ - if (!cg->user[0]) - { - if (cups_user) - strlcpy(cg->user, cups_user, sizeof(cg->user)); - else - { -#ifdef WIN32 - /* - * Get the current user name from the OS... - */ + int options = 0; /* SSL/TLS options */ + char temp[256], /* Copy of value */ + *start, /* Start of option */ + *end; /* End of option */ - DWORD size; /* Size of string */ - size = sizeof(cg->user); - if (!GetUserName(cg->user, &size)) -#else - /* - * Try the USER environment variable as the default username... - */ + strlcpy(temp, value, sizeof(temp)); - const char *envuser = getenv("USER"); - /* Default username */ - struct passwd *pw = NULL; /* Account information */ + for (start = temp; *start; start = end) + { + /* + * Find end of keyword... + */ - if (envuser) - { - /* - * Validate USER matches the current UID, otherwise don't allow it to - * override things... This makes sure that printing after doing su or - * sudo records the correct username. - */ - - if ((pw = getpwnam(envuser)) != NULL && pw->pw_uid != getuid()) - pw = NULL; - } + end = start; + while (*end && !_cups_isspace(*end)) + end ++; - if (!pw) - pw = getpwuid(getuid()); + if (*end) + *end++ = '\0'; - if (pw) - strlcpy(cg->user, pw->pw_name, sizeof(cg->user)); - else -#endif /* WIN32 */ - { - /* - * Use the default "unknown" user name... - */ + /* + * Compare... + */ - strlcpy(cg->user, "unknown", sizeof(cg->user)); - } - } + if (!_cups_strcasecmp(start, "AllowRC4")) + options |= _HTTP_TLS_ALLOW_RC4; + else if (!_cups_strcasecmp(start, "AllowSSL3")) + options |= _HTTP_TLS_ALLOW_SSL3; + else if (!_cups_strcasecmp(start, "None")) + options = 0; } -#ifdef HAVE_GSSAPI - if (!cups_gssservicename) - cups_gssservicename = CUPS_DEFAULT_GSSSERVICENAME; - - strlcpy(cg->gss_service_name, cups_gssservicename, - sizeof(cg->gss_service_name)); -#endif /* HAVE_GSSAPI */ + cc->ssl_options = options; +} +#endif /* HAVE_SSL */ - if (cups_anyroot) - cg->any_root = !_cups_strcasecmp(cups_anyroot, "yes") || - !_cups_strcasecmp(cups_anyroot, "on") || - !_cups_strcasecmp(cups_anyroot, "true"); - if (cups_expiredcerts) - cg->expired_certs = !_cups_strcasecmp(cups_expiredcerts, "yes") || - !_cups_strcasecmp(cups_expiredcerts, "on") || - !_cups_strcasecmp(cups_expiredcerts, "true"); +/* + * 'cups_set_user()' - Set the User value. + */ - if (cups_validatecerts) - cg->validate_certs = !_cups_strcasecmp(cups_validatecerts, "yes") || - !_cups_strcasecmp(cups_validatecerts, "on") || - !_cups_strcasecmp(cups_validatecerts, "true"); +static void +cups_set_user( + _cups_client_conf_t *cc, /* I - client.conf values */ + const char *value) /* I - Value */ +{ + strlcpy(cc->user, value, sizeof(cc->user)); } /* - * End of "$Id: usersys.c 12215 2014-10-20 18:24:56Z msweet $". + * End of "$Id: usersys.c 12481 2015-02-03 12:45:14Z msweet $". */ diff --git a/cups/util.c b/cups/util.c index 89f8a26b9..3ccc21c14 100644 --- a/cups/util.c +++ b/cups/util.c @@ -1,9 +1,9 @@ /* - * "$Id: util.c 12220 2014-10-20 22:03:01Z msweet $" + * "$Id: util.c 12449 2015-01-29 20:32:16Z msweet $" * * Printing utilities for CUPS. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -1509,7 +1509,7 @@ cups_get_printer_uri( ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, uri); - ippAddStrings(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requested-attributes", sizeof(requested_attrs) / sizeof(requested_attrs[0]), NULL, requested_attrs); + ippAddStrings(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD, "requested-attributes", sizeof(requested_attrs) / sizeof(requested_attrs[0]), NULL, requested_attrs); /* * Do the request and get back a response... @@ -1655,5 +1655,5 @@ cups_get_printer_uri( /* - * End of "$Id: util.c 12220 2014-10-20 22:03:01Z msweet $". + * End of "$Id: util.c 12449 2015-01-29 20:32:16Z msweet $". */ diff --git a/cups/versioning.h b/cups/versioning.h index 7f61f6d18..79ac89176 100644 --- a/cups/versioning.h +++ b/cups/versioning.h @@ -1,5 +1,5 @@ /* - * "$Id: versioning.h 11232 2013-08-12 19:33:47Z msweet $" + * "$Id: versioning.h 12419 2015-01-22 15:51:20Z msweet $" * * API versioning definitions for CUPS. * @@ -53,6 +53,9 @@ # ifndef AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER # define AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER __attribute__((unavailable)) # endif /* !AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER */ +# ifndef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER +# define AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER __attribute__((unavailable)) +# endif /* !AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER */ # define _CUPS_API_1_1_19 AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER # define _CUPS_API_1_1_20 AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER # define _CUPS_API_1_1_21 AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER @@ -62,7 +65,7 @@ # define _CUPS_API_1_5 AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER # define _CUPS_API_1_6 AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER # define _CUPS_API_1_7 AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER -# define _CUPS_API_2_0 +# define _CUPS_API_2_0 AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER # else # define _CUPS_API_1_1_19 # define _CUPS_API_1_1_20 @@ -159,5 +162,5 @@ #endif /* !_CUPS_VERSIONING_H_ */ /* - * End of "$Id: versioning.h 11232 2013-08-12 19:33:47Z msweet $". + * End of "$Id: versioning.h 12419 2015-01-22 15:51:20Z msweet $". */ diff --git a/doc/es/index.html.in b/doc/es/index.html.in index 11680f755..4faafe882 100644 --- a/doc/es/index.html.in +++ b/doc/es/index.html.in @@ -50,6 +50,6 @@ - + diff --git a/doc/help/man-cups-files.conf.html b/doc/help/man-cups-files.conf.html index 2c3caa2c1..9ab29e819 100644 --- a/doc/help/man-cups-files.conf.html +++ b/doc/help/man-cups-files.conf.html @@ -21,7 +21,7 @@ Comment lines start with the # character. The following directives are understood by cupsd(8):
-
AccessLog +
AccessLog
AccessLog filename
AccessLog syslog
Defines the access log filename. @@ -34,7 +34,7 @@ The server name may be included in filenames using the string "%s", for example: The default is "/var/log/cups/access_log". -
ConfigFilePerm mode +
ConfigFilePerm mode
Specifies the permissions for all configuration files that the scheduler writes. The default is "0644" on OS X and "0640" on all other operating systems.
@@ -42,13 +42,13 @@ The default is "0644" on OS X and "0640" on all other operating systems. This is done because printer device URIs sometimes contain sensitive authentication information that should not be generally known on the system. There is no way to disable this security feature.
-
DataDir path +
DataDir path
Specifies the directory where data files can be found. The default is usually "/usr/share/cups". -
DocumentRoot directory +
DocumentRoot directory
Specifies the root directory for the CUPS web interface content. The default is usually "/usr/share/doc/cups". -
ErrorLog +
ErrorLog
ErrorLog filename
ErrorLog syslog
Defines the error log filename. @@ -61,7 +61,7 @@ The server name may be included in filenames using the string "%s", for example: The default is "/var/log/cups/error_log". -
FatalErrors none +
FatalErrors none
FatalErrors all -kind [ ... -kind ]
FatalErrors kind [ ... kind ]
Specifies which errors are fatal, causing the scheduler to exit. @@ -84,17 +84,17 @@ The kind strings are:
permissions
Bad startup file permissions are fatal, for example shared TLS certificate and key files with world-read permissions. -
FileDevice Yes +
FileDevice Yes
FileDevice No
Specifies whether the file pseudo-device can be used for new printer queues. The URI "file:///dev/null" is always allowed. -
Group group-name-or-number +
Group group-name-or-number
Specifies the group name or ID that will be used when executing external programs. The default group is operating system specific but is usually "lp" or "nobody". -
LogFilePerm mode +
LogFilePerm mode
Specifies the permissions of all log files that the scheduler writes. The default is "0644". -
PageLog [ filename ] +
PageLog [ filename ]
PageLog syslog
Defines the page log filename. The value "syslog" causes log entries to be sent to the system log daemon. @@ -106,40 +106,41 @@ The server name may be included in filenames using the string "%s", for example: The default is "/var/log/cups/page_log". -
RemoteRoot username +
RemoteRoot username
Specifies the username that is associated with unauthenticated accesses by clients claiming to be the root user. The default is "remroot". -
RequestRoot directory +
RequestRoot directory
Specifies the directory that contains print jobs and other HTTP request data. The default is "/var/spool/cups". -
Sandboxing off +
Sandboxing off
Sandboxing relaxed
Sandboxing strict
Specifies the level of security sandboxing that is applied to print filters, backends, and other child processes of the scheduler. The default is "strict". This directive is currently only used/supported on OS X. -
ServerBin directory +
ServerBin directory
Specifies the directory containing the backends, CGI programs, filters, helper programs, notifiers, and port monitors. The default is "/usr/lib/cups" or "/usr/libexec/cups" depending on the platform. -
ServerKeychain path +
ServerKeychain path
Specifies the location of TLS certificates and private keys. The default is "/Library/Keychains/System.keychain" on OS X and "/etc/cups/ssl" on all other operating systems. -
ServerRoot directory +OS X uses its keychain database to store certificates and keys while other platforms use separate files in the specified directory, *.crt for PEM-encoded certificates and *.key for PEM-encoded private keys. +
ServerRoot directory
Specifies the directory containing the server configuration files. The default is "/etc/cups". -
SyncOnClose Yes +
SyncOnClose Yes
SyncOnClose No
Specifies whether the scheduler calls fsync(2) after writing configuration or state files. The default is "No". -
SystemGroup group-name [ ... group-name ] +
SystemGroup group-name [ ... group-name ]
Specifies the group(s) to use for @SYSTEM group authentication. The default contains "admin", "lpadmin", "root", "sys", and/or "system". -
TempDir directory +
TempDir directory
Specifies the directory where temporary files are stored. The default is "/var/spool/cups/tmp". -
User username +
User username
Specifies the user name or ID that is used when running external programs. The default is "lp".
@@ -154,7 +155,7 @@ The default is "lp". subscriptions.conf(5), CUPS Online Help (http://localhost:631/help)

Copyright

-Copyright © 2007-2014 by Apple Inc. +Copyright © 2007-2015 by Apple Inc. diff --git a/doc/help/man-cupsd.conf.html b/doc/help/man-cupsd.conf.html index d6a927b6a..f378bffa7 100644 --- a/doc/help/man-cupsd.conf.html +++ b/doc/help/man-cupsd.conf.html @@ -28,7 +28,7 @@ Comment lines start with the # character. The following top-level directives are understood by cupsd(8):
-
AccessLogLevel config +
AccessLogLevel config
AccessLogLevel actions
AccessLogLevel all
Specifies the logging level for the AccessLog file. @@ -36,67 +36,67 @@ The "config" level logs when printers and classes are added, deleted, or modifie The "actions" level logs when print jobs are submitted, held, released, modified, or canceled, and any of the conditions for "config". The "all" level logs all requests. The default access log level is "actions". -
AutoPurgeJobs Yes +
AutoPurgeJobs Yes
AutoPurgeJobs No

Specifies whether to purge job history data automatically when it is no longer required for quotas. The default is "No". -
BrowseLocalProtocols all +
BrowseLocalProtocols all
BrowseLocalProtocols dnssd
BrowseLocalProtocols none
Specifies which protocols to use for local printer sharing. The default is "dnssd" on systems that support Bonjour and "none" otherwise. -
BrowseWebIF Yes +
BrowseWebIF Yes
BrowseWebIF No

Specifies whether the CUPS web interface is advertised. The default is "No". -
Browsing Yes +
Browsing Yes
Browsing No

Specifies whether shared printers are advertised. The default is "No". -
Classification banner +
Classification banner

Specifies the security classification of the server. Any valid banner name can be used, including "classified", "confidential", "secret", "topsecret", and "unclassified", or the banner can be omitted to disable secure printing functions. The default is no classification banner. -
ClassifyOverride Yes +
ClassifyOverride Yes
ClassifyOverride No

Specifies whether users may override the classification (cover page) of individual print jobs using the "job-sheets" option. The default is "No". -
DefaultAuthType Basic +
DefaultAuthType Basic
DefaultAuthType Negotiate

Specifies the default type of authentication to use. The default is "Basic". -
DefaultEncryption Never +
DefaultEncryption Never
DefaultEncryption IfRequested
DefaultEncryption Required
Specifies whether encryption will be used for authenticated requests. The default is "Required". -
DefaultLanguage locale +
DefaultLanguage locale
Specifies the default language to use for text and web content. The default is "en". -
DefaultPaperSize Auto +
DefaultPaperSize Auto
DefaultPaperSize None
DefaultPaperSize sizename
Specifies the default paper size for new print queues. "Auto" uses a locale-specific default, while "None" specifies there is no default paper size. Specific size names are typically "Letter" or "A4". The default is "Auto". -
DefaultPolicy policy-name +
DefaultPolicy policy-name
Specifies the default access policy to use. The default access policy is "default". -
DefaultShared Yes +
DefaultShared Yes
DefaultShared No
Specifies whether local printers are shared by default. The default is "Yes". -
DirtyCleanInterval seconds +
DirtyCleanInterval seconds
Specifies the delay for updating of configuration and state files. A value of 0 causes the update to happen as soon as possible, typically within a few milliseconds. The default value is "30". -
ErrorPolicy abort-job +
ErrorPolicy abort-job
Specifies that a failed print job should be aborted (discarded) unless otherwise specified for the printer.
ErrorPolicy retry-job
Specifies that a failed print job should be retried at a later time unless otherwise specified for the printer. @@ -104,24 +104,24 @@ The default value is "30".
Specifies that a failed print job should be retried immediately unless otherwise specified for the printer.
ErrorPolicy stop-printer
Specifies that a failed print job should stop the printer unless otherwise specified for the printer. The 'stop-printer' error policy is the default. -
FilterLimit limit +
FilterLimit limit
Specifies the maximum cost of filters that are run concurrently, which can be used to minimize disk, memory, and CPU resource problems. A limit of 0 disables filter limiting. An average print to a non-PostScript printer needs a filter limit of about 200. A PostScript printer needs about half that (100). Setting the limit below these thresholds will effectively limit the scheduler to printing a single job at any time. The default limit is "0". -
FilterNice nice-value +
FilterNice nice-value
Specifies the scheduling priority ( nice(8) value) of filters that are run to print a job. The nice value ranges from 0, the highest priority, to 19, the lowest priority. The default is 0. -
GSSServiceName name +
GSSServiceName name
Specifies the service name when using Kerberos authentication. The default service name is "http."
HostNameLookups On -
HostNameLookups Off +
HostNameLookups Off
HostNameLookups Double
Specifies whether to do reverse lookups on connecting clients. The "Double" setting causes @@ -130,50 +130,50 @@ to verify that the hostname resolved from the address matches one of the address Double lookups also prevent clients with unregistered addresses from connecting to your server. The default is "Off" to avoid the potential server performance problems with hostname lookups. Only set this option to "On" or "Double" if absolutely required. -
JobKillDelay seconds +
JobKillDelay seconds
Specifies the number of seconds to wait before killing the filters and backend associated with a canceled or held job. The default is "30". -
JobRetryInterval seconds +
JobRetryInterval seconds
Specifies the interval between retries of jobs in seconds. This is typically used for fax queues but can also be used with normal print queues whose error policy is "retry-job" or "retry-current-job". The default is "30". -
JobRetryLimit count +
JobRetryLimit count
Specifies the number of retries that are done for jobs. This is typically used for fax queues but can also be used with normal print queues whose error policy is "retry-job" or "retry-current-job". The default is "5". -
KeepAlive Yes +
KeepAlive Yes
KeepAlive No
Specifies whether to support HTTP keep-alive connections. The default is "Yes". -
KeepAliveTimeout seconds +
KeepAliveTimeout seconds
Specifies how long an idle client connection remains open. The default is "30". -
<Limit operation ...> ... </Limit> +
<Limit operation ...> ... </Limit>
Specifies the IPP operations that are being limited inside a Policy section. IPP operation names are listed below in the section "IPP OPERATIONS". -
<Limit method ...> ... </Limit> -
<LimitExcept method ...> ... </LimitExcept> +
<Limit method ...> ... </Limit> +
<LimitExcept method ...> ... </LimitExcept>
Specifies the HTTP methods that are being limited inside a Location section. HTTP method names are listed below in the section "HTTP METHODS". -
LimitRequestBody size +
LimitRequestBody size
Specifies the maximum size of print files, IPP requests, and HTML form data. The default is "0" which disables the limit check. -
Listen ipv4-address:port +
Listen ipv4-address:port
Listen [ipv6-address]:port
Listen *:port
Listen /path/to/domain/socket
Listens to the specified address and port or domain socket path for connections. Multiple Listen directives can be provided to listen on multiple addresses. The Listen directive is similar to the Port directive but allows you to restrict access to specific interfaces or networks. -
ListenBackLog number +
ListenBackLog number
Specifies the number of pending connections that will be allowed. This normally only affects very busy servers that have reached the MaxClients limit, but can also be triggered by large numbers of simultaneous connections. When the limit is reached, the operating system will refuse additional connections until the scheduler can accept the pending ones. The default is the OS-defined default limit, typically either "5" for older operating systems or "128" for newer operating systems. -
<Location /path> ... </Location> +
<Location /path> ... </Location>
Specifies access control for the named location. Paths are documented below in the section "LOCATION PATHS". -
LogDebugHistory number +
LogDebugHistory number
Specifies the number of debugging messages that are retained for logging if an error occurs in a print job. Debug messages are logged regardless of the LogLevel setting. -
LogLevel none +
LogLevel none
LogLevel emerg
LogLevel alert
LogLevel crit @@ -186,45 +186,45 @@ Paths are documented below in the section "LOCATION PATHS".
Specifies the level of logging for the ErrorLog file. The value "none" stops all logging while "debug2" logs everything. The default is "warn". -
LogTimeFormat standard +
LogTimeFormat standard
LogTimeFormat usecs
Specifies the format of the date and time in the log files. The value "standard" is the default and logs whole seconds while "usecs" logs microseconds. -
MaxClients number +
MaxClients number
Specifies the maximum number of simultaneous clients that are allowed by the scheduler. The default is "100". -
MaxClientsPerHost number +
MaxClientsPerHost number
Specifies the maximum number of simultaneous clients that are allowed from a single address. The default is the MaxClients value. -
MaxCopies number +
MaxCopies number
Specifies the maximum number of copies that a user can print of each job. The default is "9999". -
MaxHoldTime seconds +
MaxHoldTime seconds
Specifies the maximum time a job may remain in the "indefinite" hold state before it is canceled. The default is "0" which disables cancellation of held jobs. -
MaxJobs number +
MaxJobs number
Specifies the maximum number of simultaneous jobs that are allowed. Set to "0" to allow an unlimited number of jobs. The default is "500". -
MaxJobsPerPrinter number +
MaxJobsPerPrinter number
Specifies the maximum number of simultaneous jobs that are allowed per printer. The default is "0" which allows up to MaxJobs jobs per printer. -
MaxJobsPerUser number +
MaxJobsPerUser number
Specifies the maximum number of simultaneous jobs that are allowed per user. The default is "0" which allows up to MaxJobs jobs per user. -
MaxJobTime seconds +
MaxJobTime seconds
Specifies the maximum time a job may take to print before it is canceled. Set to "0" to disable cancellation of "stuck" jobs. The default is "10800" (3 hours). -
MaxLogSize size +
MaxLogSize size
Specifies the maximum size of the log files before they are rotated. The value "0" disables log rotation. The default is "1048576" (1MB). -
MultipleOperationTimeout seconds +
MultipleOperationTimeout seconds
Specifies the maximum amount of time to allow between files in a multiple file print job. The default is "300" (5 minutes). -
PageLogFormat format-string +
PageLogFormat format-string
Specifies the format of PageLog lines. Sequences beginning with percent (%) characters are replaced with the corresponding information, while all other characters are copied literally. The following percent sequences are recognized: @@ -241,45 +241,45 @@ The following percent sequences are recognized: The default is "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}". -
PassEnv variable [ ... variable ] +
PassEnv variable [ ... variable ]
Passes the specified environment variable(s) to child processes. -
<Policy name> ... </Policy> +
<Policy name> ... </Policy>
Specifies access control for the named policy. -
Port number +
Port number
Listens to the specified port number for connections. -
PreserveJobFiles Yes +
PreserveJobFiles Yes
PreserveJobFiles No
PreserveJobFiles seconds
Specifies whether job files (documents) are preserved after a job is printed. If a numeric value is specified, job files are preserved for the indicated number of seconds after printing. The default is "86400" (preserve 1 day). -
PreserveJobHistory Yes +
PreserveJobHistory Yes
PreserveJobHistory No
PreserveJobHistory seconds
Specifies whether the job history is preserved after a job is printed. If a numeric value is specified, the job history is preserved for the indicated number of seconds after printing. If "Yes", the job history is preserved until the MaxJobs limit is reached. The default is "Yes". -
ReloadTimeout seconds +
ReloadTimeout seconds
Specifies the amount of time to wait for job completion before restarting the scheduler. The default is "30". -
RIPCache size +
RIPCache size
Specifies the maximum amount of memory to use when converting documents into bitmaps for a printer. The default is "128m". -
ServerAdmin email-address +
ServerAdmin email-address
Specifies the email address of the server administrator. The default value is "root@ServerName". -
ServerAlias hostname [ ... hostname ] +
ServerAlias hostname [ ... hostname ]
ServerAlias *
The ServerAlias directive is used for HTTP Host header validation when clients connect to the scheduler from external interfaces. Using the special name "*" can expose your system to known browser-based DNS rebinding attacks, even when accessing sites through a firewall. If the auto-discovery of alternate names does not work, we recommend listing each alternate name with a ServerAlias directive instead of using "*". -
ServerName hostname +
ServerName hostname
Specifies the fully-qualified hostname of the server. The default is the value reported by the hostname(1) command. -
ServerTokens None +
ServerTokens None
ServerTokens ProductOnly
ServerTokens Major
ServerTokens Minor @@ -297,28 +297,28 @@ command. command. "Full" reports "CUPS 2.0.0 (UNAME) IPP/2.0". The default is "Minimal". -
SetEnv variable value +
SetEnv variable value
Set the specified environment variable to be passed to child processes. -
SSLListen ipv4-address:port +
SSLListen ipv4-address:port
SSLListen [ipv6-address]:port
SSLListen *:port
Listens on the specified address and port for encrypted connections. -
SSLOptions [AllowRC4] [AllowSSL3] +
SSLOptions [AllowRC4] [AllowSSL3]
SSLOptions None
Sets encryption options. By default, CUPS only supports encryption using TLS v1.0 or higher using known secure cipher suites. The AllowRC4 option enables the 128-bit RC4 cipher suites, which are required for some older clients that do not implement newer ones. The AllowSSL3 option enables SSL v3.0, which is required for some older clients that do not support TLS v1.0. -
SSLPort port +
SSLPort port
Listens on the specified port for encrypted connections. -
StrictConformance Yes +
StrictConformance Yes
StrictConformance No
Specifies whether the scheduler requires clients to strictly adhere to the IPP specifications. The default is "No". -
Timeout seconds +
Timeout seconds
Specifies the HTTP request timeout. The default is "300" (5 minutes). -
WebInterface yes +
WebInterface yes
WebInterface no
Specifies whether the web interface is enabled. The default is "No". diff --git a/doc/help/network.html b/doc/help/network.html index 02a232ed5..e29c9a45b 100644 --- a/doc/help/network.html +++ b/doc/help/network.html @@ -266,11 +266,11 @@ lpd://username@ip-address-or-hostname/queue?option=value&op sanitize_title=no - Specifies that the job title string should not be restricted to ASCII characters. + Specifies that the job title string should not be restricted to ASCII alphanumeric and space characters. sanitize_title=yes - Specifies that the job title string should be restricted to ASCII characters. + Specifies that the job title string should be restricted to ASCII alphanumeric and space characters. snmp=false diff --git a/doc/help/policies.html b/doc/help/policies.html index f7141a58a..8a0fc313d 100644 --- a/doc/help/policies.html +++ b/doc/help/policies.html @@ -14,12 +14,12 @@

The Basics

-

Operation policies are used for all IPP requests sent to the scheduler and are evaluated after the Location based access control rules. This means that operation policies can only add additional security restrictions to a request, never relax them. Use Location based access control rules for server-wide limits and operation policies for limits on individual printers, tasks, or services.

+

Operation policies are used for all IPP requests sent to the scheduler and are evaluated after the Location based access control rules. This means that operation policies can only add additional security restrictions to a request, never relax them. Use Location based access control rules for server-wide limits and operation policies for limits on individual printers, tasks, or services.

-

Policies are stored in the cupsd.conf file in Policy sections. Each policy has an alphanumeric name that is used to select it. Inside the policy section are one or more Limit subsections which list the operations that are affected by the rules inside it. Listing 1 shows the default operation policy, appropriately called "default", that is shipped with CUPS.

+

Policies are stored in the cupsd.conf file in Policy sections. Each policy has an alphanumeric name that is used to select it. Inside the policy section are one or more Limit subsections which list the operations that are affected by the rules inside it. Listing 1 shows the default operation policy, appropriately called "default", that is shipped with CUPS.

-

The easiest way to add a policy to the cupsd.conf file is to use the web interface. Click on the Administration tab and then the Edit Configuration File button to edit the current cupsd.conf file. Click on the Save Changes button to save the changes and restart the scheduler. If you edit the cupsd.conf file from the console, make sure to restart the cupsd process before trying to use the new policy.

+

The easiest way to add a policy to the cupsd.conf file is to use the web interface. Click on the Administration tab and then the Edit Configuration File button to edit the current cupsd.conf file. Click on the Save Changes button to save the changes and restart the scheduler. If you edit the cupsd.conf file from the console, make sure to restart the cupsd process before trying to use the new policy.

 Listing 1: Default Operation Policy
@@ -97,7 +97,7 @@ HREF="ref-cupsd-conf.html#LimitIPP">Limit subsections which list th
 
 

The operation names are listed on a single line with spaces separating them. Each name corresponds to the IPP operation described in any of the IETF or PWG standards documents for the Internet Printing Protocol. Table 1 lists all of the operations that have been defined along with their usage in CUPS.

-

The access control rules are listed after the Limit line and are the same as those used for Location sections. In this case, we require the owner of the job ("@OWNER") or a member of the SystemGroup ("@SYSTEM") to do the operation. Because we do not include an AuthType directive here, the user information can come from the IPP request itself or the authenticated username from the HTTP request. The administrative operations starting on line 9, however, do use the AuthType directive, and so administrative operations need to be authenticated:

+

The access control rules are listed after the Limit line and are the same as those used for Location sections. In this case, we require the owner of the job ("@OWNER") or a member of the SystemGroup ("@SYSTEM") to do the operation. Because we do not include an AuthType directive here, the user information can come from the IPP request itself or the authenticated username from the HTTP request. The administrative operations starting on line 9, however, do use the AuthType directive, and so administrative operations need to be authenticated:

  9      <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class
@@ -492,7 +492,7 @@ HREF="ref-cupsd-conf.html#LimitIPP">Limit subsections which list th
 </Limit>
 
-

The directives inside the Limit subsection can use any of the normal limiting directives: Allow, AuthType, Deny, Encryption, Require, and Satisfy. Table 2 lists some basic "recipes" for different access control rules.

+

The directives inside the Limit subsection can use any of the normal limiting directives: Allow, AuthType, Deny, Encryption, Require, and Satisfy. Table 2 lists some basic "recipes" for different access control rules.

@@ -599,7 +599,7 @@ Allow from @LOCAL

Using Policies

-

Once you have created a policy, you can use it in two ways. The first way is to assign it as the default policy for the system using the DefaultPolicy directive in the cupsd.conf file. For example, add the following line to the cupsd.conf file to use the "lab999" policy from the previous section:

+

Once you have created a policy, you can use it in two ways. The first way is to assign it as the default policy for the system using the DefaultPolicy directive in the cupsd.conf file. For example, add the following line to the cupsd.conf file to use the "lab999" policy from the previous section:

 DefaultPolicy lab999
diff --git a/doc/index.html.in b/doc/index.html.in
index c94db2d9a..8ec1d2f63 100644
--- a/doc/index.html.in
+++ b/doc/index.html.in
@@ -50,6 +50,6 @@
 	
       
     
-    
+    
   
 
diff --git a/doc/ja/index.html.in b/doc/ja/index.html.in
new file mode 100644
index 000000000..61e9d0885
--- /dev/null
+++ b/doc/ja/index.html.in
@@ -0,0 +1,55 @@
+
+
+  
+    
+    
+    
+    
+    
+    
+    ホーム - CUPS @CUPS_VERSION@@CUPS_REVISION@
+  
+  
+    
+    
+    
+  
+
diff --git a/filter/pstops.c b/filter/pstops.c
index 750d32259..987330fa6 100644
--- a/filter/pstops.c
+++ b/filter/pstops.c
@@ -1,5 +1,5 @@
 /*
- * "$Id: pstops.c 11558 2014-02-06 18:33:34Z msweet $"
+ * "$Id: pstops.c 12358 2014-12-11 17:42:22Z msweet $"
  *
  * PostScript filter for CUPS.
  *
@@ -264,7 +264,8 @@ main(int  argc,				/* I - Number of command-line args */
 
     if ((fp = cupsFileOpen(argv[6], "r")) == NULL)
     {
-      _cupsLangPrintError("ERROR", _("Unable to open print file"));
+      if (!JobCanceled)
+        _cupsLangPrintError("ERROR", _("Unable to open print file"));
       return (1);
     }
   }
@@ -3400,5 +3401,5 @@ write_options(
 
 
 /*
- * End of "$Id: pstops.c 11558 2014-02-06 18:33:34Z msweet $".
+ * End of "$Id: pstops.c 12358 2014-12-11 17:42:22Z msweet $".
  */
diff --git a/filter/raster.c b/filter/raster.c
index 827215c68..819724873 100644
--- a/filter/raster.c
+++ b/filter/raster.c
@@ -1,9 +1,9 @@
 /*
- * "$Id: raster.c 12124 2014-08-28 15:37:22Z msweet $"
+ * "$Id: raster.c 12453 2015-01-30 15:42:19Z msweet $"
  *
  * Raster file routines for CUPS.
  *
- * Copyright 2007-2014 by Apple Inc.
+ * Copyright 2007-2015 by Apple Inc.
  * Copyright 1997-2006 by Easy Software Products.
  *
  * This file is part of the CUPS Imaging library.
@@ -256,7 +256,10 @@ cupsRasterReadHeader(
   */
 
   if (!cups_raster_read_header(r))
+  {
+    memset(h, 0, sizeof(cups_page_header_t));
     return (0);
+  }
 
  /*
   * Copy the header to the user-supplied buffer...
@@ -285,7 +288,10 @@ cupsRasterReadHeader2(
   */
 
   if (!cups_raster_read_header(r))
+  {
+    memset(h, 0, sizeof(cups_page_header2_t));
     return (0);
+  }
 
  /*
   * Copy the header to the user-supplied buffer...
@@ -603,8 +609,9 @@ cupsRasterWriteHeader(
     fh.cupsInteger[15]       = htonl(r->header.cupsInteger[15]);
 					/* VendorLength */
 
-    memcpy(fh.cupsReal, r->header.cupsReal,
-           sizeof(fh.cupsReal) + sizeof(fh.cupsString));
+    void *dst = fh.cupsReal; /* Bypass bogus compiler warning */
+    void *src = r->header.cupsReal;
+    memcpy(dst, src, sizeof(fh.cupsReal) + sizeof(fh.cupsString));
 					/* VendorData */
 
     strlcpy(fh.cupsRenderingIntent, r->header.cupsRenderingIntent,
@@ -963,7 +970,7 @@ cups_raster_read_header(
 
   cups_raster_update(r);
 
-  return (r->header.cupsBytesPerLine != 0 && r->header.cupsHeight != 0);
+  return (r->header.cupsBytesPerLine != 0 && r->header.cupsHeight != 0 && (r->header.cupsBytesPerLine % r->bpp) == 0);
 }
 
 
@@ -1448,5 +1455,5 @@ cups_write_fd(void          *ctx,	/* I - File descriptor pointer */
 
 
 /*
- * End of "$Id: raster.c 12124 2014-08-28 15:37:22Z msweet $".
+ * End of "$Id: raster.c 12453 2015-01-30 15:42:19Z msweet $".
  */
diff --git a/locale/Makefile b/locale/Makefile
index d4e9c2851..56842fa70 100644
--- a/locale/Makefile
+++ b/locale/Makefile
@@ -1,5 +1,5 @@
 #
-# "$Id: Makefile 11558 2014-02-06 18:33:34Z msweet $"
+# "$Id: Makefile 12347 2014-12-09 21:47:23Z msweet $"
 #
 # Locale file makefile for CUPS.
 #
@@ -159,7 +159,7 @@ pot:	checkpo po2strings
 #
 
 checkpo:	checkpo.o ../cups/$(LIBCUPSSTATIC)
-	echo Linking $<...
+	echo Linking $@...
 	$(CC) $(ARCHFLAGS) $(LDFLAGS) -o checkpo checkpo.o \
 		../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
 		$(COMMONLIBS) $(LIBZ)
@@ -178,7 +178,7 @@ checkall:	checkpo
 #
 
 po2strings:	po2strings.o ../cups/$(LIBCUPSSTATIC)
-	echo Linking $<...
+	echo Linking $@...
 	$(CC) $(ARCHFLAGS) $(LDFLAGS) -o po2strings po2strings.o \
 		../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
 		$(COMMONLIBS) $(LIBZ)
@@ -192,7 +192,7 @@ po2strings:	po2strings.o ../cups/$(LIBCUPSSTATIC)
 #
 
 strings2po:	strings2po.o
-	echo Linking $<...
+	echo Linking $@...
 	$(CC) $(ARCHFLAGS) $(LDFLAGS) -o strings2po strings2po.o
 
 
@@ -204,5 +204,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 11558 2014-02-06 18:33:34Z msweet $".
+# End of "$Id: Makefile 12347 2014-12-09 21:47:23Z msweet $".
 #
diff --git a/locale/cups_ja.po b/locale/cups_ja.po
index d4b9f1b48..f2e873051 100644
--- a/locale/cups_ja.po
+++ b/locale/cups_ja.po
@@ -26,10 +26,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: CUPS 1.7\n"
+"Project-Id-Version: CUPS 2.0\n"
 "Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
 "POT-Creation-Date: 2014-08-29 22:25-0400\n"
-"PO-Revision-Date: 2013-08-19 11:51+0900\n"
+"PO-Revision-Date: 2014-11-15 19:27+0900\n"
 "Last-Translator: OPFC TRANSCUPS \n"
 "Language-Team: OPFC TRANSCUPS \n"
 "Language: ja\n"
@@ -37,122 +37,160 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
+#: systemv/lpstat.c:1867 systemv/lpstat.c:1990
 msgid "\t\t(all)"
 msgstr "\t\t(すべて)"
 
+#: systemv/lpstat.c:1870 systemv/lpstat.c:1873 systemv/lpstat.c:1993
+#: systemv/lpstat.c:1996
 msgid "\t\t(none)"
 msgstr "\t\t(なし)"
 
+#: berkeley/lpc.c:426
 #, c-format
 msgid "\t%d entries"
 msgstr "\t%d エントリー"
 
+#: systemv/lpstat.c:783 systemv/lpstat.c:799
 #, c-format
 msgid "\t%s"
 msgstr "\t%s"
 
+#: systemv/lpstat.c:1848 systemv/lpstat.c:1971
 msgid "\tAfter fault: continue"
 msgstr "\t失敗後: 継続"
 
+#: systemv/lpstat.c:1471 systemv/lpstat.c:1817 systemv/lpstat.c:1941
 #, c-format
 msgid "\tAlerts: %s"
 msgstr "\t警告: %s"
 
+#: systemv/lpstat.c:1871 systemv/lpstat.c:1994
 msgid "\tBanner required"
 msgstr "\tバナーが必要"
 
+#: systemv/lpstat.c:1872 systemv/lpstat.c:1995
 msgid "\tCharset sets:"
 msgstr "\t文字セット:"
 
+#: systemv/lpstat.c:1836 systemv/lpstat.c:1959
 msgid "\tConnection: direct"
 msgstr "\t接続: 直結"
 
+#: systemv/lpstat.c:1827 systemv/lpstat.c:1951
 msgid "\tConnection: remote"
 msgstr "\t接続: リモート"
 
+#: systemv/lpstat.c:1793 systemv/lpstat.c:1917
 msgid "\tContent types: any"
 msgstr "\tコンテンツの種類: すべて"
 
+#: systemv/lpstat.c:1875 systemv/lpstat.c:1998
 msgid "\tDefault page size:"
 msgstr "\tデフォルト用紙サイズ:"
 
+#: systemv/lpstat.c:1874 systemv/lpstat.c:1997
 msgid "\tDefault pitch:"
 msgstr "\tデフォルトピッチ:"
 
+#: systemv/lpstat.c:1876 systemv/lpstat.c:1999
 msgid "\tDefault port settings:"
 msgstr "\tデフォルトポート設定:"
 
+#: systemv/lpstat.c:1799 systemv/lpstat.c:1923
 #, c-format
 msgid "\tDescription: %s"
 msgstr "\t説明: %s"
 
+#: systemv/lpstat.c:1792 systemv/lpstat.c:1916
 msgid "\tForm mounted:"
 msgstr "\t設定されたフォーム:"
 
+#: systemv/lpstat.c:1869 systemv/lpstat.c:1992
 msgid "\tForms allowed:"
 msgstr "\t許可されているフォーム:"
 
+#: systemv/lpstat.c:1831 systemv/lpstat.c:1955
 #, c-format
 msgid "\tInterface: %s.ppd"
 msgstr "\tインターフェイス: %s.ppd"
 
+#: systemv/lpstat.c:1840 systemv/lpstat.c:1963
 #, c-format
 msgid "\tInterface: %s/interfaces/%s"
 msgstr "\tインターフェイス: %s/interfaces/%s"
 
+#: systemv/lpstat.c:1844 systemv/lpstat.c:1967
 #, c-format
 msgid "\tInterface: %s/ppd/%s.ppd"
 msgstr "\tインターフェイス: %s/ppd/%s.ppd"
 
+#: systemv/lpstat.c:1822 systemv/lpstat.c:1946
 #, c-format
 msgid "\tLocation: %s"
 msgstr "\t場所: %s"
 
+#: systemv/lpstat.c:1847 systemv/lpstat.c:1970
 msgid "\tOn fault: no alert"
 msgstr "\t失敗時: 警告なし"
 
+#: systemv/lpstat.c:1794 systemv/lpstat.c:1918
 msgid "\tPrinter types: unknown"
 msgstr "\tプリンターの種類: 不明"
 
+#: systemv/lpstat.c:1454
 #, c-format
 msgid "\tStatus: %s"
 msgstr "\tステータス: %s"
 
+#: systemv/lpstat.c:1852 systemv/lpstat.c:1866 systemv/lpstat.c:1975
+#: systemv/lpstat.c:1989
 msgid "\tUsers allowed:"
 msgstr "\t許可されているユーザー:"
 
+#: systemv/lpstat.c:1859 systemv/lpstat.c:1982
 msgid "\tUsers denied:"
 msgstr "\t禁止されているユーザー:"
 
+#: berkeley/lpc.c:428
 msgid "\tdaemon present"
 msgstr "\tデーモンは提供されています"
 
+#: berkeley/lpc.c:424
 msgid "\tno entries"
 msgstr "\tエントリーがありません"
 
+#: berkeley/lpc.c:396 berkeley/lpc.c:408
 #, c-format
 msgid "\tprinter is on device '%s' speed -1"
 msgstr "\tデバイス '%s' 上のプリンター 速度 -1"
 
+#: berkeley/lpc.c:421
 msgid "\tprinting is disabled"
 msgstr "\t印刷は無効です"
 
+#: berkeley/lpc.c:419
 msgid "\tprinting is enabled"
 msgstr "\t印刷は有効です"
 
+#: systemv/lpstat.c:1474
 #, c-format
 msgid "\tqueued for %s"
 msgstr "\t%s にキューしました"
 
+#: berkeley/lpc.c:416
 msgid "\tqueuing is disabled"
 msgstr "\tキューは無効です"
 
+#: berkeley/lpc.c:414
 msgid "\tqueuing is enabled"
 msgstr "\tキューは有効です"
 
+#: systemv/lpstat.c:1785 systemv/lpstat.c:1909
 msgid "\treason unknown"
 msgstr "\t未知の理由"
 
+#: systemv/cupstestppd.c:454
 msgid ""
 "\n"
 "    DETAILED CONFORMANCE TEST RESULTS"
@@ -160,102 +198,134 @@ msgstr ""
 "\n"
 "    適合テスト結果詳細"
 
+#: systemv/cupstestppd.c:3820
 msgid "                          Ignore specific warnings."
 msgstr "                          指定された警告を無視する。"
 
+#: systemv/cupstestppd.c:3824
 msgid "                          Issue warnings instead of errors."
 msgstr "                          エラーを警告として扱う。"
 
+#: systemv/cupstestppd.c:410 systemv/cupstestppd.c:415
 msgid "                REF: Page 15, section 3.1."
 msgstr "                参照: 15 ページ、セクション 3.1。"
 
+#: systemv/cupstestppd.c:405
 msgid "                REF: Page 15, section 3.2."
 msgstr "                参照: 15 ページ、セクション 3.2。"
 
+#: systemv/cupstestppd.c:425
 msgid "                REF: Page 19, section 3.3."
 msgstr "                参照: 19 ページ、セクション 3.3。"
 
+#: systemv/cupstestppd.c:378
 msgid "                REF: Page 20, section 3.4."
 msgstr "                参照: 20 ページ、セクション 3.4。"
 
+#: systemv/cupstestppd.c:430
 msgid "                REF: Page 27, section 3.5."
 msgstr "                参照: 27 ページ、セクション 3.5。"
 
+#: systemv/cupstestppd.c:373
 msgid "                REF: Page 42, section 5.2."
 msgstr "                参照: 42 ページ、セクション 5.2。"
 
+#: systemv/cupstestppd.c:420
 msgid "                REF: Pages 16-17, section 3.2."
 msgstr "                参照: 16-17 ページ、セクション 3.2。"
 
+#: systemv/cupstestppd.c:390
 msgid "                REF: Pages 42-45, section 5.2."
 msgstr "                参照: 42-45 ページ、セクション 5.2。"
 
+#: systemv/cupstestppd.c:384
 msgid "                REF: Pages 45-46, section 5.2."
 msgstr "                参照: 45-46 ページ、セクション 5.2。"
 
+#: systemv/cupstestppd.c:395
 msgid "                REF: Pages 48-49, section 5.2."
 msgstr "                参照: 48-49 ページ、セクション 5.2。"
 
+#: systemv/cupstestppd.c:400
 msgid "                REF: Pages 52-54, section 5.2."
 msgstr "                参照: 52-54 ページ、セクション 5.2。"
 
+#: berkeley/lpq.c:528
 #, c-format
 msgid "        %-39.39s %.0f bytes"
 msgstr "        %-39.39s %.0f バイト"
 
+#: systemv/cupstestppd.c:589
 #, c-format
 msgid "        PASS    Default%s"
 msgstr "        合格    Default%s"
 
+#: systemv/cupstestppd.c:524
 msgid "        PASS    DefaultImageableArea"
 msgstr "        合格    DefaultImageableArea"
 
+#: systemv/cupstestppd.c:558
 msgid "        PASS    DefaultPaperDimension"
 msgstr "        合格    DefaultPaperDimension"
 
+#: systemv/cupstestppd.c:631
 msgid "        PASS    FileVersion"
 msgstr "        合格    FileVersion"
 
+#: systemv/cupstestppd.c:675
 msgid "        PASS    FormatVersion"
 msgstr "        合格    FormatVersion"
 
+#: systemv/cupstestppd.c:695
 msgid "        PASS    LanguageEncoding"
 msgstr "        合格    LanguageEncoding"
 
+#: systemv/cupstestppd.c:715
 msgid "        PASS    LanguageVersion"
 msgstr "        合格    LanguageVersion"
 
+#: systemv/cupstestppd.c:769
 msgid "        PASS    Manufacturer"
 msgstr "        合格    Manufacturer"
 
+#: systemv/cupstestppd.c:809
 msgid "        PASS    ModelName"
 msgstr "        合格    ModelName"
 
+#: systemv/cupstestppd.c:829
 msgid "        PASS    NickName"
 msgstr "        合格    NickName"
 
+#: systemv/cupstestppd.c:889
 msgid "        PASS    PCFileName"
 msgstr "        合格    PCFileName"
 
+#: systemv/cupstestppd.c:964
 msgid "        PASS    PSVersion"
 msgstr "        合格    PSVersion"
 
+#: systemv/cupstestppd.c:869
 msgid "        PASS    PageRegion"
 msgstr "        合格    PageRegion"
 
+#: systemv/cupstestppd.c:849
 msgid "        PASS    PageSize"
 msgstr "        合格    PageSize"
 
+#: systemv/cupstestppd.c:924
 msgid "        PASS    Product"
 msgstr "        合格    Product"
 
+#: systemv/cupstestppd.c:999
 msgid "        PASS    ShortNickName"
 msgstr "        合格    ShortNickName"
 
+#: systemv/cupstestppd.c:1374
 #, c-format
 msgid "        WARN    %s has no corresponding options."
 msgstr "        警告    %s は相当するオプションがありません。"
 
+#: systemv/cupstestppd.c:1486
 #, c-format
 msgid ""
 "        WARN    %s shares a common prefix with %s\n"
@@ -264,6 +334,7 @@ msgstr ""
 "        警告    %s は %s と一般プレフィックスを共有します。\n"
 "                参照: 15 ページ、セクション 3.2。"
 
+#: systemv/cupstestppd.c:1345
 #, c-format
 msgid ""
 "        WARN    Duplex option keyword %s may not work as expected and should "
@@ -274,10 +345,12 @@ msgstr ""
 "ません。また、Duplex という名前であるべきです。                参照: 122 ペー"
 "ジ、セクション 5.17"
 
+#: systemv/cupstestppd.c:1744
 msgid "        WARN    File contains a mix of CR, LF, and CR LF line endings."
 msgstr ""
 "        警告    ファイルが CR、LF、CR LF の行末を混在して含んでいます。"
 
+#: systemv/cupstestppd.c:1390
 msgid ""
 "        WARN    LanguageEncoding required by PPD 4.3 spec.\n"
 "                REF: Pages 56-57, section 5.3."
@@ -285,10 +358,12 @@ msgstr ""
 "        警告    LanguageEncoding は PPD 4.3 仕様で必須です。\n"
 "                参照: 56-57 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:1726
 #, c-format
 msgid "        WARN    Line %d only contains whitespace."
 msgstr "        警告    %d 行が空白だけです。"
 
+#: systemv/cupstestppd.c:1398
 msgid ""
 "        WARN    Manufacturer required by PPD 4.3 spec.\n"
 "                REF: Pages 58-59, section 5.3."
@@ -296,6 +371,7 @@ msgstr ""
 "        警告    Manufacturer は PPD 4.3 仕様で必須です。\n"
 "                参照: 58-59 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:1749
 msgid ""
 "        WARN    Non-Windows PPD files should use lines ending with only LF, "
 "not CR LF."
@@ -303,6 +379,7 @@ msgstr ""
 "        警告    非 Windows PPD ファイルは、CR LF でなく LF のみを行末に使うべ"
 "きです。"
 
+#: systemv/cupstestppd.c:1382
 #, c-format
 msgid ""
 "        WARN    Obsolete PPD version %.1f.\n"
@@ -311,6 +388,7 @@ msgstr ""
 "        警告    PPD バージョン %.1f は現在使われていません。\n"
 "                参照: 42 ページ、セクション 5.2。"
 
+#: systemv/cupstestppd.c:1413
 msgid ""
 "        WARN    PCFileName longer than 8.3 in violation of PPD spec.\n"
 "                REF: Pages 61-62, section 5.3."
@@ -318,6 +396,7 @@ msgstr ""
 "        警告    8.3 文字より長い PCFileName は PPD 仕様違反です。\n"
 "                参照: 61-62 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:1421
 msgid ""
 "        WARN    PCFileName should contain a unique filename.\n"
 "                REF: Pages 61-62, section 5.3."
@@ -325,6 +404,7 @@ msgstr ""
 "        警告    PCFileName はユニークなファイル名でなければなりません。\n"
 "                参照: 61-62 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:1456
 msgid ""
 "        WARN    Protocols contains PJL but JCL attributes are not set.\n"
 "                REF: Pages 78-79, section 5.7."
@@ -333,6 +413,7 @@ msgstr ""
 "ん。\n"
 "                参照: 78-79 ページ、セクション 5.7。"
 
+#: systemv/cupstestppd.c:1447
 msgid ""
 "        WARN    Protocols contains both PJL and BCP; expected TBCP.\n"
 "                REF: Pages 78-79, section 5.7."
@@ -341,6 +422,7 @@ msgstr ""
 "す。\n"
 "                参照: 78-79 ページ、セクション 5.7。"
 
+#: systemv/cupstestppd.c:1430
 msgid ""
 "        WARN    ShortNickName required by PPD 4.3 spec.\n"
 "                REF: Pages 64-65, section 5.3."
@@ -348,15 +430,19 @@ msgstr ""
 "        警告    ShortNickName は PPD 4.3 仕様で必須です。\n"
 "                参照: 64-65 ページ、セクション 5.3。"
 
+#: systemv/cupsaddsmb.c:282
 msgid "       cupsaddsmb [options] -a"
 msgstr "       cupsaddsmb [オプション] -a"
 
+#: systemv/cupstestdsc.c:427
 msgid "       cupstestdsc [options] -"
 msgstr "       cupstestdsc [オプション] -"
 
+#: systemv/cupstestppd.c:3815
 msgid "       program | cupstestppd [options] -"
 msgstr "       program | cupstestppd [オプション] -"
 
+#: systemv/cupstestppd.c:3747
 #, c-format
 msgid ""
 "      %s  \"%s %s\" conflicts with \"%s %s\"\n"
@@ -365,15 +451,18 @@ msgstr ""
 "      %s  \"%s %s\" は \"%s %s\" と競合します\n"
 "                (禁則=\"%s %s %s %s\")。"
 
+#: systemv/cupstestppd.c:2248
 #, c-format
 msgid "      %s  %s %s does not exist."
 msgstr "      %s  %s %s が存在しません。"
 
+#: systemv/cupstestppd.c:3904
 #, c-format
 msgid "      %s  %s file \"%s\" has the wrong capitalization."
 msgstr ""
 "      %s  %s ファイル \"%s\" は不正な大文字で始まるワードを含んでいます。"
 
+#: systemv/cupstestppd.c:2318
 #, c-format
 msgid ""
 "      %s  Bad %s choice %s.\n"
@@ -382,72 +471,101 @@ msgstr ""
 "      %s  不正な %s が %s を選んでいます。\n"
 "                参照: 122 ページ、セクション 5.17"
 
+#: systemv/cupstestppd.c:3507 systemv/cupstestppd.c:3556
+#: systemv/cupstestppd.c:3595
 #, c-format
 msgid "      %s  Bad UTF-8 \"%s\" translation string for option %s, choice %s."
 msgstr ""
 "      %s  不正な UTF-8 \"%s\" 翻訳文字列 (オプション %s 、選択 %s) です。"
 
+#: systemv/cupstestppd.c:3461
 #, c-format
 msgid "      %s  Bad UTF-8 \"%s\" translation string for option %s."
 msgstr "      %s  不正な UTF-8 \"%s\" 翻訳文字列 (オプション %s 用) です。"
 
+#: systemv/cupstestppd.c:2389
 #, c-format
 msgid "      %s  Bad cupsFilter value \"%s\"."
 msgstr "      %s  不正な値が cupsFilter に設定されています。 \"%s\""
 
+#: systemv/cupstestppd.c:2475
 #, c-format
 msgid "      %s  Bad cupsFilter2 value \"%s\"."
 msgstr "      %s  不正な値が cupsFilter2 に設定されています。 \"%s\""
 
+#: systemv/cupstestppd.c:2964
 #, c-format
 msgid "      %s  Bad cupsICCProfile %s."
-msgstr "      %s  不正な cupsICCProfile %sです。"
+msgstr "      %s  不正な cupsICCProfile %s です。"
 
+#: systemv/cupstestppd.c:2571
 #, c-format
 msgid "      %s  Bad cupsPreFilter value \"%s\"."
 msgstr "      %s  不正な値が cupsPreFilter に設定されています。 \"%s\""
 
+#: systemv/cupstestppd.c:1822
 #, c-format
 msgid "      %s  Bad cupsUIConstraints %s: \"%s\""
-msgstr "      %s  不正な cupsUIConstraints %s: \"%s\"です。"
+msgstr "      %s  不正な cupsUIConstraints %s: \"%s\" です。"
 
+#: systemv/cupstestppd.c:3411
 #, c-format
 msgid "      %s  Bad language \"%s\"."
-msgstr "      %s  無効な言語 \"%s\"です。"
+msgstr "      %s  無効な言語 \"%s\" です。"
 
+#: systemv/cupstestppd.c:2433 systemv/cupstestppd.c:2529
+#: systemv/cupstestppd.c:2615 systemv/cupstestppd.c:2673
+#: systemv/cupstestppd.c:2728 systemv/cupstestppd.c:2783
+#: systemv/cupstestppd.c:2838 systemv/cupstestppd.c:2891
+#: systemv/cupstestppd.c:3013
 #, c-format
 msgid "      %s  Bad permissions on %s file \"%s\"."
 msgstr "      %s  不正なパーミッション %s です (ファイル \"%s\")。"
 
+#: systemv/cupstestppd.c:2373 systemv/cupstestppd.c:2459
+#: systemv/cupstestppd.c:2555 systemv/cupstestppd.c:2642
+#: systemv/cupstestppd.c:2697 systemv/cupstestppd.c:2752
+#: systemv/cupstestppd.c:2807 systemv/cupstestppd.c:2862
 #, c-format
 msgid "      %s  Bad spelling of %s - should be %s."
 msgstr "      %s  %s の不正な綴りです - %s であるべきです。"
 
+#: systemv/cupstestppd.c:2907
 #, c-format
 msgid "      %s  Cannot provide both APScanAppPath and APScanAppBundleID."
 msgstr "      %s  APScanAppPath と APScanAppBundleID は同時に指定できません。"
 
+#: systemv/cupstestppd.c:2205
 #, c-format
 msgid "      %s  Default choices conflicting."
 msgstr "      %s  デフォルトの選択肢が競合しています。"
 
+#: systemv/cupstestppd.c:1803
 #, c-format
 msgid "      %s  Empty cupsUIConstraints %s"
-msgstr "      %s 空の cupsUIConstraints %sです。"
+msgstr "      %s 空の cupsUIConstraints %s です。"
 
+#: systemv/cupstestppd.c:3539 systemv/cupstestppd.c:3579
 #, c-format
 msgid "      %s  Missing \"%s\" translation string for option %s, choice %s."
 msgstr ""
 "      %s  \"%s\" 翻訳文字列 (オプション %s 、選択 %s) が見つかりません。"
 
+#: systemv/cupstestppd.c:3447
 #, c-format
 msgid "      %s  Missing \"%s\" translation string for option %s."
 msgstr "      %s  \"%s\" 翻訳文字列 (オプション %s 用) が見つかりません。"
 
+#: systemv/cupstestppd.c:2418 systemv/cupstestppd.c:2514
+#: systemv/cupstestppd.c:2600 systemv/cupstestppd.c:2658
+#: systemv/cupstestppd.c:2713 systemv/cupstestppd.c:2768
+#: systemv/cupstestppd.c:2823 systemv/cupstestppd.c:2875
+#: systemv/cupstestppd.c:2998
 #, c-format
 msgid "      %s  Missing %s file \"%s\"."
 msgstr "      %s  %s が見つかりません (ファイル \"%s\")。"
 
+#: systemv/cupstestppd.c:3121
 #, c-format
 msgid ""
 "      %s  Missing REQUIRED PageRegion option.\n"
@@ -456,6 +574,7 @@ msgstr ""
 "      %s  必須の PageRegion オプションが見つかりません。\n"
 "                参照: 100 ページ、セクション 5.14。"
 
+#: systemv/cupstestppd.c:3106
 #, c-format
 msgid ""
 "      %s  Missing REQUIRED PageSize option.\n"
@@ -464,35 +583,42 @@ msgstr ""
 "      %s  必須の PageSize オプションが見つかりません。\n"
 "                参照: 99 ページ、セクション 5.14。"
 
+#: systemv/cupstestppd.c:2013 systemv/cupstestppd.c:2054
 #, c-format
 msgid "      %s  Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"."
 msgstr ""
 "      %s  選択 *%s %s が UIConstraints \"*%s %s *%s %s\" 内に見つかりませ"
 "ん。"
 
+#: systemv/cupstestppd.c:1908
 #, c-format
 msgid "      %s  Missing choice *%s %s in cupsUIConstraints %s: \"%s\""
 msgstr ""
 "      %s  選択 *%s %s が cupsUIConstraints %s: \"%s\" 内に見つかりません。"
 
+#: systemv/cupstestppd.c:1840
 #, c-format
 msgid "      %s  Missing cupsUIResolver %s"
 msgstr "      %s  cupsUIResolver ファイル %s が見つかりません。"
 
+#: systemv/cupstestppd.c:1999 systemv/cupstestppd.c:2040
 #, c-format
 msgid "      %s  Missing option %s in UIConstraints \"*%s %s *%s %s\"."
 msgstr ""
 "      %s  オプション %s がUIConstraints \"*%s %s *%s %s\" に見つかりません。"
 
+#: systemv/cupstestppd.c:1892
 #, c-format
 msgid "      %s  Missing option %s in cupsUIConstraints %s: \"%s\""
 msgstr ""
 "      %s  オプション %s がcupsUIConstraints %s に見つかりません: \"%s\""
 
+#: systemv/cupstestppd.c:3633
 #, c-format
 msgid "      %s  No base translation \"%s\" is included in file."
 msgstr "      %s  ファイルにベース翻訳文字列 \"%s\" がありません。"
 
+#: systemv/cupstestppd.c:2294
 #, c-format
 msgid ""
 "      %s  REQUIRED %s does not define choice None.\n"
@@ -501,31 +627,38 @@ msgstr ""
 "      %s  必須の %s が選択肢 None を定義していません。\n"
 "                参照: 122 ページ、セクション 5.17。"
 
+#: systemv/cupstestppd.c:3180 systemv/cupstestppd.c:3194
 #, c-format
 msgid "      %s  Size \"%s\" defined for %s but not for %s."
 msgstr ""
 "      %s  サイズ \"%s\" は %s 向けに定義されていますが、%s にはありません。"
 
+#: systemv/cupstestppd.c:3160
 #, c-format
 msgid "      %s  Size \"%s\" has unexpected dimensions (%gx%g)."
 msgstr "      %s  サイズ \"%s\" は規定外の寸法 (%gx%g) を持っています。"
 
+#: systemv/cupstestppd.c:3351
 #, c-format
 msgid "      %s  Size \"%s\" should be \"%s\"."
 msgstr "      %s  サイズ \"%s\" は \"%s\" であるべきです。"
 
+#: systemv/cupstestppd.c:3300
 #, c-format
 msgid "      %s  Size \"%s\" should be the Adobe standard name \"%s\"."
 msgstr "      %s  サイズ \"%s\" は Adobe 標準名称 \"%s\" であるべきです。"
 
+#: systemv/cupstestppd.c:3041
 #, c-format
 msgid "      %s  cupsICCProfile %s hash value collides with %s."
 msgstr "      %s  cupsICCProfileのハッシュ値 %s が %s と一致しません。"
 
+#: systemv/cupstestppd.c:1963
 #, c-format
 msgid "      %s  cupsUIResolver %s causes a loop."
 msgstr "      %s  cupsUIResolverの %s がループしています。"
 
+#: systemv/cupstestppd.c:1945
 #, c-format
 msgid ""
 "      %s  cupsUIResolver %s does not list at least two different options."
@@ -533,6 +666,7 @@ msgstr ""
 "      %s  cupsUIResolver %s は最低でも 2 つの異なったオプションを持っていなけ"
 "ればなりません。"
 
+#: systemv/cupstestppd.c:1168
 #, c-format
 msgid ""
 "      **FAIL**  %s must be 1284DeviceID\n"
@@ -541,6 +675,7 @@ msgstr ""
 "      **失敗**  %s は 1284DeviceID でなければなりません。\n"
 "                参照: 72 ページ、セクション 5.5"
 
+#: systemv/cupstestppd.c:580
 #, c-format
 msgid ""
 "      **FAIL**  Bad Default%s %s\n"
@@ -549,6 +684,7 @@ msgstr ""
 "      **失敗**  不正な Default%s %s\n"
 "                参照: 40 ページ、セクション 4.5。"
 
+#: systemv/cupstestppd.c:514
 #, c-format
 msgid ""
 "      **FAIL**  Bad DefaultImageableArea %s\n"
@@ -557,6 +693,7 @@ msgstr ""
 "      **失敗**  %s は不正な DefaultImageableArea です。\n"
 "                参照: 102 ページ、セクション 5.15。"
 
+#: systemv/cupstestppd.c:550
 #, c-format
 msgid ""
 "      **FAIL**  Bad DefaultPaperDimension %s\n"
@@ -565,6 +702,7 @@ msgstr ""
 "      **失敗**  %s は不正な DefaultPaperDimension です。\n"
 "                参照: 103 ページ、セクション 5.15。"
 
+#: systemv/cupstestppd.c:623
 #, c-format
 msgid ""
 "      **FAIL**  Bad FileVersion \"%s\"\n"
@@ -573,6 +711,7 @@ msgstr ""
 "      **失敗**  不正なFileVersion \"%s\"\n"
 "                参照: 56 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:667
 #, c-format
 msgid ""
 "      **FAIL**  Bad FormatVersion \"%s\"\n"
@@ -581,6 +720,7 @@ msgstr ""
 "      **失敗**  FormatVersion が違います \"%s\"\n"
 "                参照: 56 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:1025
 msgid ""
 "      **FAIL**  Bad JobPatchFile attribute in file\n"
 "                REF: Page 24, section 3.4."
@@ -588,16 +728,19 @@ msgstr ""
 "      **失敗**  ファイルに不正な JobPatchFile 属性があります\n"
 "                参照: 24 ページ、セクション 3.4。"
 
+#: systemv/cupstestppd.c:1213
 #, c-format
 msgid "      **FAIL**  Bad LanguageEncoding %s - must be ISOLatin1."
 msgstr ""
 "      **失敗**  無効な LanguageEncoding %s - ISOLatin1 でなければなりません。"
 
+#: systemv/cupstestppd.c:1227
 #, c-format
 msgid "      **FAIL**  Bad LanguageVersion %s - must be English."
 msgstr ""
 "      **失敗**  無効な LanguageVersion %s - English でなければなりません。"
 
+#: systemv/cupstestppd.c:743 systemv/cupstestppd.c:760
 #, c-format
 msgid ""
 "      **FAIL**  Bad Manufacturer (should be \"%s\")\n"
@@ -606,6 +749,7 @@ msgstr ""
 "      **失敗**  不正な Manufacturer (\"%s\" でなければなりません)\n"
 "                参照: 211 ページ、表 D.1。"
 
+#: systemv/cupstestppd.c:800
 #, c-format
 msgid ""
 "      **FAIL**  Bad ModelName - \"%c\" not allowed in string.\n"
@@ -614,6 +758,7 @@ msgstr ""
 "      **失敗**  不正な ModelName - 文字列に \"%c\" は許可されていません。\n"
 "                参照: 59-60 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:956
 msgid ""
 "      **FAIL**  Bad PSVersion - not \"(string) int\".\n"
 "                REF: Pages 62-64, section 5.3."
@@ -621,6 +766,7 @@ msgstr ""
 "      **失敗**  不正な PSVersion - \"(文字列) 整数\" ではありません。\n"
 "                参照: 62-64 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:917
 msgid ""
 "      **FAIL**  Bad Product - not \"(string)\".\n"
 "                REF: Page 62, section 5.3."
@@ -628,6 +774,7 @@ msgstr ""
 "      **失敗**  不正な Product - \"(文字列)\" ではありません。\n"
 "                参照: 62 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:991
 msgid ""
 "      **FAIL**  Bad ShortNickName - longer than 31 chars.\n"
 "                REF: Pages 64-65, section 5.3."
@@ -635,6 +782,7 @@ msgstr ""
 "      **失敗**  不正な ShortNickName - 31 文字を超えています。\n"
 "                参照: 64-65 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:1149
 #, c-format
 msgid ""
 "      **FAIL**  Bad option %s choice %s\n"
@@ -643,10 +791,12 @@ msgstr ""
 "      **失敗**  不正な %s が %s を選んでいます。\n"
 "                参照: 84 ページ、セクション 5.9"
 
+#: systemv/cupstestppd.c:3774 systemv/cupstestppd.c:3796
 #, c-format
 msgid "      **FAIL**  Default option code cannot be interpreted: %s"
 msgstr "      **失敗**  デフォルトのオプションコードが解釈できません: %s"
 
+#: systemv/cupstestppd.c:1286
 #, c-format
 msgid ""
 "      **FAIL**  Default translation string for option %s choice %s contains "
@@ -655,6 +805,7 @@ msgstr ""
 "      **失敗**  オプション %s、選択肢 %s のデフォルトの翻訳文字列が 8 ビット"
 "文字を含んでいます。"
 
+#: systemv/cupstestppd.c:1259
 #, c-format
 msgid ""
 "      **FAIL**  Default translation string for option %s contains 8-bit "
@@ -663,23 +814,28 @@ msgstr ""
 "      **失敗**  オプション %s のデフォルトの翻訳文字列が 8 ビット文字を含んで"
 "います。"
 
+#: systemv/cupstestppd.c:2101
 #, c-format
 msgid "      **FAIL**  Group names %s and %s differ only by case."
 msgstr "      **失敗**  グループ名 %s と %s は大文字/小文字が違うだけです。"
 
+#: systemv/cupstestppd.c:2146
 #, c-format
 msgid "      **FAIL**  Multiple occurrences of option %s choice name %s."
 msgstr "      **失敗**  %s で複数のオプション %s が選択されています。"
 
+#: systemv/cupstestppd.c:2163
 #, c-format
 msgid "      **FAIL**  Option %s choice names %s and %s differ only by case."
 msgstr ""
 "      **失敗**  %s が選択した %s と %s は大文字/小文字のみが違うだけです。"
 
+#: systemv/cupstestppd.c:2123
 #, c-format
 msgid "      **FAIL**  Option names %s and %s differ only by case."
 msgstr "      **失敗**  オプション名 %s と %s は大文字/小文字が違うだけです。"
 
+#: systemv/cupstestppd.c:600
 #, c-format
 msgid ""
 "      **FAIL**  REQUIRED Default%s\n"
@@ -688,6 +844,7 @@ msgstr ""
 "      **失敗**  Default%s は必須\n"
 "                参照: 40 ページ、セクション 4.5。"
 
+#: systemv/cupstestppd.c:499
 msgid ""
 "      **FAIL**  REQUIRED DefaultImageableArea\n"
 "                REF: Page 102, section 5.15."
@@ -695,6 +852,7 @@ msgstr ""
 "      **失敗**  DefaultImageableArea は必須\n"
 "                参照: 102 ページ、セクション 5.15。"
 
+#: systemv/cupstestppd.c:535
 msgid ""
 "      **FAIL**  REQUIRED DefaultPaperDimension\n"
 "                REF: Page 103, section 5.15."
@@ -702,6 +860,7 @@ msgstr ""
 "      **失敗**  DefaultPaperDimension は必須\n"
 "                参照: 103 ページ、セクション 5.15。"
 
+#: systemv/cupstestppd.c:641
 msgid ""
 "      **FAIL**  REQUIRED FileVersion\n"
 "                REF: Page 56, section 5.3."
@@ -709,6 +868,7 @@ msgstr ""
 "      **失敗**  FileVersion は必須\n"
 "                参照: 56 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:685
 msgid ""
 "      **FAIL**  REQUIRED FormatVersion\n"
 "                REF: Page 56, section 5.3."
@@ -716,6 +876,7 @@ msgstr ""
 "      **失敗**  FormatVersion は必須\n"
 "                参照: 56 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:1076
 #, c-format
 msgid ""
 "      **FAIL**  REQUIRED ImageableArea for PageSize %s\n"
@@ -726,6 +887,7 @@ msgstr ""
 "                参照: 41 ページ、セクション 5。\n"
 "                参照: 102 ページ、セクション 5.15。"
 
+#: systemv/cupstestppd.c:705
 msgid ""
 "      **FAIL**  REQUIRED LanguageEncoding\n"
 "                REF: Pages 56-57, section 5.3."
@@ -733,6 +895,7 @@ msgstr ""
 "      **失敗**  LanguageEncoding は必須\n"
 "                参照: 56-57 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:725
 msgid ""
 "      **FAIL**  REQUIRED LanguageVersion\n"
 "                REF: Pages 57-58, section 5.3."
@@ -740,6 +903,7 @@ msgstr ""
 "      **失敗**  LanguageVersion は必須\n"
 "                参照: 57-58 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:779
 msgid ""
 "      **FAIL**  REQUIRED Manufacturer\n"
 "                REF: Pages 58-59, section 5.3."
@@ -747,6 +911,7 @@ msgstr ""
 "      **失敗**  Manufacturer は必須\n"
 "                参照: 58-59 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:819
 msgid ""
 "      **FAIL**  REQUIRED ModelName\n"
 "                REF: Pages 59-60, section 5.3."
@@ -754,6 +919,7 @@ msgstr ""
 "      **失敗**  ModelName は必須\n"
 "                参照: 59-60 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:839
 msgid ""
 "      **FAIL**  REQUIRED NickName\n"
 "                REF: Page 60, section 5.3."
@@ -761,6 +927,7 @@ msgstr ""
 "      **失敗**  NickName は必須\n"
 "                参照: 60 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:899
 msgid ""
 "      **FAIL**  REQUIRED PCFileName\n"
 "                REF: Pages 61-62, section 5.3."
@@ -768,6 +935,7 @@ msgstr ""
 "      **失敗**  PCFileName は必須\n"
 "                参照: 61-62 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:974
 msgid ""
 "      **FAIL**  REQUIRED PSVersion\n"
 "                REF: Pages 62-64, section 5.3."
@@ -775,6 +943,7 @@ msgstr ""
 "      **失敗**  PSVersion は必須\n"
 "                参照: 62-64 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:879
 msgid ""
 "      **FAIL**  REQUIRED PageRegion\n"
 "                REF: Page 100, section 5.14."
@@ -782,6 +951,7 @@ msgstr ""
 "      **失敗**  PageRegion は必須\n"
 "                参照: 100 ページ、セクション 5.14。"
 
+#: systemv/cupstestppd.c:1045
 msgid ""
 "      **FAIL**  REQUIRED PageSize\n"
 "                REF: Page 41, section 5.\n"
@@ -791,6 +961,7 @@ msgstr ""
 "                参照: 41 ページ、セクション 5。\n"
 "                参照: 99 ページ、セクション 5.14。"
 
+#: systemv/cupstestppd.c:859
 msgid ""
 "      **FAIL**  REQUIRED PageSize\n"
 "                REF: Pages 99-100, section 5.14."
@@ -798,6 +969,7 @@ msgstr ""
 "      **失敗**  PageSize は必須\n"
 "                参照: 99-100 ページ、セクション 5.14。"
 
+#: systemv/cupstestppd.c:1098
 #, c-format
 msgid ""
 "      **FAIL**  REQUIRED PaperDimension for PageSize %s\n"
@@ -808,6 +980,7 @@ msgstr ""
 "                参照: 41 ページ、セクション 5。\n"
 "                参照: 103 ページ、セクション 5.15。"
 
+#: systemv/cupstestppd.c:934
 msgid ""
 "      **FAIL**  REQUIRED Product\n"
 "                REF: Page 62, section 5.3."
@@ -815,6 +988,7 @@ msgstr ""
 "      **失敗**  Product は必須\n"
 "                参照: 62 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:1009
 msgid ""
 "      **FAIL**  REQUIRED ShortNickName\n"
 "                REF: Page 64-65, section 5.3."
@@ -822,19 +996,24 @@ msgstr ""
 "      **失敗**  ShortNickName は必須\n"
 "                参照: 64-65 ページ、セクション 5.3。"
 
+#: systemv/cupstestppd.c:334 systemv/cupstestppd.c:353
+#: systemv/cupstestppd.c:365
 #, c-format
 msgid "      **FAIL**  Unable to open PPD file - %s on line %d."
 msgstr ""
 " 失敗\n"
 "      **失敗**  PPD ファイルを開けません - %s (%d 行)。"
 
+#: systemv/cupstestppd.c:1498
 #, c-format
 msgid "    %d ERRORS FOUND"
 msgstr "    %d 個のエラーが見つかりました"
 
+#: systemv/cupstestdsc.c:431
 msgid "    -h       Show program usage"
 msgstr "    -h       このプログラムの利用法を表示する"
 
+#: systemv/cupstestdsc.c:234 systemv/cupstestdsc.c:276
 #, c-format
 msgid ""
 "    Bad %%%%BoundingBox: on line %d.\n"
@@ -843,6 +1022,7 @@ msgstr ""
 "    不正な %%%%BoundingBox: (%d 行)。\n"
 "        参照: 39 ページ、%%%%BoundingBox:"
 
+#: systemv/cupstestdsc.c:305
 #, c-format
 msgid ""
 "    Bad %%%%Page: on line %d.\n"
@@ -851,6 +1031,7 @@ msgstr ""
 "    不正な %%%%Page: (%d 行)。\n"
 "        参照: 53 ページ、%%%%Page:"
 
+#: systemv/cupstestdsc.c:218 systemv/cupstestdsc.c:258
 #, c-format
 msgid ""
 "    Bad %%%%Pages: on line %d.\n"
@@ -859,6 +1040,7 @@ msgstr ""
 "    不正な %%%%Pages: (%d 行)。\n"
 "        REF: Page 43, %%%%Pages:"
 
+#: systemv/cupstestdsc.c:176
 #, c-format
 msgid ""
 "    Line %d is longer than 255 characters (%d).\n"
@@ -867,6 +1049,7 @@ msgstr ""
 "    %d 行が 255文字より長くなっています (%d)。\n"
 "        参照: 25 ページ、Line Length"
 
+#: systemv/cupstestdsc.c:192
 msgid ""
 "    Missing %!PS-Adobe-3.0 on first line.\n"
 "        REF: Page 17, 3.1 Conforming Documents"
@@ -874,12 +1057,14 @@ msgstr ""
 "    先頭行に %!PS-Adobe-3.0 がありません。\n"
 "        参照: 17 ページ、3.1 Conforming Documents"
 
+#: systemv/cupstestdsc.c:362
 #, c-format
 msgid "    Missing %%EndComments comment.        REF: Page 41, %%EndComments"
 msgstr ""
 "    %%EndComments コメントが見つかりません。\n"
 "        参照: 41 ページ、%%EndComments"
 
+#: systemv/cupstestdsc.c:342
 #, c-format
 msgid ""
 "    Missing or bad %%BoundingBox: comment.\n"
@@ -888,6 +1073,7 @@ msgstr ""
 "    %%BoundingBox: コメントが見つからないか不正です。\n"
 "        参照: 39 ページ、%%BoundingBox:"
 
+#: systemv/cupstestdsc.c:372
 #, c-format
 msgid ""
 "    Missing or bad %%Page: comments.\n"
@@ -896,6 +1082,7 @@ msgstr ""
 "    %%Page: コメントが見つからないか不正です。\n"
 "        参照: 53 ページ、%%Page:"
 
+#: systemv/cupstestdsc.c:352
 #, c-format
 msgid ""
 "    Missing or bad %%Pages: comment.\n"
@@ -904,64 +1091,82 @@ msgstr ""
 "    %%Pages: コメントが見つからないか不正です。\n"
 "        参照: 43 ページ、%%Pages:"
 
+#: systemv/cupstestppd.c:1500
 msgid "    NO ERRORS FOUND"
 msgstr "    エラーは見つかりませんでした"
 
+#: systemv/cupstestdsc.c:395
 #, c-format
 msgid "    Saw %d lines that exceeded 255 characters."
 msgstr "    255文字を超える %d 行が見つかりました。"
 
+#: systemv/cupstestdsc.c:390
 #, c-format
 msgid "    Too many %%BeginDocument comments."
 msgstr "    %%BeginDocument コメントが多すぎます。"
 
+#: systemv/cupstestdsc.c:382
 #, c-format
 msgid "    Too many %%EndDocument comments."
 msgstr "    %%EndDocument コメントが多すぎます。"
 
+#: systemv/cupstestdsc.c:402
 msgid "    Warning: file contains binary data."
 msgstr "    警告: ファイルにバイナリデータが含まれています。"
 
+#: systemv/cupstestdsc.c:410
 #, c-format
 msgid "    Warning: no %%EndComments comment in file."
 msgstr "    警告: ファイルに %%EndComments コメントがありません。"
 
+#: systemv/cupstestdsc.c:406
 #, c-format
 msgid "    Warning: obsolete DSC version %.1f in file."
 msgstr "    警告: ファイルは時代遅れの DSC バージョン %.1f です。"
 
+#: test/ippfind.c:2788
 msgid "  ! expression            Unary NOT of expression."
 msgstr "! <式>                  式を否定する単項演算子。"
 
+#: test/ippfind.c:2787
 msgid "  ( expressions )         Group expressions."
 msgstr "  ( <複数の式> )          グループ化された複数の式。"
 
+#: systemv/cupsctl.c:210
 msgid "  --[no-]debug-logging    Turn debug logging on/off."
 msgstr "  --[no-]debug-logging    デバッグログの有効/無効を切り替える。"
 
+#: systemv/cupsctl.c:212
 msgid "  --[no-]remote-admin     Turn remote administration on/off."
 msgstr "  --[no-]remote-admin     リモート管理の有効/無効を切り替える。"
 
+#: systemv/cupsctl.c:214
 msgid "  --[no-]remote-any       Allow/prevent access from the Internet."
 msgstr ""
 "  --[no-]remote-any       インターネットからのアクセスを許可/禁止する。"
 
+#: systemv/cupsctl.c:216
 msgid "  --[no-]share-printers   Turn printer sharing on/off."
 msgstr "  --[no-]share-printers   プリンター共有の有効/無効を切り替える。"
 
+#: systemv/cupsctl.c:218
 msgid "  --[no-]user-cancel-any  Allow/prevent users to cancel any job."
 msgstr ""
 "  --[no-]user-cancel-any  あらゆるジョブのキャンセルをユーザーに許可/禁止する"
 
+#: ppdc/ppdc.cxx:450
 msgid "  --cr                    End lines with CR (Mac OS 9)."
 msgstr "  --cr                    行末を CR とする (Mac OS 9)。"
 
+#: ppdc/ppdc.cxx:452
 msgid "  --crlf                  End lines with CR + LF (Windows)."
 msgstr "  --crlf                  行末を CR + LF とする (Windows)。"
 
+#: test/ippfind.c:2769
 msgid "  --domain regex          Match domain to regular expression."
 msgstr "  --domain <正規表現>     ドメインが正規表現にマッチするか。"
 
+#: test/ippfind.c:2770
 msgid ""
 "  --exec utility [argument ...] ;\n"
 "                          Execute program if true."
@@ -969,156 +1174,204 @@ msgstr ""
 "  --exec <実行ファイル名> [引数 ...] ;\n"
 "                          成功した場合、<実行ファイル名>を実行する。"
 
+#: test/ippfind.c:2790
 msgid "  --false                 Always false."
 msgstr "  --false                 常に失敗。"
 
+#: test/ipptool.c:4806
 msgid "  --help                  Show help."
-msgstr ""
+msgstr "  --help                  ヘルプを表示する。"
 
+#: test/ippfind.c:2752
 msgid "  --help                  Show this help."
 msgstr "  --help                  このヘルプを表示する。"
 
+#: test/ippfind.c:2772
 msgid "  --host regex            Match hostname to regular expression."
 msgstr "  --host <正規表現>       ホスト名が正規表現にマッチするか。"
 
+#: ppdc/ppdc.cxx:454
 msgid "  --lf                    End lines with LF (UNIX/Linux/OS X)."
 msgstr "  --lf                    行末を LF とする (UNIX/Linux/OS X)。"
 
+#: scheduler/cupsfilter.c:1483
 msgid "  --list-filters          List filters that will be used."
-msgstr ""
+msgstr "  --list-filters          使用されるフィルターのリストを表示する。"
 
+#: test/ippfind.c:2774
 msgid "  --local                 True if service is local."
 msgstr "  --local                 サービスがローカルなら真。"
 
+#: test/ippfind.c:2773
 msgid "  --ls                    List attributes."
 msgstr "  --ls                    属性の一覧を表示する。"
 
+#: test/ippfind.c:2775
 msgid "  --name regex            Match service name to regular expression."
 msgstr "  --name <正規表現>       サービス名が正規表現とマッチするか。"
 
+#: test/ippfind.c:2789
 msgid "  --not expression        Unary NOT of expression."
 msgstr "  --not <式>              式を否定する単項演算子。"
 
+#: test/ippfind.c:2776
 msgid "  --path regex            Match resource path to regular expression."
 msgstr "  --path <正規表現>       リソースのパスが正規表現とマッチするか。"
 
+#: test/ippfind.c:2777
 msgid "  --port number[-number]  Match port to number or range."
 msgstr ""
 "  --port 番号[-番号]      ポートが指定された番号または範囲とマッチするか。"
 
+#: test/ippfind.c:2778
 msgid "  --print                 Print URI if true."
 msgstr "  --print                 結果が真なら URI を表示する。"
 
+#: test/ippfind.c:2779
 msgid "  --print-name            Print service name if true."
 msgstr "  --print-name            結果が真ならサービス名を表示する。"
 
+#: test/ippfind.c:2780
 msgid "  --quiet                 Quietly report match via exit code."
 msgstr ""
 "  --quiet                 マッチ結果を終了コードで報告し、出力をしない。"
 
+#: test/ippfind.c:2781
 msgid "  --remote                True if service is remote."
 msgstr "  --remote                サービスがリモートなら真。"
 
+#: test/ipptool.c:4807
 msgid ""
 "  --stop-after-include-error\n"
 "                          Stop tests after a failed INCLUDE."
 msgstr ""
+"  --stop-after-include-error\n"
+"                          INCLUDE が失敗したときテストを停止する。"
 
+#: test/ippfind.c:2791
 msgid "  --true                  Always true."
 msgstr "  --true                  常に真。"
 
+#: test/ippfind.c:2782
 msgid "  --txt key               True if the TXT record contains the key."
 msgstr "  --txt <キー名>          TXT レコードがキー名を含んでいたら真。"
 
+#: test/ippfind.c:2783
 msgid "  --txt-* regex           Match TXT record key to regular expression."
 msgstr ""
 "  --txt-* <正規表現>      TXT レコードのキーが正規表現とマッチしたら真。"
 
+#: test/ippfind.c:2784
 msgid "  --uri regex             Match URI to regular expression."
 msgstr "  --uri <正規表現>        URI が正規表現とマッチするか。"
 
+#: test/ippfind.c:2753
 msgid "  --version               Show program version."
 msgstr "  --version               プログラムのバージョンを表示。"
 
+#: test/ipptool.c:4809
 msgid "  --version               Show version."
-msgstr ""
+msgstr "  --version               バージョンを表示する。"
 
+#: test/ippfind.c:2746 test/ipptool.c:4810
 msgid "  -4                      Connect using IPv4."
 msgstr "  -4                      IPv4 で接続する。"
 
+#: test/ippfind.c:2747 test/ipptool.c:4811
 msgid "  -6                      Connect using IPv6."
 msgstr "  -6                      IPv6 で接続する。"
 
+#: test/ipptool.c:4812
 msgid "  -C                      Send requests using chunking (default)."
 msgstr ""
 "  -C                      chunking を用いてリクエストを送る (デフォルト)。"
 
+#: scheduler/cupsfilter.c:1484
 msgid "  -D                      Remove the input file when finished."
 msgstr "  -D                      終了したときに入力ファイルを削除する。"
 
+#: ppdc/ppdc.cxx:433 ppdc/ppdhtml.cxx:175 ppdc/ppdpo.cxx:255
 msgid "  -D name=value           Set named variable to value."
 msgstr ""
 "  -D name=value           name で指定された変数に値 value をセットする。"
 
+#: systemv/cupsaddsmb.c:285 systemv/cupsctl.c:205
 msgid "  -E                      Encrypt the connection."
 msgstr "  -E                      接続を暗号化する。"
 
+#: test/ipptool.c:4814
 msgid "  -E                      Test with HTTP Upgrade to TLS."
 msgstr ""
 "  -E                      HTTP から TLS へのアップグレードでテストする。"
 
+#: scheduler/main.c:2149
 msgid ""
 "  -F                      Run in the foreground but detach from console."
 msgstr ""
 "  -F                      フォアグラウンドで実行するがコンソールからはデタッ"
 "チする。"
 
+#: systemv/cupsaddsmb.c:286
 msgid "  -H samba-server         Use the named SAMBA server."
 msgstr "  -H sambaサーバー        指定の SAMBA サーバーを使う。"
 
+#: test/ipptool.c:4816
 msgid "  -I                      Ignore errors."
 msgstr "  -I                      エラーを無視する。"
 
+#: ppdc/ppdc.cxx:435 ppdc/ppdhtml.cxx:177 ppdc/ppdi.cxx:131 ppdc/ppdpo.cxx:257
 msgid "  -I include-dir          Add include directory to search path."
 msgstr ""
 "  -I include-dir          インクルードディレクトリーを検索パスに含める。"
 
+#: systemv/cupstestppd.c:3819
 msgid "  -I {filename,filters,none,profiles}"
 msgstr "  -I {filename,filters,none,profiles}"
 
+#: test/ipptool.c:4817
 msgid "  -L                      Send requests using content-length."
 msgstr "  -L                      content-length を用いてリクエストを送る。"
 
+#: test/ipptool.c:4819
 msgid ""
 "  -P filename.plist       Produce XML plist to a file and test report to "
 "standard output."
-msgstr ""
+msgstr "  -P filename.plist       XML の plist 形式で書き出しテストリポートを標準出力にする。"
 
+#: scheduler/cupsfilter.c:1485
 msgid "  -P filename.ppd         Set PPD file."
 msgstr "  -P filename.ppd         PPD ファイルを指定する。"
 
+#: test/ippfind.c:2756
 msgid "  -P number[-number]      Match port to number or range."
 msgstr ""
 "  -P 番号[-番号]          ポートが指定された番号または範囲とマッチするか。"
 
+#: systemv/cupstestppd.c:3821
 msgid "  -R root-directory       Set alternate root."
 msgstr "  -R root-directory       別のルートディレクトリーを指定する。"
 
+#: test/ipptool.c:4820
 msgid "  -S                      Test with SSL encryption."
 msgstr "  -S                      SSL 暗号化でテストする。"
 
+#: test/ippfind.c:2748
 msgid "  -T seconds              Set the browse timeout in seconds."
 msgstr "  -T <秒>                 ブラウズのタイムアウトを秒で指定する。"
 
+#: test/ipptool.c:4822
 msgid "  -T seconds              Set the receive/send timeout in seconds."
 msgstr "  -T seconds              受信/送信タイムアウトを秒で指定する。"
 
+#: scheduler/cupsfilter.c:1486 systemv/cupsaddsmb.c:288 systemv/cupsctl.c:206
 msgid "  -U username             Specify username."
 msgstr "  -U username             ユーザー名を指定する。"
 
+#: test/ippfind.c:2750 test/ipptool.c:4824
 msgid "  -V version              Set default IPP version."
 msgstr "  -V version              デフォルトの IPP バージョンを指定する。"
 
+#: systemv/cupstestppd.c:3822
 msgid ""
 "  -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
 "translations}"
@@ -1126,72 +1379,93 @@ msgstr ""
 "  -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,"
 "translations}"
 
+#: test/ipptool.c:4826
 msgid "  -X                      Produce XML plist instead of plain text."
 msgstr "  -X                      プレーンテキストの代わりに XML を用いる。"
 
+#: test/ippdiscover.c:818
 msgid "  -a                      Browse for all services."
 msgstr "  -a                      すべてのサービスをブラウズする。"
 
+#: systemv/cupsaddsmb.c:289
 msgid "  -a                      Export all printers."
 msgstr "  -a                      すべてのプリンターをエクスポートする。"
 
+#: test/ipptool.c:4828
 msgid "  -c                      Produce CSV output."
-msgstr ""
+msgstr "  -c                      CSV 出力を行う。"
 
+#: ppdc/ppdc.cxx:437
 msgid "  -c catalog.po           Load the specified message catalog."
 msgstr "  -c catalog.po           指定したメッセージカタログをロードする。"
 
+#: scheduler/cupsfilter.c:1487
 msgid "  -c cups-files.conf      Set cups-files.conf file to use."
-msgstr ""
+msgstr "  -c cups-files.conf      cups-files.conf を利用するよう設定する。"
 
+#: scheduler/main.c:2147
 msgid "  -c cupsd.conf           Set cupsd.conf file to use."
 msgstr "  -c cupsd.conf           使用する cupsd.conf ファイルを指定する。"
 
+#: test/ippdiscover.c:819
 msgid "  -d domain               Browse/resolve in specified domain."
 msgstr "  -d <ドメイン名>         指定されたドメインでブラウズ/名前解決する。"
 
+#: test/ipptool.c:4829
 msgid "  -d name=value           Set named variable to value."
 msgstr ""
 "  -d name=value           name で指定された変数に値 value をセットする。"
 
+#: ppdc/ppdc.cxx:439
 msgid "  -d output-dir           Specify the output directory."
 msgstr "  -d output-dir           出力先ディレクトリーを指定する。"
 
+#: scheduler/cupsfilter.c:1488
 msgid "  -d printer              Use the named printer."
 msgstr "  -d printer              指定されたプリンターを利用する。"
 
+#: test/ippfind.c:2757
 msgid "  -d regex                Match domain to regular expression."
 msgstr "  -d <正規表現>           ドメインが正規表現にマッチするか。"
 
+#: scheduler/cupsfilter.c:1489
 msgid "  -e                      Use every filter from the PPD file."
 msgstr ""
 "  -e                      PPD ファイルからすべてのフィルターを使用する。"
 
+#: scheduler/main.c:2148
 msgid "  -f                      Run in the foreground."
 msgstr "  -f                      フォアグラウンドで実行する。"
 
+#: test/ipptool.c:4831
 msgid "  -f filename             Set default request filename."
 msgstr "  -f filename             デフォルトのリクエストファイル名を指定する。"
 
+#: scheduler/main.c:2151
 msgid "  -h                      Show this usage message."
 msgstr "  -h                      このヘルプメッセージを表示する。"
 
+#: test/ippfind.c:2758
 msgid "  -h regex                Match hostname to regular expression."
 msgstr "  -h <正規表現>           ホスト名が正規表現にマッチするか。"
 
+#: systemv/cupsaddsmb.c:290 systemv/cupsctl.c:207
 msgid "  -h server[:port]        Specify server address."
 msgstr "  -h server[:port]        サーバーアドレスを指定する。"
 
+#: scheduler/cupsfilter.c:1490
 msgid "  -i mime/type            Set input MIME type (otherwise auto-typed)."
 msgstr ""
 "  -i mime/type            入力の MIME タイプを指定する (指定がなければ自動タ"
 "イプ)。"
 
+#: test/ipptool.c:4833
 msgid ""
 "  -i seconds              Repeat the last file with the given time interval."
 msgstr ""
 "  -i seconds              最後のファイルを与えられた時間間隔で繰り返す。"
 
+#: scheduler/cupsfilter.c:1491
 msgid ""
 "  -j job-id[,N]           Filter file N from the specified job (default is "
 "file 1)."
@@ -1199,219 +1473,334 @@ msgstr ""
 "  -j job-id[,N]           フィルターファイル N を指定されたジョブから使用す"
 "る (デフォルトは ファイル 1)。"
 
+#: test/ippfind.c:2759
 msgid "  -l                      List attributes."
 msgstr "  -l                      属性の一覧を表示する。"
 
+#: test/ipptool.c:4835
 msgid "  -l                      Produce plain text output."
-msgstr ""
+msgstr "  -l                      プレーンテキスト出力を行う。"
 
+#: scheduler/main.c:2152
 msgid "  -l                      Run cupsd on demand."
-msgstr ""
+msgstr "  -l                      cupsd をオンデマンドで実行する。"
 
+#: ppdc/ppdc.cxx:441
 msgid "  -l lang[,lang,...]      Specify the output language(s) (locale)."
 msgstr "  -l lang[,lang,...]      出力言語を指定する。(複数可能)"
 
+#: ppdc/ppdc.cxx:443
 msgid "  -m                      Use the ModelName value as the filename."
 msgstr "  -m                      ModelName の値をファイル名として使用する。"
 
+#: scheduler/cupsfilter.c:1492
 msgid ""
 "  -m mime/type            Set output MIME type (otherwise application/pdf)."
 msgstr ""
 "  -m mime/type            出力の MIME タイプを指定する (指定がなければ "
 "application/pdf)。"
 
+#: scheduler/cupsfilter.c:1493
 msgid "  -n copies               Set number of copies."
 msgstr "  -n copies               部数を指定する。"
 
+#: test/ipptool.c:4836
 msgid ""
 "  -n count                Repeat the last file the given number of times."
 msgstr "  -n count                最後のファイルを与えられた回数だけ繰り返す。"
 
+#: test/ippfind.c:2760
 msgid "  -n regex                Match service name to regular expression."
 msgstr "  -n <正規表現>           サービス名が正規表現とマッチするか。"
 
+#: ppdc/ppdi.cxx:133
 msgid ""
 "  -o filename.drv         Set driver information file (otherwise ppdi.drv)."
 msgstr ""
 "  -o filename.drv         ドライバー情報ファイルを指定する (指定がなければ "
 "ppdi.drv)。"
 
+#: ppdc/ppdmerge.cxx:364
 msgid "  -o filename.ppd[.gz]    Set output file (otherwise stdout)."
 msgstr ""
 "  -o filename.ppd[.gz]    出力ファイルを指定する (指定がなければ標準出力)。"
 
+#: scheduler/cupsfilter.c:1494
 msgid "  -o name=value           Set option(s)."
 msgstr "  -o name=value           オプションを指定する。"
 
+#: test/ippfind.c:2761
 msgid "  -p                      Print URI if true."
 msgstr "  -p                      結果が真なら URI を表示する。"
 
+#: scheduler/cupsfilter.c:1495
 msgid "  -p filename.ppd         Set PPD file."
 msgstr "  -p filename.ppd         PPD ファイルを指定する。"
 
+#: test/ippdiscover.c:820
 msgid "  -p program              Run specified program for each service."
 msgstr ""
 "  -p <プログラム名>       指定されたプログラムをそれぞれのサービスに対し実行"
 "する。"
 
+#: test/ippfind.c:2762
 msgid "  -q                      Quietly report match via exit code."
 msgstr ""
 "  -q                      マッチ結果を終了コードで報告し、出力をしない。"
 
+#: systemv/cupstestppd.c:3826 test/ipptool.c:4838
 msgid "  -q                      Run silently."
 msgstr "  -q                      詳細は表示しない。"
 
+#: test/ippfind.c:2763
 msgid "  -r                      True if service is remote."
 msgstr "  -r                      サービスがリモートなら真。"
 
+#: systemv/cupstestppd.c:3827
 msgid "  -r                      Use 'relaxed' open mode."
 msgstr "  -r                      寛容モードを用いる。"
 
+#: test/ippfind.c:2764
 msgid "  -s                      Print service name if true."
 msgstr "  -s                      結果が真ならサービス名を表示する。"
 
+#: test/ipptool.c:4839
 msgid "  -t                      Produce a test report."
 msgstr "  -t                      テストリポートを出力する。"
 
+#: ppdc/ppdc.cxx:445
 msgid "  -t                      Test PPDs instead of generating them."
 msgstr "  -t                      PPD を出力しないでテストする。"
 
+#: scheduler/main.c:2153
 msgid "  -t                      Test the configuration file."
 msgstr "  -t                      設定ファイルをテストする。"
 
+#: test/ippfind.c:2765
 msgid "  -t key                  True if the TXT record contains the key."
 msgstr "  -t <キー名>             TXT レコードがキー名を含んでいたら真。"
 
+#: scheduler/cupsfilter.c:1496
 msgid "  -t title                Set title."
 msgstr "  -t title                タイトルを指定する。"
 
+#: test/ippdiscover.c:821
 msgid "  -t type                 Browse/resolve with specified type."
 msgstr "  -t タイプ               指定されたタイプでブラウズ/名前解決する。"
 
+#: scheduler/cupsfilter.c:1497
 msgid "  -u                      Remove the PPD file when finished."
 msgstr "  -u                      終了したときに PPD ファイルを削除する。"
 
+#: test/ippfind.c:2766
 msgid "  -u regex                Match URI to regular expression."
 msgstr "  -u <正規表現>           URI が正規表現とマッチするか。"
 
+#: systemv/cupsaddsmb.c:291 systemv/cupstestppd.c:3828 test/ipptool.c:4840
+#: ppdc/ppdc.cxx:447 ppdc/ppdpo.cxx:259
 msgid "  -v                      Be verbose."
 msgstr "  -v                      冗長出力を行う。"
 
+#: systemv/cupstestppd.c:3829
 msgid "  -vv                     Be very verbose."
 msgstr "  -vv                     より冗長な出力を行う。"
 
+#: test/ippfind.c:2767
 msgid ""
 "  -x utility [argument ...] ;\n"
 "                          Execute program if true."
 msgstr ""
 "  -x <実行ファイル名> [引数 ...] ;\n"
-"                          成功した場合、<実行ファイル名>を実行する。"
+"                          成功した場合、<実行ファイル名> を実行する。"
 
+#: ppdc/ppdc.cxx:448
 msgid "  -z                      Compress PPD files using GNU zip."
 msgstr "  -z                      PPD ファイルを GNU zip を使って圧縮する。"
 
+#: test/ippfind.c:2810
 msgid "  IPPFIND_SERVICE_DOMAIN  Domain name"
 msgstr "  IPPFIND_SERVICE_DOMAIN  ドメイン名"
 
+#: test/ippfind.c:2811
 msgid ""
 "  IPPFIND_SERVICE_HOSTNAME\n"
 "                          Fully-qualified domain name"
 msgstr ""
 "  IPPFIND_SERVICE_HOSTNAME\n"
-"                          完全修飾ドメイン名(FQDN)"
+"                          完全修飾ドメイン名 (FQDN)"
 
+#: test/ippfind.c:2813
 msgid "  IPPFIND_SERVICE_NAME    Service instance name"
 msgstr "  IPPFIND_SERVICE_NAME    サービスインスタンス名"
 
+#: test/ippfind.c:2814
 msgid "  IPPFIND_SERVICE_PORT    Port number"
 msgstr "  IPPFIND_SERVICE_PORT    ポート番号"
 
+#: test/ippfind.c:2815
 msgid "  IPPFIND_SERVICE_REGTYPE DNS-SD registration type"
 msgstr "  IPPFIND_SERVICE_REGTYPE DNS-SD 登録タイプ"
 
+#: test/ippfind.c:2816
 msgid "  IPPFIND_SERVICE_SCHEME  URI scheme"
 msgstr "  IPPFIND_SERVICE_SCHEME  URI スキーム"
 
+#: test/ippfind.c:2817
 msgid "  IPPFIND_SERVICE_URI     URI"
 msgstr "  IPPFIND_SERVICE_URI     URI"
 
+#: test/ippfind.c:2818
 msgid "  IPPFIND_TXT_*           Value of TXT record key"
 msgstr "  IPPFIND_TXT_*           TXT レコードキーの値"
 
+#: test/ippfind.c:2793
 msgid ""
 "  expression --and expression\n"
 "                          Logical AND."
 msgstr "  <式> --and <式>         論理 AND。"
 
+#: test/ippfind.c:2795
 msgid ""
 "  expression --or expression\n"
 "                          Logical OR."
 msgstr "  <式> --or <式>          論理 OR。"
 
+#: test/ippfind.c:2792
 msgid "  expression expression   Logical AND."
 msgstr "  <式> <式>               論理 AND。"
 
+#: test/ippfind.c:2800
 msgid "  {service_domain}        Domain name"
 msgstr "  {service_domain}        ドメイン名"
 
+#: test/ippfind.c:2801
 msgid "  {service_hostname}      Fully-qualified domain name"
 msgstr "  {service_hostname}      完全修飾ドメイン名 (FQDN)"
 
+#: test/ippfind.c:2802
 msgid "  {service_name}          Service instance name"
 msgstr "  {service_name}          サービスインスタンス名"
 
+#: test/ippfind.c:2803
 msgid "  {service_port}          Port number"
 msgstr "  {service_port}          ポート番号"
 
+#: test/ippfind.c:2804
 msgid "  {service_regtype}       DNS-SD registration type"
 msgstr "  {service_regtype}       DNS-SD 登録タイプ"
 
+#: test/ippfind.c:2805
 msgid "  {service_scheme}        URI scheme"
 msgstr "  {service_scheme}        URI スキーム"
 
+#: test/ippfind.c:2806
 msgid "  {service_uri}           URI"
 msgstr "  {service_uri}           URI"
 
+#: test/ippfind.c:2807
 msgid "  {txt_*}                 Value of TXT record key"
 msgstr "  {txt_*}                 TXT レコードキーの値"
 
+#: test/ippfind.c:2799
 msgid "  {}                      URI"
 msgstr "  {}                      URI"
 
+#: systemv/cupstestppd.c:332 systemv/cupstestppd.c:351
+#: systemv/cupstestppd.c:363 systemv/cupstestppd.c:496
+#: systemv/cupstestppd.c:511 systemv/cupstestppd.c:532
+#: systemv/cupstestppd.c:547 systemv/cupstestppd.c:577
+#: systemv/cupstestppd.c:597 systemv/cupstestppd.c:620
+#: systemv/cupstestppd.c:638 systemv/cupstestppd.c:664
+#: systemv/cupstestppd.c:682 systemv/cupstestppd.c:702
+#: systemv/cupstestppd.c:722 systemv/cupstestppd.c:740
+#: systemv/cupstestppd.c:757 systemv/cupstestppd.c:776
+#: systemv/cupstestppd.c:797 systemv/cupstestppd.c:816
+#: systemv/cupstestppd.c:836 systemv/cupstestppd.c:856
+#: systemv/cupstestppd.c:876 systemv/cupstestppd.c:896
+#: systemv/cupstestppd.c:914 systemv/cupstestppd.c:931
+#: systemv/cupstestppd.c:953 systemv/cupstestppd.c:971
+#: systemv/cupstestppd.c:988 systemv/cupstestppd.c:1006
+#: systemv/cupstestppd.c:1022 systemv/cupstestppd.c:1042
+#: systemv/cupstestppd.c:1073 systemv/cupstestppd.c:1095
+#: systemv/cupstestppd.c:1146 systemv/cupstestppd.c:1165
+#: systemv/cupstestppd.c:1209 systemv/cupstestppd.c:1223
+#: systemv/cupstestppd.c:1255 systemv/cupstestppd.c:1282
+#: systemv/cupstestppd.c:1800 systemv/cupstestppd.c:1819
+#: systemv/cupstestppd.c:1837 systemv/cupstestppd.c:1889
+#: systemv/cupstestppd.c:1905 systemv/cupstestppd.c:1942
+#: systemv/cupstestppd.c:1960 systemv/cupstestppd.c:1996
+#: systemv/cupstestppd.c:2010 systemv/cupstestppd.c:2037
+#: systemv/cupstestppd.c:2051 systemv/cupstestppd.c:2097
+#: systemv/cupstestppd.c:2119 systemv/cupstestppd.c:2142
+#: systemv/cupstestppd.c:2159 systemv/cupstestppd.c:2201
+#: systemv/cupstestppd.c:2244 systemv/cupstestppd.c:2291
+#: systemv/cupstestppd.c:2315 systemv/cupstestppd.c:2369
+#: systemv/cupstestppd.c:2385 systemv/cupstestppd.c:2415
+#: systemv/cupstestppd.c:2429 systemv/cupstestppd.c:2455
+#: systemv/cupstestppd.c:2471 systemv/cupstestppd.c:2511
+#: systemv/cupstestppd.c:2525 systemv/cupstestppd.c:2551
+#: systemv/cupstestppd.c:2567 systemv/cupstestppd.c:2597
+#: systemv/cupstestppd.c:2611 systemv/cupstestppd.c:2638
+#: systemv/cupstestppd.c:2655 systemv/cupstestppd.c:2669
+#: systemv/cupstestppd.c:2693 systemv/cupstestppd.c:2710
+#: systemv/cupstestppd.c:2724 systemv/cupstestppd.c:2748
+#: systemv/cupstestppd.c:2765 systemv/cupstestppd.c:2779
+#: systemv/cupstestppd.c:2803 systemv/cupstestppd.c:2820
+#: systemv/cupstestppd.c:2834 systemv/cupstestppd.c:2858
+#: systemv/cupstestppd.c:2872 systemv/cupstestppd.c:2887
+#: systemv/cupstestppd.c:2904 systemv/cupstestppd.c:2960
+#: systemv/cupstestppd.c:2995 systemv/cupstestppd.c:3009
+#: systemv/cupstestppd.c:3037 systemv/cupstestppd.c:3102
+#: systemv/cupstestppd.c:3117 systemv/cupstestppd.c:3156
+#: systemv/cupstestppd.c:3176 systemv/cupstestppd.c:3190
+#: systemv/cupstestppd.c:3407 systemv/cupstestppd.c:3443
+#: systemv/cupstestppd.c:3457 systemv/cupstestppd.c:3503
+#: systemv/cupstestppd.c:3535 systemv/cupstestppd.c:3552
+#: systemv/cupstestppd.c:3575 systemv/cupstestppd.c:3591
+#: systemv/cupstestppd.c:3629 systemv/cupstestppd.c:3770
+#: systemv/cupstestppd.c:3792 systemv/cupstestppd.c:3900
 msgid " FAIL"
 msgstr " 失敗"
 
+#: systemv/cupstestppd.c:1306
 msgid " PASS"
 msgstr " 合格"
 
+#: cups/ipp.c:5227
 #, c-format
 msgid "\"%s\": Bad URI value \"%s\" - %s (RFC 2911 section 4.1.5)."
 msgstr "\"%s\": URI の値 \"%s\" が誤っています - %s (RFC 2911 4.1.5 節)。"
 
+#: cups/ipp.c:5238
 #, c-format
 msgid "\"%s\": Bad URI value \"%s\" - bad length %d (RFC 2911 section 4.1.5)."
 msgstr ""
 "\"%s\": URI の値 \"%s\" が誤っています - 長さの誤り %d (RFC 2911 4.1.5 節)。"
 
+#: cups/ipp.c:4858
 #, c-format
 msgid "\"%s\": Bad attribute name - bad length %d (RFC 2911 section 4.1.3)."
 msgstr "\"%s\": 属性名が誤っています - 長さの誤り %d (RFC 2911 4.1.3 節)。"
 
+#: cups/ipp.c:4850
 #, c-format
 msgid ""
 "\"%s\": Bad attribute name - invalid character (RFC 2911 section 4.1.3)."
 msgstr "\"%s\": 属性名が誤っています - 不正な文字 (RFC 2911 4.1.3 節)。"
 
+#: cups/ipp.c:4876
 #, c-format
 msgid "\"%s\": Bad boolen value %d (RFC 2911 section 4.1.11)."
 msgstr "\"%s\": 真偽値 %d が誤っています (RFC 2911 4.1.11 節)。"
 
+#: cups/ipp.c:5290
 #, c-format
 msgid ""
 "\"%s\": Bad charset value \"%s\" - bad characters (RFC 2911 section 4.1.7)."
 msgstr ""
 "\"%s\": charset の値 \"%s\" が誤っています - 不正な文字 (RFC 2911 4.1.7 節)。"
 
+#: cups/ipp.c:5299
 #, c-format
 msgid ""
 "\"%s\": Bad charset value \"%s\" - bad length %d (RFC 2911 section 4.1.7)."
@@ -1419,55 +1808,67 @@ msgstr ""
 "\"%s\": charset の値 \"%s\" が誤っています - 不正な長さ %d (RFC 2911 section "
 "4.1.7)."
 
+#: cups/ipp.c:4976
 #, c-format
 msgid "\"%s\": Bad dateTime UTC hours %u (RFC 2911 section 4.1.14)."
 msgstr ""
 "\"%s\": dateTime UTC の時間指定 %u が誤っています (RFC 2911 4.1.14 節)."
 
+#: cups/ipp.c:4984
 #, c-format
 msgid "\"%s\": Bad dateTime UTC minutes %u (RFC 2911 section 4.1.14)."
 msgstr "\"%s\": dateTime UTC の分指定 %u が誤っています (RFC 2911 4.1.14 節)。"
 
+#: cups/ipp.c:4968
 #, c-format
 msgid "\"%s\": Bad dateTime UTC sign '%c' (RFC 2911 section 4.1.14)."
 msgstr ""
 "\"%s\": dateTime UTC の符号指定 '%c' が誤っています (RFC 2911 4.1.14 節)。"
 
+#: cups/ipp.c:4928
 #, c-format
 msgid "\"%s\": Bad dateTime day %u (RFC 2911 section 4.1.14)."
 msgstr "\"%s\": dateTime の日付指定 %u が誤っています (RFC 2911 4.1.14 節)."
 
+#: cups/ipp.c:4960
 #, c-format
 msgid "\"%s\": Bad dateTime deciseconds %u (RFC 2911 section 4.1.14)."
 msgstr ""
 "\"%s\": dateTime の 0.1 秒の指定 %u が誤っています (RFC 2911 4.1.14 節)。"
 
+#: cups/ipp.c:4936
 #, c-format
 msgid "\"%s\": Bad dateTime hours %u (RFC 2911 section 4.1.14)."
 msgstr "\"%s\": dateTime の時間指定 %u が誤っています (RFC 2911 4.1.14 節)。"
 
+#: cups/ipp.c:4944
 #, c-format
 msgid "\"%s\": Bad dateTime minutes %u (RFC 2911 section 4.1.14)."
 msgstr "\"%s\": dateTime の分指定が誤っています %u (RFC 2911 4.1.14 節)。"
 
+#: cups/ipp.c:4920
 #, c-format
 msgid "\"%s\": Bad dateTime month %u (RFC 2911 section 4.1.14)."
 msgstr "\"%s\": dateTime の月指定 %u が誤っています (RFC 2911 4.1.14 節)。"
 
+#: cups/ipp.c:4952
 #, c-format
 msgid "\"%s\": Bad dateTime seconds %u (RFC 2911 section 4.1.14)."
 msgstr "\"%s\": 日時の秒指定 %u が誤っています (RFC 2911 4.1.14 節)。"
 
+#: cups/ipp.c:4890
 #, c-format
 msgid "\"%s\": Bad enum value %d - out of range (RFC 2911 section 4.1.4)."
 msgstr "\"%s\": enum の値 %d が誤っています - 範囲外の値 (RFC 2911 4.1.4 節)。"
 
+#: cups/ipp.c:5205
 #, c-format
 msgid ""
 "\"%s\": Bad keyword value \"%s\" - bad length %d (RFC 2911 section 4.1.3)."
 msgstr ""
 "\"%s\": keyword の値 \"%s\" が誤っています -  %d (RFC 2911 section 4.1.3)."
 
+#: cups/ipp.c:5196
 #, c-format
 msgid ""
 "\"%s\": Bad keyword value \"%s\" - invalid character (RFC 2911 section "
@@ -1475,6 +1876,7 @@ msgid ""
 msgstr ""
 "\"%s\": keyword の値 \"%s\" が誤っています - 不正な文字 (RFC 2911 4.1.3 節)。"
 
+#: cups/ipp.c:5399
 #, c-format
 msgid ""
 "\"%s\": Bad mimeMediaType value \"%s\" - bad characters (RFC 2911 section "
@@ -1483,6 +1885,7 @@ msgstr ""
 "\"%s\": mimeMediaType の値 \"%s\" が誤っています - 誤った文字 (RFC 2911 "
 "4.1.9 節)。"
 
+#: cups/ipp.c:5409
 #, c-format
 msgid ""
 "\"%s\": Bad mimeMediaType value \"%s\" - bad length %d (RFC 2911 section "
@@ -1491,6 +1894,7 @@ msgstr ""
 "\"%s\": mimeMediaType の値 \"%s\" が誤っています - 長さの誤り %d (RFC 2911 "
 "4.1.9 節)。"
 
+#: cups/ipp.c:5167
 #, c-format
 msgid ""
 "\"%s\": Bad name value \"%s\" - bad UTF-8 sequence (RFC 2911 section 4.1.2)."
@@ -1498,12 +1902,14 @@ msgstr ""
 "\"%s\": name の値 \"%s\" が誤っています - UTF-8 として誤った並び (RFC 2911 "
 "4.1.2 節)。"
 
+#: cups/ipp.c:5176
 #, c-format
 msgid "\"%s\": Bad name value \"%s\" - bad length %d (RFC 2911 section 4.1.2)."
 msgstr ""
 "\"%s\": name の値 \"%s\" が誤っています - 誤った長さ %d (RFC 2911 section "
 "4.1.2)。"
 
+#: cups/ipp.c:5345
 #, c-format
 msgid ""
 "\"%s\": Bad naturalLanguage value \"%s\" - bad characters (RFC 2911 section "
@@ -1512,6 +1918,7 @@ msgstr ""
 "\"%s\": naturalLanguage の値 \"%s\" が誤っています - 誤った文字 (RFC 2911 "
 "4.1.8 節)。"
 
+#: cups/ipp.c:5355
 #, c-format
 msgid ""
 "\"%s\": Bad naturalLanguage value \"%s\" - bad length %d (RFC 2911 section "
@@ -1520,12 +1927,14 @@ msgstr ""
 "\"%s\": naturalLanguage の値 \"%s\" が誤っています - 誤った長さ %d (RFC 2911 "
 "4.1.8 節)。"
 
+#: cups/ipp.c:4904
 #, c-format
 msgid ""
 "\"%s\": Bad octetString value - bad length %d (RFC 2911 section 4.1.10)."
 msgstr ""
 "\"%s\": octetString 値が誤っています - 誤った長さ %d (RFC 2911 4.1.10 節)。"
 
+#: cups/ipp.c:5047
 #, c-format
 msgid ""
 "\"%s\": Bad rangeOfInteger value %d-%d - lower greater than upper (RFC 2911 "
@@ -1534,6 +1943,7 @@ msgstr ""
 "\"%s\": rangeOfInteger の値 %d-%d が誤っています  - 下限が上限よりも大きい "
 "(RFC 2911 4.1.13 節)。"
 
+#: cups/ipp.c:5028
 #, c-format
 msgid ""
 "\"%s\": Bad resolution value %dx%d%s - bad units value (RFC 2911 section "
@@ -1542,14 +1952,14 @@ msgstr ""
 "\"%s\": resolution の値 %dx%d%s が誤っています - 単位値の誤り (RFC 2911 "
 "4.1.15 節)。"
 
+#: cups/ipp.c:4997
 #, c-format
 msgid ""
 "\"%s\": Bad resolution value %dx%d%s - cross feed resolution must be "
 "positive (RFC 2911 section 4.1.15)."
-msgstr ""
-"\"%s\": resolution の値 %dx%d%s が誤っています - 主走査解像道が負 (RFC 2911 "
-"4.1.15 節)。"
+msgstr "\"%s\": resolution の値 %dx%d%s が誤っています - 主走査解像度が負 (RFC 2911 4.1.15 節)。"
 
+#: cups/ipp.c:5012
 #, c-format
 msgid ""
 "\"%s\": Bad resolution value %dx%d%s - feed resolution must be positive (RFC "
@@ -1558,6 +1968,7 @@ msgstr ""
 "\"%s\": resolution の値 %dx%d%s が誤っています - 副走査解像度が負 (RFC 2911 "
 "4.1.15 節)。"
 
+#: cups/ipp.c:5109
 #, c-format
 msgid ""
 "\"%s\": Bad text value \"%s\" - bad UTF-8 sequence (RFC 2911 section 4.1.1)."
@@ -1565,11 +1976,13 @@ msgstr ""
 "\"%s\": text の値 \"%s\" が誤っています - UTF-8 として誤った並び (RFC 2911 "
 "4.1.1 節)。"
 
+#: cups/ipp.c:5118
 #, c-format
 msgid "\"%s\": Bad text value \"%s\" - bad length %d (RFC 2911 section 4.1.1)."
 msgstr ""
 "\"%s\": text の値 \"%s\" が誤っています - 不正な長さ %d (RFC 2911 4.1.1 節)。"
 
+#: cups/ipp.c:5261
 #, c-format
 msgid ""
 "\"%s\": Bad uriScheme value \"%s\" - bad characters (RFC 2911 section 4.1.6)."
@@ -1577,212 +1990,276 @@ msgstr ""
 "\"%s\": uriScheme の値 \"%s\" が誤っています - 誤った文字 (RFC 2911 4.1.6 "
 "節)."
 
+#: cups/ipp.c:5270
 #, c-format
 msgid ""
 "\"%s\": Bad uriScheme value \"%s\" - bad length %d (RFC 2911 section 4.1.6)."
-msgstr ""
+msgstr "\"%s\": uriScheme の値 \"%s\" が誤っています - 不正な長さ %d (RFC 2911 4.1.6 節)."
 
+#: berkeley/lpq.c:533
 #, c-format
 msgid "%-7s %-7.7s %-7d %-31.31s %.0f bytes"
 msgstr "%-7s %-7.7s %-7d %-31.31s %.0f バイト"
 
+#: cups/dest-localization.c:114
 #, c-format
 msgid "%d x %d mm"
-msgstr ""
+msgstr "%d x %d mm"
 
+#: cups/dest-localization.c:106
 #, c-format
 msgid "%g x %g"
-msgstr ""
+msgstr "%g x %g"
 
+#: cups/dest-localization.c:169 cups/dest-localization.c:176
 #, c-format
 msgid "%s (%s)"
-msgstr ""
+msgstr "%s (%s)"
 
+#: cups/dest-localization.c:183
 #, c-format
 msgid "%s (%s, %s)"
-msgstr ""
+msgstr "%s (%s, %s)"
 
+#: cups/dest-localization.c:160
 #, c-format
 msgid "%s (Borderless)"
-msgstr ""
+msgstr "%s (ふちなし)"
 
+#: cups/dest-localization.c:167 cups/dest-localization.c:174
 #, c-format
 msgid "%s (Borderless, %s)"
-msgstr ""
+msgstr "%s (ふちなし, %s)"
 
+#: cups/dest-localization.c:181
 #, c-format
 msgid "%s (Borderless, %s, %s)"
-msgstr ""
+msgstr "%s (ふちなし, %s, %s)"
 
+#: systemv/lpstat.c:777
 #, c-format
 msgid "%s accepting requests since %s"
 msgstr "%s は %s からリクエストを受け付けています"
 
+#: scheduler/ipp.c:9952
 #, c-format
 msgid "%s cannot be changed."
 msgstr "%s は変更できません。"
 
+#: berkeley/lpc.c:181
 #, c-format
 msgid "%s is not implemented by the CUPS version of lpc."
 msgstr "%s は lpc の CUPS バージョンでは実装されていません。"
 
+#: berkeley/lpq.c:618
 #, c-format
 msgid "%s is not ready"
 msgstr "%s は準備ができていません"
 
+#: berkeley/lpq.c:611
 #, c-format
 msgid "%s is ready"
 msgstr "%s は準備ができています"
 
+#: berkeley/lpq.c:614
 #, c-format
 msgid "%s is ready and printing"
 msgstr "%s は準備ができており印刷しています"
 
+#: filter/rastertoepson.c:970 filter/rastertohp.c:700
+#: filter/rastertolabel.c:1120
 #, c-format
 msgid "%s job-id user title copies options [file]"
 msgstr "%s ジョブID ユーザー タイトル コピー数 オプション [ファイル]"
 
+#: systemv/lpstat.c:781
 #, c-format
 msgid "%s not accepting requests since %s -"
 msgstr "%s は %s からリクエストを受け付けていません -"
 
+#: scheduler/ipp.c:618
 #, c-format
 msgid "%s not supported."
 msgstr "%s はサポートされていません。"
 
+#: systemv/lpstat.c:792
 #, c-format
 msgid "%s/%s accepting requests since %s"
 msgstr "%s/%s は %s からリクエストを受け付けています"
 
+#: systemv/lpstat.c:797
 #, c-format
 msgid "%s/%s not accepting requests since %s -"
 msgstr "%s/%s は %s からリクエストを受け付けていません - "
 
+#: berkeley/lpq.c:526
 #, c-format
 msgid "%s: %-33.33s [job %d localhost]"
 msgstr "%s:%-33.33s [ジョブ %d localhost]"
 
 #. TRANSLATORS: Message is "subject: error"
+#: cups/langprintf.c:77 scheduler/cupsfilter.c:726 systemv/lpadmin.c:791
+#: systemv/lpadmin.c:842 systemv/lpadmin.c:892 systemv/lpadmin.c:948
+#: systemv/lpadmin.c:1046 systemv/lpadmin.c:1098 systemv/lpadmin.c:1154
+#: systemv/lpadmin.c:1463
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
+#: systemv/cancel.c:305 systemv/cancel.c:368
 #, c-format
 msgid "%s: %s failed: %s"
 msgstr "%s: %s に失敗しました: %s"
 
+#: test/ippfind.c:777 test/ipptool.c:378
 #, c-format
 msgid "%s: Bad version %s for \"-V\"."
 msgstr "%s: -V オプションにおいて %s は不正なバージョンです。"
 
+#: systemv/cupsaccept.c:68
 #, c-format
 msgid "%s: Don't know what to do."
 msgstr "%s: 何が起きているか不明です。"
 
+#: berkeley/lpq.c:225 berkeley/lpr.c:358 systemv/lp.c:602
 #, c-format
 msgid ""
 "%s: Error - %s environment variable names non-existent destination \"%s\"."
 msgstr "%s: エラー - 環境変数 %s が存在しない宛先 \"%s\" を指しています。"
 
+#: berkeley/lpq.c:133 berkeley/lpq.c:203 berkeley/lpr.c:230 berkeley/lpr.c:333
+#: systemv/lp.c:157 systemv/lp.c:577 systemv/lp.c:697 systemv/lp.c:746
+#: systemv/lpstat.c:195 systemv/lpstat.c:241 systemv/lpstat.c:332
+#: systemv/lpstat.c:361 systemv/lpstat.c:385 systemv/lpstat.c:444
+#: systemv/lpstat.c:510 systemv/lpstat.c:571 systemv/lpstat.c:696
+#: systemv/lpstat.c:880 systemv/lpstat.c:1141 systemv/lpstat.c:1339
+#: systemv/lpstat.c:1579
 #, c-format
 msgid "%s: Error - add '/version=1.1' to server name."
 msgstr "%s: エラー - '/version=1.1' をサーバー名に付与してください。"
 
+#: systemv/lp.c:234
 #, c-format
 msgid "%s: Error - bad job ID."
 msgstr "%s: エラー - 不正なジョブ ID です。"
 
+#: systemv/lp.c:222
 #, c-format
 msgid "%s: Error - cannot print files and alter jobs simultaneously."
 msgstr ""
 "%s: エラー - ファイルを印刷できず、ジョブを同時に変えることができません。"
 
+#: systemv/lp.c:515
 #, c-format
 msgid "%s: Error - cannot print from stdin if files or a job ID are provided."
 msgstr ""
 "%s: エラー - ファイルまたはジョブ ID が提供されている場合、標準入力から印刷で"
 "きません。 "
 
+#: systemv/lp.c:464
 #, c-format
 msgid "%s: Error - expected character set after \"-S\" option."
 msgstr "%s: エラー - \"-S\" オプションのあとには文字セットが必要です。"
 
+#: systemv/lp.c:483
 #, c-format
 msgid "%s: Error - expected content type after \"-T\" option."
 msgstr "%s: エラー - \"-T\" オプションのあとにはコンテンツタイプが必要です。"
 
+#: berkeley/lpr.c:245
 #, c-format
 msgid "%s: Error - expected copies after \"-#\" option."
 msgstr "%s: エラー - \"-#\" オプションのあとにはコピー数が必要です。"
 
+#: systemv/lp.c:267
 #, c-format
 msgid "%s: Error - expected copies after \"-n\" option."
 msgstr "%s: エラー - \"-n\" オプションのあとにはコピー数が必要です。"
 
+#: berkeley/lpr.c:206
 #, c-format
 msgid "%s: Error - expected destination after \"-P\" option."
 msgstr "%s: エラー - \"-P\" オプションのあとには宛先が必要です。"
 
+#: systemv/lp.c:132
 #, c-format
 msgid "%s: Error - expected destination after \"-d\" option."
 msgstr "%s: エラー - \"-d\" オプションのあとにはプリンター名が必要です。"
 
+#: systemv/lp.c:171
 #, c-format
 msgid "%s: Error - expected form after \"-f\" option."
 msgstr "%s: エラー - \"-f\" オプションのあとには用紙名が必要です。"
 
+#: systemv/lp.c:394
 #, c-format
 msgid "%s: Error - expected hold name after \"-H\" option."
 msgstr "%s: エラー - \"-H\" オプションのあとにはホールド名が必要です。"
 
+#: berkeley/lpr.c:100
 #, c-format
 msgid "%s: Error - expected hostname after \"-H\" option."
 msgstr "%s: エラー - \"-H\" オプションのあとにはホスト名が必要です。"
 
+#: berkeley/lpq.c:169 berkeley/lprm.c:123 systemv/cancel.c:124
+#: systemv/cupsaccept.c:123 systemv/lp.c:192 systemv/lpstat.c:266
 #, c-format
 msgid "%s: Error - expected hostname after \"-h\" option."
 msgstr "%s: エラー -  \"-h\" オプションのあとにはホスト名が必要です。"
 
+#: systemv/lp.c:374
 #, c-format
 msgid "%s: Error - expected mode list after \"-y\" option."
 msgstr "%s: エラー - \"-y\" オプションのあとにはモードリストが必要です。"
 
+#: berkeley/lpr.c:268
 #, c-format
 msgid "%s: Error - expected name after \"-%c\" option."
 msgstr "%s: エラー - \"-%c\" オプションのあとには名前が必要です。"
 
+#: berkeley/lpr.c:150 systemv/lp.c:291
 #, c-format
 msgid "%s: Error - expected option=value after \"-o\" option."
 msgstr "%s: エラー - \"-o\" オプションのあとには オプション=値 が必要です。"
 
+#: systemv/lp.c:444
 #, c-format
 msgid "%s: Error - expected page list after \"-P\" option."
 msgstr "%s: エラー - \"-P\" オプションのあとにはページリストが必要です。"
 
+#: systemv/lp.c:311
 #, c-format
 msgid "%s: Error - expected priority after \"-%c\" option."
 msgstr "%s: エラー - \"-%c\" オプションのあとには優先度が必要です。"
 
+#: systemv/cupsaccept.c:141
 #, c-format
 msgid "%s: Error - expected reason text after \"-r\" option."
 msgstr "%s: エラー - \"-r\" のあとには理由のテキストが必要です。"
 
+#: systemv/lp.c:357
 #, c-format
 msgid "%s: Error - expected title after \"-t\" option."
 msgstr "%s: エラー - \"-t\" オプションのあとにはタイトルが必要です。"
 
+#: berkeley/lpq.c:97 berkeley/lpr.c:81 berkeley/lprm.c:104 systemv/cancel.c:95
+#: systemv/cupsaccept.c:101 systemv/lp.c:110 systemv/lpadmin.c:424
+#: systemv/lpstat.c:124
 #, c-format
 msgid "%s: Error - expected username after \"-U\" option."
 msgstr "%s: エラー - \"-U\" オプションのあとにはユーザー名が必要です。"
 
+#: systemv/cancel.c:145
 #, c-format
 msgid "%s: Error - expected username after \"-u\" option."
 msgstr "%s: エラー - \"-u\" オプションのあとにはユーザー名が必要です。"
 
+#: berkeley/lpr.c:122
 #, c-format
 msgid "%s: Error - expected value after \"-%c\" option."
 msgstr "%s: エラー -  \"-%c\" オプションのあとには値が必要です。"
 
+#: systemv/lpstat.c:144 systemv/lpstat.c:158
 #, c-format
 msgid ""
 "%s: Error - need \"completed\", \"not-completed\", or \"all\" after \"-W\" "
@@ -1791,139 +2268,178 @@ msgstr ""
 "%s: エラー - \"-W\" オプションのあとには、\"completed\"、\"not-completed"
 "\"、\"all\" のいずれかが必要です。"
 
+#: berkeley/lpq.c:230 berkeley/lpr.c:363 systemv/lp.c:607
 #, c-format
 msgid "%s: Error - no default destination available."
 msgstr "%s: エラー - 利用可能なデフォルトの宛先がありません。"
 
+#: systemv/lp.c:333
 #, c-format
 msgid "%s: Error - priority must be between 1 and 100."
 msgstr "%s: エラー - 優先度は 1 から 100 の間である必要があります。"
 
+#: berkeley/lpr.c:366 systemv/lp.c:610
 #, c-format
 msgid "%s: Error - scheduler not responding."
 msgstr "%s: エラー - スケジューラーが応答していません。"
 
+#: berkeley/lpr.c:311 systemv/lp.c:547
 #, c-format
 msgid "%s: Error - too many files - \"%s\"."
 msgstr "%s: エラー - ファイルが多すぎます - \"%s\""
 
+#: berkeley/lpr.c:293 systemv/lp.c:530
 #, c-format
 msgid "%s: Error - unable to access \"%s\" - %s"
 msgstr "%s: エラー - \"%s\" にアクセスできません - %s"
 
+#: berkeley/lpr.c:409 systemv/lp.c:641
 #, c-format
 msgid "%s: Error - unable to queue from stdin - %s."
 msgstr "%s: エラー - 標準入力からキューにデータを入力できません。 - %s"
 
+#: berkeley/lprm.c:87 berkeley/lprm.c:172 systemv/cancel.c:222
 #, c-format
 msgid "%s: Error - unknown destination \"%s\"."
 msgstr "%s: エラー - \"%s\" は未知の宛先です。"
 
+#: berkeley/lpq.c:137
 #, c-format
 msgid "%s: Error - unknown destination \"%s/%s\"."
 msgstr "%s: エラー - \"%s/%s\" は未知の宛先です。"
 
+#: berkeley/lpr.c:279 berkeley/lprm.c:139 systemv/cancel.c:163
+#: systemv/cupsaccept.c:164 systemv/lp.c:506 systemv/lpstat.c:456
 #, c-format
 msgid "%s: Error - unknown option \"%c\"."
 msgstr "%s: エラー - '%c' は未知のオプションです。"
 
+#: systemv/cupsaccept.c:157 systemv/lp.c:497
 #, c-format
 msgid "%s: Error - unknown option \"%s\"."
 msgstr "%s: エラー - '%s' は未知のオプションです。"
 
+#: systemv/lp.c:211
 #, c-format
 msgid "%s: Expected job ID after \"-i\" option."
 msgstr "%s: '-i' オプションのあとにはジョブ ID が必要です。"
 
+#: systemv/lpstat.c:514 systemv/lpstat.c:554
 #, c-format
 msgid "%s: Invalid destination name in list \"%s\"."
 msgstr "%s: リスト \"%s\" に無効な宛先名があります。"
 
+#: scheduler/cupsfilter.c:579
 #, c-format
 msgid "%s: Invalid filter string \"%s\"."
 msgstr "%s: 無効なフィルター文字列です \"%s\""
 
+#: test/ipptool.c:309
 #, c-format
 msgid "%s: Missing filename for \"-P\"."
-msgstr ""
+msgstr "%s: \"-P\" にファイル名がありません。"
 
+#: test/ippfind.c:749 test/ipptool.c:346
 #, c-format
 msgid "%s: Missing timeout for \"-T\"."
 msgstr "%s: \"-T\" オプションにタイムアウトが設定されていません。"
 
+#: test/ippfind.c:762 test/ipptool.c:360
 #, c-format
 msgid "%s: Missing version for \"-V\"."
 msgstr "%s: \"-V\" オプションにバージョンの指定がありません。"
 
+#: systemv/lp.c:421
 #, c-format
 msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"."
 msgstr "%s: '-H restart' の前にはジョブ ID ('-i ジョブID') が必要です。"
 
+#: scheduler/cupsfilter.c:451
 #, c-format
 msgid "%s: No filter to convert from %s/%s to %s/%s."
 msgstr "%s: %s/%s から %s/%s に変換するフィルターがありません。"
 
+#: systemv/cupsaccept.c:198
 #, c-format
 msgid "%s: Operation failed: %s"
 msgstr "%s: 操作に失敗しました: %s"
 
+#: berkeley/lpq.c:83 berkeley/lpr.c:67 berkeley/lprm.c:67 systemv/cancel.c:82
+#: systemv/cupsaccept.c:88 systemv/cupsaddsmb.c:86 systemv/lp.c:96
+#: systemv/lpadmin.c:225 systemv/lpinfo.c:88 systemv/lpmove.c:73
+#: systemv/lpstat.c:88 test/ipptool.c:291 test/ipptool.c:335
 #, c-format
 msgid "%s: Sorry, no encryption support."
 msgstr "%s: 残念ながら、暗号化サポートはコンパイル時に組み込まれていません。"
 
+#: berkeley/lpq.c:284 scheduler/cupsfilter.c:1275 systemv/cancel.c:245
+#: systemv/cupsaddsmb.c:144 systemv/cupsaddsmb.c:171
 #, c-format
 msgid "%s: Unable to connect to server."
 msgstr "%s: サーバーに接続できません"
 
+#: systemv/cancel.c:328
 #, c-format
 msgid "%s: Unable to contact server."
 msgstr "%s: サーバーに連絡できません。"
 
+#: scheduler/cupsfilter.c:416
 #, c-format
 msgid "%s: Unable to determine MIME type of \"%s\"."
 msgstr "%s: \"%s\" の MIME タイプを判別できません。"
 
+#: test/ipptool.c:318
 #, c-format
 msgid "%s: Unable to open \"%s\": %s"
-msgstr ""
+msgstr "%s: \"%s\" を開けません: %s"
 
+#: ppdc/ppdmerge.cxx:90
 #, c-format
 msgid "%s: Unable to open %s: %s"
 msgstr "%s: %s を開けません: %s"
 
+#: scheduler/cupsfilter.c:674 ppdc/ppdmerge.cxx:106
 #, c-format
 msgid "%s: Unable to open PPD file: %s on line %d."
 msgstr "%s: PPD ファイルを開けません: %s の %d 行目"
 
+#: scheduler/cupsfilter.c:383
 #, c-format
 msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"."
 msgstr ""
 "%s: \"%s\" または \"%s\" から MIME データベースを読み取ることができません。"
 
+#: berkeley/lpq.c:140 systemv/lpstat.c:575
 #, c-format
 msgid "%s: Unknown destination \"%s\"."
 msgstr "%s: \"%s\" は未知の宛先です。"
 
+#: scheduler/cupsfilter.c:428
 #, c-format
 msgid "%s: Unknown destination MIME type %s/%s."
 msgstr "%s: %s/%s は未知の宛先 MIME タイプです。"
 
+#: scheduler/cupsfilter.c:1479
 #, c-format
 msgid "%s: Unknown option \"%c\"."
 msgstr "%s: '%c' は未知のオプションです。"
 
+#: test/ippfind.c:648
 #, c-format
 msgid "%s: Unknown option \"%s\"."
 msgstr "%s: \"%s\" は未知のオプションです。"
 
+#: test/ippfind.c:928
 #, c-format
 msgid "%s: Unknown option \"-%c\"."
 msgstr "%s: \"-%c\" は未知のオプションです。"
 
+#: scheduler/cupsfilter.c:408
 #, c-format
 msgid "%s: Unknown source MIME type %s/%s."
 msgstr "%s: %s/%s は未知のソース MIME タイプです。"
 
+#: berkeley/lpr.c:136
 #, c-format
 msgid ""
 "%s: Warning - \"%c\" format modifier not supported - output may not be "
@@ -1932,1008 +2448,1347 @@ msgstr ""
 "%s: 警告 - '%c' 形式修飾子はサポートされていません - 出力は正しくないものにな"
 "るかもしれません。"
 
+#: systemv/lp.c:471
 #, c-format
 msgid "%s: Warning - character set option ignored."
 msgstr "%s: 警告 - 文字セットオプションは無視されます。"
 
+#: systemv/lp.c:490
 #, c-format
 msgid "%s: Warning - content type option ignored."
 msgstr "%s: 警告 - コンテンツタイプオプションは無視されます。"
 
+#: systemv/lp.c:178
 #, c-format
 msgid "%s: Warning - form option ignored."
 msgstr "%s: 警告 - 用紙オプションは無視されます。"
 
+#: systemv/lp.c:381
 #, c-format
 msgid "%s: Warning - mode option ignored."
 msgstr "%s: 警告 - モードオプションは無視されます。"
 
+#: ppdc/sample.c:305
 msgid "-1"
 msgstr "-1"
 
+#: ppdc/sample.c:296
 msgid "-10"
 msgstr "-10"
 
+#: ppdc/sample.c:388
 msgid "-100"
 msgstr "-100"
 
+#: ppdc/sample.c:387
 msgid "-105"
 msgstr "-105"
 
+#: ppdc/sample.c:295
 msgid "-11"
 msgstr "-11"
 
+#: ppdc/sample.c:386
 msgid "-110"
 msgstr "-110"
 
+#: ppdc/sample.c:385
 msgid "-115"
 msgstr "-115"
 
+#: ppdc/sample.c:294
 msgid "-12"
 msgstr "-12"
 
+#: ppdc/sample.c:384
 msgid "-120"
 msgstr "-120"
 
+#: ppdc/sample.c:293
 msgid "-13"
 msgstr "-13"
 
+#: ppdc/sample.c:292
 msgid "-14"
 msgstr "-14"
 
+#: ppdc/sample.c:291
 msgid "-15"
 msgstr "-15"
 
+#: ppdc/sample.c:304
 msgid "-2"
 msgstr "-2"
 
+#: ppdc/sample.c:404
 msgid "-20"
 msgstr "-20"
 
+#: ppdc/sample.c:403
 msgid "-25"
 msgstr "-25"
 
+#: ppdc/sample.c:303
 msgid "-3"
 msgstr "-3"
 
+#: ppdc/sample.c:402
 msgid "-30"
 msgstr "-30"
 
+#: ppdc/sample.c:401
 msgid "-35"
 msgstr "-35"
 
+#: ppdc/sample.c:302
 msgid "-4"
 msgstr "-4"
 
+#: ppdc/sample.c:400
 msgid "-40"
 msgstr "-40"
 
+#: ppdc/sample.c:399
 msgid "-45"
 msgstr "-45"
 
+#: ppdc/sample.c:301
 msgid "-5"
 msgstr "-5"
 
+#: ppdc/sample.c:398
 msgid "-50"
 msgstr "-50"
 
+#: ppdc/sample.c:397
 msgid "-55"
 msgstr "-55"
 
+#: ppdc/sample.c:300
 msgid "-6"
 msgstr "-6"
 
+#: ppdc/sample.c:396
 msgid "-60"
 msgstr "-60"
 
+#: ppdc/sample.c:395
 msgid "-65"
 msgstr "-65"
 
+#: ppdc/sample.c:299
 msgid "-7"
 msgstr "-7"
 
+#: ppdc/sample.c:394
 msgid "-70"
 msgstr "-70"
 
+#: ppdc/sample.c:393
 msgid "-75"
 msgstr "-75"
 
+#: ppdc/sample.c:298
 msgid "-8"
 msgstr "-8"
 
+#: ppdc/sample.c:392
 msgid "-80"
 msgstr "-80"
 
+#: ppdc/sample.c:391
 msgid "-85"
 msgstr "-85"
 
+#: ppdc/sample.c:297
 msgid "-9"
 msgstr "-9"
 
+#: ppdc/sample.c:390
 msgid "-90"
 msgstr "-90"
 
+#: ppdc/sample.c:389
 msgid "-95"
 msgstr "-95"
 
+#: ppdc/sample.c:306
 msgid "0"
 msgstr "0"
 
+#: ppdc/sample.c:307
 msgid "1"
 msgstr "1"
 
+#: ppdc/sample.c:379
 msgid "1 inch/sec."
 msgstr "1 インチ/秒"
 
+#: ppdc/sample.c:172
 msgid "1.25x0.25\""
 msgstr "1.25x0.25 インチ"
 
+#: ppdc/sample.c:173
 msgid "1.25x2.25\""
 msgstr "1.25x2.25 インチ"
 
+#: ppdc/sample.c:427
 msgid "1.5 inch/sec."
 msgstr "1.5 インチ/秒"
 
+#: ppdc/sample.c:174
 msgid "1.50x0.25\""
 msgstr "1.50x0.25 インチ"
 
+#: ppdc/sample.c:175
 msgid "1.50x0.50\""
 msgstr "1.50x0.50 インチ"
 
+#: ppdc/sample.c:176
 msgid "1.50x1.00\""
 msgstr "1.50x1.00 インチ"
 
+#: ppdc/sample.c:177
 msgid "1.50x2.00\""
 msgstr "1.50x2.00 インチ"
 
+#: ppdc/sample.c:316
 msgid "10"
 msgstr "10"
 
+#: ppdc/sample.c:438
 msgid "10 inches/sec."
 msgstr "10 インチ/秒"
 
+#: ppdc/sample.c:6
 msgid "10 x 11"
 msgstr "10 x 11 インチ"
 
+#: ppdc/sample.c:7
 msgid "10 x 13"
 msgstr "10 x 13 インチ"
 
+#: ppdc/sample.c:8
 msgid "10 x 14"
 msgstr "10 x 14 インチ"
 
+#: ppdc/sample.c:418
 msgid "100"
 msgstr "100"
 
+#: ppdc/sample.c:329
 msgid "100 mm/sec."
 msgstr "100 ミリメートル/秒"
 
+#: ppdc/sample.c:419
 msgid "105"
 msgstr "105"
 
+#: ppdc/sample.c:317
 msgid "11"
 msgstr "11"
 
+#: ppdc/sample.c:439
 msgid "11 inches/sec."
 msgstr "11 インチ/秒"
 
+#: ppdc/sample.c:420
 msgid "110"
 msgstr "110"
 
+#: ppdc/sample.c:421
 msgid "115"
 msgstr "115"
 
+#: ppdc/sample.c:318
 msgid "12"
 msgstr "12"
 
+#: ppdc/sample.c:440
 msgid "12 inches/sec."
 msgstr "12 インチ/秒"
 
+#: ppdc/sample.c:9
 msgid "12 x 11"
 msgstr "12 x 11 インチ"
 
+#: ppdc/sample.c:422
 msgid "120"
 msgstr "120"
 
+#: ppdc/sample.c:330
 msgid "120 mm/sec."
 msgstr "120 ミリメートル/秒"
 
+#: ppdc/sample.c:243
 msgid "120x60dpi"
 msgstr "120x60dpi"
 
+#: ppdc/sample.c:249
 msgid "120x72dpi"
 msgstr "120x72dpi"
 
+#: ppdc/sample.c:319
 msgid "13"
 msgstr "13"
 
+#: ppdc/sample.c:232
 msgid "136dpi"
 msgstr "136dpi"
 
+#: ppdc/sample.c:320
 msgid "14"
 msgstr "14"
 
+#: ppdc/sample.c:321
 msgid "15"
 msgstr "15"
 
+#: ppdc/sample.c:323
 msgid "15 mm/sec."
 msgstr "15 ミリメートル/秒"
 
+#: ppdc/sample.c:10
 msgid "15 x 11"
 msgstr "15 x 11 インチ"
 
+#: ppdc/sample.c:331
 msgid "150 mm/sec."
 msgstr "150 ミリメートル/秒"
 
+#: ppdc/sample.c:278
 msgid "150dpi"
 msgstr "150dpi"
 
+#: ppdc/sample.c:363
 msgid "16"
 msgstr "16"
 
+#: ppdc/sample.c:364
 msgid "17"
 msgstr "17"
 
+#: ppdc/sample.c:365
 msgid "18"
 msgstr "18"
 
+#: ppdc/sample.c:244
 msgid "180dpi"
 msgstr "180dpi"
 
+#: ppdc/sample.c:366
 msgid "19"
 msgstr "19"
 
+#: ppdc/sample.c:308
 msgid "2"
 msgstr "2"
 
+#: ppdc/sample.c:380
 msgid "2 inches/sec."
 msgstr "2 インチ/秒"
 
+#: ppdc/sample.c:262
 msgid "2-Sided Printing"
 msgstr "両面印刷"
 
+#: ppdc/sample.c:178
 msgid "2.00x0.37\""
 msgstr "2.00x0.37 インチ"
 
+#: ppdc/sample.c:179
 msgid "2.00x0.50\""
 msgstr "2.00x0.50 インチ"
 
+#: ppdc/sample.c:180
 msgid "2.00x1.00\""
 msgstr "2.00x1.00 インチ"
 
+#: ppdc/sample.c:181
 msgid "2.00x1.25\""
 msgstr "2.00x1.25 インチ"
 
+#: ppdc/sample.c:182
 msgid "2.00x2.00\""
 msgstr "2.00x2.00 インチ"
 
+#: ppdc/sample.c:183
 msgid "2.00x3.00\""
 msgstr "2.00x3.00 インチ"
 
+#: ppdc/sample.c:184
 msgid "2.00x4.00\""
 msgstr "2.00x4.00 インチ"
 
+#: ppdc/sample.c:185
 msgid "2.00x5.50\""
 msgstr "2.00x5.50 インチ"
 
+#: ppdc/sample.c:186
 msgid "2.25x0.50\""
 msgstr "2.25x0.50 インチ"
 
+#: ppdc/sample.c:187
 msgid "2.25x1.25\""
 msgstr "2.25x1.25 インチ"
 
+#: ppdc/sample.c:188
 msgid "2.25x4.00\""
 msgstr "2.25x4.00 インチ"
 
+#: ppdc/sample.c:189
 msgid "2.25x5.50\""
 msgstr "2.25x5.50 インチ"
 
+#: ppdc/sample.c:190
 msgid "2.38x5.50\""
 msgstr "2.38x5.50 インチ"
 
+#: ppdc/sample.c:428
 msgid "2.5 inches/sec."
 msgstr "2.5 インチ/秒"
 
+#: ppdc/sample.c:191
 msgid "2.50x1.00\""
 msgstr "2.50x1.00 インチ"
 
+#: ppdc/sample.c:192
 msgid "2.50x2.00\""
 msgstr "2.50x2.00 インチ"
 
+#: ppdc/sample.c:193
 msgid "2.75x1.25\""
 msgstr "2.75x1.25 インチ"
 
+#: ppdc/sample.c:194
 msgid "2.9 x 1\""
 msgstr "2.9 x 1 インチ"
 
+#: ppdc/sample.c:367
 msgid "20"
 msgstr "20"
 
+#: ppdc/sample.c:324
 msgid "20 mm/sec."
 msgstr "20 ミリメートル/秒"
 
+#: ppdc/sample.c:332
 msgid "200 mm/sec."
 msgstr "200 ミリメートル/秒"
 
+#: ppdc/sample.c:233
 msgid "203dpi"
 msgstr "203dpi"
 
+#: ppdc/sample.c:368
 msgid "21"
 msgstr "21"
 
+#: ppdc/sample.c:369
 msgid "22"
 msgstr "22"
 
+#: ppdc/sample.c:370
 msgid "23"
 msgstr "23"
 
+#: ppdc/sample.c:371
 msgid "24"
 msgstr "24"
 
+#: ppdc/sample.c:241
 msgid "24-Pin Series"
 msgstr "24 ピンシリーズ"
 
+#: ppdc/sample.c:250
 msgid "240x72dpi"
 msgstr "240x72dpi"
 
+#: ppdc/sample.c:372
 msgid "25"
 msgstr "25"
 
+#: ppdc/sample.c:333
 msgid "250 mm/sec."
 msgstr "250 ミリメートル/秒"
 
+#: ppdc/sample.c:373
 msgid "26"
 msgstr "26"
 
+#: ppdc/sample.c:374
 msgid "27"
 msgstr "27"
 
+#: ppdc/sample.c:375
 msgid "28"
 msgstr "28"
 
+#: ppdc/sample.c:376
 msgid "29"
 msgstr "29"
 
+#: ppdc/sample.c:309
 msgid "3"
 msgstr "3"
 
+#: ppdc/sample.c:381
 msgid "3 inches/sec."
 msgstr "3 インチ/秒"
 
+#: ppdc/sample.c:3
 msgid "3 x 5"
 msgstr "3 x 5"
 
+#: ppdc/sample.c:195
 msgid "3.00x1.00\""
 msgstr "3.00x1.00 インチ"
 
+#: ppdc/sample.c:196
 msgid "3.00x1.25\""
 msgstr "3.00x1.25 インチ"
 
+#: ppdc/sample.c:197
 msgid "3.00x2.00\""
 msgstr "3.00x2.00 インチ"
 
+#: ppdc/sample.c:198
 msgid "3.00x3.00\""
 msgstr "3.00x3.00インチ"
 
+#: ppdc/sample.c:199
 msgid "3.00x5.00\""
 msgstr "3.00x5.00 インチ"
 
+#: ppdc/sample.c:200
 msgid "3.25x2.00\""
 msgstr "3.25x2.00 インチ"
 
+#: ppdc/sample.c:201
 msgid "3.25x5.00\""
 msgstr "3.25x5.00 インチ"
 
+#: ppdc/sample.c:202
 msgid "3.25x5.50\""
 msgstr "3.25x5.50 インチ"
 
+#: ppdc/sample.c:203
 msgid "3.25x5.83\""
 msgstr "3.25x5.83 インチ"
 
+#: ppdc/sample.c:204
 msgid "3.25x7.83\""
 msgstr "3.25x7.83 インチ"
 
+#: ppdc/sample.c:4
 msgid "3.5 x 5"
 msgstr "3.5 x 5"
 
+#: ppdc/sample.c:171
 msgid "3.5\" Disk"
 msgstr "3.5 インチディスク"
 
+#: ppdc/sample.c:205
 msgid "3.50x1.00\""
 msgstr "3.50x1.00 インチ"
 
+#: ppdc/sample.c:377
 msgid "30"
 msgstr "30"
 
+#: ppdc/sample.c:325
 msgid "30 mm/sec."
 msgstr "30 ミリメートル/秒"
 
+#: ppdc/sample.c:334
 msgid "300 mm/sec."
 msgstr "300 ミリメートル/秒"
 
+#: ppdc/sample.c:234
 msgid "300dpi"
 msgstr "300dpi"
 
+#: ppdc/sample.c:405
 msgid "35"
 msgstr "35"
 
+#: ppdc/sample.c:246
 msgid "360dpi"
 msgstr "360dpi"
 
+#: ppdc/sample.c:245
 msgid "360x180dpi"
 msgstr "360x180dpi"
 
+#: ppdc/sample.c:310
 msgid "4"
 msgstr "4"
 
+#: ppdc/sample.c:382
 msgid "4 inches/sec."
 msgstr "4 インチ/秒"
 
+#: ppdc/sample.c:206
 msgid "4.00x1.00\""
 msgstr "4.00x1.00 インチ"
 
+#: ppdc/sample.c:214
 msgid "4.00x13.00\""
 msgstr "4.00x13.00 インチ"
 
+#: ppdc/sample.c:207
 msgid "4.00x2.00\""
 msgstr "4.00x2.00 インチ"
 
+#: ppdc/sample.c:208
 msgid "4.00x2.50\""
 msgstr "4.00x2.50 インチ"
 
+#: ppdc/sample.c:209
 msgid "4.00x3.00\""
 msgstr "4.00x3.00 インチ"
 
+#: ppdc/sample.c:210
 msgid "4.00x4.00\""
 msgstr "4.00x4.00 インチ"
 
+#: ppdc/sample.c:211
 msgid "4.00x5.00\""
 msgstr "4.00x5.00 インチ"
 
+#: ppdc/sample.c:212
 msgid "4.00x6.00\""
 msgstr "4.00x6.00 インチ"
 
+#: ppdc/sample.c:213
 msgid "4.00x6.50\""
 msgstr "4.00x6.50 インチ"
 
+#: ppdc/sample.c:406
 msgid "40"
 msgstr "40"
 
+#: ppdc/sample.c:326
 msgid "40 mm/sec."
 msgstr "40 ミリメートル/秒"
 
+#: ppdc/sample.c:407
 msgid "45"
 msgstr "45"
 
+#: ppdc/sample.c:311
 msgid "5"
 msgstr "5"
 
+#: ppdc/sample.c:432
 msgid "5 inches/sec."
 msgstr "5 インチ/秒"
 
+#: ppdc/sample.c:5
 msgid "5 x 7"
 msgstr "5 x 7 インチ"
 
+#: ppdc/sample.c:408
 msgid "50"
 msgstr "50"
 
+#: ppdc/sample.c:409
 msgid "55"
 msgstr "55"
 
+#: ppdc/sample.c:312
 msgid "6"
 msgstr "6"
 
+#: ppdc/sample.c:433
 msgid "6 inches/sec."
 msgstr "6 インチ/秒"
 
+#: ppdc/sample.c:215
 msgid "6.00x1.00\""
 msgstr "6.00x1.00 インチ"
 
+#: ppdc/sample.c:216
 msgid "6.00x2.00\""
 msgstr "6.00x2.00 インチ"
 
+#: ppdc/sample.c:217
 msgid "6.00x3.00\""
 msgstr "6.00x3.00 インチ"
 
+#: ppdc/sample.c:218
 msgid "6.00x4.00\""
 msgstr "6.00x4.00 インチ"
 
+#: ppdc/sample.c:219
 msgid "6.00x5.00\""
 msgstr "6.00x5.00 インチ"
 
+#: ppdc/sample.c:220
 msgid "6.00x6.00\""
 msgstr "6.00x6.00 インチ"
 
+#: ppdc/sample.c:221
 msgid "6.00x6.50\""
 msgstr "6.00x6.50 インチ"
 
+#: ppdc/sample.c:410
 msgid "60"
 msgstr "60"
 
+#: ppdc/sample.c:327
 msgid "60 mm/sec."
 msgstr "60 ミリメートル/秒"
 
+#: ppdc/sample.c:253
 msgid "600dpi"
 msgstr "600dpi"
 
+#: ppdc/sample.c:242
 msgid "60dpi"
 msgstr "60dpi"
 
+#: ppdc/sample.c:248
 msgid "60x72dpi"
 msgstr "60x72dpi"
 
+#: ppdc/sample.c:411
 msgid "65"
 msgstr "65"
 
+#: ppdc/sample.c:313
 msgid "7"
 msgstr "7"
 
+#: ppdc/sample.c:435
 msgid "7 inches/sec."
 msgstr "7 インチ/秒"
 
+#: ppdc/sample.c:11
 msgid "7 x 9"
 msgstr "7 x 9 インチ"
 
+#: ppdc/sample.c:412
 msgid "70"
 msgstr "70"
 
+#: ppdc/sample.c:413
 msgid "75"
 msgstr "75"
 
+#: ppdc/sample.c:314
 msgid "8"
 msgstr "8"
 
+#: ppdc/sample.c:436
 msgid "8 inches/sec."
 msgstr "8 インチ/秒"
 
+#: ppdc/sample.c:12
 msgid "8 x 10"
 msgstr "8 x 10 インチ"
 
+#: ppdc/sample.c:222
 msgid "8.00x1.00\""
 msgstr "8.00x1.00 インチ"
 
+#: ppdc/sample.c:223
 msgid "8.00x2.00\""
 msgstr "8.00x2.00 インチ"
 
+#: ppdc/sample.c:224
 msgid "8.00x3.00\""
 msgstr "8.00x3.00 インチ"
 
+#: ppdc/sample.c:225
 msgid "8.00x4.00\""
 msgstr "8.00x4.00 インチ"
 
+#: ppdc/sample.c:226
 msgid "8.00x5.00\""
 msgstr "8.00x5.00 インチ"
 
+#: ppdc/sample.c:227
 msgid "8.00x6.00\""
 msgstr "8.00x6.00 インチ"
 
+#: ppdc/sample.c:228
 msgid "8.00x6.50\""
 msgstr "8.00x6.50 インチ"
 
+#: ppdc/sample.c:414
 msgid "80"
 msgstr "80"
 
+#: ppdc/sample.c:328
 msgid "80 mm/sec."
 msgstr "80 ミリメートル/秒"
 
+#: ppdc/sample.c:415
 msgid "85"
 msgstr "85"
 
+#: ppdc/sample.c:315
 msgid "9"
 msgstr "9"
 
+#: ppdc/sample.c:437
 msgid "9 inches/sec."
 msgstr "9 インチ/秒"
 
+#: ppdc/sample.c:13
 msgid "9 x 11"
 msgstr "9 x 11 インチ"
 
+#: ppdc/sample.c:14
 msgid "9 x 12"
 msgstr "9 x 12 インチ"
 
+#: ppdc/sample.c:247
 msgid "9-Pin Series"
 msgstr "9 ピンシリーズ"
 
+#: ppdc/sample.c:416
 msgid "90"
 msgstr "90"
 
+#: ppdc/sample.c:417
 msgid "95"
 msgstr "95"
 
+#: berkeley/lpc.c:205
 msgid "?Invalid help command unknown."
 msgstr "?無効なヘルプコマンドです"
 
+#: cgi-bin/admin.c:2348
 msgid "A Samba password is required to export printer drivers"
 msgstr ""
 "プリンタードライバーをエクスポートするには Samba のパスワードが必要です。"
 
+#: cgi-bin/admin.c:2344
 msgid "A Samba username is required to export printer drivers"
 msgstr ""
 "プリンタードライバーをエクスポートするには、Samba のユーザー名が必要です。"
 
+#: scheduler/ipp.c:2274
 #, c-format
 msgid "A class named \"%s\" already exists."
 msgstr "\"%s\" という名前のクラスはすでに存在します。"
 
+#: scheduler/ipp.c:916
 #, c-format
 msgid "A printer named \"%s\" already exists."
 msgstr "\"%s\" という名前のプリンターはすでに存在します。"
 
+#: ppdc/sample.c:15
 msgid "A0"
 msgstr "A0"
 
+#: ppdc/sample.c:16
 msgid "A0 Long Edge"
 msgstr "A0 長辺送り"
 
+#: ppdc/sample.c:17
 msgid "A1"
 msgstr "A1"
 
+#: ppdc/sample.c:18
 msgid "A1 Long Edge"
 msgstr "A1 長辺送り"
 
+#: ppdc/sample.c:37
 msgid "A10"
 msgstr "A10"
 
+#: ppdc/sample.c:19
 msgid "A2"
 msgstr "A2"
 
+#: ppdc/sample.c:20
 msgid "A2 Long Edge"
 msgstr "A2 長辺送り"
 
+#: ppdc/sample.c:21
 msgid "A3"
 msgstr "A3"
 
+#: ppdc/sample.c:22
 msgid "A3 Long Edge"
 msgstr "A3 長辺送り"
 
+#: ppdc/sample.c:23
 msgid "A3 Oversize"
 msgstr "A3 (特大)"
 
+#: ppdc/sample.c:24
 msgid "A3 Oversize Long Edge"
 msgstr "A3 (特大) 長辺送り"
 
+#: ppdc/sample.c:25
 msgid "A4"
 msgstr "A4"
 
+#: ppdc/sample.c:27
 msgid "A4 Long Edge"
 msgstr "A4 長辺送り"
 
+#: ppdc/sample.c:26
 msgid "A4 Oversize"
 msgstr "A4 (特大)"
 
+#: ppdc/sample.c:28
 msgid "A4 Small"
 msgstr "A4 (小)"
 
+#: ppdc/sample.c:29
 msgid "A5"
 msgstr "A5"
 
+#: ppdc/sample.c:31
 msgid "A5 Long Edge"
 msgstr "A5 長辺送り"
 
+#: ppdc/sample.c:30
 msgid "A5 Oversize"
 msgstr "A5 (特大)"
 
+#: ppdc/sample.c:32
 msgid "A6"
 msgstr "A6"
 
+#: ppdc/sample.c:33
 msgid "A6 Long Edge"
 msgstr "A6 長辺送り"
 
+#: ppdc/sample.c:34
 msgid "A7"
 msgstr "A7"
 
+#: ppdc/sample.c:35
 msgid "A8"
 msgstr "A8"
 
+#: ppdc/sample.c:36
 msgid "A9"
 msgstr "A9"
 
+#: ppdc/sample.c:38
 msgid "ANSI A"
 msgstr "ANSI A"
 
+#: ppdc/sample.c:39
 msgid "ANSI B"
 msgstr "ANSI B"
 
+#: ppdc/sample.c:40
 msgid "ANSI C"
 msgstr "ANSI C"
 
+#: ppdc/sample.c:41
 msgid "ANSI D"
 msgstr "ANSI D"
 
+#: ppdc/sample.c:42
 msgid "ANSI E"
 msgstr "ANSI E"
 
+#: ppdc/sample.c:47
 msgid "ARCH C"
 msgstr "ARCH C"
 
+#: ppdc/sample.c:48
 msgid "ARCH C Long Edge"
 msgstr "ARCH C 長辺送り"
 
+#: ppdc/sample.c:49
 msgid "ARCH D"
 msgstr "ARCH D"
 
+#: ppdc/sample.c:50
 msgid "ARCH D Long Edge"
 msgstr "ARCH D 長辺送り"
 
+#: ppdc/sample.c:51
 msgid "ARCH E"
 msgstr "ARCH E"
 
+#: ppdc/sample.c:52
 msgid "ARCH E Long Edge"
 msgstr "ARCH E 長辺送り"
 
+#: cgi-bin/classes.c:161 cgi-bin/printers.c:164
 msgid "Accept Jobs"
 msgstr "ジョブの受け付け"
 
+#: cups/http-support.c:1347
 msgid "Accepted"
 msgstr "受け付けました"
 
+#: cgi-bin/admin.c:548
 msgid "Add Class"
 msgstr "クラスの追加"
 
+#: cgi-bin/admin.c:860
 msgid "Add Printer"
 msgstr "プリンターの追加"
 
+#: cgi-bin/admin.c:422 cgi-bin/admin.c:455 cgi-bin/admin.c:503
+#: cgi-bin/admin.c:513
 msgid "Add RSS Subscription"
 msgstr "RSS 購読を追加"
 
+#: ppdc/sample.c:163
 msgid "Address"
 msgstr "アドレス"
 
+#: cgi-bin/admin.c:188 cgi-bin/admin.c:262 cgi-bin/admin.c:2725
 msgid "Administration"
 msgstr "管理"
 
+#: ppdc/sample.c:424
 msgid "Always"
 msgstr "常に有効"
 
+#: backend/socket.c:121
 msgid "AppSocket/HP JetDirect"
 msgstr "AppSocket/HP JetDirect"
 
+#: ppdc/sample.c:445
 msgid "Applicator"
 msgstr "アプリケーター"
 
+#: scheduler/ipp.c:991
 #, c-format
 msgid "Attempt to set %s printer-state to bad value %d."
 msgstr "%s printer-state に 不正な値 %d を設定しようとしています。"
 
+#: scheduler/ipp.c:239
 #, c-format
 msgid "Attribute groups are out of order (%x < %x)."
 msgstr "属性グループは範囲外です (%x < %x)。"
 
+#: ppdc/sample.c:126
 msgid "B0"
 msgstr "B0"
 
+#: ppdc/sample.c:127
 msgid "B1"
 msgstr "B1"
 
+#: ppdc/sample.c:137
 msgid "B10"
 msgstr "B10"
 
+#: ppdc/sample.c:128
 msgid "B2"
 msgstr "B2"
 
+#: ppdc/sample.c:129
 msgid "B3"
 msgstr "B3"
 
+#: ppdc/sample.c:130
 msgid "B4"
 msgstr "B4"
 
+#: ppdc/sample.c:131
 msgid "B5"
 msgstr "B5"
 
+#: ppdc/sample.c:132
 msgid "B5 Oversize"
 msgstr "B5 (特大)"
 
+#: ppdc/sample.c:133
 msgid "B6"
 msgstr "B6"
 
+#: ppdc/sample.c:134
 msgid "B7"
 msgstr "B7"
 
+#: ppdc/sample.c:135
 msgid "B8"
 msgstr "B8"
 
+#: ppdc/sample.c:136
 msgid "B9"
 msgstr "B9"
 
+#: scheduler/ipp.c:10877
 #, c-format
 msgid "Bad 'document-format' value \"%s\"."
 msgstr "誤った 'document-format' の値です \"%s\"。"
 
+#: cups/dest.c:1736
 msgid "Bad NULL dests pointer"
 msgstr "不正な NULL 送信先ポインター"
 
+#: cups/ppd.c:303
 msgid "Bad OpenGroup"
 msgstr "不正な OpenGroup"
 
+#: cups/ppd.c:305
 msgid "Bad OpenUI/JCLOpenUI"
 msgstr "不正な OpenUI/JCLOpenUI"
 
+#: cups/ppd.c:307
 msgid "Bad OrderDependency"
 msgstr "不正な OrderDependency"
 
+#: cups/ppd-cache.c:117 cups/ppd-cache.c:164 cups/ppd-cache.c:202
+#: cups/ppd-cache.c:208 cups/ppd-cache.c:224 cups/ppd-cache.c:240
+#: cups/ppd-cache.c:249 cups/ppd-cache.c:257 cups/ppd-cache.c:274
+#: cups/ppd-cache.c:282 cups/ppd-cache.c:297 cups/ppd-cache.c:305
+#: cups/ppd-cache.c:326 cups/ppd-cache.c:338 cups/ppd-cache.c:353
+#: cups/ppd-cache.c:365 cups/ppd-cache.c:387 cups/ppd-cache.c:395
+#: cups/ppd-cache.c:413 cups/ppd-cache.c:421 cups/ppd-cache.c:436
+#: cups/ppd-cache.c:444 cups/ppd-cache.c:462 cups/ppd-cache.c:470
+#: cups/ppd-cache.c:497 cups/ppd-cache.c:567 cups/ppd-cache.c:575
+#: cups/ppd-cache.c:583
 msgid "Bad PPD cache file."
 msgstr "不正な PPD キャッシュファイルです。"
 
+#: cups/http-support.c:1362
 msgid "Bad Request"
 msgstr "不正なリクエスト"
 
+#: cups/snmp.c:954
 msgid "Bad SNMP version number"
 msgstr "不正な SNMP バージョン番号"
 
+#: cups/ppd.c:308
 msgid "Bad UIConstraints"
 msgstr "不正な UIConstraints"
 
+#: cups/http-support.c:1456
 msgid "Bad arguments to function"
-msgstr ""
+msgstr "関数の引数が不正"
 
+#: scheduler/ipp.c:1352
 #, c-format
 msgid "Bad copies value %d."
 msgstr "%d は不正なコピー値です。"
 
+#: cups/ppd.c:316
 msgid "Bad custom parameter"
 msgstr "不正なカスタムパラメーター"
 
+#: cups/http-support.c:1598 scheduler/ipp.c:2360
 #, c-format
 msgid "Bad device-uri \"%s\"."
 msgstr "\"%s\" は無効な device-uri です。"
 
+#: scheduler/ipp.c:2399
 #, c-format
 msgid "Bad device-uri scheme \"%s\"."
 msgstr "\"%s\" は無効な device-uri スキーマです。"
 
+#: scheduler/ipp.c:8125 scheduler/ipp.c:8141 scheduler/ipp.c:9360
 #, c-format
 msgid "Bad document-format \"%s\"."
 msgstr "\"%s\" は不正な document-format です。"
 
+#: scheduler/ipp.c:9376
 #, c-format
 msgid "Bad document-format-default \"%s\"."
 msgstr "\"%s\" は不正な document-format-default です。"
 
+#: cups/util.c:823
 msgid "Bad filename buffer"
 msgstr "不正なファイル名バッファーです。"
 
+#: cups/http-support.c:1465
 msgid "Bad hostname/address in URI"
-msgstr ""
+msgstr "URI のホスト名/アドレスが不正"
 
+#: scheduler/ipp.c:1527
 #, c-format
 msgid "Bad job-name value: %s"
 msgstr "誤った job-name 値: %s"
 
+#: scheduler/ipp.c:1520
 msgid "Bad job-name value: Wrong type or count."
 msgstr "誤った job-name 値: 型かカウントが誤っています。"
 
+#: scheduler/ipp.c:9967
 msgid "Bad job-priority value."
 msgstr "不正な job-priority 値です。"
 
+#: scheduler/ipp.c:1382
 #, c-format
 msgid "Bad job-sheets value \"%s\"."
 msgstr "\"%s\" は不正な job-sheets 値です。"
 
+#: scheduler/ipp.c:1366
 msgid "Bad job-sheets value type."
 msgstr "不正な job-sheets 値タイプ です。"
 
+#: scheduler/ipp.c:9997
 msgid "Bad job-state value."
 msgstr "不正な job-state 値です。"
 
+#: scheduler/ipp.c:2981 scheduler/ipp.c:3441 scheduler/ipp.c:5930
+#: scheduler/ipp.c:6077 scheduler/ipp.c:7559 scheduler/ipp.c:7828
+#: scheduler/ipp.c:8678 scheduler/ipp.c:8904 scheduler/ipp.c:9256
+#: scheduler/ipp.c:9860
 #, c-format
 msgid "Bad job-uri \"%s\"."
 msgstr "\"%s\" は無効な job-uri 属性です。"
 
+#: scheduler/ipp.c:2040 scheduler/ipp.c:5468
 #, c-format
 msgid "Bad notify-pull-method \"%s\"."
 msgstr "\"%s\" は無効な notify-pull-method です。"
 
+#: scheduler/ipp.c:2004 scheduler/ipp.c:5432
 #, c-format
 msgid "Bad notify-recipient-uri \"%s\"."
 msgstr "URI \"%s\" は不正な notify-recipient-uri です。"
 
+#: scheduler/ipp.c:1398
 #, c-format
 msgid "Bad number-up value %d."
 msgstr "%d は不正な number-up 値です。"
 
+#: cups/adminutil.c:281
 #, c-format
 msgid "Bad option + choice on line %d."
 msgstr "%d 行に不正なオプションと選択があります。"
 
+#: scheduler/ipp.c:1415
 #, c-format
 msgid "Bad page-ranges values %d-%d."
 msgstr "%d-%d は不正な page-ranges 値です。"
 
+#: cups/http-support.c:1462
 msgid "Bad port number in URI"
-msgstr ""
+msgstr "URI のポート番号が不正"
 
+#: scheduler/ipp.c:2442
 #, c-format
 msgid "Bad port-monitor \"%s\"."
 msgstr "\"%s\" は無効な port-monitor です。"
 
+#: scheduler/ipp.c:2503
 #, c-format
 msgid "Bad printer-state value %d."
 msgstr "%d は無効な printer-state 値です。"
 
+#: cups/dest.c:610 cups/dest.c:1296 cups/dest.c:1343
 msgid "Bad printer-uri."
-msgstr ""
+msgstr "printer-uri が不正です。"
 
+#: scheduler/ipp.c:207
 #, c-format
 msgid "Bad request ID %d."
 msgstr "%d は無効なリクエストIDです。"
 
+#: scheduler/ipp.c:192
 #, c-format
 msgid "Bad request version number %d.%d."
 msgstr "バージョン番号 %d.%d は無効なリクエストです。"
 
+#: cups/http-support.c:1459
 msgid "Bad resource in URI"
-msgstr ""
+msgstr "URI のリソースが不正"
 
+#: cups/http-support.c:1471
 msgid "Bad scheme in URI"
-msgstr ""
+msgstr "URI のスキームが不正"
 
+#: cgi-bin/admin.c:1464
 msgid "Bad subscription ID"
-msgstr "不正なサブスクリプション ID です。"
+msgstr "不正なサブスクリプション ID"
 
+#: cups/http-support.c:1468
 msgid "Bad username in URI"
-msgstr ""
+msgstr "URI のユーザー名が不正"
 
+#: cups/ppd.c:318
 msgid "Bad value string"
 msgstr "値文字列がありません"
 
+#: cups/http-support.c:1474
 msgid "Bad/empty URI"
-msgstr ""
+msgstr "URI が不正か空"
 
+#: cgi-bin/admin.c:3270 cgi-bin/admin.c:3516
 msgid "Banners"
 msgstr "バナー"
 
+#: ppdc/sample.c:282
 msgid "Bond Paper"
 msgstr "ボンド紙"
 
+#: backend/usb-darwin.c:1874
 #, c-format
 msgid "Boolean expected for waiteof option \"%s\"."
 msgstr "論理値は、waiteof オプション \"%s\" であるべきです"
 
+#: filter/pstops.c:2029
 msgid "Buffer overflow detected, aborting."
 msgstr "オーバーフローが検出され、中断しました。"
 
+#: ppdc/sample.c:277
 msgid "CMYK"
 msgstr "CMYK"
 
+#: ppdc/sample.c:358
 msgid "CPCL Label Printer"
 msgstr "CPCL ラベルプリンター"
 
+#: cgi-bin/classes.c:165 cgi-bin/printers.c:168
 msgid "Cancel Jobs"
-msgstr ""
+msgstr "ジョブをキャンセル"
 
+#: cgi-bin/admin.c:1465 cgi-bin/admin.c:1504 cgi-bin/admin.c:1514
 msgid "Cancel RSS Subscription"
 msgstr "RSS 購読をキャンセル"
 
+#: backend/ipp.c:2198
 msgid "Canceling print job."
 msgstr "プリントジョブをキャンセルしています。"
 
+#: scheduler/ipp.c:2483
 msgid "Cannot share a remote Kerberized printer."
 msgstr "リモートの Kerberos 認証のプリンターを共有できません。"
 
+#: ppdc/sample.c:271
 msgid "Cassette"
 msgstr "カセット"
 
+#: cgi-bin/admin.c:1635 cgi-bin/admin.c:1777 cgi-bin/admin.c:1790
+#: cgi-bin/admin.c:1801
 msgid "Change Settings"
 msgstr "設定の変更"
 
+#: scheduler/ipp.c:2052 scheduler/ipp.c:5480
 #, c-format
 msgid "Character set \"%s\" not supported."
 msgstr "文字セット \"%s\" はサポートされていません。"
 
+#: cgi-bin/classes.c:187 cgi-bin/classes.c:314
 msgid "Classes"
 msgstr "クラス"
 
+#: cgi-bin/printers.c:174
 msgid "Clean Print Heads"
 msgstr "プリントヘッドクリーニング"
 
+#: scheduler/ipp.c:3893
 msgid "Close-Job doesn't support the job-uri attribute."
 msgstr "Close-Job は job-uri 属性をサポートしていません。"
 
+#: ppdc/sample.c:276
 msgid "Color"
 msgstr "カラー"
 
+#: ppdc/sample.c:274
 msgid "Color Mode"
 msgstr "カラーモード"
 
+#: berkeley/lpc.c:196
 msgid ""
 "Commands may be abbreviated.  Commands are:\n"
 "\n"
@@ -2943,67 +3798,88 @@ msgstr ""
 "\n"
 "exit    help    quit    status  ?"
 
+#: cups/snmp.c:958
 msgid "Community name uses indefinite length"
 msgstr "コミュニティ名の長さが不定"
 
+#: backend/ipp.c:854 backend/lpd.c:879 backend/socket.c:400
 msgid "Connected to printer."
 msgstr "プリンターに接続しました。"
 
+#: backend/ipp.c:759 backend/lpd.c:702 backend/socket.c:319
 msgid "Connecting to printer."
 msgstr "プリンターに接続中。"
 
+#: cups/http-support.c:1335
 msgid "Continue"
 msgstr "継続"
 
+#: ppdc/sample.c:360
 msgid "Continuous"
 msgstr "連続"
 
+#: backend/lpd.c:1028 backend/lpd.c:1160
 msgid "Control file sent successfully."
 msgstr "コントロールファイルが正常に送信されました。"
 
+#: backend/ipp.c:1349 backend/lpd.c:472
 msgid "Copying print data."
 msgstr "印刷データをコピーしています。"
 
+#: cups/http-support.c:1344
 msgid "Created"
 msgstr "ジョブ作成"
 
+#: cups/ppd.c:1069 cups/ppd.c:1109 cups/ppd.c:1354 cups/ppd.c:1457
 msgid "Custom"
 msgstr "カスタム"
 
+#: ppdc/sample.c:354
 msgid "CustominCutInterval"
 msgstr "CustominCutInterval"
 
+#: ppdc/sample.c:352
 msgid "CustominTearInterval"
 msgstr "CustominTearInterval"
 
+#: ppdc/sample.c:338
 msgid "Cut"
 msgstr "カット"
 
+#: ppdc/sample.c:446
 msgid "Cutter"
 msgstr "カッター"
 
+#: ppdc/sample.c:239
 msgid "Dark"
 msgstr "濃い"
 
+#: ppdc/sample.c:235
 msgid "Darkness"
 msgstr "濃さ"
 
+#: backend/lpd.c:1113
 msgid "Data file sent successfully."
-msgstr "データファイルが正常に送信されました"
+msgstr "データファイルが正常に送信されました。"
 
+#: cgi-bin/admin.c:2074 cgi-bin/admin.c:2085 cgi-bin/admin.c:2130
 msgid "Delete Class"
 msgstr "クラスの削除"
 
+#: cgi-bin/admin.c:2159 cgi-bin/admin.c:2170 cgi-bin/admin.c:2215
 msgid "Delete Printer"
 msgstr "プリンターの削除"
 
+#: ppdc/sample.c:273
 msgid "DeskJet Series"
 msgstr "DeskJet シリーズ"
 
+#: scheduler/ipp.c:1276
 #, c-format
 msgid "Destination \"%s\" is not accepting jobs."
 msgstr "宛先 \"%s\" はジョブを受け付けていません。"
 
+#: systemv/lpinfo.c:300
 #, c-format
 msgid ""
 "Device: uri = %s\n"
@@ -3020,67 +3896,87 @@ msgstr ""
 "          device-id = %s\n"
 "          location = %s"
 
+#: ppdc/sample.c:431
 msgid "Direct Thermal Media"
 msgstr "感熱紙"
 
+#: cups/file.c:258
 #, c-format
 msgid "Directory \"%s\" contains a relative path."
 msgstr "ディレクトリー \"%s\" は相対パスを含んでいます。"
 
+#: cups/file.c:230
 #, c-format
 msgid "Directory \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
 msgstr ""
 "ディレクトリー \"%s\" は安全でないパーミッションが与えられています (0%o/uid="
 "%d/gid=%d)。"
 
+#: cups/file.c:247
 #, c-format
 msgid "Directory \"%s\" is a file."
 msgstr "ディレクトリー \"%s\" はファイルです。"
 
+#: cups/file.c:218
 #, c-format
 msgid "Directory \"%s\" not available: %s"
 msgstr "ディレクトリー \"%s\" は利用できません: %s"
 
+#: cups/file.c:203
 #, c-format
 msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
 msgstr ""
 "ディレクトリー \"%s\" のパーミッションは問題ありません (0%o/uid=%d/gid=%d)。"
 
+#: ppdc/sample.c:340
 msgid "Disabled"
 msgstr "無効"
 
+#: scheduler/ipp.c:5979
 #, c-format
 msgid "Document #%d does not exist in job #%d."
 msgstr "ドキュメント #%d がジョブ #%d に見つかりません。"
 
+#: ppdc/sample.c:267
 msgid "Duplexer"
 msgstr "両面オプション"
 
+#: ppdc/sample.c:229
 msgid "Dymo"
 msgstr "Dymo"
 
+#: ppdc/sample.c:426
 msgid "EPL1 Label Printer"
 msgstr "EPL1 ラベルプリンター"
 
+#: ppdc/sample.c:429
 msgid "EPL2 Label Printer"
 msgstr "EPL2 ラベルプリンター"
 
+#: cgi-bin/admin.c:1829 cgi-bin/admin.c:1841 cgi-bin/admin.c:1895
+#: cgi-bin/admin.c:1902 cgi-bin/admin.c:1937 cgi-bin/admin.c:1950
+#: cgi-bin/admin.c:1974 cgi-bin/admin.c:2047
 msgid "Edit Configuration File"
 msgstr "設定ファイルの編集"
 
+#: cups/adminutil.c:326
 msgid "Empty PPD file."
 msgstr "PPD ファイルが空です。"
 
+#: cups/http.c:4624
 msgid "Encryption is not supported."
-msgstr ""
+msgstr "暗号化はサポートされていません。"
 
 #. TRANSLATORS: Banner/cover sheet after the print job.
+#: cgi-bin/admin.c:3541
 msgid "Ending Banner"
 msgstr "終了バナー"
 
+#: ppdc/sample.c:2
 msgid "English"
 msgstr "English"
 
+#: scheduler/client.c:2209
 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 "
@@ -3090,259 +3986,349 @@ msgstr ""
 "root のユーザー名とパスワードを入力してください。Kerberos 認証を使用している"
 "場合、有効な Kerberos チケットがあることを確認してください。"
 
+#: ppdc/sample.c:73
 msgid "Envelope #10 "
 msgstr "封筒 #10"
 
+#: ppdc/sample.c:74
 msgid "Envelope #11"
 msgstr "封筒 #11"
 
+#: ppdc/sample.c:75
 msgid "Envelope #12"
 msgstr "封筒 #12"
 
+#: ppdc/sample.c:76
 msgid "Envelope #14"
 msgstr "封筒 #14"
 
+#: ppdc/sample.c:77
 msgid "Envelope #9"
 msgstr "封筒 #9"
 
+#: ppdc/sample.c:89
 msgid "Envelope B4"
 msgstr "封筒 B4"
 
+#: ppdc/sample.c:90
 msgid "Envelope B5"
 msgstr "封筒 B5"
 
+#: ppdc/sample.c:91
 msgid "Envelope B6"
 msgstr "封筒 B6"
 
+#: ppdc/sample.c:78
 msgid "Envelope C0"
 msgstr "封筒 C0"
 
+#: ppdc/sample.c:79
 msgid "Envelope C1"
 msgstr "封筒 C1"
 
+#: ppdc/sample.c:80
 msgid "Envelope C2"
 msgstr "封筒 C2"
 
+#: ppdc/sample.c:81
 msgid "Envelope C3"
 msgstr "封筒 C3"
 
+#: ppdc/sample.c:67
 msgid "Envelope C4"
 msgstr "封筒 C4"
 
+#: ppdc/sample.c:68
 msgid "Envelope C5"
 msgstr "封筒 C5"
 
+#: ppdc/sample.c:69
 msgid "Envelope C6"
 msgstr "封筒 C6"
 
+#: ppdc/sample.c:82
 msgid "Envelope C65"
 msgstr "封筒 C65"
 
+#: ppdc/sample.c:83
 msgid "Envelope C7"
 msgstr "封筒 C7"
 
+#: ppdc/sample.c:84
 msgid "Envelope Choukei 3"
 msgstr "封筒 長形3号"
 
+#: ppdc/sample.c:85
 msgid "Envelope Choukei 3 Long Edge"
 msgstr "封筒 長形3号 長辺送り"
 
+#: ppdc/sample.c:86
 msgid "Envelope Choukei 4"
 msgstr "封筒 長形4号"
 
+#: ppdc/sample.c:87
 msgid "Envelope Choukei 4 Long Edge"
 msgstr "封筒 長形4号 長辺送り"
 
+#: ppdc/sample.c:70
 msgid "Envelope DL"
 msgstr "封筒 DL"
 
+#: ppdc/sample.c:261
 msgid "Envelope Feed"
 msgstr "封筒フィード"
 
+#: ppdc/sample.c:88
 msgid "Envelope Invite"
 msgstr "招待状封筒"
 
+#: ppdc/sample.c:92
 msgid "Envelope Italian"
 msgstr "イタリア封筒"
 
+#: ppdc/sample.c:93
 msgid "Envelope Kaku2"
 msgstr "封筒 角2"
 
+#: ppdc/sample.c:94
 msgid "Envelope Kaku2 Long Edge"
 msgstr "封筒 角2 長辺送り"
 
+#: ppdc/sample.c:95
 msgid "Envelope Kaku3"
 msgstr "封筒 角3"
 
+#: ppdc/sample.c:96
 msgid "Envelope Kaku3 Long Edge"
 msgstr "封筒 角3 長辺送り"
 
+#: ppdc/sample.c:97
 msgid "Envelope Monarch"
 msgstr "封筒 Monarch"
 
+#: ppdc/sample.c:99
 msgid "Envelope PRC1 "
 msgstr "封筒 PRC1"
 
+#: ppdc/sample.c:100
 msgid "Envelope PRC1 Long Edge"
 msgstr "封筒 PRC1 長辺送り"
 
+#: ppdc/sample.c:117
 msgid "Envelope PRC10"
 msgstr "封筒 PRC10"
 
+#: ppdc/sample.c:118
 msgid "Envelope PRC10 Long Edge"
 msgstr "封筒 PRC10 長辺送り"
 
+#: ppdc/sample.c:101
 msgid "Envelope PRC2"
 msgstr "封筒 PRC2"
 
+#: ppdc/sample.c:102
 msgid "Envelope PRC2 Long Edge"
 msgstr "封筒 PRC2 長辺送り"
 
+#: ppdc/sample.c:103
 msgid "Envelope PRC3"
 msgstr "封筒 PRC3"
 
+#: ppdc/sample.c:104
 msgid "Envelope PRC3 Long Edge"
 msgstr "封筒 PRC3 長辺送り"
 
+#: ppdc/sample.c:105
 msgid "Envelope PRC4"
 msgstr "封筒 PRC4"
 
+#: ppdc/sample.c:106
 msgid "Envelope PRC4 Long Edge"
 msgstr "封筒 PRC4 長辺送り"
 
+#: ppdc/sample.c:108
 msgid "Envelope PRC5 Long Edge"
 msgstr "封筒 PRC5 長辺送り"
 
+#: ppdc/sample.c:107
 msgid "Envelope PRC5PRC5"
 msgstr "封筒 PRC5"
 
+#: ppdc/sample.c:109
 msgid "Envelope PRC6"
 msgstr "封筒 PRC6"
 
+#: ppdc/sample.c:110
 msgid "Envelope PRC6 Long Edge"
 msgstr "封筒 PRC6 長辺送り"
 
+#: ppdc/sample.c:111
 msgid "Envelope PRC7"
 msgstr "封筒 PRC7"
 
+#: ppdc/sample.c:112
 msgid "Envelope PRC7 Long Edge"
 msgstr "封筒 PRC7 長辺送り"
 
+#: ppdc/sample.c:113
 msgid "Envelope PRC8"
 msgstr "封筒 PRC8"
 
+#: ppdc/sample.c:114
 msgid "Envelope PRC8 Long Edge"
 msgstr "封筒 PRC8 長辺送り"
 
+#: ppdc/sample.c:115
 msgid "Envelope PRC9"
 msgstr "封筒 PRC9"
 
+#: ppdc/sample.c:116
 msgid "Envelope PRC9 Long Edge"
 msgstr "封筒 PRC9 長辺送り"
 
+#: ppdc/sample.c:98
 msgid "Envelope Personal"
 msgstr "パーソナル封筒"
 
+#: ppdc/sample.c:119
 msgid "Envelope You4"
 msgstr "封筒 洋形4号"
 
+#: ppdc/sample.c:120
 msgid "Envelope You4 Long Edge"
 msgstr "封筒 洋形4号 長辺送り"
 
+#: test/ippfind.c:2809
 msgid "Environment Variables:"
 msgstr "環境変数:"
 
+#: ppdc/sample.c:240
 msgid "Epson"
 msgstr "Epson"
 
+#: cgi-bin/admin.c:3584
 msgid "Error Policy"
 msgstr "エラーポリシー"
 
+#: filter/rastertopwg.c:395 filter/rastertopwg.c:410 filter/rastertopwg.c:421
+#: filter/rastertopwg.c:432
 msgid "Error sending raster data."
 msgstr "ラスターデータの送信でエラーが起きました。"
 
+#: systemv/lpinfo.c:103 systemv/lpmove.c:88
 msgid "Error: need hostname after \"-h\" option."
 msgstr "Error: '-h' オプションのあとにはホスト名が必要です。"
 
+#: ppdc/sample.c:350
 msgid "Every 10 Labels"
 msgstr "10 ラベルごと"
 
+#: ppdc/sample.c:342
 msgid "Every 2 Labels"
 msgstr "2 ラベルごと"
 
+#: ppdc/sample.c:343
 msgid "Every 3 Labels"
 msgstr "3 ラベルごと"
 
+#: ppdc/sample.c:344
 msgid "Every 4 Labels"
 msgstr "4 ラベルごと"
 
+#: ppdc/sample.c:345
 msgid "Every 5 Labels"
 msgstr "5 ラベルごと"
 
+#: ppdc/sample.c:346
 msgid "Every 6 Labels"
 msgstr "6 ラベルごと"
 
+#: ppdc/sample.c:347
 msgid "Every 7 Labels"
 msgstr "7 ラベルごと"
 
+#: ppdc/sample.c:348
 msgid "Every 8 Labels"
 msgstr "8 ラベルごと"
 
+#: ppdc/sample.c:349
 msgid "Every 9 Labels"
 msgstr "9 ラベルごと"
 
+#: ppdc/sample.c:341
 msgid "Every Label"
 msgstr "すべてのラベル"
 
+#: ppdc/sample.c:121
 msgid "Executive"
 msgstr "エグゼクティブ"
 
+#: cups/http-support.c:1390
 msgid "Expectation Failed"
 msgstr "予測に失敗しました"
 
+#: cgi-bin/admin.c:2336 cgi-bin/admin.c:2355
 msgid "Export Printers to Samba"
 msgstr "Samba へプリンターをエクスポート"
 
+#: test/ippfind.c:2755
 msgid "Expressions:"
 msgstr "式:"
 
+#: systemv/cupstestdsc.c:172 systemv/cupstestdsc.c:189
+#: systemv/cupstestdsc.c:214 systemv/cupstestdsc.c:231
+#: systemv/cupstestdsc.c:255 systemv/cupstestdsc.c:273
+#: systemv/cupstestdsc.c:302 systemv/cupstestdsc.c:339
+#: systemv/cupstestdsc.c:349 systemv/cupstestdsc.c:359
+#: systemv/cupstestdsc.c:369 systemv/cupstestdsc.c:379
+#: systemv/cupstestdsc.c:387
 msgid "FAIL"
 msgstr "失敗"
 
+#: ppdc/sample.c:122
 msgid "FanFold German"
 msgstr "FanFold German"
 
+#: ppdc/sample.c:123
 msgid "FanFold Legal German"
 msgstr "FanFold Legal German"
 
+#: ppdc/sample.c:124
 msgid "Fanfold US"
 msgstr "Fanfold US"
 
+#: cups/file.c:262
 #, c-format
 msgid "File \"%s\" contains a relative path."
 msgstr "ファイル \"%s\" は相対パスを含んでいます。"
 
+#: cups/file.c:237
 #, c-format
 msgid "File \"%s\" has insecure permissions (0%o/uid=%d/gid=%d)."
 msgstr ""
 "ファイル \"%s\" は安全でないパーミッションが与えられています (0%o/uid=%d/gid="
 "%d)。"
 
+#: cups/file.c:251
 #, c-format
 msgid "File \"%s\" is a directory."
 msgstr "ファイル \"%s\" はディレクトリーです。"
 
+#: cups/file.c:223
 #, c-format
 msgid "File \"%s\" not available: %s"
 msgstr "ファイル \"%s\" は利用できません: %s"
 
+#: cups/file.c:209
 #, c-format
 msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."
 msgstr "ファイル \"%s\" のパーミッションは問題ありません (0%o/uid=%d/gid=%d)。"
 
+#: ppdc/sample.c:169
 msgid "File Folder "
 msgstr "ファイルフォルダー"
 
+#: scheduler/ipp.c:2378
 #, c-format
 msgid ""
 "File device URIs have been disabled. To enable, see the FileDevice directive "
@@ -3351,398 +4337,536 @@ msgstr ""
 "ファイルデバイス URI は無効になっています。有効にするには、\"%s/cups-files."
 "conf\" の FileDevice ディレクティブを参照してください。"
 
+#: filter/rastertoepson.c:1102 filter/rastertohp.c:834
+#: filter/rastertolabel.c:1259
 #, c-format
 msgid "Finished page %d."
 msgstr "ページ %d を終了。"
 
+#: ppdc/sample.c:125
 msgid "Folio"
 msgstr "フォリオ"
 
+#: cups/http-support.c:1369
 msgid "Forbidden"
 msgstr "Forbidden"
 
+#: cups/ppd.c:700 cups/ppd.c:1258
 msgid "General"
 msgstr "一般"
 
+#: ppdc/sample.c:251
 msgid "Generic"
 msgstr "汎用"
 
+#: cups/snmp.c:968
 msgid "Get-Response-PDU uses indefinite length"
 msgstr "Get-Response-PDU は不確定の長さを使用しています"
 
+#: ppdc/sample.c:285
 msgid "Glossy Paper"
 msgstr "光沢紙"
 
+#: scheduler/ipp.c:2959 scheduler/ipp.c:3367 scheduler/ipp.c:3905
+#: scheduler/ipp.c:5908 scheduler/ipp.c:6055 scheduler/ipp.c:7536
+#: scheduler/ipp.c:8656 scheduler/ipp.c:8882 scheduler/ipp.c:9234
+#: scheduler/ipp.c:9838
 msgid "Got a printer-uri attribute but no job-id."
 msgstr "printer-uri 属性を取得しましたが、job-id を取得できませんでした。"
 
+#: ppdc/sample.c:275
 msgid "Grayscale"
 msgstr "グレースケール"
 
+#: ppdc/sample.c:272
 msgid "HP"
 msgstr "HP"
 
+#: ppdc/sample.c:170
 msgid "Hanging Folder"
 msgstr "Hanging Folder"
 
+#: cgi-bin/help.c:143
 msgid "Help file not in index."
 msgstr "ヘルプファイルが索引に含まれていません。"
 
+#: cups/ipp.c:3183 cups/ipp.c:3210 cups/ipp.c:3233
 msgid "IPP 1setOf attribute with incompatible value tags."
 msgstr "IPP の 1setOf 属性が value タグと互換性がありません。"
 
+#: cups/ipp.c:3146
 msgid "IPP attribute has no name."
 msgstr "IPP の属性に名前がありません。"
 
+#: cups/ipp.c:7000
 msgid "IPP attribute is not a member of the message."
 msgstr "IPP の属性がメッセージのメンバーではありません。"
 
+#: cups/ipp.c:3594
 msgid "IPP begCollection value not 0 bytes."
 msgstr "IPP の begCollection は想定された 0 バイトになっていません。"
 
+#: cups/ipp.c:3376
 msgid "IPP boolean value not 1 byte."
 msgstr "IPP の真偽値が想定された 1 バイトになっていません。"
 
+#: cups/ipp.c:3437
 msgid "IPP date value not 11 bytes."
 msgstr "IPP の date 値は想定された 11 バイトになっていません。"
 
+#: cups/ipp.c:3615
 msgid "IPP endCollection value not 0 bytes."
 msgstr "IPP の endCollection は想定された 0 バイトになっていません。"
 
+#: cups/ipp.c:3351
 msgid "IPP enum value not 4 bytes."
 msgstr "IPP の enum 値は想定された 4 バイトになっていません。"
 
+#: cups/ipp.c:3075
 msgid "IPP extension tag larger than 0x7FFFFFFF."
 msgstr "IPP の拡張タグが 0x7FFFFFFF より大きいです。"
 
+#: cups/ipp.c:3348
 msgid "IPP integer value not 4 bytes."
 msgstr "IPP の整数値は想定された 4 バイトになっていません。"
 
+#: cups/ipp.c:3547
 msgid "IPP language length overflows value."
 msgstr "IPP の language length の値がオーバーフローしています。"
 
+#: cups/ipp.c:3556
 msgid "IPP language length too large."
 msgstr "IPP の language の長さが長すぎます。"
 
+#: cups/ipp.c:3260
 msgid "IPP member name is not empty."
 msgstr "IPP のメンバー名が空ではありません。"
 
+#: cups/ipp.c:3641
 msgid "IPP memberName value is empty."
 msgstr "IPP の memberName の値が空です。"
 
+#: cups/ipp.c:3633
 msgid "IPP memberName with no attribute."
 msgstr "IPP の memberName に属性がありません。"
 
+#: cups/ipp.c:3129
 msgid "IPP name larger than 32767 bytes."
 msgstr "IPP 名が 32767 バイトより大きいです。"
 
+#: cups/ipp.c:3514
 msgid "IPP nameWithLanguage value less than minimum 4 bytes."
 msgstr "IPP の nameWithLanguage が最小値 4 バイト未満です。"
 
+#: cups/ipp.c:3671
 msgid "IPP octetString length too large."
 msgstr "IPP の octetString の長さが大きすぎます。"
 
+#: cups/ipp.c:3482
 msgid "IPP rangeOfInteger value not 8 bytes."
 msgstr "IPP の rangeOfInteger は想定された 8 バイトになっていません。"
 
+#: cups/ipp.c:3455
 msgid "IPP resolution value not 9 bytes."
 msgstr "IPP の resolution は想定された 9 バイトになっていません。"
 
+#: cups/ipp.c:3574
 msgid "IPP string length overflows value."
 msgstr "IPP の文字列長の値がオーバーフローしています。"
 
+#: cups/ipp.c:3510
 msgid "IPP textWithLanguage value less than minimum 4 bytes."
 msgstr "IPP の textWithLanguage の値が最小値 4 バイト未満です。"
 
+#: cups/ipp.c:3334
 msgid "IPP value larger than 32767 bytes."
 msgstr "IPP の値が 32767 バイト以上です。"
 
+#: ppdc/sample.c:1
 msgid "ISOLatin1"
 msgstr "ISOLatin1"
 
+#: cups/ppd.c:311
 msgid "Illegal control character"
 msgstr "不正な制御文字"
 
+#: cups/ppd.c:312
 msgid "Illegal main keyword string"
 msgstr "不正なメインキーワード文字列"
 
+#: cups/ppd.c:313
 msgid "Illegal option keyword string"
 msgstr "不正なオプションキーワード文字列"
 
+#: cups/ppd.c:314
 msgid "Illegal translation string"
 msgstr "不正な翻訳文字列"
 
+#: cups/ppd.c:315
 msgid "Illegal whitespace character"
 msgstr "不正な空白文字"
 
+#: ppdc/sample.c:266
 msgid "Installable Options"
 msgstr "インストール可能オプション"
 
+#: ppdc/sample.c:269
 msgid "Installed"
 msgstr "インストールされています"
 
+#: ppdc/sample.c:288
 msgid "IntelliBar Label Printer"
 msgstr "IntelliBar ラベルプリンター"
 
+#: ppdc/sample.c:287
 msgid "Intellitech"
 msgstr "Intellitech"
 
+#: cups/http-support.c:1396
 msgid "Internal Server Error"
 msgstr "サーバー内部エラー"
 
+#: cups/ppd.c:302
 msgid "Internal error"
 msgstr "内部エラー"
 
+#: ppdc/sample.c:167
 msgid "Internet Postage 2-Part"
 msgstr "Internet Postage 2-Part"
 
+#: ppdc/sample.c:168
 msgid "Internet Postage 3-Part"
 msgstr "Internet Postage 3-Part"
 
+#: backend/ipp.c:319
 msgid "Internet Printing Protocol"
 msgstr "インターネット印刷プロトコル"
 
+#: cups/pwg-media.c:293 cups/pwg-media.c:312
 msgid "Invalid media name arguments."
 msgstr "無効なメディア名引数です。"
 
+#: cups/dest-options.c:1032
 msgid "Invalid media size."
 msgstr "無効なメディアサイズです。"
 
+#: filter/commandtops.c:114
 #, c-format
 msgid "Invalid printer command \"%s\"."
 msgstr "無効なプリンターコマンドです。 \"%s\""
 
+#: cups/ppd.c:1376
 msgid "JCL"
 msgstr "JCL"
 
+#: ppdc/sample.c:53
 msgid "JIS B0"
 msgstr "JIS B0"
 
+#: ppdc/sample.c:55
 msgid "JIS B1"
 msgstr "JIS B1"
 
+#: ppdc/sample.c:54
 msgid "JIS B10"
 msgstr "JIS B10"
 
+#: ppdc/sample.c:56
 msgid "JIS B2"
 msgstr "JIS B2"
 
+#: ppdc/sample.c:57
 msgid "JIS B3"
 msgstr "JIS B3"
 
+#: ppdc/sample.c:58
 msgid "JIS B4"
 msgstr "JIS B4"
 
+#: ppdc/sample.c:59
 msgid "JIS B4 Long Edge"
 msgstr "JIS B4 長辺送り"
 
+#: ppdc/sample.c:60
 msgid "JIS B5"
 msgstr "JIS B5"
 
+#: ppdc/sample.c:61
 msgid "JIS B5 Long Edge"
 msgstr "JIS B5 長辺送り"
 
+#: ppdc/sample.c:62
 msgid "JIS B6"
 msgstr "JIS B6"
 
+#: ppdc/sample.c:63
 msgid "JIS B6 Long Edge"
 msgstr "JIS B6 長辺送り"
 
+#: ppdc/sample.c:64
 msgid "JIS B7"
 msgstr "JIS B7"
 
+#: ppdc/sample.c:65
 msgid "JIS B8"
 msgstr "JIS B8"
 
+#: ppdc/sample.c:66
 msgid "JIS B9"
 msgstr "JIS B9"
 
+#: scheduler/ipp.c:8954
 #, c-format
 msgid "Job #%d cannot be restarted - no files."
 msgstr "ジョブ番号 %d を再開できません - ファイルが見つかりません。"
 
+#: scheduler/ipp.c:2999 scheduler/ipp.c:3233 scheduler/ipp.c:3292
+#: scheduler/ipp.c:3469 scheduler/ipp.c:3915 scheduler/ipp.c:5566
+#: scheduler/ipp.c:5948 scheduler/ipp.c:6095 scheduler/ipp.c:6433
+#: scheduler/ipp.c:7383 scheduler/ipp.c:7405 scheduler/ipp.c:7577
+#: scheduler/ipp.c:7802 scheduler/ipp.c:7845 scheduler/ipp.c:8696
+#: scheduler/ipp.c:8922 scheduler/ipp.c:9274 scheduler/ipp.c:9878
 #, c-format
 msgid "Job #%d does not exist."
 msgstr "ジョブ番号 %d は存在しません。"
 
+#: scheduler/ipp.c:3501
 #, c-format
 msgid "Job #%d is already aborted - can't cancel."
 msgstr "ジョブ番号 %d はすでに中断されています - キャンセルできません。"
 
+#: scheduler/ipp.c:3495
 #, c-format
 msgid "Job #%d is already canceled - can't cancel."
 msgstr "ジョブ番号 %d はすでにキャンセルされています - キャンセルできません。"
 
+#: scheduler/ipp.c:3507
 #, c-format
 msgid "Job #%d is already completed - can't cancel."
 msgstr "ジョブ番号 %d はすでに完了しています - キャンセルできません。"
 
+#: scheduler/ipp.c:7603 scheduler/ipp.c:7887 scheduler/ipp.c:9893
 #, c-format
 msgid "Job #%d is finished and cannot be altered."
 msgstr "ジョブ番号 %d はすでに終了し、変更できません。"
 
+#: scheduler/ipp.c:8936
 #, c-format
 msgid "Job #%d is not complete."
 msgstr "ジョブ番号 %d は完了していません。"
 
+#: scheduler/ipp.c:3014
 #, c-format
 msgid "Job #%d is not held for authentication."
 msgstr "ジョブ番号 %d は認証のために保留されていません。"
 
+#: scheduler/ipp.c:8710
 #, c-format
 msgid "Job #%d is not held."
 msgstr "ジョブ番号 %d は保留されていません。"
 
+#: cgi-bin/ipp-var.c:1035
 msgid "Job Completed"
 msgstr "ジョブ完了"
 
+#: cgi-bin/ipp-var.c:1033
 msgid "Job Created"
 msgstr "ジョブ作成"
 
+#: cgi-bin/ipp-var.c:1039
 msgid "Job Options Changed"
 msgstr "ジョブオプション変更"
 
+#: cgi-bin/ipp-var.c:1037
 msgid "Job Stopped"
 msgstr "ジョブ中止"
 
+#: scheduler/ipp.c:9975
 msgid "Job is completed and cannot be changed."
 msgstr "ジョブは完了し変更できません。"
 
+#: cgi-bin/jobs.c:192
 msgid "Job operation failed"
 msgstr "ジョブ操作失敗"
 
+#: scheduler/ipp.c:10011 scheduler/ipp.c:10028 scheduler/ipp.c:10039
 msgid "Job state cannot be changed."
 msgstr "ジョブの状態を変更できません。"
 
+#: scheduler/ipp.c:8802
 msgid "Job subscriptions cannot be renewed."
 msgstr "ジョブサブスクリプションを更新できません。"
 
+#: cgi-bin/jobs.c:97 cgi-bin/jobs.c:108 cgi-bin/jobs.c:189
 msgid "Jobs"
 msgstr "ジョブ"
 
+#: backend/lpd.c:177
 msgid "LPD/LPR Host or Printer"
 msgstr "LPD/LPR ホストまたはプリンター"
 
+#: ppdc/sample.c:230
 msgid "Label Printer"
 msgstr "ラベルプリンター"
 
+#: ppdc/sample.c:441
 msgid "Label Top"
 msgstr "ラベルトップ"
 
+#: scheduler/ipp.c:2061 scheduler/ipp.c:5489
 #, c-format
 msgid "Language \"%s\" not supported."
 msgstr "言語 \"%s\" はサポートされていません。"
 
+#: ppdc/sample.c:164
 msgid "Large Address"
 msgstr "ラージアドレス"
 
+#: ppdc/sample.c:286
 msgid "LaserJet Series PCL 4/5"
 msgstr "LaserJet Series PCL 4/5"
 
+#: ppdc/sample.c:43
 msgid "Letter Oversize"
 msgstr "US レター (特大)"
 
+#: ppdc/sample.c:44
 msgid "Letter Oversize Long Edge"
 msgstr "US レター (特大) 長辺送り"
 
+#: ppdc/sample.c:236
 msgid "Light"
 msgstr "薄い"
 
+#: cups/ppd.c:310
 msgid "Line longer than the maximum allowed (255 characters)"
 msgstr "1 行が最大値 (255 文字) を超えています"
 
+#: cgi-bin/admin.c:2373
 msgid "List Available Printers"
-msgstr "使用可能なプリンターをリスト化"
+msgstr "使用可能なプリンター一覧"
 
+#: cups/localize.c:291
 msgid "Load paper."
-msgstr ""
+msgstr "用紙を補給してください。"
 
+#: ppdc/sample.c:264
 msgid "Long-Edge (Portrait)"
 msgstr "長辺給紙 (縦向き)"
 
+#: cups/http-support.c:1725
 msgid "Looking for printer."
 msgstr "プリンターを探しています。"
 
+#: ppdc/sample.c:260
 msgid "Manual Feed"
 msgstr "手差し"
 
+#: cups/ppd.c:747 cups/ppd.c:1313
 msgid "Media Size"
 msgstr "用紙サイズ"
 
+#: cups/ppd.c:751 cups/ppd.c:1317 ppdc/sample.c:254
 msgid "Media Source"
 msgstr "給紙"
 
+#: ppdc/sample.c:359
 msgid "Media Tracking"
 msgstr "用紙の経路"
 
+#: cups/ppd.c:749 cups/ppd.c:1315 ppdc/sample.c:280
 msgid "Media Type"
 msgstr "用紙種類"
 
+#: ppdc/sample.c:237
 msgid "Medium"
 msgstr "紙質"
 
+#: cups/ppd.c:299
 msgid "Memory allocation error"
 msgstr "メモリー割り当てエラー"
 
+#: cups/ppd.c:319
 msgid "Missing CloseGroup"
 msgstr "CloseGroup がありません"
 
+#: cups/ppd.c:300
 msgid "Missing PPD-Adobe-4.x header"
 msgstr "PPD-Adobe-4.x ヘッダーがありません"
 
+#: cups/ppd.c:309
 msgid "Missing asterisk in column 1"
 msgstr "1 列目にアスタリスクがありません"
 
+#: scheduler/ipp.c:5971
 msgid "Missing document-number attribute."
 msgstr "document-number 属性がありません。"
 
+#: cups/adminutil.c:262
 #, c-format
 msgid "Missing double quote on line %d."
 msgstr "%d 行に二重引用符がありません。"
 
+#: cgi-bin/admin.c:714 cgi-bin/admin.c:2086 cgi-bin/admin.c:2171
+#: cgi-bin/admin.c:2765 cgi-bin/admin.c:3019 cgi-bin/admin.c:3130
+#: cgi-bin/admin.c:3840
 msgid "Missing form variable"
 msgstr "form 変数がありません。"
 
+#: scheduler/ipp.c:9328
 msgid "Missing last-document attribute in request."
 msgstr "リクエストに last-document 属性がありません。"
 
+#: cups/pwg-media.c:555
 msgid "Missing media or media-col."
 msgstr "media または media-col がありません。"
 
+#: cups/pwg-media.c:474
 msgid "Missing media-size in media-col."
 msgstr "media-col に media-size がありません。"
 
+#: scheduler/ipp.c:6574
 msgid "Missing notify-subscription-ids attribute."
 msgstr "notify-subscription-ids 属性がありません。"
 
+#: cups/ppd.c:317
 msgid "Missing option keyword"
 msgstr "オプションキーワードがありません"
 
+#: scheduler/ipp.c:3140 scheduler/ipp.c:3165
 msgid "Missing requesting-user-name attribute."
 msgstr "requesting-user-name 属性が設定されていません。"
 
+#: scheduler/ipp.c:388
 msgid "Missing required attributes."
 msgstr "必須の属性が設定されていません。"
 
+#: cups/http-support.c:1486
 msgid "Missing resource in URI"
-msgstr ""
+msgstr "URI のリソースがない"
 
+#: cups/http-support.c:1480
 msgid "Missing scheme in URI"
-msgstr ""
+msgstr "URI のスキームがない"
 
+#: cups/adminutil.c:243
 #, c-format
 msgid "Missing value on line %d."
 msgstr "%d 行に値がありません。"
 
+#: cups/ppd.c:301
 msgid "Missing value string"
 msgstr "値文字列がありません"
 
+#: cups/pwg-media.c:462
 msgid "Missing x-dimension in media-size."
 msgstr "media-size に x-dimension がありません。"
 
+#: cups/pwg-media.c:468
 msgid "Missing y-dimension in media-size."
 msgstr "media-size に y-dimension がありません。"
 
+#: systemv/lpinfo.c:470
 #, c-format
 msgid ""
 "Model:  name = %s\n"
@@ -3755,163 +4879,217 @@ msgstr ""
 "        プリンタードライバー = %s\n"
 "        デバイス ID = %s"
 
+#: test/ippfind.c:2786
 msgid "Modifiers:"
 msgstr "修飾子:"
 
+#: cgi-bin/admin.c:548
 msgid "Modify Class"
 msgstr "クラスの変更"
 
+#: cgi-bin/admin.c:860
 msgid "Modify Printer"
 msgstr "プリンターの変更"
 
+#: cgi-bin/ipp-var.c:410 cgi-bin/ipp-var.c:501
 msgid "Move All Jobs"
 msgstr "すべてのジョブの移動"
 
+#: cgi-bin/ipp-var.c:349 cgi-bin/ipp-var.c:408 cgi-bin/ipp-var.c:499
 msgid "Move Job"
 msgstr "ジョブの移動"
 
+#: cups/http-support.c:1353
 msgid "Moved Permanently"
 msgstr "別の場所へ移動しました"
 
+#: cups/ppd.c:298
 msgid "NULL PPD file pointer"
 msgstr "PPD ファイルポインターが NULL です"
 
+#: cups/snmp.c:1005
 msgid "Name OID uses indefinite length"
 msgstr "OID 名は限定的な長さを使用します"
 
+#: scheduler/ipp.c:1054
 msgid "Nested classes are not allowed."
 msgstr "入れ子になったクラスは許可されていません。"
 
+#: ppdc/sample.c:425
 msgid "Never"
 msgstr "Never"
 
+#: cups/ppd.c:1904
 msgid "No"
 msgstr "いいえ"
 
+#: cups/http-support.c:1350
 msgid "No Content"
 msgstr "中身がありません"
 
+#: cups/util.c:1123
 msgid "No PPD name"
 msgstr "PPD の名前がありません"
 
+#: cups/snmp.c:999
 msgid "No VarBind SEQUENCE"
 msgstr "VarBind SEQUENCE がありません"
 
+#: cups/adminutil.c:777
 msgid "No Windows printer drivers are installed."
 msgstr "Windows プリンタードライバーがインストールされていません。"
 
+#: cups/request.c:570 cups/request.c:933
 msgid "No active connection"
 msgstr "アクティブな接続はありません"
 
+#: cups/request.c:350
 msgid "No active connection."
-msgstr ""
+msgstr "アクティブな接続はありません。"
 
+#: scheduler/ipp.c:3418
 #, c-format
 msgid "No active jobs on %s."
 msgstr "%s にはアクティブなジョブはありません。"
 
+#: scheduler/ipp.c:216
 msgid "No attributes in request."
 msgstr "リクエストに属性がありません。"
 
+#: scheduler/ipp.c:3041
 msgid "No authentication information provided."
 msgstr "認証情報が提供されていません。"
 
+#: cups/snmp.c:956
 msgid "No community name"
 msgstr "コミュニティ名がありません"
 
+#: scheduler/ipp.c:5771
 msgid "No default printer."
-msgstr "デフォルトのプリンターはありません"
+msgstr "デフォルトのプリンターはありません。"
 
+#: cgi-bin/ipp-var.c:421 scheduler/ipp.c:7149
 msgid "No destinations added."
-msgstr "追加された宛先はありません"
+msgstr "追加された宛先はありません。"
 
+#: backend/usb.c:200
 msgid "No device URI found in argv[0] or in DEVICE_URI environment variable."
 msgstr "argv[0] または 環境変数 DEVICE_URI にデバイス URI が見つかりません。"
 
+#: cups/snmp.c:986
 msgid "No error-index"
 msgstr "エラーインデックスがありません"
 
+#: cups/snmp.c:978
 msgid "No error-status"
 msgstr "エラーステータスがありません"
 
+#: scheduler/ipp.c:8091 scheduler/ipp.c:9342
 msgid "No file in print request."
 msgstr "印刷リクエストにファイルがありません。"
 
+#: cups/util.c:817
 msgid "No modification time"
-msgstr "変更時刻がありません。"
+msgstr "変更時刻がありません"
 
+#: cups/snmp.c:1003
 msgid "No name OID"
 msgstr "OID 名がありません"
 
+#: filter/rastertoepson.c:1132 filter/rastertohp.c:865
+#: filter/rastertolabel.c:1288
 msgid "No pages were found."
 msgstr " ページが見つかりません。"
 
+#: cups/util.c:811
 msgid "No printer name"
-msgstr "プリンター名がありません。"
+msgstr "プリンター名がありません"
 
+#: cups/util.c:1647
 msgid "No printer-uri found"
-msgstr "プリンター URI が見つかりません。"
+msgstr "プリンター URI が見つかりません"
 
+#: cups/util.c:1631
 msgid "No printer-uri found for class"
-msgstr "クラスのプリンター URI が見つかりません。"
+msgstr "クラスのプリンター URI が見つかりません"
 
+#: scheduler/ipp.c:6179
 msgid "No printer-uri in request."
 msgstr "プリンター URI のリクエストがありません。"
 
+#: cups/http.c:2260
 msgid "No request URI."
-msgstr ""
+msgstr "リクエスト URI がありません。"
 
+#: cups/http.c:2277
 msgid "No request protocol version."
-msgstr ""
+msgstr "リクエストプロトコルバージョンがありません。"
 
+#: cups/request.c:358
 msgid "No request sent."
-msgstr ""
+msgstr "リクエストが送られませんでした。"
 
+#: cups/snmp.c:970
 msgid "No request-id"
 msgstr "リクエストID がありません"
 
+#: scheduler/ipp.c:5374
 msgid "No subscription attributes in request."
 msgstr "リクエストにサブスクリプション属性がありません。"
 
+#: scheduler/ipp.c:7476
 msgid "No subscriptions found."
 msgstr "サブスクリプションが見つかりません。"
 
+#: cups/snmp.c:994
 msgid "No variable-bindings SEQUENCE"
 msgstr "variable-bindings SEQUENCE がありません"
 
+#: cups/snmp.c:949
 msgid "No version number"
 msgstr "バージョン名がありません"
 
+#: ppdc/sample.c:362
 msgid "Non-continuous (Mark sensing)"
 msgstr "非連続です (Mark sensing)"
 
+#: ppdc/sample.c:361
 msgid "Non-continuous (Web sensing)"
 msgstr "非連続です (Web sensing)"
 
+#: ppdc/sample.c:238
 msgid "Normal"
 msgstr "標準"
 
+#: cups/http-support.c:1372
 msgid "Not Found"
 msgstr "見つかりません"
 
+#: cups/http-support.c:1384
 msgid "Not Implemented"
 msgstr "実装されていません"
 
+#: ppdc/sample.c:268
 msgid "Not Installed"
 msgstr "インストールされていません"
 
+#: cups/http-support.c:1359
 msgid "Not Modified"
 msgstr "変更されていません"
 
+#: cups/http-support.c:1387
 msgid "Not Supported"
 msgstr "サポートされていません"
 
+#: scheduler/ipp.c:1490 scheduler/ipp.c:10572
 msgid "Not allowed to print."
 msgstr "印刷が許可されていません。"
 
+#: ppdc/sample.c:146
 msgid "Note"
 msgstr "注意"
 
+#: systemv/cupstestdsc.c:433
 msgid ""
 "Note: this program only validates the DSC comments, not the PostScript "
 "itself."
@@ -3919,545 +5097,725 @@ msgstr ""
 "注意: このプログラムは DSC コメントを検証するだけで、PostScript 自身を検証す"
 "るものではありません。"
 
+#: cups/http-support.c:1341 cups/http-support.c:1477 cups/ppd.c:296
 msgid "OK"
 msgstr "OK"
 
+#: ppdc/sample.c:263
 msgid "Off (1-Sided)"
 msgstr "Off (片面)"
 
+#: ppdc/sample.c:356
 msgid "Oki"
 msgstr "Oki"
 
+#: cgi-bin/help.c:91 cgi-bin/help.c:132 cgi-bin/help.c:142 cgi-bin/help.c:172
 msgid "Online Help"
 msgstr "オンラインヘルプ"
 
+#: cups/adminutil.c:944
 #, c-format
 msgid "Open of %s failed: %s"
 msgstr "%s のオープンに失敗しました: %s"
 
+#: cups/ppd.c:304
 msgid "OpenGroup without a CloseGroup first"
 msgstr "OpenGroup の前にまず CloseGroup が必要です"
 
+#: cups/ppd.c:306
 msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first"
 msgstr "OpenUI/JCLOpenUI の前にまず CloseUI/JCLCloseUI が必要です"
 
+#: cgi-bin/admin.c:3611
 msgid "Operation Policy"
 msgstr "操作ポリシー"
 
+#: filter/pstops.c:2177
 #, c-format
 msgid "Option \"%s\" cannot be included via %%%%IncludeFeature."
 msgstr "オプション \"%s\" は %%%%IncludeFeature 経由で含めることはできません。"
 
+#: cgi-bin/admin.c:3261 cgi-bin/admin.c:3345
 msgid "Options Installed"
 msgstr "インストールされたオプション"
 
+#: scheduler/cupsfilter.c:1482 scheduler/main.c:2146 systemv/cupsaddsmb.c:284
+#: systemv/cupsctl.c:203 systemv/cupstestdsc.c:429 systemv/cupstestppd.c:3817
+#: test/ippfind.c:2745 test/ipptool.c:4805 ppdc/ppdc.cxx:432
+#: ppdc/ppdhtml.cxx:174 ppdc/ppdi.cxx:130 ppdc/ppdmerge.cxx:363
+#: ppdc/ppdpo.cxx:254
 msgid "Options:"
 msgstr "オプション:"
 
+#: cups/ppd-cache.c:125
 msgid "Out of date PPD cache file."
 msgstr "PPD キャッシュファイルが古すぎます。"
 
+#: cups/ppd-cache.c:1410
 msgid "Out of memory."
 msgstr "メモリーが足りません。"
 
+#: cups/ppd.c:753 cups/ppd.c:1319
 msgid "Output Mode"
 msgstr "出力モード"
 
+#: cups/localize.c:316
 msgid "Output bin is almost full."
-msgstr ""
+msgstr "排紙ビンがほとんど満杯です。"
 
+#: cups/localize.c:318
 msgid "Output bin is full."
-msgstr ""
+msgstr "排紙ビンが満杯です。"
 
+#: cups/localize.c:314
 msgid "Output bin is missing."
-msgstr ""
+msgstr "排紙ビンがありません。"
 
+#: systemv/cupstestdsc.c:399
 msgid "PASS"
 msgstr "合格"
 
+#: ppdc/sample.c:252
 msgid "PCL Laser Printer"
 msgstr "PCL レーザープリンター"
 
+#: ppdc/sample.c:149
 msgid "PRC16K"
 msgstr "PRC16K"
 
+#: ppdc/sample.c:150
 msgid "PRC16K Long Edge"
 msgstr "PRC16K 長辺送り"
 
+#: ppdc/sample.c:151
 msgid "PRC32K"
 msgstr "PRC32K"
 
+#: ppdc/sample.c:154
 msgid "PRC32K Long Edge"
 msgstr "PRC32K 長辺送り"
 
+#: ppdc/sample.c:152
 msgid "PRC32K Oversize"
 msgstr "PRC32K (特大)"
 
+#: ppdc/sample.c:153
 msgid "PRC32K Oversize Long Edge"
 msgstr "PRC32K (特大) 長辺送り"
 
+#: cups/snmp.c:966
 msgid "Packet does not contain a Get-Response-PDU"
 msgstr "パケットが Get-Response-PDU を含んでいません"
 
+#: cups/snmp.c:945
 msgid "Packet does not start with SEQUENCE"
 msgstr "パケットが SEQUENCE から始まりません"
 
+#: cups/localize.c:293
 msgid "Paper jam."
-msgstr ""
+msgstr "用紙詰まりです。"
 
+#: cups/localize.c:310
 msgid "Paper tray is almost empty."
-msgstr ""
+msgstr "給紙トレイがほとんど空です。"
 
+#: cups/localize.c:312
 msgid "Paper tray is empty."
-msgstr ""
+msgstr "給紙トレイが空です。"
 
+#: cups/localize.c:308
 msgid "Paper tray is missing."
-msgstr ""
+msgstr "給紙トレイがありません。"
 
+#: ppdc/sample.c:355
 msgid "ParamCustominCutInterval"
 msgstr "ParamCustominCutInterval"
 
+#: ppdc/sample.c:353
 msgid "ParamCustominTearInterval"
 msgstr "ParamCustominTearInterval"
 
+#: cups/auth.c:195 cups/auth.c:362
 #, c-format
 msgid "Password for %s on %s? "
 msgstr "%s のパスワード (%s 上)? "
 
+#: systemv/cupsaddsmb.c:252
 #, c-format
 msgid "Password for %s required to access %s via SAMBA: "
 msgstr "%s のパスワード (SAMBA 経由で %s にアクセスするのに必要):"
 
+#: cgi-bin/classes.c:159
 msgid "Pause Class"
 msgstr "クラスの休止"
 
+#: cgi-bin/printers.c:162
 msgid "Pause Printer"
 msgstr "プリンターの休止"
 
+#: ppdc/sample.c:443
 msgid "Peel-Off"
 msgstr "Peel-Off"
 
+#: ppdc/sample.c:160
 msgid "Photo"
 msgstr "写真"
 
+#: ppdc/sample.c:161
 msgid "Photo Labels"
 msgstr "写真ラベル"
 
+#: ppdc/sample.c:281
 msgid "Plain Paper"
 msgstr "普通紙"
 
+#: cgi-bin/admin.c:3279 cgi-bin/admin.c:3560
 msgid "Policies"
 msgstr "ポリシー"
 
+#: cgi-bin/admin.c:3286 cgi-bin/admin.c:3629 cgi-bin/admin.c:3642
 msgid "Port Monitor"
 msgstr "ポートモニター"
 
+#: ppdc/sample.c:270
 msgid "PostScript Printer"
 msgstr "PostScript プリンター"
 
+#: ppdc/sample.c:147
 msgid "Postcard"
 msgstr "ハガキ"
 
+#: ppdc/sample.c:71
 msgid "Postcard Double "
 msgstr "往復ハガキ"
 
+#: ppdc/sample.c:72
 msgid "Postcard Double Long Edge"
 msgstr "往復ハガキ 長辺送り"
 
+#: ppdc/sample.c:148
 msgid "Postcard Long Edge"
 msgstr "ハガキ 長辺送り"
 
+#: backend/ipp.c:961 backend/ipp.c:969
 msgid "Preparing to print."
 msgstr "印刷準備中です。"
 
+#: ppdc/sample.c:290
 msgid "Print Density"
 msgstr "印刷密度"
 
+#: cups/notify.c:82
 msgid "Print Job:"
 msgstr "ジョブの印刷:"
 
+#: ppdc/sample.c:335
 msgid "Print Mode"
 msgstr "印刷モード"
 
+#: ppdc/sample.c:378
 msgid "Print Rate"
 msgstr "印刷レート"
 
+#: cgi-bin/printers.c:171
 msgid "Print Self-Test Page"
 msgstr "自己テストページの印刷"
 
+#: ppdc/sample.c:322
 msgid "Print Speed"
 msgstr "印刷速度"
 
+#: cgi-bin/ipp-var.c:777
 msgid "Print Test Page"
 msgstr "テストページの印刷"
 
+#: ppdc/sample.c:351
 msgid "Print and Cut"
 msgstr "プリントしてカット"
 
+#: ppdc/sample.c:339
 msgid "Print and Tear"
 msgstr "プリントして切り取る"
 
+#: backend/socket.c:429 backend/usb-unix.c:184
 msgid "Print file sent."
 msgstr "プリントファイルが送られました。"
 
+#: backend/ipp.c:2172
 msgid "Print job canceled at printer."
 msgstr "印刷ジョブはプリンターでキャンセルされました。"
 
+#: backend/ipp.c:2164
 msgid "Print job too large."
 msgstr "印刷ジョブが大きすぎます。"
 
+#: backend/ipp.c:1642
 msgid "Print job was not accepted."
-msgstr "印刷ジョブが受付されませんでした。"
+msgstr "印刷ジョブが受け付けられませんでした。"
 
+#: cgi-bin/ipp-var.c:1027
 msgid "Printer Added"
 msgstr "追加されたプリンター"
 
+#: ppdc/sample.c:255
 msgid "Printer Default"
 msgstr "デフォルトのプリンター"
 
+#: cgi-bin/ipp-var.c:1031
 msgid "Printer Deleted"
 msgstr "削除されたプリンター"
 
+#: cgi-bin/ipp-var.c:1029
 msgid "Printer Modified"
 msgstr "変更されたプリンター"
 
+#: cgi-bin/ipp-var.c:1025
 msgid "Printer Paused"
 msgstr "プリンターの休止"
 
+#: ppdc/sample.c:289
 msgid "Printer Settings"
 msgstr "プリンター設定"
 
+#: backend/ipp.c:2167
 msgid "Printer cannot print supplied content."
 msgstr "プリンターは受信した内容を印刷できませんでした。"
 
+#: backend/ipp.c:2170
 msgid "Printer cannot print with supplied options."
 msgstr "指定されたオプションではプリンターは印刷できません。"
 
+#: cups/notify.c:126
 msgid "Printer:"
 msgstr "プリンター:"
 
+#: cgi-bin/printers.c:196 cgi-bin/printers.c:324
 msgid "Printers"
 msgstr "プリンター"
 
+#: filter/rastertoepson.c:1078 filter/rastertohp.c:806
+#: filter/rastertolabel.c:1235
 #, c-format
 msgid "Printing page %d, %u%% complete."
-msgstr ""
+msgstr "ページ %d, %u%% の印刷が完了しました。"
 
+#: ppdc/sample.c:155
 msgid "Quarto"
 msgstr "Quarto"
 
+#: scheduler/ipp.c:1485 scheduler/ipp.c:10567
 msgid "Quota limit reached."
 msgstr "クォータの制限に達しました。"
 
+#: berkeley/lpq.c:490
 msgid "Rank    Owner   Job     File(s)                         Total Size"
 msgstr "ランク  所有者  ジョブ  ファイル                        合計サイズ"
 
+#: cgi-bin/classes.c:163 cgi-bin/printers.c:166
 msgid "Reject Jobs"
 msgstr "ジョブの拒否"
 
+#: backend/lpd.c:1024 backend/lpd.c:1156
 #, c-format
 msgid "Remote host did not accept control file (%d)."
 msgstr "リモートホストがコントロールファイルを受け付けませんでした (%d)。"
 
+#: backend/lpd.c:1109
 #, c-format
 msgid "Remote host did not accept data file (%d)."
 msgstr "リモートホストがデータファイルを受け付けませんでした (%d)。"
 
+#: ppdc/sample.c:423
 msgid "Reprint After Error"
 msgstr "エラー後の再印刷"
 
+#: cups/http-support.c:1375
 msgid "Request Entity Too Large"
 msgstr "要求するエンティティが大きすぎます"
 
+#: cups/ppd.c:755 cups/ppd.c:1321 ppdc/sample.c:231
 msgid "Resolution"
 msgstr "解像度"
 
+#: cgi-bin/classes.c:157
 msgid "Resume Class"
 msgstr "クラスを再開する"
 
+#: cgi-bin/printers.c:159
 msgid "Resume Printer"
 msgstr "プリンターを再開する"
 
+#: ppdc/sample.c:165
 msgid "Return Address"
 msgstr "返信用ラベル"
 
+#: ppdc/sample.c:444
 msgid "Rewind"
 msgstr "巻き取り"
 
+#: cups/adminutil.c:2041
 #, c-format
 msgid "Running command: %s %s -N -A %s -c '%s'"
 msgstr "コマンドを実行中: %s %s -N -A %s -c '%s'"
 
+#: cups/snmp.c:947
 msgid "SEQUENCE uses indefinite length"
 msgstr "SEQUENCE は不定長を使用しています"
 
+#: cups/http-support.c:1399
 msgid "SSL/TLS Negotiation Error"
 msgstr "SSL/TLS のネゴシエーションエラー"
 
+#: cups/http-support.c:1356
 msgid "See Other"
 msgstr "残りを見てください"
 
+#: backend/usb-darwin.c:552 backend/usb-libusb.c:346
 msgid "Sending data to printer."
 msgstr "データをプリンターに送信しています。"
 
+#: cgi-bin/ipp-var.c:1041
 msgid "Server Restarted"
 msgstr "再起動されたサーバー"
 
+#: cgi-bin/ipp-var.c:1047
 msgid "Server Security Auditing"
 msgstr "サーバーのセキュリティー監査"
 
+#: cgi-bin/ipp-var.c:1043
 msgid "Server Started"
 msgstr "開始されたサーバー"
 
+#: cgi-bin/ipp-var.c:1045
 msgid "Server Stopped"
 msgstr "停止されたサーバー"
 
+#: cups/tls-darwin.c:1008 cups/tls-gnutls.c:1024
 msgid "Server credentials not set."
-msgstr ""
+msgstr "サーバー証明書が設定されていません。"
 
+#: cups/http-support.c:1393
 msgid "Service Unavailable"
 msgstr "利用できないサービス"
 
+#: cgi-bin/admin.c:2766 cgi-bin/admin.c:2812 cgi-bin/admin.c:2969
+#: cgi-bin/admin.c:2988
 msgid "Set Allowed Users"
 msgstr "許可するユーザーの設定"
 
+#: cgi-bin/admin.c:3015
 msgid "Set As Server Default"
 msgstr "サーバーのデフォルトに設定"
 
+#: cgi-bin/admin.c:3115
 msgid "Set Class Options"
 msgstr "クラスオプションの設定"
 
+#: cgi-bin/admin.c:3115 cgi-bin/admin.c:3289 cgi-bin/admin.c:3671
 msgid "Set Printer Options"
 msgstr "プリンターオプションの設定"
 
+#: cgi-bin/admin.c:3841 cgi-bin/admin.c:3885 cgi-bin/admin.c:3903
 msgid "Set Publishing"
 msgstr "公開の設定"
 
+#: ppdc/sample.c:166
 msgid "Shipping Address"
 msgstr "発送先ラベル"
 
+#: ppdc/sample.c:265
 msgid "Short-Edge (Landscape)"
 msgstr "短辺 (横原稿)"
 
+#: ppdc/sample.c:283
 msgid "Special Paper"
 msgstr "特殊紙"
 
+#: backend/lpd.c:1065
 #, c-format
 msgid "Spooling job, %.0f%% complete."
 msgstr "ジョブをスプール中、%.0f%% 完了しました。"
 
+#: ppdc/sample.c:336
 msgid "Standard"
 msgstr "標準"
 
 #. TRANSLATORS: Banner/cover sheet before the print job.
+#: cgi-bin/admin.c:3532
 msgid "Starting Banner"
 msgstr "開始バナー"
 
+#: filter/rastertoepson.c:1054 filter/rastertohp.c:782
+#: filter/rastertolabel.c:1211
 #, c-format
 msgid "Starting page %d."
 msgstr "ページ %d を開始しています。"
 
+#: ppdc/sample.c:156
 msgid "Statement"
 msgstr "記述"
 
+#: scheduler/ipp.c:3564 scheduler/ipp.c:6590 scheduler/ipp.c:7289
+#: scheduler/ipp.c:8790
 #, c-format
 msgid "Subscription #%d does not exist."
 msgstr "サブスクリプション番号 %d は存在しません。"
 
+#: test/ippfind.c:2798
 msgid "Substitutions:"
 msgstr "置換:"
 
+#: ppdc/sample.c:157
 msgid "Super A"
 msgstr "スーパー A"
 
+#: ppdc/sample.c:158
 msgid "Super B"
 msgstr "スーパー B"
 
+#: ppdc/sample.c:162
 msgid "Super B/A3"
 msgstr "スーパー B/A3"
 
+#: cups/http-support.c:1338
 msgid "Switching Protocols"
 msgstr "プロトコルの変更"
 
+#: ppdc/sample.c:159
 msgid "Tabloid"
 msgstr "タブロイド"
 
+#: ppdc/sample.c:45
 msgid "Tabloid Oversize"
 msgstr "タブロイド (特大)"
 
+#: ppdc/sample.c:46
 msgid "Tabloid Oversize Long Edge"
 msgstr "タブロイド (特大) 長辺送り"
 
+#: ppdc/sample.c:337
 msgid "Tear"
 msgstr "Tear"
 
+#: ppdc/sample.c:442
 msgid "Tear-Off"
 msgstr "Tear-Off"
 
+#: ppdc/sample.c:383
 msgid "Tear-Off Adjust Position"
 msgstr "Tear-Off 位置調節"
 
+#: scheduler/ipp.c:1321
 #, c-format
 msgid "The \"%s\" attribute is required for print jobs."
 msgstr "印刷ジョブに \"%s\" 属性が必要です。"
 
+#: scheduler/ipp.c:6250 scheduler/ipp.c:6330 scheduler/ipp.c:6343
+#: scheduler/ipp.c:6355 scheduler/ipp.c:6370
 #, c-format
 msgid "The %s attribute cannot be provided with job-ids."
 msgstr "%s 属性は、ジョブ ID と一緒に使うことはできません。"
 
+#: scheduler/ipp.c:1297
 #, c-format
 msgid ""
 "The '%s' Job Description attribute cannot be supplied in a job creation "
 "request."
 msgstr "'%s' Job Description 属性はジョブ作成要求の中で指定できません。"
 
+#: scheduler/ipp.c:5183
 #, c-format
 msgid ""
 "The '%s' operation attribute cannot be supplied in a Create-Job request."
 msgstr "%s 操作属性は、Create-Job リクエストの中で使うことはできません。"
 
+#: scheduler/ipp.c:6820
 #, c-format
 msgid "The PPD file \"%s\" could not be found."
 msgstr "PPD ファイル \"%s\" が見つかりません。"
 
+#: scheduler/ipp.c:6807
 #, c-format
 msgid "The PPD file \"%s\" could not be opened: %s"
 msgstr "PPD ファイル \"%s\" を開けませんでした: %s"
 
+#: filter/rastertoepson.c:1023 filter/rastertohp.c:753
+#: filter/rastertolabel.c:1175
 msgid "The PPD file could not be opened."
 msgstr "PPD ファイルを開けませんでした。"
 
+#: cgi-bin/admin.c:727
 msgid ""
 "The class name may only contain up to 127 printable characters and may not "
 "contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"クラス名は 127 文字以内の表示可能文字からなり、空白、スラッシュ (/)、シャー"
-"プ (#) を含んではなりません。"
+msgstr "クラス名は 127 文字以内の表示可能文字からなり、空白、スラッシュ (/)、ハッシュ (#) を含んではなりません。"
 
+#: cups/localize.c:338
 msgid "The developer unit needs to be replaced."
 msgstr "現像ユニットの交換が必要です。"
 
+#: cups/localize.c:336
 msgid "The developer unit will need to be replaced soon."
 msgstr "もうすぐ現像ユニットの交換時期です。"
 
+#: cups/localize.c:328
 msgid "The fuser's temperature is high."
 msgstr "定着器の温度が高すぎます。"
 
+#: cups/localize.c:330
 msgid "The fuser's temperature is low."
 msgstr "定着器の温度が低すぎます。"
 
+#: scheduler/ipp.c:2088
 msgid ""
 "The notify-lease-duration attribute cannot be used with job subscriptions."
 msgstr ""
 "notify-lease-duration 属性は、ジョブサブスクリプションと一緒に使うことはでき"
 "ません。"
 
+#: scheduler/ipp.c:2071 scheduler/ipp.c:5499
 #, c-format
 msgid "The notify-user-data value is too large (%d > 63 octets)."
 msgstr "notify-user-data 値が大きすぎます (%d > 63 オクテット)。"
 
+#: cups/localize.c:334
 msgid "The optical photoconductor needs to be replaced."
 msgstr "感光体の交換が必要です。"
 
+#: cups/localize.c:332
 msgid "The optical photoconductor will need to be replaced soon."
 msgstr "もうすぐ感光体の交換時期です。"
 
+#: backend/ipp.c:981
 msgid "The printer configuration is incorrect or the printer no longer exists."
 msgstr "プリンターの設定が正しくないかプリンターはすでに存在しません。"
 
+#: backend/lpd.c:627 backend/lpd.c:1017 backend/lpd.c:1099 backend/lpd.c:1149
 msgid "The printer did not respond."
 msgstr "プリンターが応答しません。"
 
+#: backend/ipp.c:825 backend/ipp.c:944 backend/ipp.c:1058 backend/ipp.c:1449
+#: backend/ipp.c:1614 backend/lpd.c:836 backend/socket.c:379
+#: backend/usb-unix.c:124 backend/usb-unix.c:414 backend/usb-unix.c:497
 msgid "The printer is in use."
 msgstr "プリンターは使用中です。"
 
+#: cups/localize.c:320
 msgid "The printer is low on ink."
-msgstr ""
+msgstr "インク残量が残り少なくなっています。"
 
+#: cups/localize.c:298
 msgid "The printer is low on toner."
-msgstr ""
+msgstr "トナー残量が残り少なくなっています。"
 
+#: backend/runloop.c:243 backend/runloop.c:363 cups/localize.c:296
 msgid "The printer is not connected."
 msgstr "プリンターは接続されていません。"
 
+#: backend/ipp.c:803 backend/ipp.c:836 backend/ipp.c:940 backend/lpd.c:815
+#: backend/lpd.c:856 backend/socket.c:358 backend/socket.c:391
 msgid "The printer is not responding."
 msgstr "プリンターが応答していません。"
 
+#: backend/runloop.c:385
 msgid "The printer is now connected."
 msgstr "プリンターが接続されました。"
 
+#: backend/usb-darwin.c:1300
 msgid "The printer is now online."
 msgstr "プリンターは現在オンラインです。"
 
+#: backend/usb-darwin.c:1321
 msgid "The printer is offline."
 msgstr "プリンターはオフラインです。"
 
+#: backend/ipp.c:818 backend/lpd.c:829 backend/socket.c:372
 msgid "The printer is unreachable at this time."
 msgstr "プリンターには現在到達できません。"
 
+#: cups/localize.c:322
 msgid "The printer may be out of ink."
 msgstr "プリンターのインクがなくなっているようです。"
 
+#: cups/localize.c:300
 msgid "The printer may be out of toner."
 msgstr "プリンターのトナーがなくなっているようです。"
 
+#: backend/ipp.c:812 backend/lpd.c:823 backend/socket.c:366
 msgid "The printer may not exist or is unavailable at this time."
 msgstr "プリンターは現在存在しないか、使用できないようです。"
 
+#: cgi-bin/admin.c:909
 msgid ""
 "The printer name may only contain up to 127 printable characters and may not "
 "contain spaces, slashes (/), or the pound sign (#)."
-msgstr ""
-"プリンター名は 127 文字以内の表示可能文字から成り、空白、スラッシュ (/)、ポン"
-"ド記号 (#) を含んではなりません。"
-
+msgstr "プリンター名は 127 文字以内の表示可能文字から成り、空白、スラッシュ (/)、ハッシュ (#) を含んではなりません。"
+
+#: scheduler/ipp.c:788 scheduler/ipp.c:1048 scheduler/ipp.c:3205
+#: scheduler/ipp.c:3384 scheduler/ipp.c:5166 scheduler/ipp.c:5333
+#: scheduler/ipp.c:5647 scheduler/ipp.c:6216 scheduler/ipp.c:7025
+#: scheduler/ipp.c:7081 scheduler/ipp.c:7395 scheduler/ipp.c:7661
+#: scheduler/ipp.c:7750 scheduler/ipp.c:7783 scheduler/ipp.c:8106
+#: scheduler/ipp.c:8500 scheduler/ipp.c:8582 scheduler/ipp.c:9747
+#: scheduler/ipp.c:10199 scheduler/ipp.c:10530 scheduler/ipp.c:10612
+#: scheduler/ipp.c:10987
 msgid "The printer or class does not exist."
 msgstr "プリンターまたはクラスは存在しません。"
 
+#: scheduler/ipp.c:1234
 msgid "The printer or class is not shared."
 msgstr "プリンターまたはクラスは共有できません。"
 
+#: cups/localize.c:302
 msgid "The printer's cover is open."
 msgstr "プリンターのカバーが開いています。"
 
+#: cups/localize.c:306
 msgid "The printer's door is open."
 msgstr "プリンターのドアが開いています。"
 
+#: cups/localize.c:304
 msgid "The printer's interlock is open."
 msgstr "プリンターのインターロックが開いています。"
 
+#: cups/localize.c:324
 msgid "The printer's waste bin is almost full."
 msgstr "プリンターの廃インクまたは廃トナー容器がほとんど一杯です。"
 
+#: cups/localize.c:326
 msgid "The printer's waste bin is full."
 msgstr "プリンターの廃インクまたは廃トナー容器が一杯です。"
 
+#: scheduler/ipp.c:894 scheduler/ipp.c:2252
 #, c-format
 msgid "The printer-uri \"%s\" contains invalid characters."
 msgstr "printer-uri \"%s\" には、無効な文字が含まれています。"
 
+#: scheduler/ipp.c:3182
 msgid "The printer-uri attribute is required."
 msgstr "printer-uri 属性は必須です。"
 
+#: scheduler/ipp.c:878
 msgid ""
 "The printer-uri must be of the form \"ipp://HOSTNAME/classes/CLASSNAME\"."
 msgstr ""
 "printer-uri は、\"ipp://ホスト名/classes/クラス名\" 形式でなければなりませ"
 "ん。"
 
+#: scheduler/ipp.c:2236
 msgid ""
 "The printer-uri must be of the form \"ipp://HOSTNAME/printers/PRINTERNAME\"."
 msgstr ""
 "printer-uri は \"ipp://ホスト名/printers/プリンター名\" 形式でなければなりま"
 "せん。"
 
+#: cgi-bin/admin.c:452
 msgid ""
 "The subscription name may not contain spaces, slashes (/), question marks "
 "(?), or the pound sign (#)."
-msgstr ""
-"サブスクリプション名には、スペース、スラッシュ (/)、疑問府 (?)、ポンド記号 "
-"(#) を使用しないでください。"
+msgstr "サブスクリプション名には、スペース、スラッシュ (/)、疑問府 (?)、ハッシュ (#) を使用しないでください。"
 
+#: scheduler/client.c:2232
 msgid ""
 "The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to "
 "enable it."
@@ -4465,487 +5823,637 @@ msgstr ""
 "Web インターフェイスが現在無効になっています。有効にするには \"cupsctl "
 "WebInterface=yes\" を実行してください。"
 
+#: scheduler/ipp.c:6314
 #, c-format
 msgid "The which-jobs value \"%s\" is not supported."
 msgstr "which-jobs の値 \"%s\" はサポートされていません。"
 
+#: scheduler/ipp.c:5577
 msgid "There are too many subscriptions."
 msgstr "サブスクリプションが多すぎます。"
 
+#: backend/usb-darwin.c:386 backend/usb-darwin.c:445 backend/usb-darwin.c:514
+#: backend/usb-darwin.c:535 backend/usb-libusb.c:271 backend/usb-libusb.c:325
 msgid "There was an unrecoverable USB error."
 msgstr "回復不可能な USB のエラーが発生しています。"
 
+#: ppdc/sample.c:430
 msgid "Thermal Transfer Media"
 msgstr "熱転写メディア"
 
+#: scheduler/ipp.c:1479
 msgid "Too many active jobs."
 msgstr "アクティブなジョブが多すぎます。"
 
+#: scheduler/ipp.c:1373
 #, c-format
 msgid "Too many job-sheets values (%d > 2)."
 msgstr "job-sheets 値が多すぎます (%d > 2)。"
 
+#: scheduler/ipp.c:2537
 #, c-format
 msgid "Too many printer-state-reasons values (%d > %d)."
 msgstr "printer-state-reasons 値が多すぎます (%d > %d)。"
 
+#: ppdc/sample.c:284
 msgid "Transparency"
 msgstr "OHP シート"
 
+#: ppdc/sample.c:279
 msgid "Tray"
 msgstr "トレイ"
 
+#: ppdc/sample.c:256
 msgid "Tray 1"
 msgstr "トレイ 1"
 
+#: ppdc/sample.c:257
 msgid "Tray 2"
 msgstr "トレイ 2"
 
+#: ppdc/sample.c:258
 msgid "Tray 3"
 msgstr "トレイ 3"
 
+#: ppdc/sample.c:259
 msgid "Tray 4"
 msgstr "トレイ 4"
 
+#: cups/http-support.c:1378
 msgid "URI Too Long"
 msgstr "URI が長すぎます"
 
+#: cups/http-support.c:1453
 msgid "URI too large"
-msgstr ""
+msgstr "URI が長すぎる"
 
+#: ppdc/sample.c:138
 msgid "US Ledger"
 msgstr "US レジャー"
 
+#: ppdc/sample.c:139
 msgid "US Legal"
 msgstr "US リーガル"
 
+#: ppdc/sample.c:140
 msgid "US Legal Oversize"
 msgstr "US リーガル (特大)"
 
+#: ppdc/sample.c:141
 msgid "US Letter"
 msgstr "US レター"
 
+#: ppdc/sample.c:142
 msgid "US Letter Long Edge"
 msgstr "US レター 長辺送り"
 
+#: ppdc/sample.c:143
 msgid "US Letter Oversize"
 msgstr "US レター (特大)"
 
+#: ppdc/sample.c:144
 msgid "US Letter Oversize Long Edge"
 msgstr "US レター (特大) 長辺送り"
 
+#: ppdc/sample.c:145
 msgid "US Letter Small"
 msgstr "US レター (小)"
 
+#: cgi-bin/admin.c:1939 cgi-bin/admin.c:1952 cgi-bin/admin.c:1976
 msgid "Unable to access cupsd.conf file"
 msgstr "cupsd.conf ファイルにアクセスできません"
 
+#: cgi-bin/help.c:133
 msgid "Unable to access help file."
 msgstr "ヘルプファイルにアクセスできません。"
 
+#: cgi-bin/admin.c:504
 msgid "Unable to add RSS subscription"
-msgstr " RSS 購読を追加できません"
+msgstr "RSS 購読を追加できません"
 
+#: cgi-bin/admin.c:792
 msgid "Unable to add class"
 msgstr "クラスを追加できません"
 
+#: backend/ipp.c:1796
 msgid "Unable to add document to print job."
 msgstr "ドキュメントを印刷ジョブに追加できません。"
 
+#: scheduler/ipp.c:1537
 #, c-format
 msgid "Unable to add job for destination \"%s\"."
 msgstr "宛先 \"%s\"にジョブを追加できません。"
 
+#: cgi-bin/admin.c:1037 cgi-bin/admin.c:1399
 msgid "Unable to add printer"
 msgstr "プリンターを追加できません"
 
+#: scheduler/ipp.c:1164
 msgid "Unable to allocate memory for file types."
 msgstr "ファイルタイプ用にメモリーを割り当てられません。"
 
+#: filter/pstops.c:418
 msgid "Unable to allocate memory for page info"
 msgstr "ページ情報のメモリー割り当てができません"
 
+#: filter/pstops.c:412
 msgid "Unable to allocate memory for pages array"
 msgstr "ページアレイのメモリー割り当てができません"
 
+#: cgi-bin/admin.c:1505
 msgid "Unable to cancel RSS subscription"
 msgstr "RSS 購読をキャンセルできません"
 
+#: backend/ipp.c:2077 backend/ipp.c:2512
 msgid "Unable to cancel print job."
 msgstr "プリンターを変更できません。"
 
+#: cgi-bin/admin.c:2970
 msgid "Unable to change printer"
 msgstr "プリンターを変更できません"
 
+#: cgi-bin/admin.c:3886
 msgid "Unable to change printer-is-shared attribute"
 msgstr "printer-is-shared 属性を変更することができません"
 
+#: cgi-bin/admin.c:1637 cgi-bin/admin.c:1779
 msgid "Unable to change server settings"
 msgstr "サーバーの設定を変更できません"
 
+#: cups/ipp.c:5389
 #, c-format
 msgid "Unable to compile mimeMediaType regular expression: %s."
 msgstr "mimeMediaType の正規表現を解釈できませんでした: %s。"
 
+#: cups/ipp.c:5335
 #, c-format
 msgid "Unable to compile naturalLanguage regular expression: %s."
 msgstr "naturalLanguage の正規表現を解釈できませんでした: %s。"
 
+#: filter/commandtops.c:407
 msgid "Unable to configure printer options."
 msgstr "プリンターオプションを設定できません。"
 
+#: cups/adminutil.c:900 cups/request.c:1066
 msgid "Unable to connect to host."
 msgstr "ホストに接続できません。"
 
+#: backend/ipp.c:781 backend/ipp.c:1254 backend/lpd.c:795 backend/socket.c:338
+#: backend/usb-unix.c:110
 msgid "Unable to contact printer, queuing on next printer in class."
 msgstr "プリンターと交信できません。クラス内の次のプリンターにキューします。"
 
+#: cups/adminutil.c:715
 #, c-format
 msgid "Unable to copy 64-bit CUPS printer driver files (%d)."
 msgstr "64-bit 版の CUPS プリンタードライバーファイルをコピーできません (%d)。"
 
+#: cups/adminutil.c:680
 #, c-format
 msgid "Unable to copy 64-bit Windows printer driver files (%d)."
 msgstr "64-bit 版の Windows プリンタードライバーをコピーできません (%d)。"
 
+#: cups/adminutil.c:511
 #, c-format
 msgid "Unable to copy CUPS printer driver files (%d)."
 msgstr "複数の CUPS プリンタードライバーファイルをコピーできません (%d)。"
 
+#: scheduler/ipp.c:2657
 #, c-format
 msgid "Unable to copy PPD file - %s"
 msgstr "PPD ファイルをコピーできません - %s"
 
+#: scheduler/ipp.c:2712
 msgid "Unable to copy PPD file."
 msgstr "PPD ファイルをコピーできません。"
 
+#: cups/adminutil.c:476
 #, c-format
 msgid "Unable to copy Windows 2000 printer driver files (%d)."
 msgstr ""
 "複数の Windows 2000 プリンタードライバーファイルをコピーできません (%d)。"
 
+#: cups/adminutil.c:599
 #, c-format
 msgid "Unable to copy Windows 9x printer driver files (%d)."
 msgstr ""
 "複数の Windows 9x プリンタードライバーファイルをコピーできません (%d)。"
 
+#: scheduler/ipp.c:2634
 #, c-format
 msgid "Unable to copy interface script - %s"
 msgstr "インターフェイススクリプトをコピーできません - %s"
 
+#: cups/util.c:496 cups/util.c:1479
 msgid "Unable to create printer-uri"
-msgstr "printer-uri を作成できません。"
+msgstr "printer-uri を作成できません"
 
+#: cups/tls-darwin.c:1116 cups/tls-gnutls.c:1157
 msgid "Unable to create server credentials."
-msgstr ""
+msgstr "サーバー証明書を作成できません。"
 
+#: cgi-bin/admin.c:1830 cgi-bin/admin.c:1842 scheduler/cupsfilter.c:1290
 msgid "Unable to create temporary file"
 msgstr "テンポラリーファイルを作成できません"
 
+#: cgi-bin/admin.c:2133
 msgid "Unable to delete class"
 msgstr "クラスを削除できません"
 
+#: cgi-bin/admin.c:2218
 msgid "Unable to delete printer"
 msgstr "プリンターを削除できません"
 
+#: cgi-bin/classes.c:252 cgi-bin/printers.c:261
 msgid "Unable to do maintenance command"
 msgstr "メンテナンスコマンドを実行できません"
 
+#: cgi-bin/admin.c:1954
 msgid "Unable to edit cupsd.conf files larger than 1MB"
-msgstr "1MB 以上の cupsd.conf ファイルは編集できません。"
+msgstr "1MB 以上の cupsd.conf ファイルは編集できません"
 
+#: cups/tls-darwin.c:1284
 msgid ""
 "Unable to establish a secure connection to host (certificate chain invalid)."
 msgstr "ホストへの安全な接続が確立できません (認証パスが無効です)。"
 
+#: cups/tls-darwin.c:1274
 msgid ""
 "Unable to establish a secure connection to host (certificate not yet valid)."
 msgstr "ホストへの安全な接続が確立できません (認証がまだ有効ではありません)。"
 
+#: cups/tls-darwin.c:1269
 msgid "Unable to establish a secure connection to host (expired certificate)."
 msgstr "ホストへの安全な接続が確立できません (認証が期限切れです)。"
 
+#: cups/tls-darwin.c:1279
 msgid "Unable to establish a secure connection to host (host name mismatch)."
 msgstr "ホストへの安全な接続が確立できません (ホスト名が一致しません)。"
 
+#: cups/tls-darwin.c:1289
 msgid ""
 "Unable to establish a secure connection to host (peer dropped connection "
 "before responding)."
 msgstr ""
 "ホストへの安全な接続が確立できません (応答がある前に接続が切断されました)。"
 
+#: cups/tls-darwin.c:1264
 msgid ""
 "Unable to establish a secure connection to host (self-signed certificate)."
 msgstr "ホストへの安全な接続が確立できません (自己署名証明書です)。"
 
+#: cups/tls-darwin.c:1259
 msgid ""
 "Unable to establish a secure connection to host (untrusted certificate)."
 msgstr "ホストへの安全な接続が確立できません (信用できない証明書です)。"
 
+#: cups/tls-darwin.c:1316 cups/tls-sspi.c:1247 cups/tls-sspi.c:1264
 msgid "Unable to establish a secure connection to host."
 msgstr "ホストへの安全な接続を確立できません。"
 
+#: cgi-bin/ipp-var.c:350
 msgid "Unable to find destination for job"
 msgstr "ジョブの宛先が見つかりません"
 
+#: cups/http-support.c:1949
 msgid "Unable to find printer."
 msgstr "プリンターが見つかりません。"
 
+#: cups/tls-darwin.c:1130
 msgid "Unable to find server credentials."
-msgstr ""
+msgstr "サーバー証明書を見つけられません。"
 
+#: backend/ipp.c:3493
 msgid "Unable to get backend exit status."
 msgstr "バックエンドの終了ステータスを取得できません。"
 
+#: cgi-bin/classes.c:442
 msgid "Unable to get class list"
 msgstr "クラスリストを取得できません"
 
+#: cgi-bin/classes.c:541
 msgid "Unable to get class status"
 msgstr "クラスの状態を取得できません。"
 
+#: cgi-bin/admin.c:1300
 msgid "Unable to get list of printer drivers"
 msgstr "プリンタードライバーのリストを取得できません"
 
+#: cgi-bin/admin.c:2820
 msgid "Unable to get printer attributes"
 msgstr "プリンター属性を取得できません"
 
+#: cgi-bin/printers.c:459
 msgid "Unable to get printer list"
 msgstr "プリンターリストを取得できません"
 
+#: cgi-bin/printers.c:561
 msgid "Unable to get printer status"
 msgstr "プリンターの状態を取得できません"
 
+#: backend/ipp.c:1005
 msgid "Unable to get printer status."
 msgstr "プリンターの状態を取得できません。"
 
+#: cups/adminutil.c:554 cups/adminutil.c:758
 #, c-format
 msgid "Unable to install Windows 2000 printer driver files (%d)."
 msgstr ""
 "複数の Windows 2000 プリンタードライバーファイルをインストールできません "
 "(%d)。"
 
+#: cups/adminutil.c:628
 #, c-format
 msgid "Unable to install Windows 9x printer driver files (%d)."
 msgstr ""
 "複数の Windows 9x プリンタードライバーファイルをインストールできません (%d)。"
 
+#: cgi-bin/help.c:92
 msgid "Unable to load help index."
 msgstr "ヘルプの索引を読み込めません。"
 
+#: backend/ipp.c:668 backend/lpd.c:426 backend/socket.c:277
 #, c-format
 msgid "Unable to locate printer \"%s\"."
 msgstr "プリンター \"%s\" が見つかりません。"
 
+#: backend/dnssd.c:787 backend/ipp.c:336 backend/lpd.c:196
+#: backend/socket.c:163
 msgid "Unable to locate printer."
 msgstr "プリンターが見つかりません。"
 
+#: cgi-bin/admin.c:791
 msgid "Unable to modify class"
 msgstr "クラスを変更できません"
 
+#: cgi-bin/admin.c:1036 cgi-bin/admin.c:1398
 msgid "Unable to modify printer"
 msgstr "プリンターを変更できません"
 
+#: cgi-bin/ipp-var.c:417 cgi-bin/ipp-var.c:506
 msgid "Unable to move job"
 msgstr "ジョブを移動できません"
 
+#: cgi-bin/ipp-var.c:419 cgi-bin/ipp-var.c:508
 msgid "Unable to move jobs"
 msgstr "複数のジョブを移動できません"
 
+#: cgi-bin/admin.c:3166 cups/ppd.c:297
 msgid "Unable to open PPD file"
 msgstr "PPD ファイルを読み込むことができません"
 
+#: cgi-bin/admin.c:2588
 msgid "Unable to open cupsd.conf file:"
 msgstr "cupsd.conf ファイルを開けません:"
 
+#: backend/usb-unix.c:134
 msgid "Unable to open device file"
 msgstr "デバイスファイルを開けません"
 
+#: scheduler/ipp.c:5992
 #, c-format
 msgid "Unable to open document #%d in job #%d."
 msgstr "ドキュメント %d (ジョブ %d) を開けません。"
 
+#: cgi-bin/help.c:364
 msgid "Unable to open help file."
 msgstr "ヘルプファイルを読み込むことができません。"
 
+#: backend/ipp.c:378 backend/ipp.c:1543 backend/ipp.c:1751 backend/lpd.c:496
+#: backend/socket.c:150 backend/usb.c:237 filter/gziptoany.c:67
+#: filter/pstops.c:267
 msgid "Unable to open print file"
 msgstr "印刷ファイルを開けません"
 
+#: filter/rastertoepson.c:983 filter/rastertohp.c:713
+#: filter/rastertolabel.c:1133
 msgid "Unable to open raster file"
 msgstr "ラスターファイルを開けません"
 
+#: cgi-bin/ipp-var.c:780
 msgid "Unable to print test page"
 msgstr "テストページを印刷できません"
 
+#: backend/runloop.c:85 backend/runloop.c:314 backend/usb-darwin.c:622
+#: backend/usb-darwin.c:666 backend/usb-libusb.c:416 backend/usb-libusb.c:451
 msgid "Unable to read print data."
 msgstr "プリントデータを読み込めません。"
 
+#: cups/dest.c:3445
 msgid "Unable to resolve printer-uri."
-msgstr ""
+msgstr "printer-uri を解決できません。"
 
+#: cups/adminutil.c:2077
 #, c-format
 msgid "Unable to run \"%s\": %s"
 msgstr "\"%s\" を実行できません: %s"
 
+#: filter/pstops.c:530
 msgid "Unable to see in file"
 msgstr "ファイルを読み込むことができません"
 
+#: cgi-bin/ipp-var.c:583 cgi-bin/ipp-var.c:603
 msgid "Unable to send command to printer driver"
 msgstr "プリンタードライバーにコマンドを送信できません"
 
+#: backend/usb-darwin.c:744 backend/usb-libusb.c:527
 msgid "Unable to send data to printer."
 msgstr "プリンターにデータを送信することができません。"
 
+#: cups/adminutil.c:810
 #, c-format
 msgid "Unable to set Windows printer driver (%d)."
 msgstr "Windows プリンタードライバーを設定できません (%d)。"
 
+#: cgi-bin/admin.c:3787
 msgid "Unable to set options"
 msgstr "オプションを設定できません"
 
+#: cgi-bin/admin.c:3057
 msgid "Unable to set server default"
 msgstr "サーバーをデフォルトに設定できません"
 
+#: backend/ipp.c:3352 backend/ipp.c:3429 backend/ipp.c:3437
 msgid "Unable to start backend process."
 msgstr "バックエンドのプロセスを起動できません。"
 
+#: cgi-bin/admin.c:1892
 msgid "Unable to upload cupsd.conf file"
 msgstr "cupsd.conf ファイルをアップロードできません"
 
+#: backend/usb-darwin.c:2016 backend/usb-darwin.c:2040
 msgid "Unable to use legacy USB class driver."
 msgstr "古いタイプの USB クラスドライバーは使用できません。"
 
+#: backend/runloop.c:114 backend/runloop.c:369
 msgid "Unable to write print data"
 msgstr "プリントデータを書き込めません"
 
+#: filter/gziptoany.c:86
 #, c-format
 msgid "Unable to write uncompressed print data: %s"
 msgstr "非圧縮のプリントデータを書き込めません: %s"
 
+#: cups/http-support.c:1366
 msgid "Unauthorized"
 msgstr "未許可"
 
+#: cgi-bin/admin.c:3483
 msgid "Units"
 msgstr "ユニット"
 
+#: cups/http-support.c:1406 cups/http-support.c:1490 cups/ppd.c:324
 msgid "Unknown"
 msgstr "未知"
 
+#: filter/pstops.c:2185
 #, c-format
 msgid "Unknown choice \"%s\" for option \"%s\"."
 msgstr "\"%s\" (オプション \"%s\" 用) は未知の設定です。"
 
+#: backend/ipp.c:520
 #, c-format
 msgid "Unknown encryption option value: \"%s\"."
 msgstr "\"%s\" は未知の暗号オプション値です。"
 
+#: backend/lpd.c:342
 #, c-format
 msgid "Unknown file order: \"%s\"."
 msgstr "\"%s\" は未知のファイルオーダーです。"
 
+#: backend/lpd.c:313
 #, c-format
 msgid "Unknown format character: \"%c\"."
 msgstr "\"%c\" は未知の書式文字です。"
 
+#: cups/dest-options.c:964
 msgid "Unknown media size name."
 msgstr "未知のメディアサイズ名称です。"
 
+#: backend/ipp.c:584
 #, c-format
 msgid "Unknown option \"%s\" with value \"%s\"."
 msgstr "\"%s\" (値 \"%s\") は未知のオプションです。"
 
+#: filter/pstops.c:2168
 #, c-format
 msgid "Unknown option \"%s\"."
 msgstr "\"%s\" は未知のオプションです。"
 
+#: backend/lpd.c:328
 #, c-format
 msgid "Unknown print mode: \"%s\"."
 msgstr "\"%s\" は未知のプリントモードです。"
 
+#: scheduler/ipp.c:10401
 #, c-format
 msgid "Unknown printer-error-policy \"%s\"."
 msgstr "\"%s\" は未知の printer-error-policy です。"
 
+#: scheduler/ipp.c:10384
 #, c-format
 msgid "Unknown printer-op-policy \"%s\"."
 msgstr "\"%s\" は未知の printer-op-policy です。"
 
+#: cups/http.c:2309
 msgid "Unknown request method."
-msgstr ""
+msgstr "未知のリクエスト方法です。"
 
+#: cups/http.c:2329
 msgid "Unknown request version."
-msgstr ""
+msgstr "未知のリクエストバージョンです。"
 
+#: cups/http-support.c:1483
 msgid "Unknown scheme in URI"
-msgstr ""
+msgstr "URI に未知のスキーマがあります"
 
+#: cups/http-addrlist.c:737
 msgid "Unknown service name."
 msgstr "未知のサービス名です。"
 
+#: backend/ipp.c:549
 #, c-format
 msgid "Unknown version option value: \"%s\"."
 msgstr "\"%s\" は未知のバージョンオプション値です。"
 
+#: scheduler/ipp.c:10858
 #, c-format
 msgid "Unsupported 'compression' value \"%s\"."
 msgstr "\"%s\" はサポートされていない 'compression' の値です。"
 
+#: scheduler/ipp.c:10888
 #, c-format
 msgid "Unsupported 'document-format' value \"%s\"."
 msgstr "\"%s\" はサポートされていない 'document-format' の値です。"
 
+#: scheduler/ipp.c:10963
 msgid "Unsupported 'job-name' value."
 msgstr "サポートされていない 'job-name' の値です。"
 
+#: scheduler/ipp.c:329
 #, c-format
 msgid "Unsupported character set \"%s\"."
 msgstr "\"%s\" はサポートされていない文字セットです。"
 
+#: scheduler/ipp.c:8072 scheduler/ipp.c:9307
 #, c-format
 msgid "Unsupported compression \"%s\"."
 msgstr "\"%s\" はサポートされていない圧縮形式です。"
 
+#: scheduler/ipp.c:8206 scheduler/ipp.c:9457
 #, c-format
 msgid "Unsupported document-format \"%s\"."
 msgstr "\"%s\" はサポートされていない文書形式です。"
 
+#: scheduler/ipp.c:9440
 #, c-format
 msgid "Unsupported document-format \"%s/%s\"."
 msgstr "\"%s/%s\" はサポートされていない文書形式です。"
 
+#: scheduler/ipp.c:1339
 #, c-format
 msgid "Unsupported format \"%s\"."
 msgstr "\"%s\" はサポートされていない形式です。"
 
+#: scheduler/ipp.c:1437
 msgid "Unsupported margins."
 msgstr "サポートされていないマージンです。"
 
+#: cups/pwg-media.c:549
 msgid "Unsupported media value."
 msgstr "サポートされていないメディアの値です。"
 
+#: filter/pstops.c:2450
 #, c-format
 msgid "Unsupported number-up value %d, using number-up=1."
 msgstr "%d はサポートされていない number-up 値です。number-up=1 を使用します。"
 
+#: filter/pstops.c:2484
 #, c-format
 msgid "Unsupported number-up-layout value %s, using number-up-layout=lrtb."
 msgstr ""
 "%s はサポートされていない number-up-layout 値です。number-up-layout=lrtb を使"
 "用します。"
 
+#: filter/pstops.c:2535
 #, c-format
 msgid "Unsupported page-border value %s, using page-border=none."
 msgstr ""
 "%s はサポートされていない page-border 値です。page-border=none を使用します。"
 
+#: filter/rastertopwg.c:139 filter/rastertopwg.c:147 filter/rastertopwg.c:156
 msgid "Unsupported raster data."
 msgstr "サポートされていないラスターデータです。"
 
+#: cups/snmp.c:1064
 msgid "Unsupported value type"
 msgstr "サポートされていない型の値です"
 
+#: cups/http-support.c:1381
 msgid "Upgrade Required"
 msgstr "アップグレードが必要です"
 
+#: systemv/lpadmin.c:654
 msgid ""
 "Usage:\n"
 "\n"
@@ -4967,31 +6475,42 @@ msgstr ""
 "                       [-u allow:ユーザー,ユーザー] [-u deny:ユーザー,ユー"
 "ザー]"
 
+#: backend/dnssd.c:227 backend/ipp.c:325 backend/lpd.c:183
+#: backend/socket.c:127 backend/usb.c:183 filter/commandtops.c:63
+#: filter/gziptoany.c:46 filter/pstops.c:231 monitor/bcp.c:56
+#: monitor/tbcp.c:55
 #, c-format
 msgid "Usage: %s job-id user title copies options [file]"
 msgstr "使い方: %s ジョブID ユーザー タイトル コピー数 オプション [ファイル]"
 
+#: systemv/cupsaddsmb.c:281
 msgid "Usage: cupsaddsmb [options] printer1 ... printerN"
 msgstr "Usage: cupsaddsmb [オプション] プリンター1 ... プリンターN"
 
+#: systemv/cupsctl.c:200
 msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]"
 msgstr "Usage: cupsctl [オプション] [パラメータ=値 ... パラメータN=値N]"
 
+#: scheduler/main.c:2145
 msgid "Usage: cupsd [options]"
 msgstr "使い方: cupsd [オプション]"
 
+#: scheduler/cupsfilter.c:1481
 msgid "Usage: cupsfilter [ options ] [ -- ] filename"
-msgstr ""
+msgstr "使い方: cupsfilter [ オプション ] [ -- ] ファイル名"
 
+#: systemv/cupstestdsc.c:425
 msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]"
-msgstr "使い方: cupstestdsc [オプション] filename.ps [... filename.ps]"
+msgstr "使い方: cupstestdsc [オプション] ファイル名.ps [... ファイル名.ps]"
 
+#: systemv/cupstestppd.c:3813
 msgid ""
 "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]"
 msgstr ""
 "使い方: cupstestppd [オプション] ファイル名1.ppd[.gz] [... ファイル名N.ppd[."
 "gz]]"
 
+#: test/ippdiscover.c:814
 msgid ""
 "Usage: ippdiscover [options] -a\n"
 "       ippdiscover [options] \"service name\"\n"
@@ -5003,6 +6522,7 @@ msgstr ""
 "\n"
 "オプション:"
 
+#: test/ippfind.c:2738
 msgid ""
 "Usage: ippfind [options] regtype[,subtype][.domain.] ... [expression]\n"
 "       ippfind [options] name[.regtype[.domain.]] ... [expression]\n"
@@ -5014,12 +6534,15 @@ msgstr ""
 "        ippfind --help\n"
 "        ippfind --version"
 
+#: test/ipptool.c:4803
 msgid "Usage: ipptool [options] URI filename [ ... filenameN ]"
 msgstr "使い方: ipptool [オプション] URI ファイル名 [ ... ファイル名N ]"
 
+#: systemv/lpmove.c:125
 msgid "Usage: lpmove job/src dest"
 msgstr "使い方: lpmove ジョブ/ソース 宛先"
 
+#: systemv/lpoptions.c:539
 msgid ""
 "Usage: lpoptions [-h server] [-E] -d printer\n"
 "       lpoptions [-h server] [-E] [-p printer] -l\n"
@@ -5031,59 +6554,76 @@ msgstr ""
 "        lpoptions [-h サーバー] [-E] -p プリンター -o オプション[=値] ...\n"
 "        lpoptions [-h サーバー] [-E] -x プリンター"
 
+#: berkeley/lpq.c:637
 msgid ""
 "Usage: lpq [-P dest] [-U username] [-h hostname[:port]] [-l] [+interval]"
 msgstr ""
 "使い方: lpq [-P 宛先] [-U ユーザー名] [-h ホスト名[:ポート]] [-l] [+間隔]"
 
+#: ppdc/ppdc.cxx:430
 msgid "Usage: ppdc [options] filename.drv [ ... filenameN.drv ]"
 msgstr "使い方: ppdc [オプション] ファイル名.drv [ ... ファイル名N.drv ]"
 
+#: ppdc/ppdhtml.cxx:172
 msgid "Usage: ppdhtml [options] filename.drv >filename.html"
 msgstr "使い方: ppdhtml [オプション] ファイル名.drv >ファイル名.html"
 
+#: ppdc/ppdi.cxx:128
 msgid "Usage: ppdi [options] filename.ppd [ ... filenameN.ppd ]"
 msgstr "使い方: ppdi [オプション] ファイル名.ppd [ ... ファイル名N.ppd ]"
 
+#: ppdc/ppdmerge.cxx:361
 msgid "Usage: ppdmerge [options] filename.ppd [ ... filenameN.ppd ]"
 msgstr "使い方: ppdmerge [オプション] ファイル名.ppd [ ... ファイル名N.ppd ]"
 
+#: ppdc/ppdpo.cxx:252
 msgid ""
 "Usage: ppdpo [options] -o filename.po filename.drv [ ... filenameN.drv ]"
 msgstr ""
 "使い方: ppdpo [オプション] -o ファイル名.po ファイル名.drv [ ... ファイル名N."
 "drv ]"
 
+#: backend/snmp.c:192
 msgid "Usage: snmp [host-or-ip-address]"
-msgstr "使い方: snmp [ホストまたはIPアドレス]"
+msgstr "使い方: snmp [ホスト名またはIPアドレス]"
 
+#: cups/snmp.c:1016
 msgid "Value uses indefinite length"
 msgstr "値は不定長です"
 
+#: cups/snmp.c:1001
 msgid "VarBind uses indefinite length"
 msgstr "VarBind は不定長です"
 
+#: cups/snmp.c:951
 msgid "Version uses indefinite length"
 msgstr "Version は不定長です"
 
+#: backend/ipp.c:1913
 msgid "Waiting for job to complete."
 msgstr "ジョブが完了するのを待っています。"
 
+#: backend/usb-darwin.c:469 backend/usb-libusb.c:223
 msgid "Waiting for printer to become available."
 msgstr "プリンターが使用可能になるのを待っています。"
 
+#: backend/socket.c:440
 msgid "Waiting for printer to finish."
 msgstr "プリンターが終了するのを待っています。"
 
+#: cups/adminutil.c:782
 msgid "Warning, no Windows 2000 printer drivers are installed."
 msgstr "警告、Windows 2000 プリンタードライバーがインストールされていません。"
 
+#: cups/http-support.c:1402
 msgid "Web Interface is Disabled"
 msgstr "Web インターフェイスが無効になっています"
 
+#: cups/ppd.c:1902
 msgid "Yes"
 msgstr "はい"
 
+#: scheduler/client.c:2219
 #, c-format
 msgid ""
 "You must access this page using the URL https://"
@@ -5092,295 +6632,384 @@ msgstr ""
 "このページには URL https://%s:%d%s を使ってア"
 "クセスする必要があります。"
 
+#: ppdc/sample.c:434
 msgid "ZPL Label Printer"
 msgstr "ZPL ラベルプリンター"
 
+#: ppdc/sample.c:357
 msgid "Zebra"
 msgstr "ゼブラ"
 
+#: cups/notify.c:102
 msgid "aborted"
 msgstr "停止"
 
+#: cups/notify.c:99
 msgid "canceled"
 msgstr "キャンセル"
 
+#: cups/notify.c:105
 msgid "completed"
 msgstr "完了"
 
+#: scheduler/ipp.c:5864
 msgid "cups-deviced failed to execute."
 msgstr "cups-deviced の実行に失敗しました。"
 
+#: scheduler/ipp.c:6743 scheduler/ipp.c:6992
 msgid "cups-driverd failed to execute."
 msgstr "cups-driverd の実行に失敗しました。"
 
+#: systemv/cupsaddsmb.c:233
 #, c-format
 msgid "cupsaddsmb: No PPD file for printer \"%s\" - %s"
 msgstr "cupsaddsmb: プリンター \"%s\" の PPD ファイルがありません - %s"
 
+#: systemv/cupsctl.c:141
 msgid "cupsctl: Cannot set Listen or Port directly."
 msgstr "cupsctl: Listen あるいは Port を直接設定できません。"
 
+#: systemv/cupsctl.c:152
 #, c-format
 msgid "cupsctl: Unable to connect to server: %s"
 msgstr "cupsctl: サーバーに接続できません: %s"
 
+#: systemv/cupsctl.c:195
 #, c-format
 msgid "cupsctl: Unknown option \"%s\""
 msgstr "cupsctl: \"%s\" は未知のオプションです。"
 
+#: systemv/cupsctl.c:197
 #, c-format
 msgid "cupsctl: Unknown option \"-%c\""
 msgstr "cupsctl: \"-%c\"は未知のオプションです。"
 
+#: scheduler/main.c:171
 msgid "cupsd: Expected config filename after \"-c\" option."
 msgstr "cupsd: \"-c\" オプションのあとには設定ファイル名が必要です。"
 
+#: scheduler/main.c:258
 msgid "cupsd: Expected cups-files.conf filename after \"-s\" option."
 msgstr ""
 "cupsd: cups-files.conf ファイル名は \"-s\" オプションの後ろにあるべきです。"
 
+#: scheduler/main.c:236
 msgid "cupsd: On-demand support not compiled in, running in normal mode."
-msgstr ""
+msgstr "cupsd: オンデマンドサポート有効でコンパイルされていません、標準モードで動作します。"
 
+#: scheduler/main.c:269
 msgid "cupsd: Relative cups-files.conf filename not allowed."
 msgstr "cupsd: 相対パスでの cups-files.conf の指定はできません。"
 
+#: scheduler/main.c:202 scheduler/main.c:209
 msgid "cupsd: Unable to get current directory."
 msgstr "cupsd: カレントディレクトリーを取得できません。"
 
+#: scheduler/main.c:316 scheduler/main.c:325
 msgid "cupsd: Unable to get path to cups-files.conf file."
 msgstr "cupsd: cups-files.conf ファイルへのパスが取得できません。"
 
+#: scheduler/main.c:298
 #, c-format
 msgid "cupsd: Unknown argument \"%s\" - aborting."
 msgstr "cupsd: \"%s\" は未知の引数です - 停止します。"
 
+#: scheduler/main.c:291
 #, c-format
 msgid "cupsd: Unknown option \"%c\" - aborting."
 msgstr "cupsd: \"%c\" は未知のオプションです - 停止します。"
 
+#: scheduler/cupsfilter.c:1263
 #, c-format
 msgid "cupsfilter: Invalid document number %d."
 msgstr "cupsfilter: 不正な文書番号 %d です。"
 
+#: scheduler/cupsfilter.c:1257
 #, c-format
 msgid "cupsfilter: Invalid job ID %d."
 msgstr "cupsfilter: 不正なジョブID %d です。"
 
+#: scheduler/cupsfilter.c:348
 msgid "cupsfilter: Only one filename can be specified."
 msgstr "cupsfilter: 1 つのファイル名のみを指定できます。"
 
+#: scheduler/cupsfilter.c:1305
 #, c-format
 msgid "cupsfilter: Unable to get job file - %s"
 msgstr "cupsfilter: ジョブ・ファイルを取得できません - %s"
 
+#: systemv/cupstestppd.c:261
 msgid "cupstestppd: The -q option is incompatible with the -v option."
 msgstr "cupstestppd: -q オプションは -v オプションと両立できません。"
 
+#: systemv/cupstestppd.c:277
 msgid "cupstestppd: The -v option is incompatible with the -q option."
 msgstr "cupstestppd: -v オプションは -q オプションと両立できません。"
 
+#: systemv/lpstat.c:1232 systemv/lpstat.c:1235 systemv/lpstat.c:1238
 #, c-format
 msgid "device for %s/%s: %s"
 msgstr "%s/%s のデバイス: %s"
 
+#: systemv/lpstat.c:1218 systemv/lpstat.c:1221 systemv/lpstat.c:1224
 #, c-format
 msgid "device for %s: %s"
 msgstr "%s のデバイス: %s"
 
+#: cups/snmp.c:988
 msgid "error-index uses indefinite length"
 msgstr "error-index は不定長です"
 
+#: cups/snmp.c:980
 msgid "error-status uses indefinite length"
 msgstr "error-status は不定長です"
 
+#: cups/notify.c:90
 msgid "held"
 msgstr "保留"
 
+#: berkeley/lpc.c:201
 msgid "help\t\tGet help on commands."
 msgstr "help\t\tコマンドのヘルプを取得。"
 
+#: cups/notify.c:131
 msgid "idle"
 msgstr "待機中"
 
+#: test/ippfind.c:2465
 #, c-format
 msgid "ippfind: Bad regular expression: %s"
 msgstr "ippfind: 不正な正規表現です: %s"
 
+#: test/ippfind.c:328
 msgid "ippfind: Cannot use --and after --or."
-msgstr "ippfind: --and は --or の後に指定することはできません。"
+msgstr "ippfind: --and は --or のあとに指定することはできません。"
 
+#: test/ippfind.c:601
 #, c-format
 msgid "ippfind: Expected key name after %s."
-msgstr "ippfind: %s の後にはキー名が必要です。"
+msgstr "ippfind: %s のあとにはキー名が必要です。"
 
+#: test/ippfind.c:551 test/ippfind.c:734
 #, c-format
 msgid "ippfind: Expected port range after %s."
-msgstr "ippfind: %s の後にはポート範囲が必要です。"
+msgstr "ippfind: %s のあとにはポート範囲が必要です。"
 
+#: test/ippfind.c:361
 #, c-format
 msgid "ippfind: Expected program after %s."
-msgstr "ippfind: %s の後にはプログラム名が必要です。"
+msgstr "ippfind: %s のあとにはプログラム名が必要です。"
 
+#: test/ippfind.c:378
 #, c-format
 msgid "ippfind: Expected semi-colon after %s."
-msgstr "ippfind: %s の後にはセミコロンが必要です。"
+msgstr "ippfind: %s のあとにはセミコロンが必要です。"
 
+#: test/ippfind.c:1965
 msgid "ippfind: Missing close brace in substitution."
 msgstr "ippfind: 置換文字列の閉じカッコがありません。"
 
+#: test/ippfind.c:1053
 msgid "ippfind: Missing close parenthesis."
 msgstr "ippfind: 閉じカッコが不足しています。"
 
+#: test/ippfind.c:335
 msgid "ippfind: Missing expression before \"--and\"."
 msgstr "ippfind: \"--and\" の前には式が必要です。"
 
+#: test/ippfind.c:448
 msgid "ippfind: Missing expression before \"--or\"."
 msgstr "ippfind: \"--or\" の前には式が必要です。"
 
+#: test/ippfind.c:871
 #, c-format
 msgid "ippfind: Missing key name after %s."
-msgstr "ippfind: %s の後にはキー名が必要です。"
+msgstr "ippfind: %s のあとにはキー名が必要です。"
 
+#: test/ippfind.c:1024
 msgid "ippfind: Missing open parenthesis."
 msgstr "ippfind: 開きカッコが足りません。"
 
+#: test/ippfind.c:901
 #, c-format
 msgid "ippfind: Missing program after %s."
-msgstr "ippfind: %s の後にはプログラム名が必要です。"
+msgstr "ippfind: %s のあとにはプログラム名が必要です。"
 
+#: test/ippfind.c:347 test/ippfind.c:401 test/ippfind.c:430 test/ippfind.c:536
+#: test/ippfind.c:618 test/ippfind.c:633 test/ippfind.c:788 test/ippfind.c:803
+#: test/ippfind.c:826 test/ippfind.c:886
 #, c-format
 msgid "ippfind: Missing regular expression after %s."
-msgstr "ippfind: %s の後には正規表現が必要です。"
+msgstr "ippfind: %s のあとには正規表現が必要です。"
 
+#: test/ippfind.c:919
 #, c-format
 msgid "ippfind: Missing semi-colon after %s."
-msgstr "ippfind: %s の後にはセミコロンが必要です。"
+msgstr "ippfind: %s のあとにはセミコロンが必要です。"
 
+#: test/ippfind.c:1912 test/ippfind.c:1937
 msgid "ippfind: Out of memory."
 msgstr "ippfind: メモリ不足です。"
 
+#: test/ippfind.c:997
 msgid "ippfind: Too many parenthesis."
-msgstr "ippfind: カッコが多過ぎます。"
+msgstr "ippfind: カッコが多すぎます。"
 
+#: test/ippfind.c:1266 test/ippfind.c:1402 test/ippfind.c:2557
 #, c-format
 msgid "ippfind: Unable to browse or resolve: %s"
 msgstr "ippfind: %s をブラウズできないか名前解決できません。"
 
+#: test/ippfind.c:2035 test/ippfind.c:2062
 #, c-format
 msgid "ippfind: Unable to execute \"%s\": %s"
-msgstr "ippfind: \"%s\" を実行できません : %s"
+msgstr "ippfind: \"%s\" を実行できません: %s"
 
+#: test/ippfind.c:1143 test/ippfind.c:1151 test/ippfind.c:1162
 #, c-format
 msgid "ippfind: Unable to use Bonjour: %s"
-msgstr "ippfind: Bonjour を利用できません。: %s"
+msgstr "ippfind: Bonjour を利用できません: %s"
 
+#: test/ippfind.c:1994
 #, c-format
 msgid "ippfind: Unknown variable \"{%s}\"."
 msgstr "ippfind: \"{%s}\" は不明な変数です。"
 
+#: test/ipptool.c:326 test/ipptool.c:389 test/ipptool.c:544 test/ipptool.c:567
 msgid "ipptool: \"-i\" and \"-n\" are incompatible with \"-P\" and \"-X\"."
-msgstr ""
+msgstr "ipptool: \"-i\" および \"-n\" は \"-P\"、\"-X\" と一緒に指定できません。"
 
+#: test/ipptool.c:623
 #, c-format
 msgid "ipptool: Bad URI - %s."
 msgstr "ipptool: 不正な URI です - %s。"
 
+#: test/ipptool.c:537
 msgid "ipptool: Invalid seconds for \"-i\"."
 msgstr "ipptool: \"-i\" に不正な秒数が指定されました。"
 
+#: test/ipptool.c:604
 msgid "ipptool: May only specify a single URI."
 msgstr "ipptool: URI は 1 つだけ指定できます。"
 
+#: test/ipptool.c:559
 msgid "ipptool: Missing count for \"-n\"."
 msgstr "ipptool: \"-n\" に回数の指定がありません。"
 
+#: test/ipptool.c:423
 msgid "ipptool: Missing filename for \"-f\"."
 msgstr "ipptool: \"-f\" にファイル名の指定がありません。"
 
+#: test/ipptool.c:404
 msgid "ipptool: Missing name=value for \"-d\"."
 msgstr "ipptool: \"-d\" に 名前=値 の指定がありません。"
 
+#: test/ipptool.c:527
 msgid "ipptool: Missing seconds for \"-i\"."
 msgstr "ipptool: \"-i\" に秒数の指定がありません。"
 
+#: test/ipptool.c:649
 msgid "ipptool: URI required before test file."
 msgstr "ipptool: テストファイルの前に URI の指定が必要です。"
 
+#: test/ipptool.c:585
 #, c-format
 msgid "ipptool: Unknown option \"-%c\"."
 msgstr "ipptool: \"-%c\"は未知のオプションです。"
 
+#: scheduler/ipp.c:7739
 msgid "job-printer-uri attribute missing."
 msgstr "job-printer-uri 属性がありません。"
 
+#: systemv/lpadmin.c:117 systemv/lpadmin.c:361
 msgid "lpadmin: Class name can only contain printable characters."
 msgstr "lpadmin: クラス名は表示可能文字のみで構成されなければなりません。"
 
+#: systemv/lpadmin.c:600
 msgid "lpadmin: Expected PPD after \"-P\" option."
 msgstr "lpadmin: \"-P\" オプションのあとには PPD が必要です。"
 
+#: systemv/lpadmin.c:443
 msgid "lpadmin: Expected allow/deny:userlist after \"-u\" option."
 msgstr ""
 "lpadmin: \"-u\" オプションのあとには allow/deny:ユーザーリスト が必要です。"
 
+#: systemv/lpadmin.c:350
 msgid "lpadmin: Expected class after \"-r\" option."
 msgstr "lpadmin: \"-r\" オプションのあとにはクラス名が必要です。"
 
+#: systemv/lpadmin.c:106
 msgid "lpadmin: Expected class name after \"-c\" option."
 msgstr "lpadmin: \"-c\" オプションのあとにはクラス名が必要です。"
 
+#: systemv/lpadmin.c:544
 msgid "lpadmin: Expected description after \"-D\" option."
 msgstr "lpadmin: \"-D\" オプションのあとには説明が必要です。"
 
+#: systemv/lpadmin.c:477
 msgid "lpadmin: Expected device URI after \"-v\" option."
 msgstr "lpadmin: \"-v\" オプションのあとにはデバイス URI が必要です。"
 
+#: systemv/lpadmin.c:560
 msgid "lpadmin: Expected file type(s) after \"-I\" option."
 msgstr "lpadmin: \"-I\" オプションのあとにはファイル形式が必要です。"
 
+#: systemv/lpadmin.c:188
 msgid "lpadmin: Expected hostname after \"-h\" option."
 msgstr "lpadmin: \"-h\" オプションのあとにはホスト名が必要です。"
 
+#: systemv/lpadmin.c:207
 msgid "lpadmin: Expected interface after \"-i\" option."
 msgstr "lpadmin: \"-i\" オプションのあとにはインターフェイス名が必要です。"
 
+#: systemv/lpadmin.c:580
 msgid "lpadmin: Expected location after \"-L\" option."
 msgstr "lpadmin: \"-L\" オプションのあとには場所が必要です。"
 
+#: systemv/lpadmin.c:260
 msgid "lpadmin: Expected model after \"-m\" option."
 msgstr "lpadmin: \"-m\" オプションのあとにはモデル名が必要です。"
 
+#: systemv/lpadmin.c:403
 msgid "lpadmin: Expected name after \"-R\" option."
 msgstr "lpadmin: \"-R\" オプションのあとには名前が必要です。"
 
+#: systemv/lpadmin.c:280
 msgid "lpadmin: Expected name=value after \"-o\" option."
 msgstr "lpadmin: \"-o\" オプションのあとには 変数名=値 が必要です。"
 
+#: systemv/lpadmin.c:299
 msgid "lpadmin: Expected printer after \"-p\" option."
 msgstr "lpadmin: \"-p\" オプションのあとにはプリンター名が必要です。"
 
+#: systemv/lpadmin.c:150
 msgid "lpadmin: Expected printer name after \"-d\" option."
 msgstr "lpadmin: \"-d\" オプションのあとにはプリンター名が必要です。"
 
+#: systemv/lpadmin.c:511
 msgid "lpadmin: Expected printer or class after \"-x\" option."
 msgstr ""
 "lpadmin: \"-x\" オプションのあとにはプリンター名またはクラス名が必要です。"
 
+#: systemv/lpadmin.c:961
 msgid "lpadmin: No member names were seen."
 msgstr "lpadmin: メンバー名が見当たりません。"
 
+#: systemv/lpadmin.c:748
 #, c-format
 msgid "lpadmin: Printer %s is already a member of class %s."
 msgstr "lpadmin: プリンター %s はすでにクラス %s のメンバーです。"
 
+#: systemv/lpadmin.c:975
 #, c-format
 msgid "lpadmin: Printer %s is not a member of class %s."
 msgstr "lpadmin: プリンター %s はクラス %s のメンバーではありません。"
 
+#: systemv/lpadmin.c:161 systemv/lpadmin.c:310 systemv/lpadmin.c:522
 msgid "lpadmin: Printer name can only contain printable characters."
 msgstr "lpadmin: プリンター名には表示可能文字だけが使用できます。"
 
+#: systemv/lpadmin.c:91
 msgid ""
 "lpadmin: Unable to add a printer to the class:\n"
 "         You must specify a printer name first."
@@ -5388,13 +7017,18 @@ msgstr ""
 "lpadmin: クラスにプリンターを追加できません:\n"
 "         先にプリンター名を指定する必要があります。"
 
+#: systemv/lpadmin.c:82 systemv/lpadmin.c:135 systemv/lpadmin.c:239
+#: systemv/lpadmin.c:325 systemv/lpadmin.c:379 systemv/lpadmin.c:496
+#: systemv/lpadmin.c:633
 #, c-format
 msgid "lpadmin: Unable to connect to server: %s"
 msgstr "lpadmin: サーバーに接続できません: %s"
 
+#: systemv/lpadmin.c:1314
 msgid "lpadmin: Unable to create temporary file"
 msgstr "lpadmin: テンポラリーファイルを作成できません"
 
+#: systemv/lpadmin.c:388
 msgid ""
 "lpadmin: Unable to delete option:\n"
 "         You must specify a printer name first."
@@ -5402,10 +7036,12 @@ msgstr ""
 "lpadmin: プリンター・オプションを削除できません:\n"
 "         先にプリンター名を指定する必要があります。"
 
+#: systemv/lpadmin.c:1324
 #, c-format
 msgid "lpadmin: Unable to open PPD file \"%s\" - %s"
 msgstr "lpadmin: PPD ファイル \"%s\" を開けません - %s"
 
+#: systemv/lpadmin.c:334
 msgid ""
 "lpadmin: Unable to remove a printer from the class:\n"
 "         You must specify a printer name first."
@@ -5413,6 +7049,7 @@ msgstr ""
 "lpadmin: クラスからプリンターを削除できません:\n"
 "         先にプリンター名を指定する必要があります。"
 
+#: systemv/lpadmin.c:642
 msgid ""
 "lpadmin: Unable to set the printer options:\n"
 "         You must specify a printer name first."
@@ -5420,96 +7057,118 @@ msgstr ""
 "lpadmin: プリンター・オプションを設定できません:\n"
 "         先にプリンター名を指定する必要があります。"
 
+#: systemv/lpadmin.c:460
 #, c-format
 msgid "lpadmin: Unknown allow/deny option \"%s\"."
 msgstr "lpadmin:\"%s\" は未知の allow/deny オプションです。"
 
+#: systemv/lpadmin.c:615
 #, c-format
 msgid "lpadmin: Unknown argument \"%s\"."
 msgstr "lpadmin: \"%s\" は未知の引数です。"
 
+#: systemv/lpadmin.c:610
 #, c-format
 msgid "lpadmin: Unknown option \"%c\"."
 msgstr "lpadmin: \"%c\" は未知のオプションです。"
 
+#: systemv/lpadmin.c:566
 msgid "lpadmin: Warning - content type list ignored."
 msgstr "lpadmin: 警告 - コンテンツタイプリストは無視されます。"
 
+#: berkeley/lpc.c:68 berkeley/lpc.c:96 berkeley/lpc.c:132
 msgid "lpc> "
 msgstr "lpc> "
 
+#: systemv/lpinfo.c:137
 msgid "lpinfo: Expected 1284 device ID string after \"--device-id\"."
 msgstr ""
 "lpinfo: \"--device-id\" のあとには、1284 デバイス ID を指定する必要がありま"
 "す。"
 
+#: systemv/lpinfo.c:190
 msgid "lpinfo: Expected language after \"--language\"."
 msgstr "lpinfo: \"--language\" のあとには、言語を指定する必要があります。"
 
+#: systemv/lpinfo.c:207
 msgid "lpinfo: Expected make and model after \"--make-and-model\"."
-msgstr ""
-"lpinfo: \"--make-and-model\" の後には、メーカーとモデルを指定する必要がありま"
-"す。"
+msgstr "lpinfo: \"--make-and-model\" のあとには、メーカーとモデルを指定する必要があります。"
 
+#: systemv/lpinfo.c:224
 msgid "lpinfo: Expected product string after \"--product\"."
 msgstr "lpinfo: \"--product\" のあとには、製品名を指定する必要があります。"
 
+#: systemv/lpinfo.c:155
 msgid "lpinfo: Expected scheme list after \"--exclude-schemes\"."
 msgstr ""
 "lpinfo: \"--exclude-schemes\" のあとには、スキーマ・リストを指定する必要があ"
 "ります。"
 
+#: systemv/lpinfo.c:173
 msgid "lpinfo: Expected scheme list after \"--include-schemes\"."
 msgstr ""
 "lpinfo: \"--include-schemes\" のあとには、スキーマ・リストを指定する必要があ"
 "ります。"
 
+#: systemv/lpinfo.c:241
 msgid "lpinfo: Expected timeout after \"--timeout\"."
 msgstr ""
 "lpinfo: \"--timeout\" のあとには、タイムアウト値を指定する必要があります。"
 
+#: systemv/lpinfo.c:265
 #, c-format
 msgid "lpinfo: Unknown argument \"%s\"."
 msgstr "lpinfo: 未知の引数 \"%s\"。"
 
+#: systemv/lpinfo.c:259
 #, c-format
 msgid "lpinfo: Unknown option \"%c\"."
 msgstr "lpinfo: 未知のオプション \"%c\"。"
 
+#: systemv/lpinfo.c:252
 #, c-format
 msgid "lpinfo: Unknown option \"%s\"."
 msgstr "lpinfo: 未知のオプション \"%s\"。"
 
+#: systemv/lpmove.c:133
 #, c-format
 msgid "lpmove: Unable to connect to server: %s"
 msgstr "lpmove: サーバーに接続できません: %s"
 
+#: systemv/lpmove.c:119
 #, c-format
 msgid "lpmove: Unknown argument \"%s\"."
 msgstr "lpmove: 未知の引数 \"%s\"。"
 
+#: systemv/lpmove.c:97
 #, c-format
 msgid "lpmove: Unknown option \"%c\"."
 msgstr "lpmove: 未知のオプション \"%c\"。"
 
+#: systemv/lpoptions.c:143 systemv/lpoptions.c:161 systemv/lpoptions.c:237
 msgid "lpoptions: No printers."
 msgstr "lpoptions: プリンターがありません。"
 
+#: systemv/lpoptions.c:212
 #, c-format
 msgid "lpoptions: Unable to add printer or instance: %s"
-msgstr "lpoptions: プリンターまたはインスタンスを追加できません: %s。"
+msgstr "lpoptions: プリンターまたはインスタンスを追加できません: %s"
 
+#: systemv/lpoptions.c:507
 #, c-format
 msgid "lpoptions: Unable to get PPD file for %s: %s"
 msgstr "lpoptions: %s の PPD ファイルを取得できません: %s"
 
+#: systemv/lpoptions.c:515
 #, c-format
 msgid "lpoptions: Unable to open PPD file for %s."
 msgstr "lpoptions: %s の PPD ファイルを開けません。"
 
+#: systemv/lpoptions.c:92
 msgid "lpoptions: Unknown printer or class."
 msgstr "lpoptions: 未知のプリンターまたはクラスです。"
 
+#: systemv/lpstat.c:1074
 #, c-format
 msgid ""
 "lpstat: error - %s environment variable names non-existent destination \"%s"
@@ -5517,120 +7176,143 @@ msgid ""
 msgstr ""
 "lpstat: エラー - 環境変数 %s が、存在しない宛先 \"%s\" を指しています。"
 
+#: systemv/lpstat.c:1010
 #, c-format
 msgid "members of class %s:"
 msgstr "クラス %s のメンバー:"
 
+#: berkeley/lpq.c:549
 msgid "no entries"
 msgstr "エントリーがありません"
 
+#: systemv/lpstat.c:1078
 msgid "no system default destination"
 msgstr "システムのデフォルトの宛先がありません"
 
+#: scheduler/ipp.c:5548
 msgid "notify-events not specified."
 msgstr "notify-events が指定されていません。"
 
+#: scheduler/ipp.c:2025 scheduler/ipp.c:5453
 #, c-format
 msgid "notify-recipient-uri URI \"%s\" is already used."
 msgstr "notify-recipient-uri URI \"%s\" はすでに使われています。"
 
+#: scheduler/ipp.c:2015 scheduler/ipp.c:5443
 #, c-format
 msgid "notify-recipient-uri URI \"%s\" uses unknown scheme."
 msgstr "notify-recipient-uri URI \"%s\" には未知のスキームが使われています。"
 
+#: cups/notify.c:87
 msgid "pending"
-msgstr "保留"
+msgstr "プリンター待ち"
 
+#: ppdc/ppdc.cxx:108 ppdc/ppdpo.cxx:93
 #, c-format
 msgid "ppdc: Adding include directory \"%s\"."
 msgstr "ppdc: ディレクトリー \"%s\" を追加しています。"
 
+#: ppdc/ppdpo.cxx:134
 #, c-format
 msgid "ppdc: Adding/updating UI text from %s."
 msgstr "ppdc: %s から UI テキストを追加または更新しています。"
 
+#: ppdc/ppdc-source.cxx:367
 #, c-format
 msgid "ppdc: Bad boolean value (%s) on line %d of %s."
 msgstr "ppdc:  不正な boolean 値 (%s) があります。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-import.cxx:264
 #, c-format
 msgid "ppdc: Bad font attribute: %s"
 msgstr "不正なフォント属性: %s"
 
+#: ppdc/ppdc-source.cxx:1753
 #, c-format
 msgid "ppdc: Bad resolution name \"%s\" on line %d of %s."
-msgstr ""
-"ppdc: 不正な resolution 名 \"%s\" があります。%d 行目、ファイル名 %s 。"
+msgstr "ppdc: 不正な resolution 名 \"%s\" があります。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:1070
 #, c-format
 msgid "ppdc: Bad status keyword %s on line %d of %s."
-msgstr ""
-"ppdc: 不正な status キーワード %s があります。%d 行目、ファイル名 %s 。"
+msgstr "ppdc: 不正な status キーワード %s があります。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:1990
 #, c-format
 msgid "ppdc: Bad variable substitution ($%c) on line %d of %s."
 msgstr "ppdc: 不正な数値置換 ($%c) があります。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:2675
 #, c-format
 msgid "ppdc: Choice found on line %d of %s with no Option."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s で、Option がないのに Choice が見つかりました。"
 
+#: ppdc/ppdc-source.cxx:1655
 #, c-format
 msgid "ppdc: Duplicate #po for locale %s on line %d of %s."
-msgstr ""
-"ppdc: locale %s に対して #po が二重に定義されています。%d 行目、ファイル名 "
-"%s 。"
+msgstr "ppdc: locale %s に対して #po が二重に定義されています。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:889
 #, c-format
 msgid "ppdc: Expected a filter definition on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s においてフィルター定義が必要です。"
 
+#: ppdc/ppdc-source.cxx:912
 #, c-format
 msgid "ppdc: Expected a program name on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s においてプログラム名が必要です。"
 
+#: ppdc/ppdc-source.cxx:351
 #, c-format
 msgid "ppdc: Expected boolean value on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において boolean 値が必要です。"
 
+#: ppdc/ppdc-source.cxx:1050
 #, c-format
 msgid "ppdc: Expected charset after Font on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Font のあとに charset が必要です。"
 
+#: ppdc/ppdc-source.cxx:404
 #, c-format
 msgid "ppdc: Expected choice code on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において choice code が必要です。"
 
+#: ppdc/ppdc-source.cxx:392
 #, c-format
 msgid "ppdc: Expected choice name/text on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において choice name/text が必要です。"
 
+#: ppdc/ppdc-source.cxx:460
 #, c-format
 msgid "ppdc: Expected color order for ColorModel on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において ColorModel に対する color order が必要"
 "です。"
 
+#: ppdc/ppdc-source.cxx:449
 #, c-format
 msgid "ppdc: Expected colorspace for ColorModel on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において ColorModel に対する colorspace が必要で"
 "す。"
 
+#: ppdc/ppdc-source.cxx:471
 #, c-format
 msgid "ppdc: Expected compression for ColorModel on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において ColorModel に対する compression が必要"
 "です。"
 
+#: ppdc/ppdc-source.cxx:652
 #, c-format
 msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において UIConstraints に対する constraint が必"
 "要です。"
 
+#: ppdc/ppdc-source.cxx:2861
 #, c-format
 msgid ""
 "ppdc: Expected driver type keyword following DriverType on line %d of %s."
@@ -5638,117 +7320,142 @@ msgstr ""
 "ppdc: %d 行目、ファイル名 %s において DriverType のあとに driver type "
 "keyword が必要です。"
 
+#: ppdc/ppdc-source.cxx:783
 #, c-format
 msgid "ppdc: Expected duplex type after Duplex on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Duplex のあとに type が必要です。"
 
+#: ppdc/ppdc-source.cxx:1034
 #, c-format
 msgid "ppdc: Expected encoding after Font on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Font のあとに encoding が必要です。"
 
+#: ppdc/ppdc-source.cxx:1646
 #, c-format
 msgid "ppdc: Expected filename after #po %s on line %d of %s."
 msgstr "ppdc: #po %s のあとにファイル名が必要です (%d 行目, ファイル %s)。"
 
+#: ppdc/ppdc-source.cxx:1162
 #, c-format
 msgid "ppdc: Expected group name/text on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において group name/text が必要です。"
 
+#: ppdc/ppdc-source.cxx:2575
 #, c-format
 msgid "ppdc: Expected include filename on line %d of %s."
-msgstr "ppdc: %d 行目、ファイル名 %s において include ファイル名が必要です。"
+msgstr "ppdc: %d 行目、ファイル名 %s において include ファイル名 が必要です。"
 
+#: ppdc/ppdc-source.cxx:1459
 #, c-format
 msgid "ppdc: Expected integer on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において整数指定が必要です。"
 
+#: ppdc/ppdc-source.cxx:1638
 #, c-format
 msgid "ppdc: Expected locale after #po on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において #po のあとに locale が必要です。"
 
+#: ppdc/ppdc-source.cxx:310
 #, c-format
 msgid "ppdc: Expected name after %s on line %d of %s."
 msgstr "ppdc: %s のあとに name が必要です。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:3233
 #, c-format
 msgid "ppdc: Expected name after FileName on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において FileName のあとに name が必要です。"
 
+#: ppdc/ppdc-source.cxx:1015
 #, c-format
 msgid "ppdc: Expected name after Font on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において Font のあとに name が必要です。"
 
+#: ppdc/ppdc-source.cxx:3064
 #, c-format
 msgid "ppdc: Expected name after Manufacturer on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Manufacturer のあとに name が必要です。"
 
+#: ppdc/ppdc-source.cxx:3097
 #, c-format
 msgid "ppdc: Expected name after MediaSize on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において MediaSize のあとに name が必要です。"
 
+#: ppdc/ppdc-source.cxx:3187
 #, c-format
 msgid "ppdc: Expected name after ModelName on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において ModelName のあとに name が必要です。"
 
+#: ppdc/ppdc-source.cxx:3250
 #, c-format
 msgid "ppdc: Expected name after PCFileName on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において PCFileName のあとに name が必要です。"
 
+#: ppdc/ppdc-source.cxx:1113
 #, c-format
 msgid "ppdc: Expected name/text after %s on line %d of %s."
 msgstr "ppdc: %s のあとに name/text が必要です。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:1202
 #, c-format
 msgid "ppdc: Expected name/text after Installable on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Installable のあとに name/text が必要で"
 "す。"
 
+#: ppdc/ppdc-source.cxx:1739
 #, c-format
 msgid "ppdc: Expected name/text after Resolution on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Resolution のあとに name/text が必要で"
 "す。"
 
+#: ppdc/ppdc-source.cxx:436
 #, c-format
 msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において ColorModel に対する name/text が必要で"
 "す。"
 
+#: ppdc/ppdc-source.cxx:1531
 #, c-format
 msgid "ppdc: Expected option name/text on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において option name/text が必要です。"
 
+#: ppdc/ppdc-source.cxx:1565
 #, c-format
 msgid "ppdc: Expected option section on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において option section が必要です。"
 
+#: ppdc/ppdc-source.cxx:1543
 #, c-format
 msgid "ppdc: Expected option type on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において option type が必要です。"
 
+#: ppdc/ppdc-source.cxx:1722
 #, c-format
 msgid "ppdc: Expected override field after Resolution on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Resolution のあとに override field が必"
 "要です。"
 
+#: ppdc/ppdc-catalog.cxx:389 ppdc/ppdc-catalog.cxx:401
 #, c-format
 msgid "ppdc: Expected quoted string on line %d of %s."
 msgstr "%d 行: %s には引用符で囲まれた文字列が必要です。"
 
+#: ppdc/ppdc-source.cxx:961
 #, c-format
 msgid "ppdc: Expected real number on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において実数が必要です。"
 
+#: ppdc/ppdc-source.cxx:529
 #, c-format
 msgid ""
 "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s."
@@ -5756,6 +7463,7 @@ msgstr ""
 "ppdc: %d 行目、ファイル名 %s において ColorProfile に続いて resolution/"
 "mediatype が必要です。"
 
+#: ppdc/ppdc-source.cxx:1820
 #, c-format
 msgid ""
 "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d "
@@ -5764,282 +7472,349 @@ msgstr ""
 "ppdc: %d 行目、ファイル名 %s において SimpleColorProfile に続いて resolution/"
 "mediatype が必要です。"
 
+#: ppdc/ppdc-source.cxx:318
 #, c-format
 msgid "ppdc: Expected selector after %s on line %d of %s."
 msgstr "ppdc: %s のあとに selector が必要です。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:1058
 #, c-format
 msgid "ppdc: Expected status after Font on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Font のあとに status が必要です。"
 
+#: ppdc/ppdc-source.cxx:2750
 #, c-format
 msgid "ppdc: Expected string after Copyright on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Copyright のあとに文字列が必要です。"
 
+#: ppdc/ppdc-source.cxx:3353
 #, c-format
 msgid "ppdc: Expected string after Version on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Version のあとに文字列が必要です。"
 
+#: ppdc/ppdc-source.cxx:685
 #, c-format
 msgid "ppdc: Expected two option names on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において 2 つのオプション名が必要です。"
 
+#: ppdc/ppdc-source.cxx:329
 #, c-format
 msgid "ppdc: Expected value after %s on line %d of %s."
 msgstr "ppdc: %s のあとに value が必要です。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:1042
 #, c-format
 msgid "ppdc: Expected version after Font on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Font のあとに version が必要です。"
 
+#: ppdc/ppdc-source.cxx:184
 #, c-format
 msgid "ppdc: Invalid #include/#po filename \"%s\"."
 msgstr "ppdc: 無効な #include/#po ファイル名です \"%s\"。"
 
+#: ppdc/ppdc-source.cxx:929
 #, c-format
 msgid "ppdc: Invalid cost for filter on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s においてフィルターに対する無効な cost がありま"
 "す。"
 
+#: ppdc/ppdc-source.cxx:921
 #, c-format
 msgid "ppdc: Invalid empty MIME type for filter on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s においてフィルターに対する無効な空の MIME タイプ"
 "があります。"
 
+#: ppdc/ppdc-source.cxx:937
 #, c-format
 msgid "ppdc: Invalid empty program name for filter on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s においてフィルターに対するプログラム名が空であり"
 "無効です。"
 
+#: ppdc/ppdc-source.cxx:1585
 #, c-format
 msgid "ppdc: Invalid option section \"%s\" on line %d of %s."
-msgstr ""
-"ppdc: 無効な option section があります \"%s\"。%d 行目、ファイル名 %s。"
+msgstr "ppdc: 無効な option section があります \"%s\"。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:1557
 #, c-format
 msgid "ppdc: Invalid option type \"%s\" on line %d of %s."
 msgstr "ppdc: 無効な option type があります \"%s\"。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc.cxx:246 ppdc/ppdpo.cxx:123
 #, c-format
 msgid "ppdc: Loading driver information file \"%s\"."
 msgstr "ppdc: ドライバー情報ファイル \"%s\" を読み込んでいます。"
 
+#: ppdc/ppdc.cxx:182
 #, c-format
 msgid "ppdc: Loading messages for locale \"%s\"."
 msgstr "ppdc: ロケール \"%s\" のメッセージを読み込んでいます。"
 
+#: ppdc/ppdc.cxx:121
 #, c-format
 msgid "ppdc: Loading messages from \"%s\"."
 msgstr "ppdc: \"%s\" からメッセージを読み込んでいます。"
 
+#: ppdc/ppdc-source.cxx:2368 ppdc/ppdc-source.cxx:2600
 #, c-format
 msgid "ppdc: Missing #endif at end of \"%s\"."
 msgstr "ppdc: \"%s\" の最後に #endif が見つかりません。"
 
+#: ppdc/ppdc-source.cxx:2469 ppdc/ppdc-source.cxx:2504
+#: ppdc/ppdc-source.cxx:2534
 #, c-format
 msgid "ppdc: Missing #if on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において #if が見つかりません。"
 
+#: ppdc/ppdc-catalog.cxx:466
 #, c-format
 msgid ""
 "ppdc: Need a msgid line before any translation strings on line %d of %s."
 msgstr "%d 行: %s の翻訳文字列の前に msgid 行が必要です。"
 
+#: ppdc/ppdc-driver.cxx:712
 #, c-format
 msgid "ppdc: No message catalog provided for locale %s."
 msgstr "ppdc: ロケール %s に対するメッセージカタログが見つかりません。"
 
+#: ppdc/ppdc-source.cxx:1608 ppdc/ppdc-source.cxx:2838
+#: ppdc/ppdc-source.cxx:2924 ppdc/ppdc-source.cxx:3017
+#: ppdc/ppdc-source.cxx:3150 ppdc/ppdc-source.cxx:3283
 #, c-format
 msgid "ppdc: Option %s defined in two different groups on line %d of %s."
 msgstr ""
 "ppdc: オプション %s が行 %d、ファイル %s の 2 つの異なるグループで定義されて"
 "います。"
 
+#: ppdc/ppdc-source.cxx:1601
 #, c-format
 msgid "ppdc: Option %s redefined with a different type on line %d of %s."
-msgstr ""
-"ppdc: オプション %s は異なる型で再定義されています。%d 行目、ファイル名 %s。"
+msgstr "ppdc: オプション %s は異なる型で再定義されています。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:662
 #, c-format
 msgid "ppdc: Option constraint must *name on line %d of %s."
 msgstr ""
 "ppdc: %d 行目、ファイル名 %s において Option constraint は *name で指定しなけ"
 "ればなりません。"
 
+#: ppdc/ppdc-source.cxx:2451
 #, c-format
 msgid "ppdc: Too many nested #if's on line %d of %s."
 msgstr "ppdc: %d 行目、ファイル名 %s において #if のネストが多すぎます。"
 
+#: ppdc/ppdc.cxx:369
 #, c-format
 msgid "ppdc: Unable to create PPD file \"%s\" - %s."
 msgstr "ppdc: PPD ファイル \"%s\" を作成できません - %s。"
 
+#: ppdc/ppdc.cxx:261
 #, c-format
 msgid "ppdc: Unable to create output directory %s: %s"
 msgstr "ppdc: 出力ディレクトリー \"%s\" を作成できません - %s"
 
+#: ppdc/ppdc.cxx:282
 #, c-format
 msgid "ppdc: Unable to create output pipes: %s"
 msgstr "ppdc: 出力パイプを作成できません: %s"
 
+#: ppdc/ppdc.cxx:298 ppdc/ppdc.cxx:304
 #, c-format
 msgid "ppdc: Unable to execute cupstestppd: %s"
 msgstr "ppdc: cupstestppd を実行できません: %s"
 
+#: ppdc/ppdc-source.cxx:1687
 #, c-format
 msgid "ppdc: Unable to find #po file %s on line %d of %s."
 msgstr "ppdc: #po ファイル %s が見つかりません。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:2607
 #, c-format
 msgid "ppdc: Unable to find include file \"%s\" on line %d of %s."
-msgstr ""
-"ppdc: インクルードファイル %s が見つかりません。%d 行目、ファイル名 %s。"
+msgstr "ppdc: インクルードファイル %s が見つかりません。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc.cxx:193
 #, c-format
 msgid "ppdc: Unable to find localization for \"%s\" - %s"
 msgstr "ppdc:  \"%s\" に対する地域化情報が見つかりません - %s"
 
+#: ppdc/ppdc.cxx:130
 #, c-format
 msgid "ppdc: Unable to load localization file \"%s\" - %s"
 msgstr "ppdc:  \"%s\" に対するローカライズファイルを読み込めません - %s"
 
+#: ppdc/ppdc-file.cxx:50
 #, c-format
 msgid "ppdc: Unable to open %s: %s"
 msgstr "ppdc: %s を開けません: %s"
 
+#: ppdc/ppdc-source.cxx:2011
 #, c-format
 msgid "ppdc: Undefined variable (%s) on line %d of %s."
 msgstr "ppdc: 変数 (%s) は未定義です。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-catalog.cxx:483
 #, c-format
 msgid "ppdc: Unexpected text on line %d of %s."
 msgstr "%d 行: %s は予期せぬテキストです。"
 
+#: ppdc/ppdc-source.cxx:2880
 #, c-format
 msgid "ppdc: Unknown driver type %s on line %d of %s."
 msgstr "ppdc: %s は未知のドライバータイプです。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:863
 #, c-format
 msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s."
 msgstr "ppdc: \"%s\" は未知の両面タイプです。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:3110
 #, c-format
 msgid "ppdc: Unknown media size \"%s\" on line %d of %s."
 msgstr "ppdc: \"%s\" は未知の用紙サイズです。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-catalog.cxx:511
 #, c-format
 msgid "ppdc: Unknown message catalog format for \"%s\"."
 msgstr "\"%s\" は未知のメッセージカタログの書式です。"
 
+#: ppdc/ppdc-source.cxx:3364
 #, c-format
 msgid "ppdc: Unknown token \"%s\" seen on line %d of %s."
 msgstr "ppdc: 未知のトークン \"%s\" があります。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:971
 #, c-format
 msgid ""
 "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s."
 msgstr "ppdc: 実数 \"%s\" に未知の終了文字があります。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc-source.cxx:2121
 #, c-format
 msgid "ppdc: Unterminated string starting with %c on line %d of %s."
 msgstr ""
 "ppdc: %c で始まる文字に対して終端文字がありません。%d 行目、ファイル名 %s。"
 
+#: ppdc/ppdc.cxx:360
 #, c-format
 msgid "ppdc: Warning - overlapping filename \"%s\"."
 msgstr "ppdc: 警告 - ファイル名 \"%s\" が重複しています。"
 
+#: ppdc/ppdc.cxx:375
 #, c-format
 msgid "ppdc: Writing %s."
 msgstr "ppdc: %s を書き込んでいます。"
 
+#: ppdc/ppdc.cxx:143
 #, c-format
 msgid "ppdc: Writing PPD files to directory \"%s\"."
 msgstr "ppdc: ディレクトリー \"%s\" に PPD ファイルを書き込んでいます。"
 
+#: ppdc/ppdmerge.cxx:130
 #, c-format
 msgid "ppdmerge: Bad LanguageVersion \"%s\" in %s."
 msgstr "ppdmerge: 不正な LanguageVersion \"%s\" が %s にあります。"
 
+#: ppdc/ppdmerge.cxx:170
 #, c-format
 msgid "ppdmerge: Ignoring PPD file %s."
 msgstr "ppdmerge: PPD ファイル %s を無視します。"
 
+#: ppdc/ppdmerge.cxx:154
 #, c-format
 msgid "ppdmerge: Unable to backup %s to %s - %s"
 msgstr "ppdmerge: %s を %s にバックアップできません - %s"
 
+#: systemv/lpstat.c:1777
 #, c-format
 msgid "printer %s disabled since %s -"
 msgstr "プリンター %s は %s から無効です -"
 
+#: systemv/lpstat.c:1766
 #, c-format
 msgid "printer %s is idle.  enabled since %s"
 msgstr "プリンター %s は待機中です。%s 以来有効です"
 
+#: systemv/lpstat.c:1771
 #, c-format
 msgid "printer %s now printing %s-%d.  enabled since %s"
 msgstr "プリンター %s は %s-%d を印刷しています。%s 以来有効です"
 
+#: systemv/lpstat.c:1900
 #, c-format
 msgid "printer %s/%s disabled since %s -"
 msgstr "プリンター %s/%s は %s から無効です -"
 
+#: systemv/lpstat.c:1886
 #, c-format
 msgid "printer %s/%s is idle.  enabled since %s"
 msgstr "プリンター %s/%s は待機中です。%s 以来有効です"
 
+#: systemv/lpstat.c:1893
 #, c-format
 msgid "printer %s/%s now printing %s-%d.  enabled since %s"
 msgstr "プリンター %s/%s は現在 %s-%d を印刷中です。%s 以来有効です"
 
+#: cups/notify.c:93 cups/notify.c:134
 msgid "processing"
 msgstr "処理中"
 
+#: systemv/lp.c:662
 #, c-format
 msgid "request id is %s-%d (%d file(s))"
 msgstr "リクエスト ID は %s-%d です (%d 個のファイル)"
 
+#: cups/snmp.c:972
 msgid "request-id uses indefinite length"
 msgstr "リクエスト ID の長さが不定"
 
+#: systemv/lpstat.c:2032
 msgid "scheduler is not running"
 msgstr "スケジューラーは動作していません"
 
+#: systemv/lpstat.c:2028
 msgid "scheduler is running"
 msgstr "スケジューラーは動作中です"
 
+#: cups/adminutil.c:2148
 #, c-format
 msgid "stat of %s failed: %s"
 msgstr "%s の状態取得に失敗しました: %s"
 
+#: berkeley/lpc.c:203
 msgid "status\t\tShow status of daemon and queue."
-msgstr "status\t\tデーモンとキューの状態を表示"
+msgstr "status\t\tデーモンとキューの状態を表示。"
 
+#: cups/notify.c:96 cups/notify.c:137
 msgid "stopped"
 msgstr "停止"
 
+#: systemv/lpstat.c:1052
 #, c-format
 msgid "system default destination: %s"
 msgstr "システムのデフォルトの宛先: %s"
 
+#: systemv/lpstat.c:1049
 #, c-format
 msgid "system default destination: %s/%s"
 msgstr "システムのデフォルトの宛先: %s/%s"
 
+#: cups/notify.c:108 cups/notify.c:140
 msgid "unknown"
 msgstr "未知"
 
+#: cups/notify.c:117
 msgid "untitled"
 msgstr "タイトルなし"
 
+#: cups/snmp.c:997
 msgid "variable-bindings uses indefinite length"
 msgstr "variable-bindings の長さが不定"
 
diff --git a/man/cups-files.conf.man.in b/man/cups-files.conf.man.in
index c6c7bf9c7..a8daf8d3f 100644
--- a/man/cups-files.conf.man.in
+++ b/man/cups-files.conf.man.in
@@ -1,9 +1,9 @@
 .\"
-.\" "$Id: cups-files.conf.man.in 11927 2014-06-13 00:01:23Z msweet $"
+.\" "$Id: cups-files.conf.man.in 12477 2015-02-02 18:38:25Z msweet $"
 .\"
 .\" cups-files.conf man page for CUPS.
 .\"
-.\" Copyright 2007-2014 by Apple Inc.
+.\" Copyright 2007-2015 by Apple Inc.
 .\" Copyright 1997-2006 by Easy Software Products.
 .\"
 .\" These coded instructions, statements, and computer programs are the
@@ -12,7 +12,7 @@
 .\" which should have been included with this file.  If this file is
 .\" file is missing or damaged, see the license at "http://www.cups.org/".
 .\"
-.TH cups-files.conf 5 "CUPS" "11 June 2014" "Apple Inc."
+.TH cups-files.conf 5 "CUPS" "2 February 2015" "Apple Inc."
 .SH NAME
 cups\-files.conf \- file and directory configuration file for cups
 .SH DESCRIPTION
@@ -27,6 +27,7 @@ Comment lines start with the # character.
 .SS DIRECTIVES
 The following directives are understood by
 .BR cupsd (8):
+.\"#AccessLog
 .TP 5
 \fBAccessLog\fR
 .TP 5
@@ -43,6 +44,7 @@ The server name may be included in filenames using the string "%s", for example:
 
 .fi
 The default is "/var/log/cups/access_log".
+.\"#ConfigFilePerm
 .TP 5
 \fBConfigFilePerm \fImode\fR
 Specifies the permissions for all configuration files that the scheduler writes.
@@ -51,14 +53,17 @@ The default is "0644" on OS X and "0640" on all other operating systems.
 \fBNote:\fR The permissions for the \fIprinters.conf\fR file are currently masked to only allow access from the scheduler user (typically root).
 This is done because printer device URIs sometimes contain sensitive authentication information that should not be generally known on the system.
 There is no way to disable this security feature.
+.\"#DataDir
 .TP 5
 \fBDataDir \fIpath\fR
 Specifies the directory where data files can be found.
 The default is usually "/usr/share/cups".
+.\"#DocumentRoot
 .TP 5
 \fBDocumentRoot \fIdirectory\fR
 Specifies the root directory for the CUPS web interface content.
 The default is usually "/usr/share/doc/cups".
+.\"#ErrorLog
 .TP 5
 \fBErrorLog\fR
 .TP 5
@@ -75,6 +80,7 @@ The server name may be included in filenames using the string "%s", for example:
 
 .fi
 The default is "/var/log/cups/error_log".
+.\"#FatalErrors
 .TP 5
 \fBFatalErrors none\fR
 .TP 5
@@ -107,20 +113,24 @@ Log file creation or write errors are fatal.
 .B permissions
 Bad startup file permissions are fatal, for example shared TLS certificate and key files with world-read permissions.
 .RE
+.\"#FileDevice
 .TP 5
 \fBFileDevice Yes\fR
 .TP 5
 \fBFileDevice No\fR
 Specifies whether the file pseudo-device can be used for new printer queues.
 The URI "file:///dev/null" is always allowed.
+.\"#Group
 .TP 5
 \fBGroup \fIgroup-name-or-number\fR
 Specifies the group name or ID that will be used when executing external programs.
 The default group is operating system specific but is usually "lp" or "nobody".
+.\"#LogFilePerm
 .TP 5
 \fBLogFilePerm \fImode\fR
 Specifies the permissions of all log files that the scheduler writes.
 The default is "0644".
+.\"#PageLog
 .TP 5
 \fBPageLog \fR[ \fIfilename\fR ]
 .TP 5
@@ -135,14 +145,17 @@ The server name may be included in filenames using the string "%s", for example:
 
 .fi
 The default is "/var/log/cups/page_log".
+.\"#RemoteRoot
 .TP 5
 \fBRemoteRoot \fIusername\fR
 Specifies the username that is associated with unauthenticated accesses by clients claiming to be the root user.
 The default is "remroot".
+.\"#RequestRoot
 .TP 5
 \fBRequestRoot \fIdirectory\fR
 Specifies the directory that contains print jobs and other HTTP request data.
 The default is "/var/spool/cups".
+.\"#Sandboxing
 .TP 5
 \fBSandboxing off\fR
 .TP 5
@@ -152,18 +165,23 @@ The default is "/var/spool/cups".
 Specifies the level of security sandboxing that is applied to print filters, backends, and other child processes of the scheduler.
 The default is "strict".
 This directive is currently only used/supported on OS X.
+.\"#ServerBin
 .TP 5
 \fBServerBin \fIdirectory\fR
 Specifies the directory containing the backends, CGI programs, filters, helper programs, notifiers, and port monitors.
 The default is "/usr/lib/cups" or "/usr/libexec/cups" depending on the platform.
+.\"#ServerKeychain
 .TP 5
 \fBServerKeychain \fIpath\fR
 Specifies the location of TLS certificates and private keys.
 The default is "/Library/Keychains/System.keychain" on OS X and "/etc/cups/ssl" on all other operating systems.
+OS X uses its keychain database to store certificates and keys while other platforms use separate files in the specified directory, *.crt for PEM-encoded certificates and *.key for PEM-encoded private keys.
+.\"#ServerRoot
 .TP 5
 \fBServerRoot \fIdirectory\fR
 Specifies the directory containing the server configuration files.
 The default is "/etc/cups".
+.\"#SyncOnClose
 .TP 5
 \fBSyncOnClose Yes\fR
 .TP 5
@@ -172,14 +190,17 @@ Specifies whether the scheduler calls
 .BR fsync (2)
 after writing configuration or state files.
 The default is "No".
+.\"#SystemGroup
 .TP 5
 \fBSystemGroup \fIgroup-name \fR[ ... \fIgroup-name\fR ]
 Specifies the group(s) to use for \fI@SYSTEM\fR group authentication.
 The default contains "admin", "lpadmin", "root", "sys", and/or "system".
+.\"#TempDir
 .TP 5
 \fBTempDir \fIdirectory\fR
 Specifies the directory where temporary files are stored.
 The default is "/var/spool/cups/tmp".
+.\"#User
 .TP 5
 \fBUser \fIusername\fR
 Specifies the user name or ID that is used when running external programs.
@@ -195,7 +216,7 @@ The default is "lp".
 .BR subscriptions.conf (5),
 CUPS Online Help (http://localhost:631/help)
 .SH COPYRIGHT
-Copyright \[co] 2007-2014 by Apple Inc.
+Copyright \[co] 2007-2015 by Apple Inc.
 .\"
-.\" End of "$Id: cups-files.conf.man.in 11927 2014-06-13 00:01:23Z msweet $".
+.\" End of "$Id: cups-files.conf.man.in 12477 2015-02-02 18:38:25Z msweet $".
 .\"
diff --git a/man/cupsd.conf.man.in b/man/cupsd.conf.man.in
index dcbbff44e..6362644ec 100644
--- a/man/cupsd.conf.man.in
+++ b/man/cupsd.conf.man.in
@@ -1,5 +1,5 @@
 .\"
-.\" "$Id: cupsd.conf.man.in 12215 2014-10-20 18:24:56Z msweet $"
+.\" "$Id: cupsd.conf.man.in 12363 2014-12-12 19:51:33Z msweet $"
 .\"
 .\" cupsd.conf man page for CUPS.
 .\"
@@ -34,6 +34,7 @@ Comment lines start with the # character.
 .SS TOP-LEVEL DIRECTIVES
 The following top-level directives are understood by
 .BR cupsd (8):
+.\"#AccessLogLevel
 .TP 5
 \fBAccessLogLevel config\fR
 .TP 5
@@ -45,6 +46,7 @@ The "config" level logs when printers and classes are added, deleted, or modifie
 The "actions" level logs when print jobs are submitted, held, released, modified, or canceled, and any of the conditions for "config".
 The "all" level logs all requests.
 The default access log level is "actions".
+.\"#AutoPurgeJobs
 .TP 5
 \fBAutoPurgeJobs Yes\fR
 .TP 5
@@ -52,6 +54,7 @@ The default access log level is "actions".
 .br
 Specifies whether to purge job history data automatically when it is no longer required for quotas.
 The default is "No".
+.\"#BrowseLocalProtocols
 .TP 5
 \fBBrowseLocalProtocols all\fR
 .TP 5
@@ -60,6 +63,7 @@ The default is "No".
 \fBBrowseLocalProtocols none\fR
 Specifies which protocols to use for local printer sharing.
 The default is "dnssd" on systems that support Bonjour and "none" otherwise.
+.\"#BrowseWebIF
 .TP 5
 \fBBrowseWebIF Yes\fR
 .TP 5
@@ -67,6 +71,7 @@ The default is "dnssd" on systems that support Bonjour and "none" otherwise.
 .br
 Specifies whether the CUPS web interface is advertised.
 The default is "No".
+.\"#Browsing
 .TP 5
 \fBBrowsing Yes\fR
 .TP 5
@@ -74,12 +79,14 @@ The default is "No".
 .br
 Specifies whether shared printers are advertised.
 The default is "No".
+.\"#Classification
 .TP 5
 \fBClassification \fIbanner\fR
 .br
 Specifies the security classification of the server.
 Any valid banner name can be used, including "classified", "confidential", "secret", "topsecret", and "unclassified", or the banner can be omitted to disable secure printing functions.
 The default is no classification banner.
+.\"#ClassifyOverride
 .TP 5
 \fBClassifyOverride Yes\fR
 .TP 5
@@ -87,6 +94,7 @@ The default is no classification banner.
 .br
 Specifies whether users may override the classification (cover page) of individual print jobs using the "job-sheets" option.
 The default is "No".
+.\"#DefaultAuthType
 .TP 5
 \fBDefaultAuthType Basic\fR
 .TP 5
@@ -94,6 +102,7 @@ The default is "No".
 .br
 Specifies the default type of authentication to use.
 The default is "Basic".
+.\"#DefaultEncryption
 .TP 5
 \fBDefaultEncryption Never\fR
 .TP 5
@@ -102,10 +111,12 @@ The default is "Basic".
 \fBDefaultEncryption Required\fR
 Specifies whether encryption will be used for authenticated requests.
 The default is "Required".
+.\"#DefaultLanguage
 .TP 5
 \fBDefaultLanguage \fIlocale\fR
 Specifies the default language to use for text and web content.
 The default is "en".
+.\"#DefaultPaperSize
 .TP 5
 \fBDefaultPaperSize Auto\fR
 .TP 5
@@ -115,21 +126,25 @@ The default is "en".
 Specifies the default paper size for new print queues. "Auto" uses a locale-specific default, while "None" specifies there is no default paper size.
 Specific size names are typically "Letter" or "A4".
 The default is "Auto".
+.\"#DefaultPolicy
 .TP 5
 \fBDefaultPolicy \fIpolicy-name\fR
 Specifies the default access policy to use.
 The default access policy is "default".
+.\"#DefaultShared
 .TP 5
 \fBDefaultShared Yes\fR
 .TP 5
 \fBDefaultShared No\fR
 Specifies whether local printers are shared by default.
 The default is "Yes".
+.\"#DirtyCleanInterval
 .TP 5
 \fBDirtyCleanInterval \fIseconds\fR
 Specifies the delay for updating of configuration and state files.
 A value of 0 causes the update to happen as soon as possible, typically within a few milliseconds.
 The default value is "30".
+.\"#ErrorPolicy
 .TP 5
 \fBErrorPolicy abort-job\fR
 Specifies that a failed print job should be aborted (discarded) unless otherwise specified for the printer.
@@ -142,6 +157,7 @@ Specifies that a failed print job should be retried immediately unless otherwise
 .TP 5
 \fBErrorPolicy stop-printer\fR
 Specifies that a failed print job should stop the printer unless otherwise specified for the printer. The 'stop-printer' error policy is the default.
+.\"#FilterLimit
 .TP 5
 \fBFilterLimit \fIlimit\fR
 Specifies the maximum cost of filters that are run concurrently, which can be used to minimize disk, memory, and CPU resource problems.
@@ -150,6 +166,7 @@ An average print to a non-PostScript printer needs a filter limit of about 200.
 A PostScript printer needs about half that (100).
 Setting the limit below these thresholds will effectively limit the scheduler to printing a single job at any time.
 The default limit is "0".
+.\"#FilterNice
 .TP 5
 \fBFilterNice \fInice-value\fR
 Specifies the scheduling priority (
@@ -157,11 +174,13 @@ Specifies the scheduling priority (
 value) of filters that are run to print a job.
 The nice value ranges from 0, the highest priority, to 19, the lowest priority.
 The default is 0.
+.\"#GSSServiceName
 .TP 5
 \fBGSSServiceName \fIname\fR
 Specifies the service name when using Kerberos authentication.
 The default service name is "http."
 .TP 5
+.\"#HostNameLookups
 \fBHostNameLookups On\fR
 .TP 5
 \fBHostNameLookups Off\fR
@@ -174,42 +193,52 @@ to verify that the hostname resolved from the address matches one of the address
 Double lookups also prevent clients with unregistered addresses from connecting to your server.
 The default is "Off" to avoid the potential server performance problems with hostname lookups.
 Only set this option to "On" or "Double" if absolutely required.
+.\"#JobKillDelay
 .TP 5
 \fBJobKillDelay \fIseconds\fR
 Specifies the number of seconds to wait before killing the filters and backend associated with a canceled or held job.
 The default is "30".
+.\"#JobRetryInterval
 .TP 5
 \fBJobRetryInterval \fIseconds\fR
 Specifies the interval between retries of jobs in seconds.
 This is typically used for fax queues but can also be used with normal print queues whose error policy is "retry-job" or "retry-current-job".
 The default is "30".
+.\"#JobRetryLimit
 .TP 5
 \fBJobRetryLimit \fIcount\fR
 Specifies the number of retries that are done for jobs.
 This is typically used for fax queues but can also be used with normal print queues whose error policy is "retry-job" or "retry-current-job".
 The default is "5".
+.\"#KeepAlive
 .TP 5
 \fBKeepAlive Yes\fR
 .TP 5
 \fBKeepAlive No\fR
 Specifies whether to support HTTP keep-alive connections.
 The default is "Yes".
+.\"#KeepAliveTimeout
 .TP 5
 \fBKeepAliveTimeout \fIseconds\fR
 Specifies how long an idle client connection remains open.
 The default is "30".
+.\"#LimitIPP
 .TP 5
 \fB \fR... \fB\fR
 Specifies the IPP operations that are being limited inside a Policy section. IPP operation names are listed below in the section "IPP OPERATIONS".
+.\"#Limit
 .TP 5
 \fB \fR... \fB\fR
+.\"#LimitExcept
 .TP 5
 \fB \fR... \fB\fR
 Specifies the HTTP methods that are being limited inside a Location section. HTTP method names are listed below in the section "HTTP METHODS".
+.\"#LimitRequestBody
 .TP 5
 \fBLimitRequestBody \fIsize\fR
 Specifies the maximum size of print files, IPP requests, and HTML form data.
 The default is "0" which disables the limit check.
+.\"#Listen
 .TP 5
 \fBListen \fIipv4-address\fB:\fIport\fR
 .TP 5
@@ -221,19 +250,23 @@ The default is "0" which disables the limit check.
 Listens to the specified address and port or domain socket path for connections.
 Multiple Listen directives can be provided to listen on multiple addresses.
 The Listen directive is similar to the Port directive but allows you to restrict access to specific interfaces or networks.
+.\"#ListenBackLog
 .TP 5
 \fBListenBackLog \fInumber\fR
 Specifies the number of pending connections that will be allowed.
 This normally only affects very busy servers that have reached the MaxClients limit, but can also be triggered by large numbers of simultaneous connections.
 When the limit is reached, the operating system will refuse additional connections until the scheduler can accept the pending ones.
 The default is the OS-defined default limit, typically either "5" for older operating systems or "128" for newer operating systems.
+.\"#Location
 .TP 5
 \fB \fR... \fB\fR
 Specifies access control for the named location.
 Paths are documented below in the section "LOCATION PATHS".
+.\"#LogDebugHistory
 .TP 5
 \fBLogDebugHistory \fInumber\fR
 Specifies the number of debugging messages that are retained for logging if an error occurs in a print job. Debug messages are logged regardless of the LogLevel setting.
+.\"#LogLevel
 .TP 5
 \fBLogLevel \fRnone
 .TP 5
@@ -257,56 +290,68 @@ Specifies the number of debugging messages that are retained for logging if an e
 Specifies the level of logging for the ErrorLog file.
 The value "none" stops all logging while "debug2" logs everything.
 The default is "warn".
+.\"#LogTimeFormat
 .TP 5
 \fBLogTimeFormat \fRstandard
 .TP 5
 \fBLogTimeFormat \fRusecs
 Specifies the format of the date and time in the log files.
 The value "standard" is the default and logs whole seconds while "usecs" logs microseconds.
+.\"#MaxClients
 .TP 5
 \fBMaxClients \fInumber\fR
 Specifies the maximum number of simultaneous clients that are allowed by the scheduler.
 The default is "100".
+.\"#MaxClientPerHost
 .TP 5
 \fBMaxClientsPerHost \fInumber\fR
 Specifies the maximum number of simultaneous clients that are allowed from a
 single address.
 The default is the MaxClients value.
+.\"#MaxCopies
 .TP 5
 \fBMaxCopies \fInumber\fR
 Specifies the maximum number of copies that a user can print of each job.
 The default is "9999".
+.\"#MaxHoldTime
 .TP 5
 \fBMaxHoldTime \fIseconds\fR
 Specifies the maximum time a job may remain in the "indefinite" hold state before it is canceled.
 The default is "0" which disables cancellation of held jobs.
+.\"#MaxJobs
 .TP 5
 \fBMaxJobs \fInumber\fR
 Specifies the maximum number of simultaneous jobs that are allowed.
 Set to "0" to allow an unlimited number of jobs.
 The default is "500".
+.\"#MaxJobsPerPrinter
 .TP 5
 \fBMaxJobsPerPrinter \fInumber\fR
 Specifies the maximum number of simultaneous jobs that are allowed per printer.
 The default is "0" which allows up to MaxJobs jobs per printer.
+.\"#MaxJobsPerUser
 .TP 5
 \fBMaxJobsPerUser \fInumber\fR
 Specifies the maximum number of simultaneous jobs that are allowed per user.
 The default is "0" which allows up to MaxJobs jobs per user.
+.\"#MaxJobTime
 .TP 5
 \fBMaxJobTime \fIseconds\fR
 Specifies the maximum time a job may take to print before it is canceled.
 Set to "0" to disable cancellation of "stuck" jobs.
 The default is "10800" (3 hours).
+.\"#MaxLogSize
 .TP 5
 \fBMaxLogSize \fIsize\fR
 Specifies the maximum size of the log files before they are rotated.
 The value "0" disables log rotation.
 The default is "1048576" (1MB).
+.\"#MultipleOperationTimeout
 .TP 5
 \fBMultipleOperationTimeout \fIseconds\fR
 Specifies the maximum amount of time to allow between files in a multiple file print job.
 The default is "300" (5 minutes).
+.\"#PageLogFormat
 .TP 5
 \fBPageLogFormat \fIformat-string\fR
 Specifies the format of PageLog lines.
@@ -325,15 +370,19 @@ The following percent sequences are recognized:
 
 .fi
 The default is "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".
+.\"#PassEnv
 .TP 5
 \fBPassEnv \fIvariable \fR[ ... \fIvariable \fR]
 Passes the specified environment variable(s) to child processes.
+.\"#Policy
 .TP 5
 \fB \fR... \fB\fR
 Specifies access control for the named policy.
+.\"#Port
 .TP 5
 \fBPort \fInumber\fR
 Listens to the specified port number for connections.
+.\"#PreserveJobFiles
 .TP 5
 \fBPreserveJobFiles Yes\fR
 .TP 5
@@ -343,6 +392,7 @@ Listens to the specified port number for connections.
 Specifies whether job files (documents) are preserved after a job is printed.
 If a numeric value is specified, job files are preserved for the indicated number of seconds after printing.
 The default is "86400" (preserve 1 day).
+.\"#PreserveJobHistory
 .TP 5
 \fBPreserveJobHistory Yes\fR
 .TP 5
@@ -353,18 +403,22 @@ Specifies whether the job history is preserved after a job is printed.
 If a numeric value is specified, the job history is preserved for the indicated number of seconds after printing.
 If "Yes", the job history is preserved until the MaxJobs limit is reached.
 The default is "Yes".
+.\"#ReloadTimeout
 .TP 5
 \fBReloadTimeout \fIseconds\fR
 Specifies the amount of time to wait for job completion before restarting the scheduler.
 The default is "30".
+.\"#RIPCache
 .TP 5
 \fBRIPCache \fIsize\fR
 Specifies the maximum amount of memory to use when converting documents into bitmaps for a printer.
 The default is "128m".
+.\"#ServerAdmin
 .TP 5
 \fBServerAdmin \fIemail-address\fR
 Specifies the email address of the server administrator.
 The default value is "root@ServerName".
+.\"#ServerAlias
 .TP 5
 \fBServerAlias \fIhostname \fR[ ... \fIhostname \fR]
 .TP 5
@@ -372,12 +426,14 @@ The default value is "root@ServerName".
 The ServerAlias directive is used for HTTP Host header validation when clients connect to the scheduler from external interfaces.
 Using the special name "*" can expose your system to known browser-based DNS rebinding attacks, even when accessing sites through a firewall.
 If the auto-discovery of alternate names does not work, we recommend listing each alternate name with a ServerAlias directive instead of using "*".
+.\"#ServerName
 .TP 5
 \fBServerName \fIhostname\fR
 Specifies the fully-qualified hostname of the server.
 The default is the value reported by the
 .BR hostname (1)
 command.
+.\"#ServerTokens
 .TP 5
 \fBServerTokens None\fR
 .TP 5
@@ -403,10 +459,11 @@ Specifies what information is included in the Server header of HTTP responses.
 command.
 "Full" reports "CUPS 2.0.0 (UNAME) IPP/2.0".
 The default is "Minimal".
+.\"#SetEnv
 .TP 5
 \fBSetEnv \fIvariable value\fR
 Set the specified environment variable to be passed to child processes.
-.TP 5
+.\"#SSLListen
 .TP 5
 \fBSSLListen \fIipv4-address\fB:\fIport\fR
 .TP 5
@@ -414,6 +471,7 @@ Set the specified environment variable to be passed to child processes.
 .TP 5
 \fBSSLListen *:\fIport\fR
 Listens on the specified address and port for encrypted connections.
+.\"#SSLOptions
 .TP 5
 \fBSSLOptions \fR[\fIAllowRC4\fR] [\fIAllowSSL3\fR]
 .TP 5
@@ -422,19 +480,23 @@ Sets encryption options.
 By default, CUPS only supports encryption using TLS v1.0 or higher using known secure cipher suites.
 The \fIAllowRC4\fR option enables the 128-bit RC4 cipher suites, which are required for some older clients that do not implement newer ones.
 The \fIAllowSSL3\fR option enables SSL v3.0, which is required for some older clients that do not support TLS v1.0.
+.\"#SSLPort
 .TP 5
 \fBSSLPort \fIport\fR
 Listens on the specified port for encrypted connections.
+.\"#StrictConformance
 .TP 5
 \fBStrictConformance Yes\fR
 .TP 5
 \fBStrictConformance No\fR
 Specifies whether the scheduler requires clients to strictly adhere to the IPP specifications.
 The default is "No".
+.\"#Timeout
 .TP 5
 \fBTimeout \fIseconds\fR
 Specifies the HTTP request timeout.
 The default is "300" (5 minutes).
+.\"#WebInterface
 .TP 5
 \fBWebInterface yes\fR
 .TP 5
@@ -809,5 +871,5 @@ CUPS Online Help (http://localhost:631/help)
 .SH COPYRIGHT
 Copyright \[co] 2007-2014 by Apple Inc.
 .\"
-.\" End of "$Id: cupsd.conf.man.in 12215 2014-10-20 18:24:56Z msweet $".
+.\" End of "$Id: cupsd.conf.man.in 12363 2014-12-12 19:51:33Z msweet $".
 .\"
diff --git a/man/mantohtml.c b/man/mantohtml.c
index 6811f0b90..798b03ebc 100644
--- a/man/mantohtml.c
+++ b/man/mantohtml.c
@@ -1,5 +1,5 @@
 /*
- * "$Id: mantohtml.c 11818 2014-04-15 20:56:19Z msweet $"
+ * "$Id: mantohtml.c 12363 2014-12-12 19:51:33Z msweet $"
  *
  * Man page to HTML conversion program.
  *
@@ -53,6 +53,7 @@ main(int  argc,				/* I - Number of command-line args */
 		*outfile;		/* Output file */
   char		line[1024],		/* Line from file */
 		*lineptr,		/* Pointer into line */
+		anchor[1024],		/* Anchor */
 		name[1024],		/* Man page name */
 		ddpost[256];		/* Tagged list post markup */
   int		section = -1,		/* Man page section */
@@ -114,6 +115,8 @@ main(int  argc,				/* I - Number of command-line args */
 	"\t\n", outfile);
 
+  anchor[0] = '\0';
+
   while (fgets(line, sizeof(line), infile))
   {
     size_t linelen = strlen(line);	/* Length of line */
@@ -176,13 +179,21 @@ main(int  argc,				/* I - Number of command-line args */
 	else
 	  fputs("

", outfile); @@ -221,8 +232,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 3, "b", "b", outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -238,8 +258,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 3, "i", "i", outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -255,8 +284,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 4, "b", "i", outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -272,8 +310,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 4, "b", NULL, outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -289,8 +336,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 4, "i", "b", outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -306,8 +362,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 4, "i", NULL, outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -323,8 +388,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 4, NULL, "b", outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -340,8 +414,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 4, NULL, "i", outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -357,8 +440,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 4, "small", "b", outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -374,8 +466,17 @@ main(int argc, /* I - Number of command-line args */ fputs(end_fonts[font], outfile); font = 0; + if (anchor[0]) + fprintf(outfile, "", anchor); + html_alternate(line + 4, "small", "small", outfile); + if (anchor[0]) + { + fputs("", outfile); + anchor[0] = '\0'; + } + if (post) { fputs(post, outfile); @@ -398,6 +499,12 @@ main(int argc, /* I - Number of command-line args */ } fputs("

", outfile); + + if (anchor[0]) + { + fprintf(outfile, "", anchor); + anchor[0] = '\0'; + } } else if (!strcmp(line, ".RS") || !strncmp(line, ".RS ", 4)) { @@ -467,6 +574,12 @@ main(int argc, /* I - Number of command-line args */ fprintf(outfile, "

", amount, -amount); + if (anchor[0]) + { + fprintf(outfile, "", anchor); + anchor[0] = '\0'; + } + if (line[1] == 'T') post = "
\n"; } @@ -502,6 +615,12 @@ main(int argc, /* I - Number of command-line args */ fputs("

", outfile); snprintf(ddpost, sizeof(ddpost), "
", amount); post = ddpost; + + if (anchor[0]) + { + fprintf(outfile, "", anchor); + anchor[0] = '\0'; + } } else if (!strncmp(line, ".IP ", 4)) { @@ -585,6 +704,12 @@ main(int argc, /* I - Number of command-line args */ fprintf(outfile, "
  • ", amount); else fprintf(outfile, "

    ", amount); + + if (anchor[0]) + { + fprintf(outfile, "", anchor); + anchor[0] = '\0'; + } } else if (!strncmp(line, ".br", 3)) { @@ -686,6 +811,14 @@ main(int argc, /* I - Number of command-line args */ */ } #endif /* 0 */ + else if (!strncmp(line, ".\\\"#", 4)) + { + /* + * Anchor for HTML output... + */ + + strlcpy(anchor, line + 4, sizeof(anchor)); + } else if (strncmp(line, ".\\\"", 3)) { /* @@ -1088,5 +1221,5 @@ strmove(char *d, /* I - Destination */ /* - * End of "$Id: mantohtml.c 11818 2014-04-15 20:56:19Z msweet $". + * End of "$Id: mantohtml.c 12363 2014-12-12 19:51:33Z msweet $". */ diff --git a/packaging/cups.spec b/packaging/cups.spec index 1c10ef05d..d14d19609 100644 --- a/packaging/cups.spec +++ b/packaging/cups.spec @@ -1,5 +1,5 @@ # -# "$Id: cups.spec.in 12222 2014-10-21 11:55:01Z msweet $" +# "$Id: cups.spec.in 12501 2015-02-09 15:23:13Z msweet $" # # RPM "spec" file for CUPS. # @@ -44,12 +44,12 @@ Summary: CUPS Name: cups -Version: 2.0.1 +Version: 2.0.2 Release: 1 Epoch: 1 License: GPL Group: System Environment/Daemons -Source: http://www.cups.org/software/2.0.1/cups-2.0.1-source.tar.bz2 +Source: http://www.cups.org/software/2.0.2/cups-2.0.2-source.tar.bz2 Url: http://www.cups.org Packager: Anonymous Vendor: Apple Inc. @@ -272,8 +272,8 @@ rm -rf $RPM_BUILD_ROOT /usr/share/doc/cups/es/* #%dir /usr/share/doc/cups/fr #/usr/share/doc/cups/fr/* -#%dir /usr/share/doc/cups/ja -#/usr/share/doc/cups/ja/* +%dir /usr/share/doc/cups/ja +/usr/share/doc/cups/ja/* #%dir /usr/share/doc/cups/ru #/usr/share/doc/cups/ru/* @@ -395,5 +395,5 @@ rm -rf $RPM_BUILD_ROOT # -# End of "$Id: cups.spec.in 12222 2014-10-21 11:55:01Z msweet $". +# End of "$Id: cups.spec.in 12501 2015-02-09 15:23:13Z msweet $". # diff --git a/packaging/cups.spec.in b/packaging/cups.spec.in index efdab213e..6711ae00b 100644 --- a/packaging/cups.spec.in +++ b/packaging/cups.spec.in @@ -1,5 +1,5 @@ # -# "$Id: cups.spec.in 12222 2014-10-21 11:55:01Z msweet $" +# "$Id: cups.spec.in 12501 2015-02-09 15:23:13Z msweet $" # # RPM "spec" file for CUPS. # @@ -272,8 +272,8 @@ rm -rf $RPM_BUILD_ROOT /usr/share/doc/cups/es/* #%dir /usr/share/doc/cups/fr #/usr/share/doc/cups/fr/* -#%dir /usr/share/doc/cups/ja -#/usr/share/doc/cups/ja/* +%dir /usr/share/doc/cups/ja +/usr/share/doc/cups/ja/* #%dir /usr/share/doc/cups/ru #/usr/share/doc/cups/ru/* @@ -395,5 +395,5 @@ rm -rf $RPM_BUILD_ROOT # -# End of "$Id: cups.spec.in 12222 2014-10-21 11:55:01Z msweet $". +# End of "$Id: cups.spec.in 12501 2015-02-09 15:23:13Z msweet $". # diff --git a/scheduler/colorman.c b/scheduler/colorman.c index 4a3f03077..b3e6f0821 100644 --- a/scheduler/colorman.c +++ b/scheduler/colorman.c @@ -1,5 +1,5 @@ /* - * "$Id: colorman.c 12226 2014-10-21 13:36:05Z msweet $" + * "$Id: colorman.c 12369 2014-12-15 14:51:28Z msweet $" * * Color management routines for the CUPS scheduler. * @@ -151,8 +151,11 @@ cupsdRegisterColor(cupsd_printer_t *p) /* I - Printer */ } #elif defined(HAVE_DBUS) - colord_unregister_printer(p); - colord_register_printer(p); + if (!RunUser) + { + colord_unregister_printer(p); + colord_register_printer(p); + } #endif /* __APPLE__ */ } @@ -205,7 +208,8 @@ cupsdUnregisterColor(cupsd_printer_t *p)/* I - Printer */ apple_unregister_profiles(p); #elif defined(HAVE_DBUS) - colord_unregister_printer(p); + if (!RunUser) + colord_unregister_printer(p); #endif /* __APPLE__ */ } @@ -1515,5 +1519,5 @@ colord_unregister_printer( /* - * End of "$Id: colorman.c 12226 2014-10-21 13:36:05Z msweet $". + * End of "$Id: colorman.c 12369 2014-12-15 14:51:28Z msweet $". */ diff --git a/scheduler/conf.c b/scheduler/conf.c index 68ab09319..34269c51c 100644 --- a/scheduler/conf.c +++ b/scheduler/conf.c @@ -1,5 +1,5 @@ /* - * "$Id: conf.c 12224 2014-10-21 13:16:30Z msweet $" + * "$Id: conf.c 12463 2015-01-30 16:34:31Z msweet $" * * Configuration routines for the CUPS scheduler. * @@ -2008,8 +2008,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ else if (!_cups_strcasecmp(value, "always")) { cupsdLogMessage(CUPSD_LOG_ERROR, - "Encryption value \"%s\" on line %d is invalid in this " - "context. Using \"required\" instead.", value, linenum); + "Encryption value \"%s\" on line %d of %s is invalid in this " + "context. Using \"required\" instead.", value, linenum, ConfigurationFile); loc->encryption = HTTP_ENCRYPT_REQUIRED; } @@ -2020,7 +2020,7 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ else { cupsdLogMessage(CUPSD_LOG_ERROR, - "Unknown Encryption value %s on line %d.", value, linenum); + "Unknown Encryption value %s on line %d of %s.", value, linenum, ConfigurationFile); return (0); } } @@ -2036,8 +2036,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ loc->order_type = CUPSD_AUTH_DENY; else { - cupsdLogMessage(CUPSD_LOG_ERROR, "Unknown Order value %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Unknown Order value %s on line %d of %s.", + value, linenum, ConfigurationFile); return (0); } } @@ -2139,8 +2139,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ if (!get_addr_and_mask(value, ip, mask)) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Bad netmask value %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Bad netmask value %s on line %d of %s.", + value, linenum, ConfigurationFile); return (0); } @@ -2194,8 +2194,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ else { cupsdLogMessage(CUPSD_LOG_WARN, - "Unknown authorization type %s on line %d.", - value, linenum); + "Unknown authorization type %s on line %d of %s.", + value, linenum, ConfigurationFile); return (0); } } @@ -2221,8 +2221,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ cupsdLogMessage(CUPSD_LOG_WARN, "\"AuthClass %s\" is deprecated; consider using " - "\"Require valid-user\" on line %d.", - value, linenum); + "\"Require valid-user\" on line %d of %s.", + value, linenum, ConfigurationFile); } else if (!_cups_strcasecmp(value, "group")) { @@ -2230,8 +2230,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ cupsdLogMessage(CUPSD_LOG_WARN, "\"AuthClass %s\" is deprecated; consider using " - "\"Require user @groupname\" on line %d.", - value, linenum); + "\"Require user @groupname\" on line %d of %s.", + value, linenum, ConfigurationFile); } else if (!_cups_strcasecmp(value, "system")) { @@ -2241,14 +2241,14 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ cupsdLogMessage(CUPSD_LOG_WARN, "\"AuthClass %s\" is deprecated; consider using " - "\"Require user @SYSTEM\" on line %d.", - value, linenum); + "\"Require user @SYSTEM\" on line %d of %s.", + value, linenum, ConfigurationFile); } else { cupsdLogMessage(CUPSD_LOG_WARN, - "Unknown authorization class %s on line %d.", - value, linenum); + "Unknown authorization class %s on line %d of %s.", + value, linenum, ConfigurationFile); return (0); } } @@ -2258,8 +2258,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ cupsdLogMessage(CUPSD_LOG_WARN, "\"AuthGroupName %s\" directive is deprecated; consider " - "using \"Require user @%s\" on line %d.", - value, value, linenum); + "using \"Require user @%s\" on line %d of %s.", + value, value, linenum, ConfigurationFile); } else if (!_cups_strcasecmp(line, "Require")) { @@ -2285,8 +2285,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ loc->level = CUPSD_AUTH_GROUP; else { - cupsdLogMessage(CUPSD_LOG_WARN, "Unknown Require type %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Unknown Require type %s on line %d of %s.", + value, linenum, ConfigurationFile); return (0); } @@ -2348,8 +2348,8 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */ loc->satisfy = CUPSD_AUTH_SATISFY_ANY; else { - cupsdLogMessage(CUPSD_LOG_WARN, "Unknown Satisfy value %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Unknown Satisfy value %s on line %d of %s.", + value, linenum, ConfigurationFile); return (0); } } @@ -2925,15 +2925,16 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ JobRetryInterval = atoi(value); cupsdLogMessage(CUPSD_LOG_WARN, "FaxRetryInterval is deprecated; use " - "JobRetryInterval on line %d.", linenum); + "JobRetryInterval on line %d of %s.", linenum, ConfigurationFile); } else if (!_cups_strcasecmp(line, "FaxRetryLimit") && value) { JobRetryLimit = atoi(value); cupsdLogMessage(CUPSD_LOG_WARN, "FaxRetryLimit is deprecated; use " - "JobRetryLimit on line %d.", linenum); + "JobRetryLimit on line %d of %s.", linenum, ConfigurationFile); } +#ifdef HAVE_SSL else if (!_cups_strcasecmp(line, "SSLOptions")) { /* @@ -2977,6 +2978,7 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ _httpTLSSetOptions(options); } +#endif /* HAVE_SSL */ else if ((!_cups_strcasecmp(line, "Port") || !_cups_strcasecmp(line, "Listen") #ifdef HAVE_SSL || !_cups_strcasecmp(line, "SSLPort") || !_cups_strcasecmp(line, "SSLListen") @@ -3105,8 +3107,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ if (protocols < 0) { cupsdLogMessage(CUPSD_LOG_ERROR, - "Unknown browse protocol \"%s\" on line %d.", - value, linenum); + "Unknown browse protocol \"%s\" on line %d of %s.", + value, linenum, ConfigurationFile); break; } @@ -3131,8 +3133,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ else { cupsdLogMessage(CUPSD_LOG_WARN, - "Unknown default authorization type %s on line %d.", - value, linenum); + "Unknown default authorization type %s on line %d of %s.", + value, linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); } @@ -3153,8 +3155,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ else { cupsdLogMessage(CUPSD_LOG_WARN, - "Unknown default encryption %s on line %d.", - value, linenum); + "Unknown default encryption %s on line %d of %s.", + value, linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); } @@ -3175,8 +3177,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ else if (!_cups_strcasecmp(value, "double")) HostNameLookups = 2; else - cupsdLogMessage(CUPSD_LOG_WARN, "Unknown HostNameLookups %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Unknown HostNameLookups %s on line %d of %s.", + value, linenum, ConfigurationFile); } else if (!_cups_strcasecmp(line, "AccessLogLevel") && value) { @@ -3193,8 +3195,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ else if (!_cups_strcasecmp(value, "none")) AccessLogLevel = CUPSD_ACCESSLOG_NONE; else - cupsdLogMessage(CUPSD_LOG_WARN, "Unknown AccessLogLevel %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Unknown AccessLogLevel %s on line %d of %s.", + value, linenum, ConfigurationFile); } else if (!_cups_strcasecmp(line, "LogLevel") && value) { @@ -3223,8 +3225,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ else if (!_cups_strcasecmp(value, "none")) LogLevel = CUPSD_LOG_NONE; else - cupsdLogMessage(CUPSD_LOG_WARN, "Unknown LogLevel %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Unknown LogLevel %s on line %d of %s.", + value, linenum, ConfigurationFile); } else if (!_cups_strcasecmp(line, "LogTimeFormat") && value) { @@ -3237,8 +3239,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ else if (!_cups_strcasecmp(value, "usecs")) LogTimeFormat = CUPSD_TIME_USECS; else - cupsdLogMessage(CUPSD_LOG_WARN, "Unknown LogTimeFormat %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Unknown LogTimeFormat %s on line %d of %s.", + value, linenum, ConfigurationFile); } else if (!_cups_strcasecmp(line, "ServerTokens") && value) { @@ -3269,8 +3271,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ else if (!_cups_strcasecmp(value, "None")) cupsdClearString(&ServerHeader); else - cupsdLogMessage(CUPSD_LOG_WARN, "Unknown ServerTokens %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Unknown ServerTokens %s on line %d of %s.", + value, linenum, ConfigurationFile); } else if (!_cups_strcasecmp(line, "PassEnv") && value) { @@ -3346,8 +3348,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */ } else cupsdLogMessage(CUPSD_LOG_ERROR, - "Missing value for SetEnv directive on line %d.", - linenum); + "Missing value for SetEnv directive on line %d of %s.", + linenum, ConfigurationFile); } else if (!_cups_strcasecmp(line, "AccessLog") || !_cups_strcasecmp(line, "CacheDir") || @@ -3594,8 +3596,8 @@ read_location(cups_file_t *fp, /* I - Configuration file */ if ((parent = cupsdFindLocation(location)) != NULL) - cupsdLogMessage(CUPSD_LOG_WARN, "Duplicate on line %d.", - location, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Duplicate on line %d of %s.", + location, linenum, ConfigurationFile); else if ((parent = cupsdNewLocation(location)) == NULL) return (0); else @@ -3620,7 +3622,7 @@ read_location(cups_file_t *fp, /* I - Configuration file */ { if (!value) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Syntax error on line %d.", linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Syntax error on line %d of %s.", linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); else @@ -3655,8 +3657,8 @@ read_location(cups_file_t *fp, /* I - Configuration file */ else if (!strcmp(value, "TRACE")) loc->limit |= CUPSD_AUTH_LIMIT_TRACE; else - cupsdLogMessage(CUPSD_LOG_WARN, "Unknown request type %s on line %d.", - value, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Unknown request type %s on line %d of %s.", + value, linenum, ConfigurationFile); for (value = valptr; isspace(*value & 255); value ++); } @@ -3671,15 +3673,15 @@ read_location(cups_file_t *fp, /* I - Configuration file */ loc = parent; else if (!value) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value on line %d.", linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value on line %d of %s.", linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); } else if (!parse_aaa(loc, line, value, linenum)) { cupsdLogMessage(CUPSD_LOG_ERROR, - "Unknown Location directive %s on line %d.", - line, linenum); + "Unknown Location directive %s on line %d of %s.", + line, linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); } @@ -3718,8 +3720,8 @@ read_policy(cups_file_t *fp, /* I - Configuration file */ */ if ((pol = cupsdFindPolicy(policy)) != NULL) - cupsdLogMessage(CUPSD_LOG_WARN, "Duplicate on line %d.", - policy, linenum); + cupsdLogMessage(CUPSD_LOG_WARN, "Duplicate on line %d of %s.", + policy, linenum, ConfigurationFile); else if ((pol = cupsdAddPolicy(policy)) == NULL) return (0); @@ -3740,8 +3742,8 @@ read_policy(cups_file_t *fp, /* I - Configuration file */ { if (op) cupsdLogMessage(CUPSD_LOG_WARN, - "Missing before on line %d.", - linenum); + "Missing before on line %d of %s.", + linenum, ConfigurationFile); set_policy_defaults(pol); @@ -3751,7 +3753,7 @@ read_policy(cups_file_t *fp, /* I - Configuration file */ { if (!value) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Syntax error on line %d.", linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Syntax error on line %d of %s.", linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); else @@ -3777,15 +3779,15 @@ read_policy(cups_file_t *fp, /* I - Configuration file */ ops[num_ops] = IPP_ANY_OPERATION; else if ((ops[num_ops] = ippOpValue(value)) == IPP_BAD_OPERATION) cupsdLogMessage(CUPSD_LOG_ERROR, - "Bad IPP operation name \"%s\" on line %d.", - value, linenum); + "Bad IPP operation name \"%s\" on line %d of %s.", + value, linenum, ConfigurationFile); else num_ops ++; } else cupsdLogMessage(CUPSD_LOG_ERROR, - "Too many operations listed on line %d.", - linenum); + "Too many operations listed on line %d of %s.", + linenum, ConfigurationFile); for (value = valptr; isspace(*value & 255); value ++); } @@ -3826,7 +3828,7 @@ read_policy(cups_file_t *fp, /* I - Configuration file */ } else if (!value) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value on line %d.", linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value on line %d of %s.", linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); } @@ -3839,7 +3841,7 @@ read_policy(cups_file_t *fp, /* I - Configuration file */ { cupsdLogMessage(CUPSD_LOG_ERROR, "%s directive must appear outside ... " - "on line %d.", line, linenum); + "on line %d of %s.", line, linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); } @@ -3937,16 +3939,16 @@ read_policy(cups_file_t *fp, /* I - Configuration file */ else if (!op) { cupsdLogMessage(CUPSD_LOG_ERROR, - "Missing directive before %s on line %d.", - line, linenum); + "Missing directive before %s on line %d of %s.", + line, linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); } else if (!parse_aaa(op, line, value, linenum)) { cupsdLogMessage(CUPSD_LOG_ERROR, - "Unknown Policy Limit directive %s on line %d.", - line, linenum); + "Unknown Policy Limit directive %s on line %d of %s.", + line, linenum, ConfigurationFile); if (FatalErrors & CUPSD_FATAL_CONFIG) return (0); @@ -4141,5 +4143,5 @@ set_policy_defaults(cupsd_policy_t *pol)/* I - Policy */ /* - * End of "$Id: conf.c 12224 2014-10-21 13:16:30Z msweet $". + * End of "$Id: conf.c 12463 2015-01-30 16:34:31Z msweet $". */ diff --git a/scheduler/cupsfilter.c b/scheduler/cupsfilter.c index 75300fb9a..ebe035bc1 100644 --- a/scheduler/cupsfilter.c +++ b/scheduler/cupsfilter.c @@ -1,5 +1,5 @@ /* - * "$Id: cupsfilter.c 11770 2014-03-28 14:49:58Z msweet $" + * "$Id: cupsfilter.c 12303 2014-12-09 16:16:07Z msweet $" * * Filtering program for CUPS. * @@ -178,7 +178,7 @@ main(int argc, /* I - Number of command-line args */ if (i < argc && !infile) infile = argv[i]; else - usage(opt); + usage(NULL); } else { @@ -1501,5 +1501,5 @@ usage(const char *opt) /* I - Incorrect option, if any */ /* - * End of "$Id: cupsfilter.c 11770 2014-03-28 14:49:58Z msweet $". + * End of "$Id: cupsfilter.c 12303 2014-12-09 16:16:07Z msweet $". */ diff --git a/scheduler/dirsvc.c b/scheduler/dirsvc.c index 7c1840439..9a3961d28 100644 --- a/scheduler/dirsvc.c +++ b/scheduler/dirsvc.c @@ -1,9 +1,9 @@ /* - * "$Id: dirsvc.c 11871 2014-05-09 20:57:11Z msweet $" + * "$Id: dirsvc.c 12459 2015-01-30 16:16:12Z msweet $" * * Directory services routines for the CUPS scheduler. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -1296,13 +1296,20 @@ dnssdStop(void) DNSSDMaster = NULL; # else /* HAVE_AVAHI */ - avahi_threaded_poll_stop(DNSSDMaster); + if (DNSSDMaster) + avahi_threaded_poll_stop(DNSSDMaster); - avahi_client_free(DNSSDClient); - DNSSDClient = NULL; + if (DNSSDClient) + { + avahi_client_free(DNSSDClient); + DNSSDClient = NULL; + } - avahi_threaded_poll_free(DNSSDMaster); - DNSSDMaster = NULL; + if (DNSSDMaster) + { + avahi_threaded_poll_free(DNSSDMaster); + DNSSDMaster = NULL; + } # endif /* HAVE_DNSSD */ cupsArrayDelete(DNSSDPrinters); @@ -1816,5 +1823,5 @@ update_smb(int onoff) /* I - 1 = turn on, 0 = turn off */ /* - * End of "$Id: dirsvc.c 11871 2014-05-09 20:57:11Z msweet $". + * End of "$Id: dirsvc.c 12459 2015-01-30 16:16:12Z msweet $". */ diff --git a/scheduler/job.c b/scheduler/job.c index b05050b6a..39dbcdc9a 100644 --- a/scheduler/job.c +++ b/scheduler/job.c @@ -1,5 +1,5 @@ /* - * "$Id: job.c 12140 2014-08-30 01:51:22Z msweet $" + * "$Id: job.c 12463 2015-01-30 16:34:31Z msweet $" * * Job management routines for the CUPS scheduler. * @@ -489,7 +489,7 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */ /* Pipes used between filters */ int envc; /* Number of environment variables */ struct stat fileinfo; /* Job file information */ - int argc; /* Number of arguments */ + int argc = 0; /* Number of arguments */ char **argv = NULL, /* Filter command-line arguments */ filename[1024], /* Job filename */ command[1024], /* Full path to command */ @@ -4059,14 +4059,13 @@ load_job_cache(const char *filename) /* I - job.cache filename */ { if (job) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Missing directive on line %d.", - linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Missing directive on line %d of %s.", linenum, filename); continue; } if (!value) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Missing job ID on line %d.", linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Missing job ID on line %d of %s.", linenum, filename); continue; } @@ -4074,8 +4073,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */ if (jobid < 1) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Bad job ID %d on line %d.", jobid, - linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Bad job ID %d on line %d of %s.", jobid, linenum, filename); continue; } @@ -4114,7 +4112,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */ else if (!job) { cupsdLogMessage(CUPSD_LOG_ERROR, - "Missing directive on line %d.", linenum); + "Missing directive on line %d of %s.", linenum, filename); continue; } else if (!_cups_strcasecmp(line, "")) @@ -4136,7 +4134,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */ } else if (!value) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value on line %d.", linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value on line %d of %s.", linenum, filename); continue; } else if (!_cups_strcasecmp(line, "State")) @@ -4190,8 +4188,7 @@ load_job_cache(const char *filename) /* I - job.cache filename */ if (job->num_files < 0) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Bad NumFiles value %d on line %d.", - job->num_files, linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Bad NumFiles value %d on line %d of %s.", job->num_files, linenum, filename); job->num_files = 0; continue; } @@ -4230,14 +4227,13 @@ load_job_cache(const char *filename) /* I - job.cache filename */ if (sscanf(value, "%d%*[ \t]%15[^/]/%255s%d", &number, super, type, &compression) != 4) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Bad File on line %d.", linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Bad File on line %d of %s.", linenum, filename); continue; } if (number < 1 || number > job->num_files) { - cupsdLogMessage(CUPSD_LOG_ERROR, "Bad File number %d on line %d.", - number, linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Bad File number %d on line %d of %s.", number, linenum, filename); continue; } @@ -4271,14 +4267,13 @@ load_job_cache(const char *filename) /* I - job.cache filename */ } } else - cupsdLogMessage(CUPSD_LOG_ERROR, "Unknown %s directive on line %d.", - line, linenum); + cupsdLogMessage(CUPSD_LOG_ERROR, "Unknown %s directive on line %d of %s.", line, linenum, filename); } if (job) { cupsdLogMessage(CUPSD_LOG_ERROR, - "Missing directive on line %d.", linenum); + "Missing directive on line %d of %s.", linenum, filename); cupsdDeleteJob(job, CUPSD_JOB_PURGE); } @@ -4738,7 +4733,7 @@ stop_job(cupsd_job_t *job, /* I - Job */ FilterLevel -= job->cost; job->cost = 0; - if (action == CUPSD_JOB_DEFAULT && !job->kill_time) + if (action == CUPSD_JOB_DEFAULT && !job->kill_time && job->backend > 0) job->kill_time = time(NULL) + JobKillDelay; else if (action >= CUPSD_JOB_FORCE) job->kill_time = 0; @@ -5286,5 +5281,5 @@ update_job_attrs(cupsd_job_t *job, /* I - Job to update */ /* - * End of "$Id: job.c 12140 2014-08-30 01:51:22Z msweet $". + * End of "$Id: job.c 12463 2015-01-30 16:34:31Z msweet $". */ diff --git a/scheduler/printers.c b/scheduler/printers.c index 07e07c17e..96f6d063f 100644 --- a/scheduler/printers.c +++ b/scheduler/printers.c @@ -1,5 +1,5 @@ /* - * "$Id: printers.c 12170 2014-09-30 16:12:03Z msweet $" + * "$Id: printers.c 12463 2015-01-30 16:34:31Z msweet $" * * Printer routines for the CUPS scheduler. * @@ -3685,8 +3685,6 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */ _ppdCacheDestroy(p->pc); p->pc = NULL; - cupsdClearString(&(p->make_model)); - if (cache_info.st_mtime >= ppd_info.st_mtime) { cupsdLogMessage(CUPSD_LOG_DEBUG, "load_ppd: Loading %s...", cache_name); @@ -3710,6 +3708,8 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */ cupsdLogMessage(CUPSD_LOG_DEBUG, "load_ppd: Loading %s...", ppd_name); + cupsdClearString(&(p->make_model)); + p->type &= (cups_ptype_t)~CUPS_PRINTER_OPTIONS; p->type |= CUPS_PRINTER_BW; @@ -4724,14 +4724,12 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */ pstatus = ppdLastError(&pline); - cupsdLogMessage(CUPSD_LOG_ERROR, "PPD file for %s cannot be loaded!", - p->name); + cupsdLogMessage(CUPSD_LOG_ERROR, "PPD file for %s cannot be loaded.", p->name); if (pstatus <= PPD_ALLOC_ERROR) - cupsdLogMessage(CUPSD_LOG_ERROR, "%s", strerror(errno)); + cupsdLogMessage(CUPSD_LOG_ERROR, "%s: %s", ppd_name, strerror(errno)); else - cupsdLogMessage(CUPSD_LOG_ERROR, "%s on line %d.", - ppdErrorString(pstatus), pline); + cupsdLogMessage(CUPSD_LOG_ERROR, "%s on line %d of %s.", ppdErrorString(pstatus), pline, ppd_name); cupsdLogMessage(CUPSD_LOG_INFO, "Hint: Run \"cupstestppd %s\" and fix any errors.", @@ -4936,5 +4934,5 @@ write_xml_string(cups_file_t *fp, /* I - File to write to */ /* - * End of "$Id: printers.c 12170 2014-09-30 16:12:03Z msweet $". + * End of "$Id: printers.c 12463 2015-01-30 16:34:31Z msweet $". */ diff --git a/scheduler/process.c b/scheduler/process.c index 7a9df0f34..1154043df 100644 --- a/scheduler/process.c +++ b/scheduler/process.c @@ -1,9 +1,9 @@ /* - * "$Id: process.c 12252 2014-11-14 17:14:45Z msweet $" + * "$Id: process.c 12471 2015-02-01 05:07:10Z msweet $" * * Process management routines for the CUPS scheduler. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -26,6 +26,15 @@ # include extern char **environ; #endif /* HAVE_POSIX_SPAWN */ +#ifdef HAVE_POSIX_SPAWN +# if !defined(__OpenBSD__) || OpenBSD >= 201505 +# define USE_POSIX_SPAWN 1 +# else +# define USE_POSIX_SPAWN 0 +# endif /* !__OpenBSD__ || */ +#else +# define USE_POSIX_SPAWN 0 +#endif /* HAVE_POSIX_SPAWN */ /* @@ -323,6 +332,9 @@ cupsdCreateProfile(int job_id, /* I - Job ID or 0 for none */ /* Also allow access to device files... */ cupsFilePuts(fp, "(allow file-write* file-read-data file-read-metadata file-ioctl\n" " (regex #\"^/dev/\"))\n"); + + /* And allow kernel extensions to be loaded, e.g., SMB */ + cupsFilePuts(fp, "(allow system-kext-load)\n"); } else { @@ -465,13 +477,13 @@ cupsdStartProcess( nice_str[16]; /* FilterNice string */ uid_t user; /* Command UID */ cupsd_proc_t *proc; /* New process record */ -#if defined(HAVE_POSIX_SPAWN) && !defined(__OpenBSD__) +#if USE_POSIX_SPAWN posix_spawn_file_actions_t actions; /* Spawn file actions */ posix_spawnattr_t attrs; /* Spawn attributes */ sigset_t defsignals; /* Default signals */ #elif defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET) struct sigaction action; /* POSIX signal handler */ -#endif /* HAVE_POSIX_SPAWN && !__OpenBSD__ */ +#endif /* USE_POSIX_SPAWN */ #if defined(__APPLE__) char processPath[1024], /* CFProcessPath environment variable */ linkpath[1024]; /* Link path for symlinks... */ @@ -535,9 +547,9 @@ cupsdStartProcess( * Use helper program when we have a sandbox profile... */ -#if !defined(HAVE_POSIX_SPAWN) || defined(__OpenBSD__) +#if !USE_POSIX_SPAWN if (profile) -#endif /* !HAVE_POSIX_SPAWN || __OpenBSD__ */ +#endif /* !USE_POSIX_SPAWN */ { snprintf(cups_exec, sizeof(cups_exec), "%s/daemon/cups-exec", ServerBin); snprintf(user_str, sizeof(user_str), "%d", user); @@ -573,7 +585,7 @@ cupsdStartProcess( cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdStartProcess: argv[%d] = \"%s\"", i, argv[i]); } -#if defined(HAVE_POSIX_SPAWN) && !defined(__OpenBSD__) /* OpenBSD posix_spawn is busted with SETSIGDEF */ +#if USE_POSIX_SPAWN /* * Setup attributes and file actions for the spawn... */ @@ -796,7 +808,7 @@ cupsdStartProcess( } cupsdReleaseSignals(); -#endif /* HAVE_POSIX_SPAWN && !__OpenBSD__ */ +#endif /* USE_POSIX_SPAWN */ if (*pid) { @@ -878,5 +890,5 @@ cupsd_requote(char *dst, /* I - Destination buffer */ /* - * End of "$Id: process.c 12252 2014-11-14 17:14:45Z msweet $". + * End of "$Id: process.c 12471 2015-02-01 05:07:10Z msweet $". */ diff --git a/systemv/cupstestppd.c b/systemv/cupstestppd.c index 440c64ee2..94d67c74c 100644 --- a/systemv/cupstestppd.c +++ b/systemv/cupstestppd.c @@ -1,9 +1,9 @@ /* - * "$Id: cupstestppd.c 11558 2014-02-06 18:33:34Z msweet $" + * "$Id: cupstestppd.c 12412 2015-01-19 15:18:02Z msweet $" * * PPD test program for CUPS. * - * Copyright 2007-2013 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -15,26 +15,6 @@ * PostScript is a trademark of Adobe Systems, Inc. * * This file is subject to the Apple OS-Developed Software exception. - * - * Contents: - * - * main() - Main entry for test program. - * check_basics() - Check for CR LF, mixed line endings, and blank - * lines. - * check_constraints() - Check UIConstraints in the PPD file. - * check_case() - Check that there are no duplicate groups, options, - * or choices that differ only by case. - * check_defaults() - Check default option keywords in the PPD file. - * check_duplex() - Check duplex keywords in the PPD file. - * check_filters() - Check filters in the PPD file. - * check_profiles() - Check ICC color profiles in the PPD file. - * check_sizes() - Check media sizes in the PPD file. - * check_translations() - Check translations in the PPD file. - * show_conflicts() - Show option conflicts in a PPD file. - * test_raster() - Test PostScript commands for raster printers. - * usage() - Show program usage. - * valid_path() - Check whether a path has the correct capitalization. - * valid_utf8() - Check whether a string contains valid UTF-8 text. */ /* @@ -3218,8 +3198,8 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */ pwg_media = pwgMediaForSize(width_2540ths, length_2540ths); if (pwg_media && - (fabs(pwg_media->width - width_2540ths) > 34 || - fabs(pwg_media->length - length_2540ths) > 34)) + (abs(pwg_media->width - width_2540ths) > 34 || + abs(pwg_media->length - length_2540ths) > 34)) pwg_media = NULL; /* Only flag matches within a point */ if (pwg_media && pwg_media->ppd && @@ -3992,5 +3972,5 @@ valid_utf8(const char *s) /* I - String to check */ /* - * End of "$Id: cupstestppd.c 11558 2014-02-06 18:33:34Z msweet $". + * End of "$Id: cupstestppd.c 12412 2015-01-19 15:18:02Z msweet $". */ diff --git a/templates/es/trailer.tmpl b/templates/es/trailer.tmpl index 1440da4c0..9bdd1a76c 100644 --- a/templates/es/trailer.tmpl +++ b/templates/es/trailer.tmpl @@ -1,5 +1,5 @@ -

    + diff --git a/templates/ja/add-class.tmpl b/templates/ja/add-class.tmpl new file mode 100644 index 000000000..7dfa6423e --- /dev/null +++ b/templates/ja/add-class.tmpl @@ -0,0 +1,37 @@ +

    クラスの追加

    + +
    + + + +
  • Table 2: Access Control Recipes
    + + + + + + + + + + + + + + + + + + + + +
    名前:
    +
    説明:
    +("両面ありHP LaserJet" のように人が読みやすい説明)
    場所:
    +("研究室1" のように人が読みやすい場所)
    メンバー: + +
    + + diff --git a/templates/ja/add-printer.tmpl b/templates/ja/add-printer.tmpl new file mode 100644 index 000000000..13d5e2011 --- /dev/null +++ b/templates/ja/add-printer.tmpl @@ -0,0 +1,44 @@ +

    新しいプリンターの追加

    + +
    + + + + + + +{?current_make!?:} +{?current_make_and_model!?:} + + + + + + + + + + + + + + + + + + + + + + + + + + +
    名前:
    +("/"、"#"、スペースを除く表示可能文字を含めることができます)
    説明:
    +("両面ありHP LaserJet" のように人が読みやすい説明)
    場所:
    +("研究室1" のように人が読みやすい場所)
    接続:{device_uri}
    共有: +このプリンターを共有する
    + +
    diff --git a/templates/ja/add-rss-subscription.tmpl b/templates/ja/add-rss-subscription.tmpl new file mode 100644 index 000000000..c5afeb068 --- /dev/null +++ b/templates/ja/add-rss-subscription.tmpl @@ -0,0 +1,44 @@ +
    + + + +

    RSS 購読を追加

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    名前:
    +("/"、"?"、"#"、スペースを除く文字を含めることができます)
    キュー:
    イベント:ジョブが作成された
    +ジョブが完了した
    +ジョブが停止した
    +ジョブオプションが変更された
        ã‚­ãƒ¥ãƒ¼ãŒåœæ­¢ã—た
    +キューが追加された
    +キューが変更された
    +キューが削除された
        ã‚µãƒ¼ãƒãƒ¼ãŒé–‹å§‹ã—た
    +サーバーが停止した
    +サーバーが再起動した
    +サーバーのセキュリティを監査中
    フィード内の最大イベント数:
    + +
    diff --git a/templates/ja/admin.tmpl b/templates/ja/admin.tmpl new file mode 100644 index 000000000..13d6f1349 --- /dev/null +++ b/templates/ja/admin.tmpl @@ -0,0 +1,97 @@ +
    +
    +

    プリンター

    + +

    +

    +
    +
    + {have_samba?
    :} +

    + +

    クラス

    + +

    +

    +
    +

    + +

    ジョブ

    + +

    +

    +

    +
    +
    +

    サーバー

    + +

    +

    +
    +
    +
    +

    + + {SETTINGS_ERROR?

    {SETTINGS_MESSAGE}

    +
    {SETTINGS_ERROR}
    : + +
    + + + {ADVANCEDSETTINGS?

    サーバー設定\:

    + +

    詳細
    + + + このシステムに接続されているプリンターを共有
    +         æœ€å¤§ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆæ•°\: +
    +          インターネットからの印刷を許可
    +          ウェブインターフェイスを公開
    + リモート管理を許可
    + {have_gssapi? Kerberos 認証を使用 (FAQ)
    :} + 所有者以外のユーザーにもジョブのキャンセルを許可
    + ジョブの履歴を保存
    +         æœ€å¤§ã‚¸ãƒ§ãƒ–æ•° (0 は無制限)\: +
    +         ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿ã‚’保持\: +
    +         ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’保持\: +
    + トラブルシューティングのためにデバッグ情報を保存
    +         æœ€å¤§ãƒ­ã‚°ãƒ•ã‚¡ã‚¤ãƒ«ã‚µã‚¤ã‚º\: +

    + + :

    サーバー設定:

    + +

    詳細
    + + このシステムに接続されているプリンターを共有
    +          インターネットからの印刷を許可
    + リモート管理を許可
    + {have_gssapi? Kerberos 認証を使用 (FAQ)
    :} + 所有者以外のユーザーにもジョブのキャンセルを許可
    + トラブルシューティングのためにデバッグ情報を保存

    + + } +

    + +
    } +
    +
    + +
    +

    RSS 購読

    + +

    +

    +

    + + {notify_subscription_id? + + {[notify_subscription_id] + } + +
    名前イベントキュー名
    {notify_recipient_name}
    +
     
    {notify_events} {notify_printer_name?{notify_printer_name}:すべてのキュー}
    :} +
    \ No newline at end of file diff --git a/templates/ja/choose-device.tmpl b/templates/ja/choose-device.tmpl new file mode 100644 index 000000000..3a4fe7434 --- /dev/null +++ b/templates/ja/choose-device.tmpl @@ -0,0 +1,49 @@ +

    {op=modify-printer?{printer_name} の変更:プリンターの追加}

    + +{CUPS_GET_DEVICES_DONE?
    + + +{printer_name?:} + + +{op=add-printer?: + + +} + + + + + + + + + + + + + + + + + +
    現在の接続\: +{current_device_uri}
    ローカルプリンター\: +{[device_uri]{device_class!network? +{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}
    +:}} +
    発見されたネットワークプリンター\: +{[device_uri]{device_class=network?{device_uri~[a-z]+://? +{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}
    +:}:}} +
    その他のネットワークプリンター\: +{[device_uri]{device_class=network?{device_uri~[a-z]+://?: +{device_info} {?device_make_and_model!Unknown?({device_make_and_model}):}
    +}:}} +
    + +
    :

    プリンターを探しています...

    } diff --git a/templates/ja/choose-make.tmpl b/templates/ja/choose-make.tmpl new file mode 100644 index 000000000..eacc7d50c --- /dev/null +++ b/templates/ja/choose-make.tmpl @@ -0,0 +1,61 @@ +

    {op=modify-printer?{printer_name}の変更:プリンターの追加}

    + +
    + + +{printer_name?:} + + + + + + +{op=modify-printer?: + + +} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    名前:{printer_name}
    説明:{printer_info}
    場所:{printer_location}
    接続:{device_uri}
    共有: +このプリンターを共有{?printer_is_shared=?しない:{?printer_is_shared=0?しない:する}}
    メーカー: + +
     
    または PPD ファイルを提供:
    + +
    diff --git a/templates/ja/choose-model.tmpl b/templates/ja/choose-model.tmpl new file mode 100644 index 000000000..daf1375fd --- /dev/null +++ b/templates/ja/choose-model.tmpl @@ -0,0 +1,57 @@ +

    {op=modify-printer?{printer_name}の変更:プリンターの追加}

    + +
    + + +{printer_name?:} + + + + + +{op=modify-printer?: + + +} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    名前:{printer_name}
    説明:{printer_info}
    場所:{printer_location}
    接続:{device_uri}
    共有: +このプリンターを共有{?printer_is_shared=?しない:{?printer_is_shared=0?しない:する}}
    メーカー:{PPD_MAKE}
    モデル: + +
    または PPD ファイルを提供:
    + +
    diff --git a/templates/ja/choose-serial.tmpl b/templates/ja/choose-serial.tmpl new file mode 100644 index 000000000..48b4a6682 --- /dev/null +++ b/templates/ja/choose-serial.tmpl @@ -0,0 +1,49 @@ +

    {op=modify-printer?{printer_name}の変更:プリンターの追加}

    + +
    + + +{printer_name?:} + + + + + + + + + + + + + + + + + + + + + + + + + + +
    接続:{device_uri}
    ボーレート:
    パリティ:
    データビット:
    フロー制御:
    + +
    diff --git a/templates/ja/choose-uri.tmpl b/templates/ja/choose-uri.tmpl new file mode 100644 index 000000000..cf442067c --- /dev/null +++ b/templates/ja/choose-uri.tmpl @@ -0,0 +1,40 @@ +

    {op=modify-printer?{printer_name}の変更:プリンターの追加}

    + +
    + + +{printer_name?:} + + + + + + + + + + + + + + + +
    接続:
    例: +
    +    http://hostname:631/ipp/
    +    http://hostname:631/ipp/port1
    +
    +    ipp://hostname/ipp/
    +    ipp://hostname/ipp/port1
    +
    +    lpd://hostname/queue
    +
    +    socket://hostname
    +    socket://hostname:9100
    +
    + +

    あなたのプリンターにふさわしい URI については、"ネットワークプリンター"を参照してください。

    + +
    + +
    diff --git a/templates/ja/class-added.tmpl b/templates/ja/class-added.tmpl new file mode 100644 index 000000000..f444cf67e --- /dev/null +++ b/templates/ja/class-added.tmpl @@ -0,0 +1,3 @@ +

    クラスの追加

    + +

    クラス {printer_name} は正しく追加されました。 diff --git a/templates/ja/class-confirm.tmpl b/templates/ja/class-confirm.tmpl new file mode 100644 index 000000000..c275afab2 --- /dev/null +++ b/templates/ja/class-confirm.tmpl @@ -0,0 +1,6 @@ +

    クラス {printer_name} の削除

    + +

    警告: 本当にクラス +{printer_name} を削除してもよいですか?

    + +

    diff --git a/templates/ja/class-deleted.tmpl b/templates/ja/class-deleted.tmpl new file mode 100644 index 000000000..be9b5e89c --- /dev/null +++ b/templates/ja/class-deleted.tmpl @@ -0,0 +1,3 @@ +

    クラス {printer_name} の削除

    + +

    クラス {printer_name} は正しく削除されました。 diff --git a/templates/ja/class-jobs-header.tmpl b/templates/ja/class-jobs-header.tmpl new file mode 100644 index 000000000..d12840e47 --- /dev/null +++ b/templates/ja/class-jobs-header.tmpl @@ -0,0 +1 @@ +

    ジョブ

    diff --git a/templates/ja/class-modified.tmpl b/templates/ja/class-modified.tmpl new file mode 100644 index 000000000..6c9256be9 --- /dev/null +++ b/templates/ja/class-modified.tmpl @@ -0,0 +1,3 @@ +

    クラス {printer_name} の変更

    + +

    クラス {printer_name} は正しく変更されました。 diff --git a/templates/ja/class.tmpl b/templates/ja/class.tmpl new file mode 100644 index 000000000..a5becb666 --- /dev/null +++ b/templates/ja/class.tmpl @@ -0,0 +1,41 @@ +

    {printer_name} +({printer_state=3?待機中:{printer_state=4?処理中:停止}}, +{printer_is_accepting_jobs=0?ジョブを拒否中:ジョブを受け付け中}, +{server_is_sharing_printers=0?非:{printer_is_shared=0?非:}} 共有{default_name={printer_name}?, サーバーのデフォルト:})

    + +
    + + + +
    + +
    + + + + + +
    + + + + + + +
    説明:{printer_info}
    場所:{printer_location}
    メンバー:{?member_uris=?なし:{member_uris}}
    デフォルト:job-sheets={job_sheets_default} +media={media_default?{media_default}:不明} +{sides_default?sides={sides_default}:}
    diff --git a/templates/ja/classes-header.tmpl b/templates/ja/classes-header.tmpl new file mode 100644 index 000000000..506603cd5 --- /dev/null +++ b/templates/ja/classes-header.tmpl @@ -0,0 +1 @@ +

    {total=0?クラスはありません:{total} 個のクラスのうち {#printer_name} 個を表示中}。

    diff --git a/templates/ja/classes.tmpl b/templates/ja/classes.tmpl new file mode 100644 index 000000000..823a832a9 --- /dev/null +++ b/templates/ja/classes.tmpl @@ -0,0 +1,11 @@ +{#printer_name=0?: + + + + + +{[printer_name] + +} + +
    {ORDER=dec? キュー名 : キュー名 }説明場所メンバー状態
    {printer_name}{printer_info}{printer_location}{?member_uris=?なし:{member_uris}}{printer_state=3?待機中:{printer_state=4?処理中:停止}}{printer_state_message? - "{printer_state_message}":}
    } diff --git a/templates/ja/command.tmpl b/templates/ja/command.tmpl new file mode 100644 index 000000000..0aa3a39e2 --- /dev/null +++ b/templates/ja/command.tmpl @@ -0,0 +1,8 @@ +

    {printer_name} の {title}

    + +

    {job_state>5?:Busy Indicator }プリンターコマンドジョブ +{job_state=3?ペンディング中:{job_state=4?ホールド中: +{job_state=5?処理中:{job_state=6?停止中: +{job_state=7?キャンセル:{job_state=8?破棄:完了}}}}}}{job_state=9?:{job_printer_state_message?, +"{job_printer_state_message}":}}

    diff --git a/templates/ja/edit-config.tmpl b/templates/ja/edit-config.tmpl new file mode 100644 index 000000000..b2a4b8f3b --- /dev/null +++ b/templates/ja/edit-config.tmpl @@ -0,0 +1,20 @@ + + +

    設定ファイルの編集

    + +
    + + + + + +

    +

    + +
    diff --git a/templates/ja/error-op.tmpl b/templates/ja/error-op.tmpl new file mode 100644 index 000000000..b5e94fbfd --- /dev/null +++ b/templates/ja/error-op.tmpl @@ -0,0 +1,6 @@ +

    {?title} {?printer_name} のエラー

    + +

    エラー:

    + +
    "{op}" は未知の操作です!
    + diff --git a/templates/ja/error.tmpl b/templates/ja/error.tmpl new file mode 100644 index 000000000..0ed35fc64 --- /dev/null +++ b/templates/ja/error.tmpl @@ -0,0 +1,5 @@ +

    {?title} {?printer_name} のエラー

    + +

    {?message?{message}:エラー}:

    + +
    {error}
    diff --git a/templates/ja/header.tmpl.in b/templates/ja/header.tmpl.in new file mode 100644 index 000000000..86298ac21 --- /dev/null +++ b/templates/ja/header.tmpl.in @@ -0,0 +1,35 @@ + + + + + + + + {refresh_page?:} + + + + {title} - CUPS @CUPS_VERSION@@CUPS_REVISION@ + + + +
    +
    +

    {title}

    diff --git a/templates/ja/help-header.tmpl b/templates/ja/help-header.tmpl new file mode 100644 index 000000000..118d15c6a --- /dev/null +++ b/templates/ja/help-header.tmpl @@ -0,0 +1,47 @@ +
    +{TOPIC?:} + +

    +{HELPTITLE?{HELPTITLE}:{TOPIC?{TOPIC}:すべてのドキュメント}}内を検索: + +

    + +
    + + + + +{QUERY?

    {HELPFILE?{HELPTITLE}:{TOPIC?{TOPIC}:すべてのドキュメント}}の検索結果\:

    +{QTEXT?:} +:

    マッチするものは見つかりませんでした。

    } +
    :} +{HELPTITLE?
    : + +

    オンラインヘルプ

    + +

    これは、CUPS のオンラインヘルプインターフェイスです。 +オンラインヘルプ情報を表示するには、検索語句を上に入力するか、 +ドキュメントリンクのいずれかをクリックしてください。

    + +

    あなたが CUPS について初心者なら、 "CUPS の概要" ページを読んでください。

    + +

    CUPS ホームページ でも、 +ユーザーディスカッションフォーラム、FAQ、 +バグ報告や機能リクエストを申請するフォームといった、 +多くのリソースを提供しています。

    } diff --git a/templates/ja/help-printable.tmpl b/templates/ja/help-printable.tmpl new file mode 100644 index 000000000..2463c1630 --- /dev/null +++ b/templates/ja/help-printable.tmpl @@ -0,0 +1,9 @@ + + + + + {HELPTITLE} + + + + diff --git a/templates/ja/help-trailer.tmpl b/templates/ja/help-trailer.tmpl new file mode 100644 index 000000000..e69de29bb diff --git a/templates/ja/job-cancel.tmpl b/templates/ja/job-cancel.tmpl new file mode 100644 index 000000000..c6fd0858a --- /dev/null +++ b/templates/ja/job-cancel.tmpl @@ -0,0 +1,3 @@ +

    ジョブ {job_id} のキャンセル

    + +

    ジョブ {job_id} はキャンセルされました。 diff --git a/templates/ja/job-hold.tmpl b/templates/ja/job-hold.tmpl new file mode 100644 index 000000000..014a48f11 --- /dev/null +++ b/templates/ja/job-hold.tmpl @@ -0,0 +1,3 @@ +

    ジョブ {job_id} の保留

    + +

    ジョブ {job_id} は印刷を保留されました。 diff --git a/templates/ja/job-move.tmpl b/templates/ja/job-move.tmpl new file mode 100644 index 000000000..ce3072e3c --- /dev/null +++ b/templates/ja/job-move.tmpl @@ -0,0 +1,23 @@ +

    + + +{job_id?:} + +

    {job_id?ジョブ {job_id} の移動:すべてのジョブの移動}

    + + + + + + + + + + +
    新しい宛先: + +
    + +
    diff --git a/templates/ja/job-moved.tmpl b/templates/ja/job-moved.tmpl new file mode 100644 index 000000000..b76b64dcc --- /dev/null +++ b/templates/ja/job-moved.tmpl @@ -0,0 +1,5 @@ +

    {job_id?ジョブ {job_id} の移動:すべてのジョブの移動}

    + +

    {job_id?ジョブ {job_id}:すべてのジョブ} は +{job_printer_name} に移動しました。

    + diff --git a/templates/ja/job-release.tmpl b/templates/ja/job-release.tmpl new file mode 100644 index 000000000..025571f33 --- /dev/null +++ b/templates/ja/job-release.tmpl @@ -0,0 +1,3 @@ +

    ジョブ {job_id} の解放

    + +

    ジョブ {job_id} は印刷から解放されました。 diff --git a/templates/ja/job-restart.tmpl b/templates/ja/job-restart.tmpl new file mode 100644 index 000000000..8b8c0f69b --- /dev/null +++ b/templates/ja/job-restart.tmpl @@ -0,0 +1,3 @@ +

    ジョブ {job_id} の再印刷

    + +

    ジョブ {job_id} は再印刷されました。 diff --git a/templates/ja/jobs-header.tmpl b/templates/ja/jobs-header.tmpl new file mode 100644 index 000000000..20b544ab7 --- /dev/null +++ b/templates/ja/jobs-header.tmpl @@ -0,0 +1,5 @@ +{?which_jobs=?:

    } +{?which_jobs=completed?:
    } +{?which_jobs=all?:
    } + +

    {total=0?ジョブはありません:{total} 個の{?which_jobs=?アクティブな:{which_jobs=all?:完了した}}ジョブのうち {#job_id} 個を表示中}}。

    diff --git a/templates/ja/jobs.tmpl b/templates/ja/jobs.tmpl new file mode 100644 index 000000000..220c950aa --- /dev/null +++ b/templates/ja/jobs.tmpl @@ -0,0 +1,36 @@ +{#job_id=0?: + + + + + +{[job_id] + + + + + + + + + +} + +
    {ORDER=dec? ID : ID }名前ユーザーサイズページ状態制御
    {job_printer_name}-{job_id}{?phone? ({phone}):} {?job_name=?未知:{job_name}} {?job_originating_user_name=?隠匿:{job_originating_user_name}} {job_k_octets}k {job_media_sheets_completed=0?不明:{?job_media_sheets_completed}} {job_state=3?{time_at_creation}
    から保留中:{job_state=4?{time_at_creation}
    から保留中: +{job_state=5?{time_at_processing}
    から処理中:{job_state=6?に停止: +{job_state=7?{time_at_completed}
    にキャンセル:{job_state=8?に中断:{time_at_completed}
    に完了}}}}}} {job_printer_state_message?
    +"{job_printer_state_message}":}
    +{job_preserved>0?{job_state>5? +
    :}:} +{job_state=4? +
    +
    :} +{job_state=3? +
    +
    :} +{job_state<7? +
    +
    +
    :} + 
    +} diff --git a/templates/ja/list-available-printers.tmpl b/templates/ja/list-available-printers.tmpl new file mode 100644 index 000000000..e84227d48 --- /dev/null +++ b/templates/ja/list-available-printers.tmpl @@ -0,0 +1,7 @@ +

    利用可能なプリンター

    + +{#device_uri=0?

    プリンターが見つかりません。

    +:
      {[device_uri] +
    • +{device_make_and_model} ({device_info})
    • +}
    } diff --git a/templates/ja/modify-class.tmpl b/templates/ja/modify-class.tmpl new file mode 100644 index 000000000..f552bdf5b --- /dev/null +++ b/templates/ja/modify-class.tmpl @@ -0,0 +1,31 @@ +

    クラス {printer_name} の変更

    + +
    + + + + + + + + + + + + + + + + + + + + + +
    説明:
    場所:
    メンバー: + +
    + +
    diff --git a/templates/ja/modify-printer.tmpl b/templates/ja/modify-printer.tmpl new file mode 100644 index 000000000..bb9aeac3e --- /dev/null +++ b/templates/ja/modify-printer.tmpl @@ -0,0 +1,39 @@ +

    {printer_name} の変更

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    説明:
    +("両面ありHP LaserJet" のように人が読みやすい説明)
    場所:
    +("研究室1" のように人が読みやすい場所)
    接続:{device_uri}
    共有: +このプリンターを共有する
    + +
    diff --git a/templates/ja/norestart.tmpl b/templates/ja/norestart.tmpl new file mode 100644 index 000000000..7007f3b47 --- /dev/null +++ b/templates/ja/norestart.tmpl @@ -0,0 +1,4 @@ +

    設定変更

    + +

    設定に何も変更が行われなかったため、サーバーは再起動されませんでした...

    + diff --git a/templates/ja/option-boolean.tmpl b/templates/ja/option-boolean.tmpl new file mode 100644 index 000000000..e832ee102 --- /dev/null +++ b/templates/ja/option-boolean.tmpl @@ -0,0 +1,6 @@ + +{keytext}: + +{[choices]{text}} + + diff --git a/templates/ja/option-conflict.tmpl b/templates/ja/option-conflict.tmpl new file mode 100644 index 000000000..4f782ac80 --- /dev/null +++ b/templates/ja/option-conflict.tmpl @@ -0,0 +1,7 @@ +

    エラー: 以下のオプションは競合します:

    + + + +

    競合を解決するために、1 つ以上のオプションを変更してください。

    diff --git a/templates/ja/option-header.tmpl b/templates/ja/option-header.tmpl new file mode 100644 index 000000000..464726a50 --- /dev/null +++ b/templates/ja/option-header.tmpl @@ -0,0 +1,5 @@ +
    + +

    {group}

    + + diff --git a/templates/ja/option-pickmany.tmpl b/templates/ja/option-pickmany.tmpl new file mode 100644 index 000000000..0da75e5d2 --- /dev/null +++ b/templates/ja/option-pickmany.tmpl @@ -0,0 +1,6 @@ + + + + diff --git a/templates/ja/option-pickone.tmpl b/templates/ja/option-pickone.tmpl new file mode 100644 index 000000000..514e2abc2 --- /dev/null +++ b/templates/ja/option-pickone.tmpl @@ -0,0 +1,18 @@ + + +:} + diff --git a/templates/ja/option-trailer.tmpl b/templates/ja/option-trailer.tmpl new file mode 100644 index 000000000..da2db1e09 --- /dev/null +++ b/templates/ja/option-trailer.tmpl @@ -0,0 +1,5 @@ +
    {keytext}:
    {keytext}: +{iscustom=1?{[params] + + +}
    {paramtext}:{params=Units?:}
    +
    + +

    + +
    \ No newline at end of file diff --git a/templates/ja/pager.tmpl b/templates/ja/pager.tmpl new file mode 100644 index 000000000..ebba3a004 --- /dev/null +++ b/templates/ja/pager.tmpl @@ -0,0 +1,6 @@ + + + + + +
    {PREV?
    : }
    {NEXT?
    : }
    diff --git a/templates/ja/printer-accept.tmpl b/templates/ja/printer-accept.tmpl new file mode 100644 index 000000000..6a97d85ed --- /dev/null +++ b/templates/ja/printer-accept.tmpl @@ -0,0 +1,5 @@ +

    {is_class?クラス:プリンター} {printer_name} のジョブの受け付け

    + +

    {is_class?クラス:プリンター} {printer_name} +はジョブを受け付けるようになりました。

    diff --git a/templates/ja/printer-added.tmpl b/templates/ja/printer-added.tmpl new file mode 100644 index 000000000..be475f25c --- /dev/null +++ b/templates/ja/printer-added.tmpl @@ -0,0 +1,4 @@ +

    プリンターの追加

    + +

    プリンター {printer_name} は正しく追加されました。 + diff --git a/templates/ja/printer-cancel-jobs.tmpl b/templates/ja/printer-cancel-jobs.tmpl new file mode 100644 index 000000000..f6a15981d --- /dev/null +++ b/templates/ja/printer-cancel-jobs.tmpl @@ -0,0 +1,5 @@ +

    Cancel Jobs On {is_class?クラス:プリンター} {printer_name} のジョブのキャンセル

    + +

    {is_class?クラス:プリンター} {printer_name} +のすべてのジョブはキャンセルされました。

    diff --git a/templates/ja/printer-configured.tmpl b/templates/ja/printer-configured.tmpl new file mode 100644 index 000000000..190fb9bac --- /dev/null +++ b/templates/ja/printer-configured.tmpl @@ -0,0 +1,4 @@ +

    {printer_name} のデフォルトオプションの設定

    + +

    {OP=set-class-options?クラス :プリンター }{printer_name} +のデフォルトオプションは正しく設定されました。 diff --git a/templates/ja/printer-confirm.tmpl b/templates/ja/printer-confirm.tmpl new file mode 100644 index 000000000..bdbaf3d0a --- /dev/null +++ b/templates/ja/printer-confirm.tmpl @@ -0,0 +1,5 @@ +

    プリンター {printer_name} の削除

    + +

    警告: 本当にプリンター {printer_name} を削除してよいですか?

    + +

    diff --git a/templates/ja/printer-default.tmpl b/templates/ja/printer-default.tmpl new file mode 100644 index 000000000..cc5398c8a --- /dev/null +++ b/templates/ja/printer-default.tmpl @@ -0,0 +1,8 @@ +

    {is_class?クラス:プリンター} {printer_name} をデフォルトに設定

    + +

    {is_class?クラス:プリンター} {printer_name} +をサーバーのデフォルトプリンターに設定しました。

    + +
    注意: lpoptions コマンドで設定されたユーザーのデフォルトは、 +このサーバーのデフォルト設定を上書きします。
    diff --git a/templates/ja/printer-deleted.tmpl b/templates/ja/printer-deleted.tmpl new file mode 100644 index 000000000..0aa3adb60 --- /dev/null +++ b/templates/ja/printer-deleted.tmpl @@ -0,0 +1,3 @@ +

    プリンター {printer_name} の削除

    + +

    プリンター {printer_name} は正しく削除されました。 diff --git a/templates/ja/printer-jobs-header.tmpl b/templates/ja/printer-jobs-header.tmpl new file mode 100644 index 000000000..d12840e47 --- /dev/null +++ b/templates/ja/printer-jobs-header.tmpl @@ -0,0 +1 @@ +

    ジョブ

    diff --git a/templates/ja/printer-modified.tmpl b/templates/ja/printer-modified.tmpl new file mode 100644 index 000000000..d2ed7b532 --- /dev/null +++ b/templates/ja/printer-modified.tmpl @@ -0,0 +1,4 @@ +

    プリンター {printer_name} の変更

    + +

    プリンター {printer_name} +は正しく変更されました。 diff --git a/templates/ja/printer-reject.tmpl b/templates/ja/printer-reject.tmpl new file mode 100644 index 000000000..cc64bbc5f --- /dev/null +++ b/templates/ja/printer-reject.tmpl @@ -0,0 +1,5 @@ +

    {is_class?クラス:プリンター} {printer_name} のジョブの拒否

    + +

    {is_class?クラス:プリンター} {printer_name} +はジョブを受け付けなくなりました。

    diff --git a/templates/ja/printer-start.tmpl b/templates/ja/printer-start.tmpl new file mode 100644 index 000000000..a13725f11 --- /dev/null +++ b/templates/ja/printer-start.tmpl @@ -0,0 +1,5 @@ +

    {is_class?クラス:プリンター} {printer_name} の再開

    + +

    {is_class?クラス:プリンター} {printer_name} +は再開しました。

    diff --git a/templates/ja/printer-stop.tmpl b/templates/ja/printer-stop.tmpl new file mode 100644 index 000000000..6c3cbd11d --- /dev/null +++ b/templates/ja/printer-stop.tmpl @@ -0,0 +1,5 @@ +

    {is_class?クラス:プリンター} {printer_name} の停止

    + +

    {is_class?クラス:プリンター} {printer_name} +は停止しました。

    diff --git a/templates/ja/printer.tmpl b/templates/ja/printer.tmpl new file mode 100644 index 000000000..846999070 --- /dev/null +++ b/templates/ja/printer.tmpl @@ -0,0 +1,43 @@ +

    {printer_name} +({printer_state=3?待機中:{printer_state=4?処理中:一時停止中}}, +{printer_is_accepting_jobs=0?ジョブを拒否中:ジョブを受け付け中}, +{server_is_sharing_printers=0?非:{printer_is_shared=0?非:}} 共有{default_name={printer_name}?, サーバーのデフォルト:})

    + +
    + + + +
    + +
    + + + + +
    + + + + + + +
    説明:{printer_info}
    場所:{printer_location}
    プリンタードライバー:{printer_make_and_model} ({color_supported=1?カラー:白黒}{sides_supported?, 両面可:})
    +
    接続:{device_uri}
    デフォルト設定:バナー={job_sheets_default} +用紙サイズ={media_default?{media_default}:不明} +{sides_default?両面指定={sides_default}:}
    diff --git a/templates/ja/printers-header.tmpl b/templates/ja/printers-header.tmpl new file mode 100644 index 000000000..1342eff42 --- /dev/null +++ b/templates/ja/printers-header.tmpl @@ -0,0 +1 @@ +

    {total=0?プリンターはありません:{total} 台のプリンターのうち {#printer_name} 台を表示中}。

    diff --git a/templates/ja/printers.tmpl b/templates/ja/printers.tmpl new file mode 100644 index 000000000..a8caaffd2 --- /dev/null +++ b/templates/ja/printers.tmpl @@ -0,0 +1,11 @@ +{#printer_name=0?: + + + + + +{[printer_name] + +} + +
    {ORDER=dec? キュー名 : キュー名 }説明場所メーカーとモデル状態
    {printer_name}{printer_info}{printer_location}{printer_make_and_model}{printer_state=3?待機中:{printer_state=4?処理中:停止}}{printer_state_message? - "{printer_state_message}":}
    } diff --git a/templates/ja/restart.tmpl b/templates/ja/restart.tmpl new file mode 100644 index 000000000..70c537e2b --- /dev/null +++ b/templates/ja/restart.tmpl @@ -0,0 +1,4 @@ +

    設定の変更

    + +

    サーバーが再起動する間しばらくお待ちください...

    diff --git a/templates/ja/samba-export.tmpl b/templates/ja/samba-export.tmpl new file mode 100644 index 000000000..b1d5050a4 --- /dev/null +++ b/templates/ja/samba-export.tmpl @@ -0,0 +1,55 @@ + + +
    + + + +

    プリンターを Samba にエクスポート

    + +{error?

    プリンターを Samba にエクスポートできません\:

    +
    {error}
    +

    より詳細な情報については error_log ファイルを参照してください。

    : +

    このページは、Windows クライアントがデスクトップ上の +マイネットワーク や ネットワークの場所 +アイコン経由でアクセスできるよう、プリンターの Samba +へのエクスポートを許可します。cupsaddsmb(8) man ページに書かれているように、 +事前に Windows PostScript ドライバーをインストールしておく必要があります。

    } + + + + + + + + + + + + + + + + + + +
    プリンター: +
    + すべてのプリンターをエクスポート +
    Samba のユーザー名: (必須)
    Samba のパスワード: (必須)
    + +
    diff --git a/templates/ja/samba-exported.tmpl b/templates/ja/samba-exported.tmpl new file mode 100644 index 000000000..f67ddd928 --- /dev/null +++ b/templates/ja/samba-exported.tmpl @@ -0,0 +1 @@ +

    プリンターは Samba に正しくエクスポートされました。

    diff --git a/templates/ja/search.tmpl b/templates/ja/search.tmpl new file mode 100644 index 000000000..3e819952c --- /dev/null +++ b/templates/ja/search.tmpl @@ -0,0 +1,10 @@ +
    +{WHICH_JOBS?:} +{ORDER?:} + +

    +{SEARCH_DEST?{SEARCH_DEST}:{SECTION=classes?クラス:{SECTION=jobs?ジョブ:プリンター}}} 内を検索: +

    + +
    diff --git a/templates/ja/set-printer-options-header.tmpl b/templates/ja/set-printer-options-header.tmpl new file mode 100644 index 000000000..4ab07db4e --- /dev/null +++ b/templates/ja/set-printer-options-header.tmpl @@ -0,0 +1,24 @@ +

    {printer_name} のデフォルトオプションの変更

    + +
    + + + +{HAVE_AUTOCONFIGURE?:} + + + +

    {[group_id] +{group}     }

    + +
    diff --git a/templates/ja/set-printer-options-trailer.tmpl b/templates/ja/set-printer-options-trailer.tmpl new file mode 100644 index 000000000..b92988a7f --- /dev/null +++ b/templates/ja/set-printer-options-trailer.tmpl @@ -0,0 +1,14 @@ +
    + + +
    diff --git a/templates/ja/subscription-added.tmpl b/templates/ja/subscription-added.tmpl new file mode 100644 index 000000000..60339c130 --- /dev/null +++ b/templates/ja/subscription-added.tmpl @@ -0,0 +1 @@ +

    {subscription_name} の購読は正しく追加されました。

    diff --git a/templates/ja/subscription-canceled.tmpl b/templates/ja/subscription-canceled.tmpl new file mode 100644 index 000000000..806522585 --- /dev/null +++ b/templates/ja/subscription-canceled.tmpl @@ -0,0 +1 @@ +

    購読 #{notify_subscription_id} はキャンセルされました。

    diff --git a/templates/ja/test-page.tmpl b/templates/ja/test-page.tmpl new file mode 100644 index 000000000..b460010bd --- /dev/null +++ b/templates/ja/test-page.tmpl @@ -0,0 +1,4 @@ +

    {printer_name} のテストページ印刷

    + +

    テストページを送信しました; ジョブ ID は +{printer_name}-{job_id} です。

    diff --git a/templates/ja/trailer.tmpl b/templates/ja/trailer.tmpl new file mode 100644 index 000000000..74447afd3 --- /dev/null +++ b/templates/ja/trailer.tmpl @@ -0,0 +1,5 @@ +
    + + + + diff --git a/templates/ja/users.tmpl b/templates/ja/users.tmpl new file mode 100644 index 000000000..4ba985515 --- /dev/null +++ b/templates/ja/users.tmpl @@ -0,0 +1,27 @@ +
    + + + +{IS_CLASS?:} + +

    {printer_name} に許可するユーザー

    + + + + + + + + + + +
    ユーザー: + +
    +これらのユーザーの印刷を許可 +これらのユーザーの印刷を禁止 +
    + +
    + +
    diff --git a/templates/trailer.tmpl b/templates/trailer.tmpl index c5614fb39..74447afd3 100644 --- a/templates/trailer.tmpl +++ b/templates/trailer.tmpl @@ -1,5 +1,5 @@ - + diff --git a/test/5.1-lpadmin.sh b/test/5.1-lpadmin.sh index dd9927b7d..bffe24b74 100644 --- a/test/5.1-lpadmin.sh +++ b/test/5.1-lpadmin.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: 5.1-lpadmin.sh 11398 2013-11-06 20:11:11Z msweet $" +# "$Id: 5.1-lpadmin.sh 12394 2014-12-19 15:33:36Z msweet $" # # Test the lpadmin command. # @@ -57,8 +57,8 @@ echo "" echo "Add Shared Printer Test" echo "" -echo " lpadmin -p Test3 -E -v ipp://localhost:8631/printers/Test2 -m raw" -$VALGRIND ../systemv/lpadmin -p Test3 -E -v ipp://localhost:8631/printers/Test2 -m raw 2>&1 +echo " lpadmin -p Test3 -E -v ipp://localhost:$IPP_PORT/printers/Test2 -m raw" +$VALGRIND ../systemv/lpadmin -p Test3 -E -v ipp://localhost:$IPP_PORT/printers/Test2 -m raw 2>&1 if test $? != 0; then echo " FAILED" exit 1 @@ -68,5 +68,5 @@ fi echo "" # -# End of "$Id: 5.1-lpadmin.sh 11398 2013-11-06 20:11:11Z msweet $". +# End of "$Id: 5.1-lpadmin.sh 12394 2014-12-19 15:33:36Z msweet $". # diff --git a/test/5.4-lpstat.sh b/test/5.4-lpstat.sh index 2209a5de7..b92df0b89 100644 --- a/test/5.4-lpstat.sh +++ b/test/5.4-lpstat.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: 5.4-lpstat.sh 11398 2013-11-06 20:11:11Z msweet $" +# "$Id: 5.4-lpstat.sh 12491 2015-02-06 18:46:09Z msweet $" # # Test the lpstat command. # @@ -30,7 +30,7 @@ echo "LPSTAT Test" echo "" echo " lpstat -H" server="`$VALGRIND ../systemv/lpstat -H 2>&1`" -if test $? != 0 -o "x$server" != xlocalhost:8631; then +if test $? != 0 -o "x$server" != x$CUPS_SERVER; then echo " FAILED ($server)" exit 1 else @@ -39,5 +39,5 @@ fi echo "" # -# End of "$Id: 5.4-lpstat.sh 11398 2013-11-06 20:11:11Z msweet $". +# End of "$Id: 5.4-lpstat.sh 12491 2015-02-06 18:46:09Z msweet $". # diff --git a/test/Makefile b/test/Makefile index 9a9e3fa0e..cda505d31 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,5 +1,5 @@ # -# "$Id: Makefile 11129 2013-07-11 20:39:46Z msweet $" +# "$Id: Makefile 12415 2015-01-21 00:03:08Z msweet $" # # IPP test makefile for CUPS. # @@ -90,7 +90,7 @@ unittests: # clean: - $(RM) $(TARGETS) $(OBJS) + $(RM) $(TARGETS) $(OBJS) ippfind-static # @@ -241,5 +241,5 @@ include Dependencies # -# End of "$Id: Makefile 11129 2013-07-11 20:39:46Z msweet $". +# End of "$Id: Makefile 12415 2015-01-21 00:03:08Z msweet $". # diff --git a/test/ippfind.c b/test/ippfind.c index 758de0c70..7e301b134 100644 --- a/test/ippfind.c +++ b/test/ippfind.c @@ -1,11 +1,11 @@ /* - * "$Id: ippfind.c 12139 2014-08-29 17:50:38Z msweet $" + * "$Id: ippfind.c 12465 2015-02-01 02:47:23Z msweet $" * * Utility to find IPP printers via Bonjour/DNS-SD and optionally run * commands such as IPP and Bonjour conformance tests. This tool is * inspired by the UNIX "find" command, thus its name. * - * Copyright 2008-2014 by Apple Inc. + * Copyright 2008-2015 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -2564,6 +2564,10 @@ resolve_callback( service->host = strdup(hostTarget); service->port = ntohs(port); + value = service->host + strlen(service->host) - 1; + if (value >= service->host && *value == '.') + *value = '\0'; + /* * Loop through the TXT key/value pairs and add them to an array... */ @@ -2635,6 +2639,10 @@ resolve_callback( service->host = strdup(hostTarget); service->port = port; + value = service->host + strlen(service->host) - 1; + if (value >= service->host && *value == '.') + *value = '\0'; + /* * Loop through the TXT key/value pairs and add them to an array... */ @@ -2835,5 +2843,5 @@ show_version(void) /* - * End of "$Id: ippfind.c 12139 2014-08-29 17:50:38Z msweet $". + * End of "$Id: ippfind.c 12465 2015-02-01 02:47:23Z msweet $". */ diff --git a/test/ippserver.c b/test/ippserver.c index c785e5f62..22c2dd51c 100644 --- a/test/ippserver.c +++ b/test/ippserver.c @@ -1,9 +1,9 @@ /* - * "$Id: ippserver.c 12215 2014-10-20 18:24:56Z msweet $" + * "$Id: ippserver.c 12486 2015-02-04 13:13:21Z msweet $" * * Sample IPP Everywhere server for CUPS. * - * Copyright 2010-2014 by Apple Inc. + * Copyright 2010-2015 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -361,7 +361,7 @@ static void delete_client(_ipp_client_t *client); static void delete_job(_ipp_job_t *job); static void delete_printer(_ipp_printer_t *printer); #ifdef HAVE_DNSSD -static void dnssd_callback(DNSServiceRef sdRef, +static void DNSSD_API dnssd_callback(DNSServiceRef sdRef, DNSServiceFlags flags, DNSServiceErrorType errorCode, const char *name, @@ -419,12 +419,12 @@ static int valid_job_attributes(_ipp_client_t *client); * Globals... */ -# ifdef HAVE_DNSSD +#ifdef HAVE_DNSSD static DNSServiceRef DNSSDMaster = NULL; -# else /* HAVE_AVAHI */ +#elif defined(HAVE_AVAHI) static AvahiThreadedPoll *DNSSDMaster = NULL; static AvahiClient *DNSSDClient = NULL; -# endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD */ static int KeepFiles = 0, Verbosity = 0; @@ -630,9 +630,22 @@ main(int argc, /* I - Number of command-line args */ if (!directory[0]) { - snprintf(directory, sizeof(directory), "/tmp/ippserver.%d", (int)getpid()); + const char *tmpdir; /* Temporary directory */ - if (mkdir(directory, 0777) && errno != EEXIST) +#ifdef WIN32 + if ((tmpdir = getenv("TEMP")) == NULL) + tmpdir = "C:/TEMP"; +#elif defined(__APPLE__) + if ((tmpdir = getenv("TMPDIR")) == NULL) + tmpdir = "/private/tmp"; +#else + if ((tmpdir = getenv("TMPDIR")) == NULL) + tmpdir = "/tmp"; +#endif /* WIN32 */ + + snprintf(directory, sizeof(directory), "%s/ippserver.%d", tmpdir, (int)getpid()); + + if (mkdir(directory, 0755) && errno != EEXIST) { fprintf(stderr, "Unable to create spool directory \"%s\": %s\n", directory, strerror(errno)); @@ -2286,7 +2299,7 @@ delete_printer(_ipp_printer_t *printer) /* I - Printer */ * 'dnssd_callback()' - Handle Bonjour registration events. */ -static void +static void DNSSD_API dnssd_callback( DNSServiceRef sdRef, /* I - Service reference */ DNSServiceFlags flags, /* I - Status flags */ @@ -5455,6 +5468,13 @@ process_job(_ipp_job_t *job) /* I - Job */ perror("Unable to start job processing command"); status = -1; + + /* + * Free memory used for environment... + */ + + while (myenvc > 0) + free(myenvp[-- myenvc]); } else { @@ -5464,7 +5484,6 @@ process_job(_ipp_job_t *job) /* I - Job */ while (myenvc > 0) free(myenvp[-- myenvc]); - /* * Wait for child to complete... */ @@ -5544,7 +5563,9 @@ register_printer( int duplex, /* I - 1 = duplex, 0 = simplex */ const char *subtype) /* I - Service subtype */ { +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) _ipp_txt_t ipp_txt; /* Bonjour IPP TXT record */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ #ifdef HAVE_DNSSD DNSServiceErrorType error; /* Error from Bonjour */ char make_model[256],/* Make and model together */ @@ -6468,5 +6489,5 @@ valid_job_attributes( /* - * End of "$Id: ippserver.c 12215 2014-10-20 18:24:56Z msweet $". + * End of "$Id: ippserver.c 12486 2015-02-04 13:13:21Z msweet $". */ diff --git a/test/ipptool.c b/test/ipptool.c index 5e6d07f87..b1f784359 100644 --- a/test/ipptool.c +++ b/test/ipptool.c @@ -1,9 +1,9 @@ /* - * "$Id: ipptool.c 12143 2014-09-02 13:37:30Z msweet $" + * "$Id: ipptool.c 12465 2015-02-01 02:47:23Z msweet $" * * ipptool command for CUPS. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2015 by Apple Inc. * Copyright 1997-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -3883,6 +3883,10 @@ get_string(ipp_attribute_t *attr, /* I - IPP attribute */ if (httpSeparateURI(HTTP_URI_CODING_ALL, ptr, scheme, sizeof(scheme), userpass, sizeof(userpass), buffer, (int)bufsize, &port, resource, sizeof(resource)) < HTTP_URI_STATUS_OK) buffer[0] = '\0'; + ptr = buffer + strlen(buffer) - 1; + if (ptr >= buffer && *ptr == '.') + *ptr = '\0'; /* Drop trailing "." */ + return (buffer); } else if (flags & _CUPS_WITH_RESOURCE) @@ -5866,5 +5870,5 @@ with_value(FILE *outfile, /* I - Output file */ /* - * End of "$Id: ipptool.c 12143 2014-09-02 13:37:30Z msweet $". + * End of "$Id: ipptool.c 12465 2015-02-01 02:47:23Z msweet $". */ diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh index eefe97d96..d9b9322bf 100755 --- a/test/run-stp-tests.sh +++ b/test/run-stp-tests.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# "$Id: run-stp-tests.sh 12248 2014-11-12 16:32:57Z msweet $" +# "$Id: run-stp-tests.sh 12398 2014-12-19 16:56:15Z msweet $" # # Perform the complete set of IPP compliance tests specified in the # CUPS Software Test Plan. @@ -189,15 +189,18 @@ if test -z "$user"; then fi fi -port=8631 +port="${CUPS_TESTPORT:=8631}" cwd=`pwd` root=`dirname $cwd` CUPS_TESTROOT="$root"; export CUPS_TESTROOT -if test -d /private/tmp; then - BASE=/private/tmp/cups-$user -else - BASE=/tmp/cups-$user +BASE="${CUPS_TESTBASE:=}" +if test -z "$BASE"; then + if test -d /private/tmp; then + BASE=/private/tmp/cups-$user + else + BASE=/tmp/cups-$user + fi fi export BASE @@ -335,13 +338,30 @@ ln -s $root/filter/rastertoepson $BASE/bin/filter ln -s $root/filter/rastertohp $BASE/bin/filter ln -s $root/filter/rastertolabel $BASE/bin/filter ln -s $root/filter/rastertopwg $BASE/bin/filter +cat >$BASE/share/banners/standard <$BASE/share/banners/classified <"$BASE/bin/filter/$dst" </dev/null case "\$5" in *media=a4* | *media=iso_a4* | *PageSize=A4*) - cat "$root/test/onepage-a4.pdf" + gziptoany "$1" "$2" "$3" "$4" "$5" "$root/test/onepage-a4.pdf" ;; *) - cat "$root/test/onepage-letter.pdf" + gziptoany "$1" "$2" "$3" "$4" "$5" "$root/test/onepage-letter.pdf" ;; esac EOF @@ -393,12 +416,15 @@ EOF ps) cat >"$BASE/bin/filter/$dst" </dev/null case "\$5" in *media=a4* | *media=iso_a4* | *PageSize=A4*) - cat "$root/test/onepage-a4.ps" + gziptoany "$1" "$2" "$3" "$4" "$5" "$root/test/onepage-a4.ps" ;; *) - cat "$root/test/onepage-letter.ps" + gziptoany "$1" "$2" "$3" "$4" "$5" "$root/test/onepage-letter.ps" ;; esac EOF @@ -407,12 +433,15 @@ EOF raster) cat >"$BASE/bin/filter/$dst" </dev/null case "\$5" in *media=a4* | *media=iso_a4* | *PageSize=A4*) - gunzip -c "$root/test/onepage-a4-300-black-1.pwg.gz" + gziptoany "$1" "$2" "$3" "$4" "$5" "$root/test/onepage-a4-300-black-1.pwg.gz" ;; *) - gunzip -c "$root/test/onepage-letter-300-black-1.pwg.gz" + gziptoany "$1" "$2" "$3" "$4" "$5" "$root/test/onepage-letter-300-black-1.pwg.gz" ;; esac EOF @@ -424,17 +453,13 @@ EOF ln -s $root/test/test.convs $BASE/share/mime if test `uname` = Darwin; then - instfilter cgbannertopdf bannertopdf pdf instfilter cgimagetopdf imagetopdf pdf instfilter cgpdftopdf pdftopdf passthru instfilter cgpdftops pdftops ps instfilter cgpdftoraster pdftoraster raster instfilter cgtexttopdf texttopdf pdf instfilter pstocupsraster pstoraster raster - instfilter pstopdffilter pstopdf pdf else - instfilter bannertopdf bannertopdf pdf - instfilter bannertops bannertops ps instfilter imagetopdf imagetopdf pdf instfilter pdftopdf pdftopdf passthru instfilter pdftops pdftops ps @@ -472,7 +497,7 @@ AccessLogLevel actions LogLevel $loglevel LogTimeFormat usecs PreserveJobHistory Yes -PreserveJobFiles No +PreserveJobFiles 5m Order Allow,Deny @@ -591,7 +616,7 @@ fi export SHLIB_PATH CUPS_DISABLE_APPLE_DEFAULT=yes; export CUPS_DISABLE_APPLE_DEFAULT -CUPS_SERVER=localhost:8631; export CUPS_SERVER +CUPS_SERVER=localhost:$port; export CUPS_SERVER CUPS_SERVERROOT=$BASE; export CUPS_SERVERROOT CUPS_STATEDIR=$BASE; export CUPS_STATEDIR CUPS_DATADIR=$BASE/share; export CUPS_DATADIR @@ -632,7 +657,7 @@ cupsd=$! if test "x$testtype" = x0; then # Not running tests... - echo "Scheduler is PID $cupsd and is listening on port 8631." + echo "Scheduler is PID $cupsd and is listening on port $port." echo "" # Create a helper script to run programs with... @@ -694,7 +719,13 @@ done # date=`date "+%Y-%m-%d"` -strfile=$BASE/cups-str-2.0-$date-$user.html + +if test -d $root/.svn; then + rev=`svn info . | grep Revision: | awk '{print $2}'` + strfile=$BASE/cups-str-2.0-r$rev-$user.html +else + strfile=$BASE/cups-str-2.0-$date-$user.html +fi rm -f $strfile cat str-header.html >$strfile @@ -792,7 +823,7 @@ while true; do fi done -description="`lpstat -l -p Test1 | grep Description | sed -e '1,$s/^[^:]*: //g'`" +description="`../systemv/lpstat -l -p Test1 | grep Description | sed -e '1,$s/^[^:]*: //g'`" if test "x$description" != "xTest Printer 1"; then echo "Failed, printer-info for Test1 is '$description', expected 'Test Printer 1'." >>$strfile echo "FAIL (got '$description', expected 'Test Printer 1')" @@ -1047,7 +1078,13 @@ echo "" if test $fail != 0; then echo "$fail tests failed." - cp $BASE/log/error_log error_log-$date-$user + + if test -d $root/.svn; then + cp $BASE/log/error_log error_log-r$rev-$user + else + cp $BASE/log/error_log error_log-$date-$user + fi + cp $strfile . else echo "All tests were successful." @@ -1066,5 +1103,5 @@ if test $fail != 0; then fi # -# End of "$Id: run-stp-tests.sh 12248 2014-11-12 16:32:57Z msweet $" +# End of "$Id: run-stp-tests.sh 12398 2014-12-19 16:56:15Z msweet $" # diff --git a/test/test.convs b/test/test.convs index 94ce07a06..57540aac4 100644 --- a/test/test.convs +++ b/test/test.convs @@ -3,7 +3,6 @@ application/pdf application/vnd.cups-pdf 100 pdftopdf application/pdf application/postscript 100 pdftops application/pdf application/vnd.cups-raster 100 pdftoraster application/postscript application/vnd.cups-raster 100 pstoraster -application/vnd.cups-banner application/pdf 100 bannertopdf image/jpeg application/pdf 100 imagetopdf text/plain application/pdf 100 texttopdf diff --git a/vcnet/config.h b/vcnet/config.h index de30ae62d..b2655fb18 100644 --- a/vcnet/config.h +++ b/vcnet/config.h @@ -1,5 +1,5 @@ /* - * "$Id: config.h 12254 2014-11-14 17:24:18Z msweet $" + * "$Id: config.h 12280 2014-12-02 01:49:48Z msweet $" * * Configuration file for CUPS on Windows. * @@ -380,6 +380,13 @@ typedef unsigned long useconds_t; /* #undef HAVE_GNUTLS_TRANSPORT_SET_PULL_TIMEOUT_FUNCTION */ +/* + * Do we have the gnutls_priority_set_direct function? + */ + +/* #undef HAVE_GNUTLS_PRIORITY_SET_DIRECT */ + + /* * What Security framework headers do we have? */ @@ -792,5 +799,5 @@ static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); } #endif /* !_CUPS_CONFIG_H_ */ /* - * End of "$Id: config.h 12254 2014-11-14 17:24:18Z msweet $". + * End of "$Id: config.h 12280 2014-12-02 01:49:48Z msweet $". */ diff --git a/xcode/CUPS.xcodeproj/project.pbxproj b/xcode/CUPS.xcodeproj/project.pbxproj index 908e48568..81ed4acbd 100644 --- a/xcode/CUPS.xcodeproj/project.pbxproj +++ b/xcode/CUPS.xcodeproj/project.pbxproj @@ -1561,6 +1561,8 @@ 72F75A6A1336FA8A004BB496 /* interpret.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = interpret.c; path = ../filter/interpret.c; sourceTree = ""; }; 72F75A6B1336FA8A004BB496 /* raster.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = raster.c; path = ../filter/raster.c; sourceTree = ""; }; 72F7F1D719D1C0CC00870B09 /* org.cups.usb-quirks */ = {isa = PBXFileReference; lastKnownFileType = text; name = "org.cups.usb-quirks"; path = "../backend/org.cups.usb-quirks"; sourceTree = ""; }; + 72FC29CF1A37A1CA00BDF935 /* usb-libusb.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "usb-libusb.c"; path = "../backend/usb-libusb.c"; sourceTree = ""; }; + 72FC29D01A37A1CA00BDF935 /* usb-unix.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "usb-unix.c"; path = "../backend/usb-unix.c"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -2248,7 +2250,6 @@ 724378F71333E3CE009631B9 /* backends */ = { isa = PBXGroup; children = ( - 72F7F1D719D1C0CC00870B09 /* org.cups.usb-quirks */, 724379091333E4E3009631B9 /* backend-private.h */, 724379501333FEBB009631B9 /* dnssd.c */, 724379CA1334000E009631B9 /* ieee1284.c */, @@ -2256,11 +2257,14 @@ 724379281333E952009631B9 /* lpd.c */, 7243790B1333E4E3009631B9 /* network.c */, 724379121333E516009631B9 /* runloop.c */, - 720DD6D21358FDDE0064AA82 /* snmp.c */, 7243790C1333E4E3009631B9 /* snmp-supplies.c */, + 720DD6D21358FDDE0064AA82 /* snmp.c */, 7243793C1333FD19009631B9 /* socket.c */, 724379C51333FFC7009631B9 /* usb.c */, 724379C41333FFC7009631B9 /* usb-darwin.c */, + 72FC29CF1A37A1CA00BDF935 /* usb-libusb.c */, + 72FC29D01A37A1CA00BDF935 /* usb-unix.c */, + 72F7F1D719D1C0CC00870B09 /* org.cups.usb-quirks */, ); name = backends; sourceTree = ""; diff --git a/xcode/config.h b/xcode/config.h index 33cc55ae2..c10087464 100644 --- a/xcode/config.h +++ b/xcode/config.h @@ -1,5 +1,5 @@ /* - * "$Id: config.h 12254 2014-11-14 17:24:18Z msweet $" + * "$Id: config.h 12280 2014-12-02 01:49:48Z msweet $" * * Configuration file for CUPS and Xcode. * @@ -300,6 +300,20 @@ #define HAVE_SSL 1 +/* + * Do we have the gnutls_transport_set_pull_timeout_function function? + */ + +/* #undef HAVE_GNUTLS_TRANSPORT_SET_PULL_TIMEOUT_FUNCTION */ + + +/* + * Do we have the gnutls_priority_set_direct function? + */ + +/* #undef HAVE_GNUTLS_PRIORITY_SET_DIRECT */ + + /* * What Security framework headers do we have? */ @@ -699,5 +713,5 @@ static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); } #endif /* !_CUPS_CONFIG_H_ */ /* - * End of "$Id: config.h 12254 2014-11-14 17:24:18Z msweet $". + * End of "$Id: config.h 12280 2014-12-02 01:49:48Z msweet $". */ -- 2.39.5