Fixed unused variable warning
Include netinet/ether.h for ether_ntoa on Linux

For some unknown reason Linux thinks ether_ntoa belongs here.  I can't
figure out why though, as Ethernet is in no way an Internet protocol.
Fixed unused variable warning on linux

Remove unreached return
Linux does not have an sa_alen in struct sockaddr

I think this is the correct workaround for this problem.