Hi,
after my initial problems with compiling lsh-1.5.3 are solved now, I thought I'll give tcpwrappers a try. Actually, I want to run lsh thru Dan Bernsteins tcpserver [1], and my assumption is that enabling tcpwrappers support for lsh will allow me to do this. If I'm completely wrong here - how can I do it anyway? :)
No, it won't, (at least for you to be able to use tcpserver, lshd would have to accept to handle one session from stdin/stdout and then exit, which it doesn't).
If you just want to use the wrapper functionality of tcpserver (and don't want to use tcpwrappers instead), you could let your lshd listen on a local interface and have tcpserver run a program that just sets up a tcp connection to lshd and copy data from/to stdin/out to/from the network (tcpcat seems to be suitable, netcat and tcpconnect are other alternatives).
make[4]: Entering directory `/usr/local/src/lsh-1.5.3/src' gcc -O2 -march=i386 -mcpu=i686 -fPIC -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wpointer-arith -Wbad-function-cast -Wnested-externs -Wl,-rpath,/usr/local/lib -L/usr/X11R6/lib -o lsh lsh.o liblsh.a spki/libspki.a nettle/libnettle.a -lpam -lutil -lcrypt -lXau -lwrap -lz -loop -lgmp /usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libwrap.a(hosts_access.o): In function `host_match': hosts_access.o(.text+0x616): undefined reference to `yp_get_default_domain' collect2: ld returned 1 exit status make[4]: *** [lsh] Error 1 make[4]: Leaving directory `/usr/local/src/lsh-1.5.3/src' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/usr/local/src/lsh-1.5.3/src' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/local/src/lsh-1.5.3/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/local/src/lsh-1.5.3' make: *** [all] Error 2
What's the problem here?
This seems rather strange, considering that it's lsh (not lshd) you're building, and it shouldn't really have need anything from libwrap, but most likely linking with libnsl (i.e. adding -lnsl to LDFLAGS) will help (possibly throwing in -lsocket if -lnsl alone doesn't help).
/Pontus