[syslog-ng]crashbug fix in recent syslog-ng versions

Hamilton, Andrew Andrew.Hamilton@afccc.af.mil
Wed, 30 Oct 2002 08:47:18 -0500

Yeah that's better.


-----Original Message-----
From: Balazs Scheidler [mailto:bazsi@balabit.hu]
Sent: Wednesday, October 30, 2002 8:45 AM
To: syslog-ng@lists.balabit.hu
Subject: Re: [syslog-ng]crashbug fix in recent syslog-ng versions

On Tue, Oct 29, 2002 at 02:38:11PM -0500, Hamilton, Andrew wrote:
> Well with a couple of changes I got it to work correctly on Solaris 8 x86.
> I ran configure a bunch of times with various corrections to configure.in
> because I originally got the HAVE_RES_INIT problem like the others did.
> Then of course the link problem with -lresolv came up during the compile.
> But I used the patch that Andrey sent for acconfig.h then I added a line
> configure.in and voila! it worked perfectly for me "out of the box" so to
> speak.
> *** configure.in.orig   Tue Oct 29 20:00:52 2002
> --- configure.in        Tue Oct 29 20:20:34 2002
> ***************                                 
> *** 151,156 ****                                
> --- 151,157 ----                                
>   if test "x$blb_cv_c_res_init" = "xyes"; then  
>         AC_DEFINE(HAVE_RES_INIT)                
> +       LIBS="$LIBS -lresolv"                   
>   fi                                            
>   dnl Checks for library functions.
> That's all it took.  This may work for some others that are having the
> -lresolv link error.  I saw where it looked like it was checking for
> res_init twice, once it said yes then the next time it said no, I think
> it is doing the first time it is looking for the function definition
> the header and the next time it is looking inside libresolv because when
> line above was added it said "yes" both times instead of "no" the second
> time.

I'd rather add an AC_CHECK_LIB() function. Here's a diff against the
configure.in found in 1.5.23, can you check if this is ok?

diff -u -r1.59 configure.in
--- configure.in	28 Oct 2002 08:52:51 -0000	1.59
+++ configure.in	30 Oct 2002 13:43:50 -0000
@@ -146,7 +146,7 @@
-AC_CACHE_CHECK(for res_init, blb_cv_c_res_init,
+AC_CACHE_CHECK(for res_init in <resolv.h>, blb_cv_c_res_init,
   [AC_EGREP_HEADER(res_init, resolv.h, blb_cv_c_res_init=yes)])
 if test "x$blb_cv_c_res_init" = "xyes"; then
@@ -156,9 +156,11 @@
 dnl Checks for library functions.
+AC_CHECK_LIB(resolv, res_init)
+dnl on Linux res_init is a macro
+AC_CHECK_LIB(resolv, __res_init)
 AC_CHECK_LIB(door, door_create)
 AC_CHECK_FUNCS(select snprintf vsnprintf strerror inet_aton strncpy
 AC_CHECK_FUNC(getopt_long,,[LIBOBJS="getopt.o getopt1.o $LIBOBJS"])
 AC_CHECK_FUNC(strcasecmp,,[LIBOBJS="strcasecmp.o $LIBOBJS"])
 AC_CHECK_FUNC(strptime,,[LIBOBJS="strptime.o $LIBOBJS"])

PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1

syslog-ng maillist  -  syslog-ng@lists.balabit.hu
Frequently asked questions at http://www.campin.net/syslog-ng/faq.html