wrong ip for device at least if an mdns reflector exists
Bug #1189910 reported by
Alban Browaeys
This bug report is a duplicate of:
Bug #1391629: zc=hostname is not recognized by cups + avahi.
Edit
Remove
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
HPLIP |
New
|
Undecided
|
Unassigned |
Bug Description
Currently hpmud_mdns_lookup take the ip that it got the mdns reply from as the ip of the PDL device. Here it is not the ip of the device that reply but the avahi reflector. I cannot tell if it is the only use case were current code would be wrong but here is a crude fix. It is usable as is though I did not spend the time to remove the dead code.
I grabbed the routines from nss-mdns code : "GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999" which is in a separate directory mdns/ .
To post a comment you must log in.
The previous one was only adding the nss-mdns "simple" mdns implementation ( ie via standard dns query on the multicast address), thus it get a unicast reply. Which I found out firewalld has no support for (its mdns service only accept mutlicast traffic even for reply).
So I grabbed the full of the nss-mdns implementation in this patch , via its avahi layer (and fallback to simple query if non working). Thus if avahi is up and working even with firewalld enable and activated sane and cups are happy. No more 5012 error, code 12 error and io error. (though if behind a reflector one need to add a route back to its network in the reflected upper network, though that is also true for http access to the printer).