]> git.ipfire.org Git - thirdparty/cups-filters.git/log
thirdparty/cups-filters.git
3 years agoimagetoraster, imagetopdf: Fixed "print-scaling=none"
Till Kamppeter [Tue, 15 Feb 2022 01:03:12 +0000 (22:03 -0300)] 
imagetoraster, imagetopdf: Fixed "print-scaling=none"

In the imageto...()s fixed the print-scaling=none (crop-to-fit) mode,
which prints the image in its original size (based on PPI resolution
stored in the image file or on 200 dpi resolution, which is the
standard resolution for shipping labels). Also use crop-to-fit always
when requested, do not fall back to fit-to-page when the image is
significantly larger or smaller than the page.

(manually backported from commit cb2737b5683adfbe5cc25bada323f43cc1ca2329)

3 years agoUpdated NEWS
Till Kamppeter [Tue, 15 Feb 2022 00:22:09 +0000 (21:22 -0300)] 
Updated NEWS

3 years agolibcupsfilters: Changed the default ppi from 128 to 200
Rishabh Maheshwari [Fri, 4 Feb 2022 13:13:00 +0000 (18:43 +0530)] 
libcupsfilters: Changed the default ppi from 128 to 200

This is for image input files which have no PPI resolution in their metadata and are printed without scaling ("print-scaling=none"). In this case the default resolution is used. Formerly it was set to 128 PPI but we change it to 200 PPI now as many shipping labels come as image files with 200 PPI and so it is easier to print them in their original size. For photos this default value is not important though, as photos are usually printed with scaling ("print-scaling=fill" or "print-scaling=fit").

Pull request #446

(cherry picked from commit 70970df3c78a0a690d3f99597a3a5eec0bce8c02)

3 years agoimplicitclass: Do not check availability of "gs" and "pdftops" executables
Till Kamppeter [Sat, 5 Feb 2022 21:05:53 +0000 (18:05 -0300)] 
implicitclass: Do not check availability of "gs" and "pdftops" executables

Instead, check by the presence of "gstoraster" and "pdftoraster"
filters whether we have configured cups-filters for Ghostscript and/or
Poppler use.

Checking for the presence of an executable is too comlex, as we would
need to go through the PATH environment variable.

3 years agopdftopdf: Add 2% tolerance for input size larger than output page
Till Kamppeter [Sat, 5 Feb 2022 19:22:10 +0000 (16:22 -0300)] 
pdftopdf: Add 2% tolerance for input size larger than output page

When "print-scaling=auto" or "print-scaling=auto-fit" is used, the
input pages are scaled when they do not fit into the output page
size. Often input ad out page sizes are supposed to be equal, for
example both A4, but rounding errors could make the input considered
larger and unnecessarily scaled.

Therefore we add 2% of tolerance before considering an input page too
large.

(manually backported commit e541dc698f38aaa522f99e23b57c695da2981c29)

3 years agolibcupsfilters: Clean up "*cupsFilter2: ..." line in generated PPDs
Till Kamppeter [Thu, 3 Feb 2022 23:48:25 +0000 (20:48 -0300)] 
libcupsfilters: Clean up "*cupsFilter2: ..." line in generated PPDs

3 years agoUpdated NEWS
Till Kamppeter [Thu, 3 Feb 2022 22:44:51 +0000 (19:44 -0300)] 
Updated NEWS

3 years agodriverless: Always use encryption for ipps (#433)
Andrzej Kaczmarek [Fri, 3 Dec 2021 17:29:02 +0000 (18:29 +0100)] 
driverless: Always use encryption for ipps (#433)

RFC7472 requires that 'ipps' must be used over HTTPS, but driverless
does not enforce encryption and will use insecure connection by
default. This makes it unusable with a printer that expects secure
connection only on 'ipps' port.

(cherry picked from commit 67d38d7c1c874b525d476332018cf685fae73190)

3 years agopdftopdf: Set a default for "print-scaling"
Till Kamppeter [Thu, 3 Feb 2022 22:03:00 +0000 (19:03 -0300)] 
pdftopdf: Set a default for "print-scaling"

If no setting for "print-scaling" is provided via IPP attribute or
command line option there is no default value for it and we get
undefined behavior and also a scary "should never happen" message in
the log.

Now we check after parsing the appropriate IPP attributes and command
line options whether a setting was provided. If not, we use "auto".

(manually backported commit dce6292f81b6872656cfcc46dac2ec101c32bf4a)

3 years agoUpdated NEWS
Till Kamppeter [Thu, 3 Feb 2022 21:43:02 +0000 (18:43 -0300)] 
Updated NEWS

3 years agoFor some unknown reason, every printing file need sleep a little time on first transm...
fengyuewuhen [Mon, 17 Jan 2022 19:58:46 +0000 (03:58 +0800)] 
For some unknown reason, every printing file need sleep a little time on first transmit (#431)

serial: Add a 10-msec sleep and at the end add a tcdrain()

For some unknown reason, every printing file need sleep a little time to make sure the serial printer receive data is right.

(cherry picked from commit cda85239dc8586e7cdd018c0beec489c1309e213)

3 years agoUpdated NEWS
Till Kamppeter [Thu, 3 Feb 2022 19:46:18 +0000 (16:46 -0300)] 
Updated NEWS

3 years agolibcupsfilters: Fix resolver functions for DNS-SD-based URIs
Till Kamppeter [Thu, 30 Dec 2021 02:12:00 +0000 (23:12 -0300)] 
libcupsfilters: Fix resolver functions for DNS-SD-based URIs

CUPS and cups-browsed use DNS-SD-service-name-based URIs, so that the
printer URIs are robust against changes of network details, for
example of the port, if Printer Applications on a system come up in
different order at every boot.

To be able to access the printer these URIs have to get resolved,
which means to get converted into standard IPP URIs. This is done by
two functions with their source being in cupsfilters/ipp.c.

Unfortunately both functions have a bug and in this commit we fix
these bugs to make the functions correctly working in all cases.

1. resolve_uri()

This function calls cupsBackendDeviceURI() of libcups which resolves
device URIs for the CUPS backends. As it is designed for only using in
CUPS backends it needs some workarounds to make it usuable as
universal library function and make it work in a wide range of system
environments.

One workaround was already applied from the beginning on, re-directing
stderr into the Nirwana, to avoid messages to stderr.

Another is needed and now added: We need to unset the DEVICE_URI
environment variable as the function searches for the device URI to
resolve there at first and not as argc[0]. Otherwise, if we are
running under CUPS, in a backend, we get the print queue's device URI
resolved and not the one which we supply.

We save and restore the value of DEVICE_URI to keep the impact as low
as possible.

2. ippfind_based_uri_converter()

In this function the ippfind utility is called in a fork and the
foreground (parent process) is getting ippfind's stdout through a
pipe. The main process is picking up the data to use it for resolving
the given URI. Here the parent process has unnecessarily: "dup"ed the
read end of the pipe to stdin, and then read the lines from
stdin. This prevents the calling program to use stdin by itself, for
example to receive print job data.

Now this is fixed by directly reading from the read end of the pipe.

(cherry picked from commit 58c47774fb9686a9ea60dbce71df328e1f742a1a)

3 years agopdftopdf: Fix orientation-requested = 0
Till Kamppeter [Thu, 3 Feb 2022 19:01:56 +0000 (16:01 -0300)] 
pdftopdf: Fix orientation-requested = 0

CUPS often adds "orientation-requested=0" to the options in the
filter/backend command line, meaning automatic selection. pdftopdf()
did not support this value and therefore did not do the correct
settings making margins of rotated landscape pages not be done
correctly.

(manually backported commit 947634e296644f2af4e92871e72788579a70253f)

3 years agopdftopdf: Fixed print-scaling and N-up for asymmetric margins and files with differen...
Till Kamppeter [Wed, 2 Feb 2022 02:00:46 +0000 (23:00 -0300)] 
pdftopdf: Fixed print-scaling and N-up for asymmetric margins and files with differently-sized pages

(manually backported commit 4aaf23aae3695348532e295859f001704a33ebad
                 and commit 31dfcae961ca737b7166cd6a3e7d4a30cd19f9e8)

3 years agocups-filters 1.28.11 Release 1.28.11
Till Kamppeter [Sun, 16 Jan 2022 01:15:47 +0000 (22:15 -0300)] 
cups-filters 1.28.11 Release

3 years agoUpdated NEWS
Till Kamppeter [Sun, 16 Jan 2022 00:34:32 +0000 (21:34 -0300)] 
Updated NEWS

3 years agolibcupsfilters: Small correction on previous commit
Till Kamppeter [Sun, 16 Jan 2022 00:23:18 +0000 (21:23 -0300)] 
libcupsfilters: Small correction on previous commit

3 years agolibcupsfilters: Let PPD generator take default ColorModel from printer
Till Kamppeter [Sat, 15 Jan 2022 18:40:43 +0000 (15:40 -0300)] 
libcupsfilters: Let PPD generator take default ColorModel from printer

Instead of selecting the "best" available color mode as default for
the PPD file generated from the response to the get-printer-attributes
IPP request we use the printer default according to the IPP attributes
(print-color-mode-default).

This way on can simply change the default on a network printer's web
interface or on a remote CUPS printer and clients using cups-browsed
or the "driverless" utility respect the change.

This solves https://github.com/OpenPrinting/cups/issues/277, together
with the changes done on CUPS for this issue.

(cherry picked from commit 99d1cc62b74959f8465301ccc5bd29092cf987cc)

3 years agoUpdated NEWS
Till Kamppeter [Sat, 15 Jan 2022 23:40:45 +0000 (20:40 -0300)] 
Updated NEWS

3 years agolibcupsfilters: In imagetoraster() fixed crash with SGray
Till Kamppeter [Tue, 4 Jan 2022 20:07:50 +0000 (17:07 -0300)] 
libcupsfilters: In imagetoraster() fixed crash with SGray

As the SGray color space was not mentioned in the switch for selecting
the raster line formatting function, a 3-channel color formatting
function was selected instead of the 1-channel grayscale one, leading
to an overrun of the input pixel line, causing a crash.

This is fixed now by also mentioning the 3 standard color spaces for
driverless printing, SGray, SRGB, and AdobeRGB explicily (where for
the latter 2 the selection already worked as they are 3-channel color
options).

Fixes https://github.com/OpenPrinting/cups-filters/issues/435

(cherry picked from commit 098579f7082b4acfe628a1490c9c9abb3322cd74)

3 years agoUpdated NEWS
Till Kamppeter [Sat, 15 Jan 2022 23:10:48 +0000 (20:10 -0300)] 
Updated NEWS

3 years agoBraille: In vectortopdf check inkscape version to call inkscape with the correct...
TinyTrebuchet [Sat, 15 Jan 2022 14:35:32 +0000 (20:05 +0530)] 
Braille: In vectortopdf check inkscape version to call inkscape with the correct command line

From version 1.0.x on, Inkscape does not support the '-A' command line flag any more. Now we check the inkscape version and call inkscape always with the correct command line.

(cherry picked from commit b0e474d13056bf574943678e0b9deeb9d7f79fa8)

3 years agocups-browsed: Updated naming of locally created print queues
Till Kamppeter [Wed, 22 Dec 2021 22:57:32 +0000 (19:57 -0300)] 
cups-browsed: Updated naming of locally created print queues

Naming of local queues created by cups-browsed is now matched to CUPS'
current naming of temporary queues (no leading or trailing
underscores), to avoid duplicates in print dialogs which support CUPS'
temporary queues.

(cherry picked from commit 3d9c4804cd36ba205a1dc8f39f5b28bc64d4fc77)

3 years agoUpdated NEWS
Till Kamppeter [Thu, 13 Jan 2022 17:34:37 +0000 (14:34 -0300)] 
Updated NEWS

3 years agolibcupsfilters: Make cupsRasterParseIPPOptions() work correctly with PPDs
Till Kamppeter [Tue, 12 Oct 2021 11:33:26 +0000 (13:33 +0200)] 
libcupsfilters: Make cupsRasterParseIPPOptions() work correctly with PPDs

cupsRasterParseIPPOptions() interprets job options/IPP attributes and
their settings just bei their names. This works well when the
destination printer is not described by a PPD file.

If there is a PPD file, their can be weird option and choice names
which do not tell what they are good for, giving wrong
impressions. Only the PostScript or PJL code assigned to the choices
in the PPD file tells what they actually are supposed to do.

A good example for that is the "Resolution" option of Gutenprint. As
the developers of Gutenprint do not want to solely and directly set
the print resolution with this option (as was Adobe's idea for it),
and instead, do more things with it, as having an "Automatic" choice
or variants of the same resolution (for example different dithering
algorithms), but PPD standards require the choices to be "XXXxYYYdpi"
without exceptions, they come with names like "601x600dpi" for the
variants and the PPD's embedded PostScript code contains the actual
resolution.

To avoid that cupsRasterParseIPPOptions() mis-interprets such weird
PPD options, we check whether we are using a PPD (via the PPD
environment variable) and if so we refrain from parsing options which
are in the PPD. Only if set_defaults = 1 is set, we use them but via a
call of callRasterInterpretPPD() instead of interpreting them by
ourselves option/choice-name-only.

(cherry picked from commit d77db8903a635fa13f4e043fa05b49b5f40593b6)

3 years agoUpdated NEWS
Till Kamppeter [Wed, 12 Jan 2022 21:53:15 +0000 (18:53 -0300)] 
Updated NEWS

3 years agoBuild system: Make missing DejaVuSans.ttf non-fatal
Deepak Khatri [Wed, 12 Jan 2022 21:33:35 +0000 (03:03 +0530)] 
Build system: Make missing DejaVuSans.ttf non-fatal

DejaVuSans.ttf is only needed for test programs, not for actually using cups-filters. Therefore we make its absence non-fatal.

(cherry picked from commit e76802b2167fc6bf16b69c7971c8505b5f5cc57f)

4 years agolibcupsfilters: Let colord_get_profile_for_device_id() not return empty file name
Till Kamppeter [Sun, 19 Sep 2021 17:53:30 +0000 (19:53 +0200)] 
libcupsfilters: Let colord_get_profile_for_device_id() not return empty file name

If the function colord_get_profile_for_device_id() returns an empty
file name, the color generates an error message in the CUPS
error_log. Some print dialogs report every log message of level error
to the user even if the job got correctly printed.

4 years agofoomatic-rip: Debug message was wrongly sent to stdout and not to log
Till Kamppeter [Sun, 5 Sep 2021 09:36:28 +0000 (11:36 +0200)] 
foomatic-rip: Debug message was wrongly sent to stdout and not to log

Issue #422

(cherry picked from commit 32e60bb44a147b7f7612557b09818d60411c19fb)

4 years agocups-filters 1.28.10 Release 1.28.10
Till Kamppeter [Tue, 17 Aug 2021 11:23:15 +0000 (13:23 +0200)] 
cups-filters 1.28.10 Release

4 years agoUpdated NEWS
Till Kamppeter [Tue, 17 Aug 2021 11:20:56 +0000 (13:20 +0200)] 
Updated NEWS

4 years agoSample PPDs: To the Ricoh PDF PPD added borderless page sizes and fixed OpenUI/CloseU...
Till Kamppeter [Wed, 28 Jul 2021 10:44:12 +0000 (12:44 +0200)] 
Sample PPDs: To the Ricoh PDF PPD added borderless page sizes and fixed OpenUI/CloseUI bug

(cherry picked from commit 276d3814deae486b1a4f7fbedf3e08eecff534fe)

4 years agoSample PPDs: Add borderless page size definitions to PDF PPDs
Till Kamppeter [Wed, 28 Jul 2021 10:16:38 +0000 (12:16 +0200)] 
Sample PPDs: Add borderless page size definitions to PDF PPDs

(cherry picked from commit 8a69374061842dbfca1cd1eb1437d511c697725a)

4 years agoSample PPDs: Fixed typo in the PDF PPDs
Till Kamppeter [Mon, 26 Jul 2021 20:17:24 +0000 (22:17 +0200)] 
Sample PPDs: Fixed typo in the PDF PPDs

(cherry picked from commit 6f57650ee87b86ed6f2847ba4f0c300719938615)

4 years agoSample PPDs: From the PDF PPD files removed the unneeded "*cupsFilters2: ..."
Till Kamppeter [Mon, 26 Jul 2021 19:53:35 +0000 (21:53 +0200)] 
Sample PPDs: From the PDF PPD files removed the unneeded "*cupsFilters2: ..."

(cherry picked from commit 738492b437456430b75f6d09fd16d6328bd437c3)

4 years agolibcupsfilters: Fix page range like "10-" in pdftopdf() filter function
Till Kamppeter [Tue, 17 Aug 2021 11:03:39 +0000 (13:03 +0200)] 
libcupsfilters: Fix page range like "10-" in pdftopdf() filter function

(manually picked from commit 022c34fedb66f706b2ab82d7506d5b5b1fa18e1f)

4 years agoUpdated NEWS
Till Kamppeter [Tue, 17 Aug 2021 10:58:04 +0000 (12:58 +0200)] 
Updated NEWS

4 years agolibcupsfilters: Use wildcard tag search in the PPD generator
Jonathan Strine [Mon, 12 Jul 2021 22:18:32 +0000 (18:18 -0400)] 
libcupsfilters: Use wildcard tag search in the PPD generator

(cherry picked from commit 640ee0757d1b4ff7fc95b3e108c00f2c916ddda5)

4 years agoUpdated NEWS
Till Kamppeter [Tue, 17 Aug 2021 10:05:17 +0000 (12:05 +0200)] 
Updated NEWS

4 years agoimplicitclass, parallel: Added missing newlines at error messages
Till Kamppeter [Wed, 7 Jul 2021 14:23:38 +0000 (16:23 +0200)] 
implicitclass, parallel: Added missing newlines at error messages

(cherry picked from commit 283c703f71256456e5c65ba77fdee98057c15ace)

4 years agoUpdated NEWS
Till Kamppeter [Thu, 1 Jul 2021 15:07:15 +0000 (17:07 +0200)] 
Updated NEWS

(cherry picked from commit 4305e15977418c7353f6d0f3a1a62bddee5d0cd9)

4 years agolinfontembed: Removed unneeded fontembed/main.c and ttfread executable
Till Kamppeter [Thu, 1 Jul 2021 14:58:50 +0000 (16:58 +0200)] 
linfontembed: Removed unneeded fontembed/main.c and ttfread executable

(cherry picked from commit a6edd76fbcc87d1c9cda53332ce1d331961b504e)

4 years agoUpdated NEWS
Till Kamppeter [Thu, 8 Jul 2021 08:42:51 +0000 (10:42 +0200)] 
Updated NEWS

4 years agogstoraster: Fixed build failure
Till Kamppeter [Thu, 8 Jul 2021 07:15:41 +0000 (09:15 +0200)] 
gstoraster: Fixed build failure

4 years agogstoraster: Set the counted pages as job-impressions for PWG-Raster
Sean Kau [Thu, 8 Jul 2021 07:04:02 +0000 (00:04 -0700)] 
gstoraster: Set the counted pages as job-impressions for PWG-Raster

Co-authored-by: Sean Kau <skau@chromium.org>
4 years agoUpdated NEWS
Till Kamppeter [Fri, 25 Jun 2021 18:08:45 +0000 (20:08 +0200)] 
Updated NEWS

4 years agoUpdated NEWS
Till Kamppeter [Fri, 18 Jun 2021 10:36:02 +0000 (12:36 +0200)] 
Updated NEWS

(cherry picked from commit bcc26dc190420c6ab5940a95d95c238a81c98e7e)

4 years agocups-browsed.c: Make NotifLeaseDuration configurable and renew after half the lease...
zdohnal [Fri, 18 Jun 2021 10:27:53 +0000 (12:27 +0200)] 
cups-browsed.c: Make NotifLeaseDuration configurable and renew after half the lease duration not 60 sec before end

1) NotifLeaseDuration directive for cups-browsed.conf - it will make
   lease duration for notifications configurable by users. IMO it is not
   useful for regular users, but it is helpful during sanity testing
   (for verifying that we actually renew the subscription when time
   comes). The current hardcoded 1 day is unusuable for that :( .
   I implemented the lowest threshold to 300s to prevent a possible DoS.
2) Subscription renewal is set to happen in the middle of NotifLeaseDuration,
   not one minute before lease expiration. This was a problem on busy servers,
   where cups-browsed was busy and wasn't able to renew the subscription
   before cupsd removed it. Then if some jobs had come before the subscription
   was created again, the queue got disabled. The proposed approach is based
   on behavior of DHCP.

(cherry picked from commit d90a4fc57b00b4a1f6c196bcb96025251b555dd9)

4 years agocups-filters 1.28.9 Release 1.28.9
Till Kamppeter [Tue, 15 Jun 2021 19:23:47 +0000 (21:23 +0200)] 
cups-filters 1.28.9 Release

4 years agolibcupsfilters: Silenced compiler warnings
Till Kamppeter [Tue, 15 Jun 2021 19:21:23 +0000 (21:21 +0200)] 
libcupsfilters: Silenced compiler warnings

4 years agolibcupsfilters: Removed duplicate code in the apply_filters() function
Till Kamppeter [Mon, 14 Jun 2021 19:28:27 +0000 (21:28 +0200)] 
libcupsfilters: Removed duplicate code in the apply_filters() function

(cherry picked from commit a6ef18c1303e27da15c24fb53ec5d9e21c3acbb3)

4 years agodriverless: Changed way to emit exit code 0 when no printer found
Till Kamppeter [Tue, 8 Jun 2021 10:29:46 +0000 (12:29 +0200)] 
driverless: Changed way to emit exit code 0 when no printer found

(cherry picked from commit f4ac0102b7ecca8686eb2c70d20d12978ea5d880)

4 years agodriverless: Exit with 0 if no driverless IPP printers found
Till Kamppeter [Tue, 8 Jun 2021 09:34:27 +0000 (11:34 +0200)] 
driverless: Exit with 0 if no driverless IPP printers found

(cherry picked from commit 78b6b2c9875863352924eb937590f7ad7790c23f)

4 years agogstoraster, foomatic-rip: gs command line for counting pages takes too long
Till Kamppeter [Tue, 15 Jun 2021 18:50:02 +0000 (20:50 +0200)] 
gstoraster, foomatic-rip: gs command line for counting pages takes too long

4 years agoUpdated NEWS
Till Kamppeter [Tue, 15 Jun 2021 18:39:47 +0000 (20:39 +0200)] 
Updated NEWS

4 years agocups-browsed: Renamed ldap_connect() due to conflict in new openldap
Bhavna2020 [Wed, 12 May 2021 17:02:44 +0000 (22:32 +0530)] 
cups-browsed: Renamed ldap_connect() due to conflict in new openldap

(cherry picked from commit d8269287647819c96a24a8f345f0f541df45c866)

4 years agoUpdated NEWS
Till Kamppeter [Tue, 15 Jun 2021 18:37:41 +0000 (20:37 +0200)] 
Updated NEWS

4 years agoPdftoraster: free colour data after processing of each page (#363)
Pratyush Ranjan [Sun, 25 Apr 2021 14:11:56 +0000 (19:41 +0530)] 
Pdftoraster: free colour data after processing of each page (#363)

pdftoraster: Free colordata after end of each page, eliminating a severe memory leak
(cherry picked from commit 995a0271dbc2b0356930876154144003cb0eb86e)

4 years agoUpdated NEWS
Till Kamppeter [Fri, 16 Apr 2021 21:06:19 +0000 (23:06 +0200)] 
Updated NEWS

(cherry picked from commit ebea6315c3f261919ce3b04a1e3cc304275eadd2)

4 years agocups-browsed: Always save "...-default" option entries from printers.conf
Till Kamppeter [Thu, 15 Apr 2021 12:26:44 +0000 (14:26 +0200)] 
cups-browsed: Always save "...-default" option entries from printers.conf

(cherry picked from commit cdd61132e1719a88dd8006c65e8e260c1aaa02e4)

4 years agoUpdated NEWS
Till Kamppeter [Thu, 15 Apr 2021 10:28:58 +0000 (12:28 +0200)] 
Updated NEWS

(cherry picked from commit d552a92c1f8f4f051d174adb436966e2a35354b9)

4 years agoutils/cups-browsed.service: Add network-online.target (#360)
zdohnal [Thu, 15 Apr 2021 10:17:14 +0000 (12:17 +0200)] 
utils/cups-browsed.service: Add network-online.target (#360)

cups-browsed can be set to browsepolling remote servers, browsing remote
queues via CUPS protocol or sharing local queues via CUPS protocol.
Although sharing and browsing happens via browsesocket (which can be
solved by setting socket option IP_FREEBIND), browsepolling must have
network working to communicate with a remote server.

(cherry picked from commit 5ee93fae6e55cef4c8d670c54d2a011e9ab3b3af)

4 years agotexttopdf: Set default margins when no PPD file is used
suraj kulriya [Thu, 1 Apr 2021 09:09:02 +0000 (14:39 +0530)] 
texttopdf: Set default margins when no PPD file is used

(cherry picked from commit 46eb0755dc4334db2c77e14bcace9ed6abc6efe6)

4 years agocups-filters 1.28.8 Release 1.28.8
Till Kamppeter [Thu, 25 Mar 2021 16:55:12 +0000 (17:55 +0100)] 
cups-filters 1.28.8 Release

4 years ago libcupsfilters: Made driverless PPD generator more reliable for print or fax PPD
Till Kamppeter [Wed, 10 Mar 2021 19:27:45 +0000 (20:27 +0100)] 
 libcupsfilters: Made driverless PPD generator more reliable for print or fax PPD

(cherry picked from commit d7b22d732912bdc971b04d31a89083a9bce06657)

4 years agofoomatic-rip: Fixed segfault cause by wrong option parsing
Till Kamppeter [Tue, 9 Mar 2021 21:53:50 +0000 (22:53 +0100)] 
foomatic-rip: Fixed segfault cause by wrong option parsing

(cherry picked from commit 14a15d5d8404d6f12738d6071eadb38d8194c07c)

4 years agoUpdated NEWS
Till Kamppeter [Thu, 25 Feb 2021 17:49:43 +0000 (18:49 +0100)] 
Updated NEWS

(cherry picked from commit c74416371908e11174884447bd0a7f1df8063b85)

4 years agoimplicitclass: Raise timeout for cups-browsed's answer from 20s to 60s
Bhavna2020 [Thu, 25 Feb 2021 17:38:30 +0000 (23:08 +0530)] 
implicitclass: Raise timeout for cups-browsed's answer from 20s to 60s

(cherry picked from commit 6e5c375b56154301b193d4aba5eb80223eb0bd09)

4 years agoUpdated NEWS
Till Kamppeter [Thu, 21 Jan 2021 14:54:19 +0000 (15:54 +0100)] 
Updated NEWS

4 years agolibcupsfilters: In the PPD generator really give priority to Apple Raster against PDF
Till Kamppeter [Thu, 21 Jan 2021 14:50:26 +0000 (15:50 +0100)] 
libcupsfilters: In the PPD generator really give priority to Apple Raster against PDF

(cherry picked from commit bcd1aedeecb83fe9499d1d0c3dc0dab1ea32811c)

4 years agocups-filters 1.28.7 Release 1.28.7
Till Kamppeter [Thu, 7 Jan 2021 18:36:11 +0000 (19:36 +0100)] 
cups-filters 1.28.7 Release

4 years agoSmall correction in NEWS
Till Kamppeter [Thu, 7 Jan 2021 18:21:09 +0000 (19:21 +0100)] 
Small correction in NEWS

4 years agodriverless: Removed the support quality check
Till Kamppeter [Thu, 7 Jan 2021 09:14:40 +0000 (10:14 +0100)] 
driverless: Removed the support quality check

(cherry picked from commit 3fddcf5cb78a9abc55024804635d29f7ac0d96fb)

4 years agolibcupsfilters: In the PPD generator give priority to Apple Raster against PDF
Till Kamppeter [Sun, 20 Dec 2020 13:18:21 +0000 (14:18 +0100)] 
libcupsfilters: In the PPD generator give priority to Apple Raster against PDF

(cherry picked from commit 1b390962756bf10ac30a386225e20cbc72840fe7)

4 years agolibcupsfilters: Added NULL check when removing ".Borderless" suffixes from page size...
Till Kamppeter [Wed, 28 Oct 2020 09:44:19 +0000 (10:44 +0100)] 
libcupsfilters: Added NULL check when removing ".Borderless" suffixes from page size names

(cherry picked from commit 240ffb901d06a117bb8e10b486bfd3de6fe464b2)

4 years agolibcupsfilters: Corrected color space mapping in cupsRasterParseIPPOptions()
Till Kamppeter [Thu, 3 Dec 2020 22:46:25 +0000 (23:46 +0100)] 
libcupsfilters: Corrected color space mapping in cupsRasterParseIPPOptions()

(cherry picked from commit 1dc90ce0f0b7c050ca0bf6f24e889a0eda19c1fb)

4 years agoUpdated NEWS
Till Kamppeter [Thu, 3 Dec 2020 13:59:13 +0000 (14:59 +0100)] 
Updated NEWS

4 years agolibcupsfilters: Fix duplicate ColorModel entries in generated PPD files
Till Kamppeter [Thu, 3 Dec 2020 13:51:18 +0000 (14:51 +0100)] 
libcupsfilters: Fix duplicate ColorModel entries in generated PPD files

(cherry picked from commit a9389fa4a51b3c7fc45d29012d9b0b29a1b1794e)

4 years agocups-filters 1.28.6 Release 1.28.6
Till Kamppeter [Wed, 2 Dec 2020 16:16:06 +0000 (17:16 +0100)] 
cups-filters 1.28.6 Release

4 years agolibcupsfilters: In generated PPDs add a grayscale mode if only color available
Till Kamppeter [Tue, 1 Dec 2020 23:15:04 +0000 (00:15 +0100)] 
libcupsfilters: In generated PPDs add a grayscale mode if only color available

(cherry picked from commit 63b4b1ad9d82399b74254df5b65123831896257c)

4 years agoUpdated NEWS
Till Kamppeter [Wed, 2 Dec 2020 11:12:06 +0000 (12:12 +0100)] 
Updated NEWS

4 years agolibcupsfilters: In generated PPDs add an "OutputBin" option also with one choice
Till Kamppeter [Tue, 1 Dec 2020 22:51:02 +0000 (23:51 +0100)] 
libcupsfilters: In generated PPDs add an "OutputBin" option also with one choice

(cherry picked from commit 2c36d508b18c82c03c90054eeb0cc5fa70e95f7a)

4 years agolibcupsfilters: Generated PPDs could have an "Unknown" default InputSlot
Till Kamppeter [Tue, 1 Dec 2020 22:37:15 +0000 (23:37 +0100)] 
libcupsfilters: Generated PPDs could have an "Unknown" default InputSlot

(cherry picked from commit accfbb110692b7356cbb5a1c17a840ca2954698a)

4 years agocups-browsed: Fixed preservation of location/description info on local queues
Till Kamppeter [Fri, 27 Nov 2020 10:05:48 +0000 (11:05 +0100)] 
cups-browsed: Fixed preservation of location/description info on local queues

(cherry picked from commit ebc50cb99c42f5e105e2cc7bfb975b92e0307d00)

4 years agocups-browsed: Removed all calls of the resolve_uri() function
Till Kamppeter [Thu, 26 Nov 2020 21:29:47 +0000 (22:29 +0100)] 
cups-browsed: Removed all calls of the resolve_uri() function

(cherry picked from commit 7999624bd2d2e3297c44f88d7070f6f44f6db31d)

4 years agoUpdated NEWS
Till Kamppeter [Tue, 24 Nov 2020 17:19:22 +0000 (18:19 +0100)] 
Updated NEWS

4 years agocups-browsed.c: Fix nickname pointer memory leak
Zdenek Dohnal [Mon, 23 Nov 2020 13:47:15 +0000 (14:47 +0100)] 
cups-browsed.c: Fix nickname pointer memory leak

This memory leak was caused by losing the original pointer to allocated memory and
trying to free incomplete pointer. The fix reimplements acquiring of nickname
algorithm and allocates the precise memory for nickname. In case of error, the algorithm
reports an warning into debug log and continue with reading from PPD.

(cherry picked from commit 8aec40e19233b5900f2047c1927987735830808b)

4 years agocups-browsed.c: Call 'get_cluster_attributes()' earlier
Zdenek Dohnal [Mon, 23 Nov 2020 13:25:37 +0000 (14:25 +0100)] 
cups-browsed.c: Call 'get_cluster_attributes()' earlier

It looks like 'get_cluster_attributes()' needs to be called earlier than where it is now,
because the code checks 'printer_attributes' (where is the result of 'get_cluster_attributes()'
for clustered queues) before the first 'get_cluster_attributes()' right now, which looks like
an error. So the fix moves the 'get_cluster_attributes()' call before the first 'printer_attributes'
 query.

(cherry picked from commit d937acd4cdde9a9da8f3459f8ce1b6da196ba887)

4 years agocups-browsed.c: Add resolutionNew() to public API and missing brackets
Zdenek Dohnal [Mon, 23 Nov 2020 14:36:17 +0000 (15:36 +0100)] 
cups-browsed.c: Add resolutionNew() to public API and missing brackets

(cherry picked from commit 38fc176ea653a28eb49c85ddb4a67798d10e0f23)

4 years agocups-browsed.c: Initialize 'print_quality'
Zdenek Dohnal [Mon, 23 Nov 2020 14:11:46 +0000 (15:11 +0100)] 
cups-browsed.c: Initialize 'print_quality'

Initialize 'print_quality' to prevent conditional jump on uninitialized value.

(cherry picked from commit 21008bac5b78e94ab843369f3cfbe6fde0b3501c)

4 years agocups-browsed.c: Fix leakage of CUPS arrays when checking supported attrs
Zdenek Dohnal [Mon, 23 Nov 2020 14:07:25 +0000 (15:07 +0100)] 
cups-browsed.c: Fix leakage of CUPS arrays when checking supported attrs

(cherry picked from commit 919d08a128939d3583b125da6fa93114e9685795)

4 years agocups-browsed.c: Fix leakage of IPP response
Zdenek Dohnal [Mon, 23 Nov 2020 14:05:53 +0000 (15:05 +0100)] 
cups-browsed.c: Fix leakage of IPP response

The IPP response needs to be freed before possible breaking from a loop.

(cherry picked from commit 41b3cb9b17d72aef1b5ec55e30a4ad4a9cc3fa6d)

4 years agocups-browsed.c: Fix 'document_format' memory leak
Zdenek Dohnal [Mon, 23 Nov 2020 14:04:26 +0000 (15:04 +0100)] 
cups-browsed.c: Fix 'document_format' memory leak

(cherry picked from commit f7a8d67fbf386ab55d636a90b47e4ba902e7a2fc)

4 years agocups-browsed.c: Introduce a new pointer to prevent overwriting an allocated pointer
Zdenek Dohnal [Mon, 23 Nov 2020 14:02:44 +0000 (15:02 +0100)] 
cups-browsed.c: Introduce a new pointer to prevent overwriting an allocated pointer

(cherry picked from commit 4eeac772eaef158dce38cb5f8d2f48a3bb50a867)

4 years agocups-browsed.c: Fix conditional jumps based on uninitialized value
Zdenek Dohnal [Mon, 23 Nov 2020 13:53:37 +0000 (14:53 +0100)] 
cups-browsed.c: Fix conditional jumps based on uninitialized value

Strings added with IPP_TAG_MIMETYPE and IPP_TAG_KEYWORD tags use uninitialized
buffers, which causes random behavior. The buffers can be initialized via f.e.
'snprintf()'.

(cherry picked from commit 2fae57d0b96dcf6cbbdd4e30531ea2d18e7efeaa)

4 years agocups-browsed.c: Fix memory ipp_t struct memory leak
Zdenek Dohnal [Mon, 23 Nov 2020 13:38:00 +0000 (14:38 +0100)] 
cups-browsed.c: Fix memory ipp_t struct memory leak

(cherry picked from commit 5945bd8e93e2ca63ba9d189086ca1fd9379d2a1f)

4 years agoppdgenerator.c: Free printer_sizes array
Zdenek Dohnal [Mon, 23 Nov 2020 13:34:04 +0000 (14:34 +0100)] 
ppdgenerator.c: Free printer_sizes array

We need to free 'printer_sizes', which is allocated in 'ppdCreateFromIPP2()', instead of
'sizes', which is passed as a parameter - because it solves a memory leak and it doesn't
leave an invalid pointer.

(cherry picked from commit 10b3824ed1a24a7d67cb9ef149a43b2e603f4cea)

4 years agocups-browsed.c: Free the allocated memory if error happened and we have a cluster
Zdenek Dohnal [Mon, 23 Nov 2020 13:30:58 +0000 (14:30 +0100)] 
cups-browsed.c: Free the allocated memory if error happened and we have a cluster

The code previously leaked several structs, if an error occured during print cluster creation.

(cherry picked from commit 4d588e5d29fdb2396b45bec3a7cd2819fca761e0)

4 years agocups-browsed.c: revert a5a3344aea0bc9, silence the compiler warning
Zdenek Dohnal [Mon, 23 Nov 2020 13:19:49 +0000 (14:19 +0100)] 
cups-browsed.c: revert a5a3344aea0bc9, silence the compiler warning

Revert the commit a5a3344aea0bc9 because it puts back the invalid memory error, and just recast 'uuid' to 'char*'.

(cherry picked from commit 47adac020cda7247a271a203e0ffc4d94cadfde2)