[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Porting lldpd



Hi!

I would like to port lldpd to the GNU Hurd (mostly for fun). This is a
daemon allowing discovery of neighbors using special Ethernet
packets. More info here:
 http://vincentbernat.github.io/lldpd/

I need two things:
 1. gather information from the system (mostly network ones)
 2. sending and receiving on raw sockets

To get information from the system, currently, I plan to rely on
getifaddrs() to get the list of interfaces as well as their IP
addresses. I think that speaking to servers is too low level for the
purpose but maybe some information is only available through those
servers. For example, it would be nice to have link speed and duplex. Is
it possible (like with ethtool on Linux)?

Also, it seems that VLAN, bridging and link aggregation are not
supported by Hurd. Is that right?

I also need to receive and send raw Ethernet packets. tcpdump does seem
to be able to receive packets with Hurd. Maybe I could just read
/dev/eth0 but it would be better to be able to provide a BPF
filter. From what I have gathered, I would need something like
eth-filter. Is that the right way to go?

 settrans -c /var/run/lldpd/dev/lldpd-eth0 /hurd/eth-filter \
     -i /dev/eth0 -r "some filter" -s "some filter"

Do I need eth-multiplexer?

Attachment: signature.asc
Description: PGP signature


Reply to: