Hi, I modified tcpwrappers-7.6k to play nicely with other OpenPKG packages - such as ORBit - that link with libwrap.a, if present.
The changes are as follows: 1) Steve Grubb changed the name of a number of external library definitions to avoid namespace collisions. E.g., by default his code defines tcpd_sock_host instead of sock_host, and tcpd_eval_client instead of eval_client. Since the ORBit package is looking for the traditional function names, it fails to link with Grubb's default libwrap.a. So I added an option to the spec file called "with_private_namespace", which defaults to "no" so that the traditional lib defs are created by default. Setting the option to "yes" creates the new private definitions. This change also required a change to the patch file because Steve had apparently forgotten to include "sock_host" in the list of methods that need to be optionally publicized. 2) Matthias Kurz's patch to run under Solaris changed the name of the local my_setenv() function to setenv(). The ORBit package objects to this because it does not want to link with a tcpwrappers that has setenv() built in. (I'm not sure why this is since Solaris by default does not have a setenv() function, which is why tcpwrappers conditionally includes one.) However, the way to make ORBit happy is to leave my_setenv() alone and to conditionally redefine the call to setenv() in options.c to be a call to my_setenv() on systems that need the local definition of this function. That way any other external packages that are fussy about this will not complain. These changes are also present in this package. Hope this helps. Dennis Dennis McRitchie Research & Academic Applications Support (RAAS) Academic Services Department Office of Information Technology Princeton University ______________________________________________________________________ The OpenPKG Project www.openpkg.org Developer Communication List [EMAIL PROTECTED]
