2d6bd814e6
- Fixed device communication/detection problems with mdns/Bonjour see https://bugs.launchpad.net/hplip/+bug/1616861 In my home network, the HP printer/scanner (ENVY 5530) often fails with messages like this: hp-toolbox[7119]: [7119]: error: Unable to communicate with device (code=12): hp:/net/ENVY_5530_series?zc=HP3464A9E628B4 I've tracked this down to two problems with the MDNS implementation in HPLIP: 1. On a multi-homed host, HPLIP uses only one interface for MDNS multicast send and receive. This leads to failure if the printer is not on the "default" network. The code uses just INADDR_ANY in its multicast IP_MULTPATH_IF and IP_ADD_MEMBERSHIP setsockopt calls, meaning that the kernel has to figure out the interface to use. This fails if the system has no default route, or if the HP device is on a different network than the default route. The solution is to receive and send multicast on all interfaces. 2. MDNS authorities (including HP printers) don't answer every query, especially the same query is repeated quickly. The latter happens when the HP tools start, causing the MDNS lookup procedure to fail and the "communication error" to be detected. This can be solved by retrying the query after a short wait (1-2s). This build contains fixes for both problems. OBS-URL: https://build.opensuse.org/request/show/423113 OBS-URL: https://build.opensuse.org/package/show/Printing/hplip?expand=0&rev=128 |
||
---|---|---|
.gitattributes | ||
.gitignore | ||
add_missing_includes_and_define_GNU_SOURCE.patch | ||
change-udev-rules.diff | ||
disable_hp-upgrade.patch | ||
hpijs.1.gz | ||
hplip-3.16.5.tar.gz | ||
hplip-3.16.5.tar.gz.asc | ||
hplip-mdns-retry-query.patch | ||
hplip-mdns.patch | ||
hplip-udev-rules-in-usr.patch | ||
hplip.changes | ||
hplip.keyring | ||
hplip.spec |