Skip to content

Fix duplicate local printers in DNS-SD discovery for CUPS 2.4.x (Issue #1531, #1586, #1593)#1599

Open
abubakarsabir924-cell wants to merge 4 commits into
OpenPrinting:2.4.xfrom
abubakarsabir924-cell:backport-1531-2.4.x
Open

Fix duplicate local printers in DNS-SD discovery for CUPS 2.4.x (Issue #1531, #1586, #1593)#1599
abubakarsabir924-cell wants to merge 4 commits into
OpenPrinting:2.4.xfrom
abubakarsabir924-cell:backport-1531-2.4.x

Conversation

@abubakarsabir924-cell

Copy link
Copy Markdown
Contributor

Backport of fixes from PR #1531, #1586, and #1593 to CUPS 2.4.x branch.

  • Fix use-after-free in local_dests for DNS-SD discovery
  • Skip temporary queue creation if permanent queue exists with same UUID

…x (Issue OpenPrinting#1531)

- Applied Till Kamppeter's patch for 2.4.x branch
- Fixed use-after-free bug in local_dests pointer
- Added _CUPS_DNSSD_INCOMPATIBLE state check in enumeration
…s with same UUID

When create_local_printer() is called via DNS-SD discovery, check if a
permanent queue already exists with the same UUID before creating a new
temporary queue. If found, reuse the existing permanent queue instead.

Fixes duplicate printer queues appearing when a permanent queue is
already configured for a discovered printer.

Related to Issue OpenPrinting#1531
@abubakarsabir924-cell

Copy link
Copy Markdown
Contributor Author

@tillkamppeter,

PR #1599 is ready — backport of #1531, #1586, and #1593 for CUPS 2.4.x.

Comment thread scheduler/ipp.c
@tillkamppeter

Copy link
Copy Markdown
Member

Looks all good to me, only remove the white-space change I mentioned.

Comment thread scheduler/ipp.c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants