LISa 0.2.2 Description:
LISa is a small daemon which is intended to run on end user systems. It provides something like a "network neighbourhood", but only relying on the TCP/IP protocol stack, no smb or whatever. The information about the hosts in your "neighbourhood" is provided via TCP port 7741. LISa supports two ways of searching for hosts, the first method is to send ICMP echo request packets to the hosts, the second one is to send NetBIOS broadcasts using nmblookup. In order to keep network load low various strategies are implemented. There is also a basic security mechanism. For environments with stricter security rules there is also a restricted version, resLISa. LISa should compile and work under the usual unix flavours (linux, *bsd, solaris,...), it might have problems on 64 bit machines and it definitly doesn't work with IPv6. It provides some special support for KDE , but it is completely independant, it requires neither the Qt library nor any KDE stuff. In the configuration file of LISa you provide a range of IP-addresses which LISa should check wether they are running. In the most simple case this could be your network address/subnetmask, then LISa would check every possible host of your network wether it is up. The hosts are checked using ICMP echo requests. To be able to send and receive ICMP echo requests and replies the program has to open a so called "raw socket". Therefor it needs root privileges. This socket is opened right after the start of the program, after successfully opening the socket root privileges are dropped immediatly (see main.cpp and strictmain.cpp). If you configure LISa this way, that it also uses nmblookup, it will popen("nmblookup "*""); and then parse the results.