On Wed, 13.02.08 11:28, Yavor Goulishev ([EMAIL PROTECTED]) wrote:

> Hi Lennart,
> It is not that ugly shortcut ;-), but yeah this is a hack.(BTW Bonjour is
> doing it in similar way. Nothing goes on the network for local services.
> Everything is in memory. I don't know their reasons, but I sure do know
> mine.)

Hehe, I am not sure if "Bonjour does it this way" is a good excuse ;-)

> Reading through  your  plan for  this  I recall removing the code for
> filtering the interfaces.
> And I also recall having problems using the loopback interface to do the
> multicast.
> It might be just me, but I couldn't get this working and I've seen comments
> that the kernel doesn't route multicast messages on the loopback interface.
> Frankly I haven't confirmed this myself, but definitely couldn't get it to
> work.

Yes, I was expecting something like this. But based on the interface
flags we can easily determine if an interface is loopback (IFF_LOOPBACK)
and if so, we can just shortcut the traffic by handing the packets
directly from the send to receive function.

Loopback interfaces are not necessarily known as "lo" and also don't
necessarily have index 1. The right way to detect them is using
IFF_LOOPBACK (on BSD and Linux at least I think).

Lennart

-- 
Lennart Poettering                        Red Hat, Inc.
lennart [at] poettering [dot] net         ICQ# 11060553
http://0pointer.net/lennart/           GnuPG 0x1A015CC4
_______________________________________________
avahi mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/avahi

Reply via email to