RHEL-54345 Creating IPP Everywhere printer fails due race condition

Resolves: RHEL-54345
This commit is contained in:
Zdenek Dohnal 2024-08-15 08:34:20 +02:00
parent 4707321382
commit b91d5f4e01
2 changed files with 51 additions and 0 deletions

View File

@ -0,0 +1,44 @@
From 313c388dbc023bbcb75d1efed800d0cfc992a6cc Mon Sep 17 00:00:00 2001
From: Michael R Sweet <msweet@msweet.org>
Date: Wed, 14 Aug 2024 21:18:54 -0400
Subject: [PATCH] Fix IPP everywhere printer setup (Issue #1033)
---
CHANGES.md | 1 +
scheduler/ipp.c | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/scheduler/ipp.c b/scheduler/ipp.c
index 37623c54e..d334f70cf 100644
--- a/scheduler/ipp.c
+++ b/scheduler/ipp.c
@@ -5346,7 +5346,7 @@ create_local_bg_thread(
request = ippNewRequest(IPP_OP_GET_PRINTER_ATTRIBUTES);
ippSetVersion(request, 2, 0);
- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, printer->device_uri);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, device_uri);
ippAddStrings(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD, "requested-attributes", (int)(sizeof(pattrs) / sizeof(pattrs[0])), NULL, pattrs);
response = cupsDoRequest(http, request, resource);
@@ -5367,7 +5367,7 @@ create_local_bg_thread(
request = ippNewRequest(IPP_OP_GET_PRINTER_ATTRIBUTES);
ippSetVersion(request, 1, 1);
- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, printer->device_uri);
+ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, device_uri);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD, "requested-attributes", NULL, "all");
response = cupsDoRequest(http, request, resource);
@@ -5390,7 +5390,7 @@ create_local_bg_thread(
request = ippNewRequest(IPP_OP_GET_PRINTER_ATTRIBUTES);
ippSetVersion(request, 2, 0);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI,
- "printer-uri", NULL, uri);
+ "printer-uri", NULL, device_uri);
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD,
"requested-attributes", NULL, "media-col-database");
response2 = cupsDoRequest(http, request, resource);
--
2.46.0

View File

@ -85,6 +85,8 @@ Patch100: cups-lspp.patch
Patch1000: 0001-cgi-Fix-checkbox-support-fixes-1008.patch
# RHEL-49447 Fix garbage uri when adding discovered print in web ui
Patch1001: cups-fix-device-uri-in-webui.patch
# RHEL-54345 Creating IPP Everywhere printer fails due race condition
Patch1002: 0001-Fix-IPP-everywhere-printer-setup-Issue-1033.patch
##### Patches removed because IMHO they aren't no longer needed
@ -322,6 +324,8 @@ to CUPS daemon. This solution will substitute printer drivers and raw queues in
%patch -P 1000 -p1 -b .cgi-checkbox
# RHEL-49447 Fix garbage uri when adding discovered print in web ui
%patch -P 1001 -p1 -b .device-uri-webui
# RHEL-54345 Creating IPP Everywhere printer fails due race condition
%patch -P 1002 -p1 -b .fix-ippeve-thread-uri
# Log to the system journal by default (bug #1078781, bug #1519331).
@ -790,6 +794,9 @@ rm -f %{cups_serverbin}/backend/smb
%{_mandir}/man7/ippeveps.7.gz
%changelog
* Thu Aug 15 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1:2.4.10-4
- RHEL-54345 Creating IPP Everywhere printer fails due race condition
* Wed Aug 14 2024 Zdenek Dohnal <zdohnal@redhat.com> - 1:2.4.10-4
- RHEL-54297 cups source rpm doesn't actually build lspp support
- RHEL-49447 Fix garbage uri when adding discovered print in web ui