You are here: Home » Reply

Reply To: Compile issues under Solaris- would appreciate a little help



@mdmcgee wrote:

One more question if I may. I am now getting the :
*** WARNING: Received 5 packets; Accepted 0 packets; Rejected 5 packets because of interface mismatch

Hrm, still the same issue even after the new mdns code. :/

I don’t have an answer for that off the top, except to say that probably compiling against avahi is probably the best answer. (–enable-avahi).

Failing that, the fundamental problem is that either the mdns server doesn’t recognize the interface that it came in on…

As a hack, you could try going into mDNSPosix.c at about line 541 or so, and hacking it up such that rather than this:

if ( packetInfo.ipi_ifname[0] != 0 ) reject = (strcmp(packetInfo.ipi_ifname, intf->intfName) != 0);
else if ( packetInfo.ipi_ifindex != -1 ) reject = (packetInfo.ipi_ifindex != intf->index);

it looks like:

if ( packetInfo.ipi_ifname[0] != 0 ) reject = mDNSfalse;
else if ( packetInfo.ipi_ifindex != -1 ) reject = mDNSfalse;

That out to make it a little more promiscuous about what packets it accepts. A hack, but hey… if it works…

For a more serious issue :
If a client connects, then closes and reopens a connection later it kills the server with
Error writing to client socket: No such file or directory
The process itself doesn’t die but anyone currently connected looses all access
and it no longer responds.

That’s the same issue. iTunes queries for the server, but since it’s tossing away all the mdns packets, it doesn’t respond. So iTunes decides the server has gone offline and removes it from the server list.

So fix the discarding packets thing, and the other problem goes away, too.

— Ron