Compare commits

...
Sign in to create a new pull request.

202 commits

Author SHA1 Message Date
Zdenek Dohnal
41507f739c spec: mention when to remove the upgrade script 2025-12-02 08:05:03 +01:00
Zdenek Dohnal
a7475c5579 fix CVE-2025-64524 - add patch 2025-11-28 08:03:29 +01:00
Zdenek Dohnal
a8ee5f8620 fix CVE-2025-64524 2025-11-28 07:59:14 +01:00
Zdenek Dohnal
18de77feb8 change return value of foomatic-hash if built without libppd 2025-11-10 13:45:43 +01:00
Zdenek Dohnal
398b8d5a28 protect older Fedoras from F43+ changes, fix installability report about hashes.new 2025-10-01 16:35:21 +02:00
Zdenek Dohnal
480a0f0325 Remove old public target from gating 2025-08-26 12:47:04 +02:00
Zdenek Dohnal
66a0dd1a21 Mention the change being for F43+ 2025-08-26 12:27:05 +02:00
Zdenek Dohnal
c1695f504f plans dir was substituted by plans.fmf 2025-08-26 08:52:05 +02:00
Zdenek Dohnal
b7ff25e58f Foomatic-rip rejects unknown values (fedora#2386892)
See
https://fedoraproject.org/wiki/Changes/FoomaticRipRejectsUnknownValues
for more information.
2025-08-26 08:24:04 +02:00
Zdenek Dohnal
dbeabdf333 Introduce foomatic-hash, but not rejecting values in foomatic-rip 2025-07-30 12:07:15 +02:00
Fedora Release Engineering
1b3fda0c3a Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 18:55:59 +00:00
Zdenek Dohnal
e1f2a90397 CUPS restart has to happen after universal filter is gone for good (in posttrans) (fedora#2370978) 2025-06-09 15:16:12 +02:00
pdancak
076e45cca6 Plans failed on missing ':' 2025-06-03 09:55:23 +00:00
Zdenek Dohnal
c869cf5c9b Switch tests to Centos Stream 2025-06-03 08:05:34 +02:00
pdancak
c6632c6f3d Typo in plan name 2025-06-02 16:45:02 +02:00
pdancak
2b363dc375 Reworked plans 2025-06-02 16:38:38 +02:00
Zdenek Dohnal
03fb9b0bd1 individual filters have to explicitly enabled 2025-06-02 15:24:12 +02:00
Zdenek Dohnal
519dbe7090 disable universal filter for now - some 3rd party drivers did not work with it 2025-06-02 10:45:20 +02:00
Zdenek Dohnal
4e647ff37f textonly driver was missing (fedora#2351389) 2025-03-11 16:59:07 +01:00
Zdenek Dohnal
fdab9d0e8f fix FTBFS (fedora#2340017) 2025-01-24 09:49:55 +01:00
Fedora Release Engineering
ccbeab52d9 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 15:03:58 +00:00
Zdenek Dohnal
393fd69e1d 2.0.1 2024-08-15 14:59:58 +02:00
Zdenek Dohnal
1c4f6516ea Fix missing epoch in conflicts 2024-07-19 10:25:51 +02:00
Fedora Release Engineering
87de6c1b71 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 20:22:22 +00:00
Zdenek Dohnal
8b92a1c707 2283295 - The directory /usr/share/ppdc/ is not in the RPM database. 2024-05-28 20:53:55 +02:00
Zdenek Dohnal
67255d297e plans: fix url 2024-05-23 13:18:48 +02:00
Zdenek Dohnal
7ae4e25c32 Update gating.yaml 2024-04-15 15:07:55 +02:00
Zdenek Dohnal
f3cae0b36d Update gating.yaml 2024-03-21 15:23:03 +01:00
Fedora Release Engineering
5586866204 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-24 08:42:21 +00:00
Fedora Release Engineering
a5ecb63ada Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 16:31:18 +00:00
Zdenek Dohnal
7883e3153a make driverless subpackage require avahi and ipptool - they don't
work without them
2023-12-19 17:04:28 +01:00
Zdenek Dohnal
f0c5de2a54 introduce cups-filters-driverless to strip avahi dependency for filters 2023-12-19 16:14:54 +01:00
Zdenek Dohnal
8f9f9c570a use exact foomatic-rip filter to comply with LSB 2023-12-19 13:56:50 +01:00
Zdenek Dohnal
e6af6aa338 rebase to 2.0.0 2023-10-19 13:58:41 +02:00
Zdenek Dohnal
45d85af8c2 2229776 - Add textonly driver back as lftocrlf driver 2023-08-08 08:14:23 +02:00
Zdenek Dohnal
5e7f450887 Clean the dangling comment 2023-07-26 14:53:22 +02:00
Fedora Release Engineering
efb7d03fdc Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 16:47:46 +00:00
Zdenek Dohnal
2b31ce337d 2.0rc2 2023-06-28 17:16:14 +02:00
Zdenek Dohnal
d3304142ee 2207970 - CVE-2023-24805 cups-filters: remote code execution in cups-filters, beh CUPS backend 2023-05-17 15:53:15 +02:00
Zdenek Dohnal
177ffd57f4 2.0rc1 2023-04-27 14:44:29 +02:00
Zdenek Dohnal
91d4f55012 Revert "Remove baseos-ci tier1 gating"
This reverts commit ad798b5ac0.
2023-04-14 09:06:55 +02:00
Zdenek Dohnal
ad798b5ac0 Remove baseos-ci tier1 gating 2023-04-14 08:35:24 +02:00
Zdenek Dohnal
6ac942088c Add FMF files 2023-04-13 13:25:13 +02:00
Zdenek Dohnal
ba20eaa5fa use epoch to ensure clean upgrade path, because I didn't read FPG carefully 2023-03-01 16:49:49 +01:00
pdancak
7b818ff3e9 Adding fmf plan to discover tests 2023-02-23 14:08:20 +01:00
Zdenek Dohnal
06431fc214 2170538 - Rebase to 2.0b3 2023-02-20 16:44:38 +01:00
Fedora Release Engineering
c7f670cf9b Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 00:49:31 +00:00
Zdenek Dohnal
662860bd6d really build with qpdf-11.1.1 (forgot to wait for qpdf in side tag...) 2022-10-13 13:53:23 +02:00
Zdenek Dohnal
62dde7da62 rebuilt with qpdf-11.1.1 2022-10-13 12:44:50 +02:00
Zdenek Dohnal
6ea383d6ac rebuilt with qpdf-11.1.0 2022-09-22 16:03:16 +02:00
Zdenek Dohnal
d0a8a52f31 build braille subpackage only on Fedora and CentOS Stream > 9 2022-09-22 15:53:50 +02:00
Zdenek Dohnal
86b38d6d57 disable frequent network interface data update, which slows down the queue creation 2022-09-21 10:13:58 +02:00
Zdenek Dohnal
15366e173e 1.28.16 2022-09-19 13:43:06 +02:00
Zdenek Dohnal
2c091ba0e4 1.28.16 2022-09-19 13:34:48 +02:00
Zdenek Dohnal
67ee5bbd71 2123809 - rpm -Va reports error on /etc/cups/cups-browsed.conf 2022-09-14 15:02:19 +02:00
Fedora Release Engineering
ca565205ee Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-20 23:53:18 +00:00
Zdenek Dohnal
6e20b40da9 1.28.15 2022-04-22 06:34:12 +02:00
Zdenek Dohnal
faec0dbe07 1.28.14 2022-04-07 12:18:02 +02:00
Zdenek Dohnal
226ec8183a 1.28.13 2022-03-28 17:03:43 +02:00
Zdenek Dohnal
948b35290b 1.28.12 2022-03-08 17:08:41 +01:00
Fedora Release Engineering
5210c94838 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 00:07:31 +00:00
Zdenek Dohnal
73dbd2a677 raise the NVR to get a new build 2022-01-18 11:42:47 +01:00
Zdenek Dohnal
9809963904 1.28.11 2022-01-17 14:41:36 +01:00
Zdenek Dohnal
14621a6e82 cups-filters.spec: fix typo causing problems 2022-01-17 13:44:55 +01:00
Zdenek Dohnal
4ac3a5a53f 2040973 - Make Braille printing support optional 2022-01-17 12:56:27 +01:00
Zdenek Dohnal
0874da6cc2 1995728 - Enable braille printing 2022-01-03 16:14:07 +01:00
Zdenek Dohnal
670e73ad82 1.28.10 2021-09-15 11:24:55 +02:00
Zdenek Dohnal
925c0f3f69 rebuilt with poppler-21.07.0 2021-07-27 08:15:32 +02:00
Zdenek Dohnal
5cab1ec88e remove build requirement on poppler-devel - we need just poppler-cpp-devel 2021-07-27 07:38:21 +02:00
Fedora Release Engineering
5aab7baafb - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 20:14:33 +00:00
Zdenek Dohnal
d17a3ad727 1981603 - pdftopdf doesn't handle "page-range=10-2147483647" correctly 2021-07-20 11:27:22 +02:00
Zdenek Dohnal
84a28971d9 1.28.9 2021-06-21 11:40:01 +02:00
Zdenek Dohnal
b712bd6dba 1973056 - cups-browsed doesn't renew DBus subscription in time and all printing comes to a halt 2021-06-21 09:11:40 +02:00
Zdenek Dohnal
d456002635 1.28.8 2021-05-20 06:19:00 +02:00
Zdenek Dohnal
3f27a10b68 1954524 - cups-browsed doesn't save "*-default" options 2021-04-28 12:47:20 +02:00
Zbigniew Jędrzejewski-Szmek
0ffeb35189 Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
2021-03-02 16:14:00 +01:00
Zdenek Dohnal
fe20c1aeb6 cups-filters.spec: fix the latest changelog message 2021-03-02 06:14:27 +01:00
Zdenek Dohnal
8404225612 rebuilt 2021-02-01 11:58:26 +01:00
Zdenek Dohnal
7975201239 remove nss-mdns - dont require a specific way how to resolve .local addresses 2021-01-28 09:44:19 +01:00
Fedora Release Engineering
0423ef0468 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 02:50:23 +00:00
Zdenek Dohnal
f08a23d0dd unpush fix for 1904405 - M281fdw now often chokes on URF 2021-01-25 09:32:19 +01:00
Zdenek Dohnal
0b4e8e3f04 1.28.7
- urftopdf nor pdftoopvp aren't compiled anymore
- 1904405 - HP M281fdw: čžš characters printed as squares with "driverless" driver
2021-01-22 08:29:39 +01:00
Zdenek Dohnal
a2ea1b6f10 1.28.7
- urftopdf nor pdftoopvp aren't compiled anymore
- 1904405 - HP M281fdw: čžš characters printed as squares with "driverless" driver
2021-01-22 08:28:47 +01:00
Zdenek Dohnal
3a7b047594 1.28.6 2020-12-08 11:25:12 +01:00
Zdenek Dohnal
5d1b2b21fe Put back files forgotten by previous commit 2020-12-01 08:55:31 +01:00
Zdenek Dohnal
6a6ba51b99 Sort the files and requires 2020-12-01 08:39:41 +01:00
Zdenek Dohnal
d613403cce filters using ijs were removed, removed the dep 2020-12-01 08:04:34 +01:00
Zdenek Dohnal
12bd665536 fix various memory issues within cups-browsed 2020-11-24 06:53:42 +01:00
Zdenek Dohnal
7f6989d5c2 use make and git-core 2020-11-05 07:56:15 +01:00
Zdenek Dohnal
0a471b82f7 1.28.5, 1881365 - cups-browsed crashing 2020-11-02 13:28:57 +01:00
Zdenek Dohnal
d6cf1a69c5 1891720 - foomatic-rip files up /var/spool/tmp with temporary files 2020-10-27 10:21:31 +01:00
Zdenek Dohnal
08a1bd7590 1879147 - driverless cannot generate ppd for dns-sd based uris 2020-09-17 15:51:24 +02:00
Zdenek Dohnal
3b950f0025 1.28.2 2020-09-15 13:10:05 +02:00
Zdenek Dohnal
91fd1dacc7 revert previous commit - systemd-resolved doesn't work with avahi right now
because missing link in NetworkManager
2020-09-03 12:51:54 +02:00
Zdenek Dohnal
1b2594f02a MDNS resolving should be done by systemd-resolved now 2020-08-31 16:25:04 +02:00
Zdenek Dohnal
47bca23058 1.28.1 - added driverless fax support 2020-08-28 08:40:06 +02:00
Zdenek Dohnal
649f2110e9 memory leaks patch is from upstream too 2020-08-24 09:06:48 +02:00
Zdenek Dohnal
9003c6ec4b use configure option to dont save queues between restarts instead of downstream patch reverting the issue 2020-08-24 09:05:50 +02:00
Zdenek Dohnal
592296aa15 the exact path in cups-browsed manpage was removed, use the patch removing it instead of downstream one 2020-08-24 07:37:03 +02:00
Zdenek Dohnal
f282cc8514 use configure option instead of downstream, cups-browsed.conf editing, patch 2020-08-24 07:29:55 +02:00
Zdenek Dohnal
63ff06c16a 1867412 - cups-browsed leaks memory 2020-08-19 06:45:58 +02:00
Zdenek Dohnal
e0f5d959cd remove buildrequire on ipptool 2020-08-06 08:25:58 +02:00
Zdenek Dohnal
bb10dc7b6f require ipptool explicitly 2020-08-06 07:22:33 +02:00
Zdenek Dohnal
970239102a own 'new' directories 2020-08-05 10:04:40 +02:00
Zdenek Dohnal
9866ec1f82 use %make_build and %make_install according FPG 2020-08-05 09:57:28 +02:00
Fedora Release Engineering
a784c2a3f0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 14:51:38 +00:00
Zdenek Dohnal
5b19b86468 1848575 - [cups, cups-filters] PPD generators creates invalid cupsManualCopies entry 2020-07-20 14:55:43 +02:00
Zdenek Dohnal
f62a89ac90 1.27.5 2020-06-08 13:09:28 +02:00
Zdenek Dohnal
401449b6bf 1.27.4 2020-04-14 13:56:49 +02:00
Zdenek Dohnal
5ab9f50bd8 memory issues in cups-browsed 2020-04-08 13:48:07 +02:00
Zdenek Dohnal
2ef13432e5 make nss-mdns and avahi recommended 2020-04-06 13:34:04 +02:00
Zdenek Dohnal
69c633e97b 1.27.3 2020-03-23 07:16:26 +01:00
Zdenek Dohnal
1fc0a67de9 fix leaks in cups-browsed
add require on nss-mdns
2020-03-20 06:37:18 +01:00
Zdenek Dohnal
890dbaf30a 1.27.2 2020-03-02 15:40:37 +01:00
Zdenek Dohnal
39704fa792 1806862 - foomatic-rip handles empty files in bad way 2020-02-26 15:10:53 +01:00
Zdenek Dohnal
3606bde648 1.27.1 2020-02-18 16:17:50 +01:00
Zdenek Dohnal
3154c5b1e8 1802969 - Service "cups-browsed" is crashing all the time 2020-02-18 15:39:00 +01:00
Zdenek Dohnal
b970f11618 Merge branch 'private-zdohnal-rebase' 2020-01-28 14:28:19 +01:00
Zdenek Dohnal
719f16e709 Rebase to 1.27.0 2020-01-28 14:21:07 +01:00
Zdenek Dohnal
165fc502ac fix build with GCC 10 and remove old obsoletes 2020-01-23 17:52:25 +01:00
Marek Kasik
bc3414ce3e Rebuild for poppler-0.84.0 2020-01-17 12:40:03 +01:00
Zdenek Dohnal
3a0eca877e add buildrequires fro systemd-rpm-macros 2020-01-15 17:58:55 +01:00
Zdenek Dohnal
0cd045c7fe add post scriptlet for update 2019-12-17 17:48:23 +01:00
Zdenek Dohnal
3e0de52e39 1.26.0 2019-12-17 11:14:35 +01:00
Zdenek Dohnal
5f198ebd13 1776271 - Updated cups-browsed in RHEL 7.7 leaks sockets 2019-11-26 12:20:26 +01:00
Zdenek Dohnal
1d9a177ccf rebuilt for qpdf-9.1.0 2019-11-19 13:32:58 +01:00
Zdenek Dohnal
c80a629db4 1756726 - Epson ET 7700 reports pwg support, but pwg does not work 2019-11-12 12:53:30 +01:00
Zdenek Dohnal
2bc24c38e4 gs 9.27 now uses setfilladjust2 2019-10-09 11:57:44 +02:00
Zdenek Dohnal
a667ded3e9 ftbfs with qpdf-9.0.0 2019-09-17 12:54:19 +02:00
Zdenek Dohnal
8a4dc09994 pdftopdf output should not be encrypted 2019-09-17 12:49:44 +02:00
Zdenek Dohnal
f6fb823829 require colord, because it is needed for ICC profiles for filters 2019-09-11 14:36:00 +02:00
Zdenek Dohnal
61e9e90047 1740122 - foomatic-rip segfaults when env variable PRINTER is not defined 2019-08-13 09:15:25 +02:00
Zdenek Dohnal
87d6b5e0ba remove unneeded scriptlet 2019-08-07 15:48:06 +02:00
Fedora Release Engineering
a568cb9b30 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-24 21:20:28 +00:00
Zdenek Dohnal
9b15b8eea6 1.22.5 2019-04-08 11:48:09 +02:00
Zdenek Dohnal
6c9c9cf9f5 1.22.3 2019-03-26 16:17:46 +01:00
Zdenek Dohnal
14b31aac55 cups-brf needs to be run as root 2019-02-01 14:14:35 +01:00
Fedora Release Engineering
6746325d61 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-01-31 16:34:35 +00:00
Marek Kasik
63e6f8adf5 Rebuild for poppler-0.73.0 2019-01-25 19:47:25 +01:00
Zdenek Dohnal
a8f75f2927 1.22.0 2019-01-25 09:12:42 +01:00
Igor Gnatenko
cc60395a8c
Remove obsolete ldconfig scriptlets
References: https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2019-01-22 18:38:45 +01:00
Björn Esser
0e6742b393
Rebuilt for libcrypt.so.2 (#1666033) 2019-01-14 18:59:33 +01:00
Zdenek Dohnal
2010263180 1.21.6 2019-01-08 12:00:44 +01:00
Zdenek Dohnal
6239c46f66 1.21.5 2018-12-13 16:06:47 +01:00
Zdenek Dohnal
8ab2c03a62 links in manpages are wrong 2018-11-12 14:35:36 +01:00
Zdenek Dohnal
ef3e4c55ce rebuilt for qpdf-8.2.1 2018-09-24 17:44:48 +02:00
Zdenek Dohnal
1b4fbffc07 1632267 - cups-filters needs to obsolete ghostscript-cups and foomatic-filters 2018-09-24 17:43:53 +02:00
Zdenek Dohnal
896c4186e8 1628255 - cups-filters: Sticky EOF behavior in glibc breaks descriptor concatenation using dup2 (breaks printing) 2018-09-21 15:05:22 +02:00
Zdenek Dohnal
71c6baacf4 1.21.2 2018-09-10 18:11:31 +02:00
Marek Kasik
5d00506944 Rebuild for poppler-0.67.0 2018-08-14 01:11:34 +02:00
Zdenek Dohnal
065cfc122f correcting license 2018-07-24 15:39:38 +02:00
Fedora Release Engineering
8a7e13d197 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-12 22:27:26 +00:00
Zdenek Dohnal
e834146303 rebuilt for new qpdf-8.1.0 2018-06-25 10:51:36 +02:00
Zdenek Dohnal
e8b2b7289a hybrid pdftops filter requires poppler and ghostscript for run 2018-06-12 15:22:34 +02:00
Zdenek Dohnal
adfe73a4b6 cups-browsed needs to have cups.service to run 2018-06-12 07:36:18 +02:00
Zdenek Dohnal
5a8bdd4187 1.20.3 2018-04-13 09:44:23 +02:00
Zdenek Dohnal
7c37df15dd dependency on poppler-utils is now only recommended 2018-04-05 09:21:10 +02:00
Zdenek Dohnal
12094716ea fixing discovering of remote CUPS queues and LDAP queues 2018-04-05 08:16:08 +02:00
Zdenek Dohnal
b5d9adf81e 1.20.2 2018-04-05 07:58:57 +02:00
Marek Kasik
eac2d98b5b Rebuild for poppler-0.63.0 2018-03-23 15:28:01 +01:00
Zdenek Dohnal
1c0cb681f9 Rebuilt for qpdf-8.0.2 2018-03-07 14:11:48 +01:00
Zdenek Dohnal
805d0c618c 1.20.1 2018-03-05 16:05:59 +01:00
Zdenek Dohnal
b28dd5f442 1.20.1 2018-03-05 16:03:04 +01:00
Zdenek Dohnal
36a0663c97 add explicit soname -> warning about soname change 2018-02-28 12:23:40 +01:00
Zdenek Dohnal
8535a417f1 libjpeg is shipped in libjpeg-turbo and pkgconfig in pkgconf-pkg-config 2018-02-26 12:54:27 +01:00
Zdenek Dohnal
24ef2a3912 gcc and gcc-c++ is no longer in buildroot by default 2018-02-19 13:55:09 +01:00
David Tardon
67783211e3 rebuild for poppler 0.62.0 2018-02-14 18:31:34 +01:00
Igor Gnatenko
5e19ac79ce
Escape macros in %changelog
Reference: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/Y2ZUKK2B7T2IKXPMODNF6HB2O5T5TS6H/
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-02-09 09:04:18 +01:00
Zdenek Dohnal
cf615f08f3 remove old stuff https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/MRWOMRZ6KPCV25EFHJ2O67BCCP3L4Y6N/ 2018-02-08 15:15:18 +01:00
Fedora Release Engineering
58bbef731c - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-07 06:06:30 +00:00
Zdenek Dohnal
967382e737 Rebase to 1.20.0 2018-01-30 12:54:16 +01:00
Björn Esser
454cc8b68d
Rebuilt for switch to libxcrypt 2018-01-20 23:06:37 +01:00
Zdenek Dohnal
8aa69860de Rebase to 1.19.0 2018-01-16 14:56:21 +01:00
Zdenek Dohnal
e831834960 adding build dependency on ghostscript because of its package changes 2018-01-11 17:01:33 +01:00
Zdenek Dohnal
38fd0c0b75 1529680 - set CreateIPPPrintQueues to ALL and LocalRemoteCUPSQueueNaming to RemoteName 2018-01-04 10:17:07 +01:00
Zdenek Dohnal
d5b8735cd1 fixing patch for upstream issue 1413 2017-11-21 10:11:44 +01:00
Zdenek Dohnal
6b99ba079f fixing patch for upstream issue 1413 2017-11-20 19:49:33 +01:00
David Tardon
65126b9f42 rebuild for poppler 0.61.0 2017-11-08 20:25:12 +01:00
Zdenek Dohnal
46403f753d rebase to 1.17.9 2017-10-18 12:28:21 +02:00
Zdenek Dohnal
364623be37 rebase to 1.17.9 2017-10-18 12:05:35 +02:00
Zdenek Dohnal
f2aaf8837d removing Provides ghostscript-cups and foomatic-filters 2017-10-09 19:24:56 +02:00
David Tardon
6b4df6c249 rebuild for poppler 0.60.1 2017-10-06 15:50:23 +02:00
Zdenek Dohnal
f1894bfee4 upstream 1413 - Propagation of location doesn't work 2017-10-06 14:06:10 +02:00
Zdenek Dohnal
9a46303505 upstream 1413 - Propagation of location doesn't work 2017-10-06 13:49:46 +02:00
Zdenek Dohnal
ffd9d39b36 rebase to 1.17.8 2017-10-03 09:32:43 +02:00
Zdenek Dohnal
89060fc289 rebase to 1.17.7 2017-09-19 13:00:06 +02:00
David Tardon
dc01ed7062 rebuild for poppler 0.59.0 2017-09-08 10:40:22 +02:00
Zdenek Dohnal
77f2a39db4 rebase to 1.17.2 2017-09-06 11:40:37 +02:00
Zdenek Dohnal
f6e9ef3041 rebase to 1.16.3 2017-08-22 15:49:21 +02:00
Zdenek Dohnal
69620785b0 rebase to 1.16.1 2017-08-14 14:38:51 +02:00
Zdenek Dohnal
956b8d3857 rebuilt for qpdf-libs 2017-08-11 17:22:47 +02:00
Zdenek Dohnal
0382fae99a rebase to 1.16.0 2017-08-07 09:24:48 +02:00
David Tardon
cb3b4680f1 rebuild for poppler 0.57.0 2017-08-03 12:40:41 +02:00
Fedora Release Engineering
74333f3c1d - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild 2017-08-02 19:21:51 +00:00
Fedora Release Engineering
6a7134b511 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild 2017-07-26 05:46:47 +00:00
Jonathan Wakely
e0b443e4e2 Rebuilt for Boost 1.64 2017-07-03 17:34:06 +01:00
Zdenek Dohnal
a28c5c1e8f rebase to 1.14.1 2017-06-30 09:44:25 +02:00
Zdenek Dohnal
1564b99c73 update python Requires/BuildRequires accordingly to Fedora Guidelines for Python (python-cups -> python3-cups) 2017-06-29 08:44:07 +02:00
Zdenek Dohnal
3a0452846e removing BuildRequires: mupdf 2017-05-31 10:15:51 +02:00
Zdenek Dohnal
70197ea57b rebase to 1.14.0 2017-05-17 09:38:49 +02:00
Zdenek Dohnal
791cf659d4 rebase to 1.13.5 2017-04-28 17:41:19 +02:00
David Tardon
7cf411250e rebuild for poppler 0.53.0 2017-03-28 15:21:58 +02:00
16 changed files with 2843 additions and 320 deletions

1
.fmf/version Normal file
View file

@ -0,0 +1 @@
1

73
.gitignore vendored
View file

@ -1,72 +1 @@
/cups-filters-1.0.20.tar.xz
/cups-filters-1.0.22.tar.xz
/cups-filters-1.0.23.tar.xz
/cups-filters-1.0.24.tar.xz
/cups-filters-1.0.25.tar.xz
/cups-filters-1.0.28.tar.xz
/cups-filters-1.0.29.tar.xz
/cups-filters-1.0.30.tar.xz
/cups-filters-1.0.31.tar.xz
/cups-filters-1.0.32.tar.xz
/cups-filters-1.0.33.tar.xz
/cups-filters-1.0.34.tar.xz
/cups-filters-1.0.35.tar.xz
/cups-filters-1.0.36.tar.xz
/cups-filters-1.0.37.tar.xz
/cups-filters-1.0.38.tar.xz
/cups-filters-1.0.39.tar.xz
/cups-filters-1.0.40.tar.xz
/cups-filters-1.0.41.tar.xz
/cups-filters-1.0.42.tar.xz
/cups-filters-1.0.43.tar.xz
/cups-filters-1.0.44.tar.xz
/cups-filters-1.0.45.tar.xz
/cups-filters-1.0.46.tar.xz
/cups-filters-1.0.47.tar.xz
/cups-filters-1.0.48.tar.xz
/cups-filters-1.0.49.tar.xz
/cups-filters-1.0.50.tar.xz
/cups-filters-1.0.51.tar.xz
/cups-filters-1.0.52.tar.xz
/cups-filters-1.0.53.tar.xz
/cups-filters-1.0.54.tar.xz
/cups-filters-1.0.55.tar.xz
/cups-filters-1.0.58.tar.xz
/cups-filters-1.0.59.tar.xz
/cups-filters-1.0.60.tar.xz
/cups-filters-1.0.61.tar.xz
/cups-filters-1.0.65.tar.xz
/cups-filters-1.0.66.tar.xz
/cups-filters-1.0.67.tar.xz
/cups-filters-1.0.68.tar.xz
/cups-filters-1.0.69.tar.xz
/cups-filters-1.0.70.tar.xz
/cups-filters-1.0.71.tar.xz
/cups-filters-1.0.73.tar.xz
/cups-filters-1.0.74.tar.xz
/cups-filters-1.0.75.tar.xz
/cups-filters-1.0.76.tar.xz
/cups-filters-1.1.0.tar.xz
/cups-filters-1.2.0.tar.xz
/cups-filters-1.3.0.tar.xz
/cups-filters-1.4.0.tar.xz
/cups-filters-1.5.0.tar.xz
/cups-filters-1.6.0.tar.xz
/cups-filters-1.7.0.tar.xz
/cups-filters-1.8.0.tar.xz
/cups-filters-1.8.1.tar.xz
/cups-filters-1.8.2.tar.xz
/cups-filters-1.8.3.tar.xz
/cups-filters-1.9.0.tar.xz
/cups-filters-1.10.0.tar.xz
/cups-filters-1.11.2.tar.xz
/cups-filters-1.11.3.tar.xz
/cups-filters-1.11.4.tar.xz
/cups-filters-1.11.5.tar.xz
/cups-filters-1.11.6.tar.xz
/cups-filters-1.12.0.tar.xz
/cups-filters-1.13.0.tar.xz
/cups-filters-1.13.1.tar.xz
/cups-filters-1.13.2.tar.xz
/cups-filters-1.13.3.tar.xz
/cups-filters-1.13.4.tar.xz
/cups-filters-*.tar.gz

View file

@ -0,0 +1,27 @@
From 44f59a1aa74c48515d8feba5a61b7ea3aaa592c4 Mon Sep 17 00:00:00 2001
From: Zdenek Dohnal <zdohnal@redhat.com>
Date: Fri, 24 Jan 2025 09:44:58 +0100
Subject: [PATCH] Fix build failure with GCC 15 and -std=c23
The newest standard has more strict data type checks, function pointers
in function prototypes have to declare data types of its arguments.
---
filter/foomatic-rip/process.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/filter/foomatic-rip/process.h b/filter/foomatic-rip/process.h
index f6e15f65c..54a42923a 100644
--- a/filter/foomatic-rip/process.h
+++ b/filter/foomatic-rip/process.h
@@ -18,7 +18,7 @@
#include <sys/wait.h>
-pid_t start_process(const char *name, int (*proc_func)(), void *user_arg,
+pid_t start_process(const char *name, int (*proc_func)(FILE*, FILE*, void*), void *user_arg,
FILE **fdin, FILE **fdout);
pid_t start_system_process(const char *name, const char *command, FILE **fdin,
FILE **fdout);
--
2.48.1

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,79 @@
From 0fe46c511e81062575b05936f804eb18c9f0a011 Mon Sep 17 00:00:00 2001
From: Zdenek Dohnal <zdohnal@redhat.com>
Date: Wed, 12 Nov 2025 15:47:24 +0100
Subject: [PATCH] rastertopclx.c: Fix infinite loop caused by crafted file
Infinite loop happened because of crafted input raster file, which led
into heap buffer overflow of `CompressBuf` array.
Based on comments there should be always some `count` when compressing
the data, and processing of crafted file ended with offset and count
being 0.
Fixes CVE-2025-64524
---
filter/rastertopclx.c | 25 +++++++++++++++++++++++--
1 file changed, 23 insertions(+), 2 deletions(-)
diff --git a/filter/rastertopclx.c b/filter/rastertopclx.c
index ded86f114..39cb378bf 100644
--- a/filter/rastertopclx.c
+++ b/filter/rastertopclx.c
@@ -825,10 +825,10 @@ StartPage(cf_filter_data_t *data, // I - filter data
}
if (header->cupsCompression)
- CompBuffer = malloc(DotBufferSize * 4);
+ CompBuffer = calloc(DotBufferSize * 4, sizeof(unsigned char));
if (header->cupsCompression >= 3)
- SeedBuffer = malloc(DotBufferSize);
+ SeedBuffer = calloc(DotBufferSize, sizeof(unsigned char));
SeedInvalid = 1;
@@ -1159,6 +1159,13 @@ CompressData(unsigned char *line, // I - Data to compress
seed ++;
count ++;
}
+
+ //
+ // Bail out if we don't have count to compress
+ //
+
+ if (count == 0)
+ break;
}
//
@@ -1252,6 +1259,13 @@ CompressData(unsigned char *line, // I - Data to compress
count = line_ptr - start;
+ //
+ // Bail out if we don't have count to compress
+ //
+
+ if (count == 0)
+ break;
+
#if 0
fprintf(stderr,
"DEBUG: offset=%d, count=%d, comp_ptr=%p(%d of %d)...\n",
@@ -1424,6 +1438,13 @@ CompressData(unsigned char *line, // I - Data to compress
count = (line_ptr - start) / 3;
+ //
+ // Bail out if we don't have count to compress
+ //
+
+ if (count == 0)
+ break;
+
//
// Place mode 10 compression data in the buffer; each sequence
// starts with a command byte that looks like:
--
2.51.1

1
ci.fmf Normal file
View file

@ -0,0 +1 @@
resultsdb-testcase: separate

BIN
cups-filters-1.28.13.tar.xz Normal file

Binary file not shown.

View file

@ -1,42 +0,0 @@
diff -up cups-filters-1.13.4/utils/cups-browsed.c.apremotequeueid cups-filters-1.13.4/utils/cups-browsed.c
--- cups-filters-1.13.4/utils/cups-browsed.c.apremotequeueid 2017-02-24 12:14:22.099865138 +0100
+++ cups-filters-1.13.4/utils/cups-browsed.c 2017-02-24 12:18:44.039943820 +0100
@@ -1,4 +1,4 @@
-/***
+ /***
This file is part of cups-filters.
This file is free software; you can redistribute it and/or modify it
@@ -3491,7 +3491,8 @@ gboolean handle_cups_queues(gpointer unu
cups_job_t *jobs;
ipp_t *request;
time_t current_time = time(NULL);
- int i, new_cupsfilter_line_inserted, cont_line_read, want_raw;
+ int i, new_cupsfilter_line_inserted, ap_remote_queue_id_line_inserted,
+ cont_line_read, want_raw;
char *disabled_str, *ptr, *prefix;
const char *loadedppd = NULL;
int pass_through_ppd;
@@ -3813,6 +3814,7 @@ gboolean handle_cups_queues(gpointer unu
" and inhibiting client-side filtering of the job" : ""),
buf);
new_cupsfilter_line_inserted = 0;
+ ap_remote_queue_id_line_inserted = 0;
cont_line_read = 0;
while (cupsFileGets(in, line, sizeof(line))) {
if (pass_through_ppd == 1 &&
@@ -3896,6 +3898,14 @@ gboolean handle_cups_queues(gpointer unu
cupsFilePrintf(out, "%s\n", line);
} else if (cont_line_read == 0 || strncmp(line, "*End", 4)) {
cont_line_read = 0;
+ /* Write an "APRemoteQueueID" line to make this queue marked
+ as remote printer by CUPS */
+ if (strncmp(line, "*%", 2) &&
+ strncmp(line, "*PPD-Adobe:", 11) &&
+ ap_remote_queue_id_line_inserted == 0) {
+ ap_remote_queue_id_line_inserted = 1;
+ cupsFilePrintf(out, "*APRemoteQueueID: \"\"\n");
+ }
/* Simply write out the line as we read it */
cupsFilePrintf(out, "%s\n", line);
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,13 @@
diff --git a/filter/foomatic-rip/util.c b/filter/foomatic-rip/util.c
index 508bc09..ad79fbf 100644
--- a/filter/foomatic-rip/util.c
+++ b/filter/foomatic-rip/util.c
@@ -76,7 +76,7 @@ rip_die(int status,
{
va_list ap;
- _log("Process is dying with \"");
+ _log("ERROR: Process is dying with \"");
va_start(ap, msg);
_logv(msg, ap);
va_end(ap);

View file

@ -0,0 +1,188 @@
From 41c5f2f6139e4d3693c2483ee4281202a80ae451 Mon Sep 17 00:00:00 2001
From: zdohnal <zdohnal@redhat.com>
Date: Tue, 22 Jul 2025 15:12:19 +0200
Subject: [PATCH] Introduce foomatic-hash and reject unauthorized values in
foomatic-rip (#648)
The change provides a way for users to have control over what values are
allowed for the foomatic-rip-related PPD keywords FoomaticRIPCommandLine,
FoomaticRIPCommandLinePDF, and FoomaticRIPOptionSetting. Since the
values can be later used when constructing a shell command, the filter
foomatic-rip was a target of several exploits (caused by issues at
different places in CUPS or in different projects of the printing stack) to
do arbitrary code execution when the filter is used.
By default the filter is run by user lp, so the issue is mitigated, but
this PR gives admin complete control over what can be run in
foomatic-rip and reject anything injected into system via different
ways.
First, the new tool - foomatic-hash - can be called on a PPD file or
directory with drivers/PPDs, with scan output and file with hexadecimal
representation of hashed values. Once the scan output is reviewed by
admin, admin can decide to put the resulting hashes into
/etc/foomatic/hashes.d and allow them for the filter.
---
Makefile.am | 44 ++-
README.md | 23 ++
configure.ac | 2 +-
filter/foomatic-rip/foomatic-hash.1 | 66 ++++
filter/foomatic-rip/foomatic-hash.c | 549 ++++++++++++++++++++++++++
filter/foomatic-rip/foomatic-rip.1.in | 16 +
filter/foomatic-rip/foomaticrip.c | 75 ----
filter/foomatic-rip/foomaticrip.h | 40 --
filter/foomatic-rip/options.c | 67 ++++
filter/foomatic-rip/process.c | 9 +
filter/foomatic-rip/process.h | 3 +
filter/foomatic-rip/util.c | 341 +++++++++++++++-
filter/foomatic-rip/util.h | 67 ++++
13 files changed, 1178 insertions(+), 124 deletions(-)
create mode 100644 filter/foomatic-rip/foomatic-hash.1
create mode 100644 filter/foomatic-rip/foomatic-hash.c
diff --git a/filter/foomatic-rip/foomatic-rip.1.in b/filter/foomatic-rip/foomatic-rip.1.in
index 9685a95f5..3dff5215f 100644
--- a/filter/foomatic-rip/foomatic-rip.1.in
+++ b/filter/foomatic-rip/foomatic-rip.1.in
@@ -193,6 +193,15 @@ friends. Several PPD files use shell constructs that require a more
modern shell like \fBbash\fR, \fBzsh\fR, or \fBksh\fR.
+.SH PPD OPTION VALUE RESTRICTIONS AND EXCEPTIONS
+
+The values of PPD options \fBFoomaticRIPCommandLine\fR, \fBFoomaticRIPCommandLinePDF\fR and \fBFoomaticRIPOptionSetting\fR
+are rejected in the default configuration because of security implications. Users can use the tool \fBfoomatic-hash(1)\fR, which provides
+values of affected PPD options from found drivers and hashes of those values in hexadecimal format. User is expected to review the found values,
+and if there is nothing suspicious in the output, copy the file with hashes into into the directory \fB@sysconfdir@/foomatic/hashes.d\fR
+to allow the exceptions for found values.
+
+
.SH FILES
.PD 0
.TP 0
@@ -209,6 +218,13 @@ The PPD files of the currently defined printers
Configuration file for foomatic-rip
+.TP 0
+@sysconfdir@/foomatic/hashes.d
+.TP 0
+@datadir@/foomatic/hashes.d
+
+Directories with hashes of allowed values
+
.PD 0
.\".SH SEE ALSO
diff --git a/filter/foomatic-rip/options.c b/filter/foomatic-rip/options.c
index bad833bc1..032fe9ec3 100644
--- a/filter/foomatic-rip/options.c
+++ b/filter/foomatic-rip/options.c
@@ -102,6 +102,42 @@ get_icc_profile_for_qualifier(const char **qualifier)
}
+//
+// 'is_allowed_value' - Check if the option value is allowed.
+//
+
+int // O - Boolean value - true 1 / false 0
+is_allowed_value(cups_array_t *ar, // I - Array of already known hashes from system
+ char *value, // I - Scanned value from PPD file
+ size_t value_len) // I - Value length
+{
+ char hash_string[65]; // Help array to store hexadecimal hashed string
+
+ //
+ // Empty string is allowed...
+ //
+
+ if (!value_len)
+ return (1);
+
+ //
+ // Hash the value and get hexadecimal string for it...
+ //
+
+ if (hash_data((unsigned char*)value, value_len, hash_string, sizeof(hash_string)))
+ return (0);
+
+ //
+ // Check if the found hexadecimal hashed string is in the array -> allowed on the system...
+ //
+
+ if (cupsArrayFind(ar, hash_string))
+ return (1);
+
+ return (0);
+}
+
+
// a selector is a general tri-dotted specification.
// The 2nd and 3rd elements of the qualifier are optionally modified by
// cupsICCQualifier2 and cupsICCQualifier3:
@@ -1866,12 +1902,19 @@ read_ppd_file(const char *filename)
option_t *opt, *current_opt = NULL;
param_t *param;
icc_mapping_entry_t *entry;
+ cups_array_t *known_hashes = NULL;
fh = fopen(filename, "r");
if (!fh)
rip_die(EXIT_PRNERR_NORETRY_BAD_SETTINGS, "Unable to open PPD file %s\n", filename);
_log("Parsing PPD file ...\n");
+ if (load_system_hashes(&known_hashes))
+ {
+ fclose(fh);
+ rip_die(EXIT_PRNERR_NORETRY, "Not enough memory for array allocation\n.");
+ }
+
dstrassure(value, 256);
qualifier_data = list_create();
@@ -1955,10 +1998,26 @@ read_ppd_file(const char *filename)
}
else if (strcmp(key, "FoomaticRIPCommandLine") == 0)
{
+ if (!is_allowed_value(known_hashes, value->data, strlen(value->data)))
+ {
+ cupsArrayDelete(known_hashes);
+ fclose(fh);
+
+ rip_die(EXIT_PRNERR_NOTALLOWED, "ERROR: The value of the key %s is not among the allowed values - see foomatic-rip man page for more instructions.\n", key);
+ }
+
unhtmlify(cmd, 4096, value->data);
}
else if (strcmp(key, "FoomaticRIPCommandLinePDF") == 0)
{
+ if (!is_allowed_value(known_hashes, value->data, strlen(value->data)))
+ {
+ cupsArrayDelete(known_hashes);
+ fclose(fh);
+
+ rip_die(EXIT_PRNERR_NOTALLOWED, "ERROR: The value of the key %s is not among the allowed values - see foomatic-rip man page for more instructions.\n", key);
+ }
+
unhtmlify(cmd_pdf, 4096, value->data);
}
else if (!strcmp(key, "cupsFilter"))
@@ -2097,6 +2156,14 @@ read_ppd_file(const char *filename)
}
else if (!strcmp(key, "FoomaticRIPOptionSetting"))
{
+ if (!is_allowed_value(known_hashes, value->data, strlen(value->data)))
+ {
+ cupsArrayDelete(known_hashes);
+ fclose(fh);
+
+ rip_die(EXIT_PRNERR_NOTALLOWED, "ERROR: The value of the key %s is not among the allowed values - see foomatic-rip man page for more instructions.\n", key);
+ }
+
// "*FoomaticRIPOptionSetting <option>[=<choice>]: <code>
// For boolean options <choice> is not given
option_set_choice(assure_option(name),
--
2.50.1

28
gating.yaml Normal file
View file

@ -0,0 +1,28 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_testing
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/cups-tier1-public.functional}
#Rawhide
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/cups-tier1-public.functional}
#gating rhel
--- !Policy
product_versions:
- rhel-*
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-public.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-internal.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/cups-tier1-public.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/cups-tier1-internal.functional}

124
lftocrlf Normal file
View file

@ -0,0 +1,124 @@
#!/bin/bash
## Copyright (C) 2003-2006 Red Hat, Inc.
## Copyright (C) 2003-2006 Tim Waugh <twaugh@redhat.com>
## Changed on 2007/05/17, Opher Shachar, LADPC Ltd.
## Added support for page-ranges option.
## Added page accounting.
## This program is free software; you can redistribute it and/or
## modify it under the terms of the GNU General Public License
## as published by the Free Software Foundation; either version 2
## of the License, or (at your option) any later version.
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
if [ $# == 0 ]; then
echo >&2 "ERROR: $0 job-id user title copies options [file]"
exit 1
fi
# Extract the papersize
SENDFF=`grep '^\*DefaultSendFF' "$PPD" | cut -d\ -f2`
COPIES=1
if [ $# -ge 4 ]; then
COPIES="$4"
fi
if [ $# -lt 6 ]; then
unset TMPFILE
trap -- 'rm -f "$TMPFILE"' EXIT
TMPFILE=$(mktemp ${TMPDIR:-/tmp}/lftocrlf.XXXXXX)
cat > "$TMPFILE"
else
TMPFILE="$6"
fi
PR=${5#*page-ranges=}
# Do options specify page-ranges?
if [[ "$PR" != "$5" ]]; then
PR=${PR%% *}
else
#unset PR
PR=1-999999
fi
if [[ "$PR" ]]; then
TMPFILE2=$(mktemp ${TMPDIR:-/tmp}/lftocrlf2.XXXXXX)
pagenum=0
EOF=
{
while [[ "$PR" ]]; do
pl=${PR%%,*} ;# take first subrange
PR=${PR#$pl};PR=${PR#,} ;# remove from range list
pu=${pl#*-} ;# extract upper and lower
pl=${pl%-*} ;# pages of subrange
# Allows interpreting 0-5,3-10 as 1-5,6-10 rejects 5-1 or 1-
(( pagenum >= pl )) && pl=$(( pagenum + 1 ))
(( pl > pu )) && continue
# Loop reading pages until at or over lower page of subrange.
while read -d `echo -ne '\f'` -r; do
(( pagenum++ ))
(( pagenum == pl )) && break
done
# Did we reach lower page of subrange or EOF?
if (( pagenum < pl )); then
[[ ! "$REPLY" ]] && break ;# empty last page - we're done.
(( pagenum++ ))
EOF=y
fi
# Output page and report to page log
if (( pagenum == pl )); then
echo -n "${REPLY}" >>"$TMPFILE2"
# If EOF then page has no final FF
[[ ! "$EOF" ]] && echo -ne '\f' >>"$TMPFILE2"
echo "PAGE: $pagenum $COPIES" >&2
fi
[[ "$EOF" ]] && break
# Is the current subrange a single page?
(( pagenum == pu )) && continue
while read -d `echo -ne '\f'` -r; do
(( pagenum++ ))
echo -ne "${REPLY}\f" >>"$TMPFILE2"
echo "PAGE: $pagenum $COPIES" >&2
(( pagenum == pu )) && break
done
# Could be that we reached EOF before page boundry
if (( pagenum < pu )); then
if [[ "$REPLY" ]]; then
(( pagenum++ ))
echo -n "${REPLY}" >>"$TMPFILE2"
echo "PAGE: $pagenum $COPIES" >&2
fi
break
fi
done
} <"$TMPFILE"
else
TMPFILE2="$TMPFILE"
pc=$(grep -co `echo -ne '\f'` "$TMPFILE2")
pc=$(( pc * $COPIES ))
echo "PAGE: $pc" >&2
fi
while [ "$COPIES" -gt 0 ]; do
# Just translate LF->CRLF at the moment, until the PPD has options added.
sed -e 's/$/'`echo -ne '\r'`'/g' "$TMPFILE2"
if [ "$SENDFF" == "True" ]
then
echo -ne \\014
fi
COPIES=$(($COPIES - 1))
done
# Cleanup
[[ "$TMPFILE" != "$TMPFILE2" ]] && rm -f "$TMPFILE2"
exit 0

47
lftocrlf.ppd Normal file
View file

@ -0,0 +1,47 @@
*PPD-Adobe: "4.3"
*%
*% Text-only printer definition
*%
*FormatVersion: "4.3"
*FileVersion: "1.1"
*LanguageVersion: English
*LanguageEncoding: ISOLatin1
*PCFileName: "LFTOCRLF.PPD"
*Manufacturer: "Generic"
*Product: "(Generic)"
*cupsVersion: 1.0
*cupsManualCopies: True
*cupsModelNumber: 2
*cupsFilter: "text/plain 0 lftocrlf"
*ModelName: "Generic LF-to-CRLF printer"
*ShortNickName: "Generic LF-to-CRLF printer"
*NickName: "Generic LF-to-CRLF printer"
*PSVersion: "(2017.000) 0"
*LanguageLevel: "2"
*ColorDevice: False
*DefaultColorSpace: Gray
*FileSystem: False
*Throughput: "8"
*LandscapeOrientation: Plus90
*VariablePaperSize: False
*TTRasterizer: Type42
*DefaultImageableArea: Letter
*ImageableArea Letter/US Letter: "18 36 594 756"
*DefaultPaperDimension: Letter
*PaperDimension Letter/Letter: "612 792"
*OpenUI *PageSize/Media Size: PickOne
*OrderDependency: 10 AnySetup *PageSize
*DefaultPageSize: Letter
*PageSize Letter/Letter: "<</PageSize[612 792]/ImagingBBox null>>setpagedevice"
*CloseUI: *PageSize
*OpenUI *PageRegion: PickOne
*OrderDependency: 10 AnySetup *PageRegion
*DefaultPageRegion: Letter
*PageRegion Letter/Letter: "<</PageSize[612 792]/ImagingBBox null>>setpagedevice"
*CloseUI: *PageRegion
*OpenUI *SendFF: Boolean
*DefaultSendFF: False
*SendFF True/True: ""
*SendFF False/False: ""
*CloseUI: *SendFF

59
plans.fmf Normal file
View file

@ -0,0 +1,59 @@
/tier1-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups-filters.git
name: /plans/tier1/internal
/tier1-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups-filters.git
name: /plans/tier1/public
/tier2-tier3-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups-filters.git
name: /plans/tier2-tier3/internal
/tier2-tier3-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups-filters.git
name: /plans/tier2-tier3/public
/others-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups-filters.git
name: /plans/others/internal
/others-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups-filters.git
name: /plans/others/public
/multihost:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups-filters.git
name: /plans/multihost/multihost
/fips-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups-filters.git
name: /plans/others/fips
/cups-tier1-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups.git
name: /plans/tier1/internal
/cups-tier1-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/cups.git
name: /plans/tier1/public

View file

@ -1 +1 @@
SHA512 (cups-filters-1.13.4.tar.xz) = 848451193c9f0b0f397bc2c8efafab20112525eb2357892b5c46a4900d3d7e4ef52e537353c04779de2d17c8918cb1fe653e3c8db81f6ef246deca7e4241ce3b
SHA512 (cups-filters-2.0.1.tar.gz) = b5d7b8f5a89a6a6bba0e861dd3c3263195be75996d22129d123f325f6bff74fbabf22f2ee2d953908ffb8294d825af5568af6695896c76ef4082ae98cd19c42c