<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Thank you so much for your attention. I tried 3.0.5 and it has same problem. Please see the attached tarball consisting of a conf file and static-linked syslog-ng binary.<br><br>The platform I am using is&nbsp; "6.4-RELEASE-p6 FreeBSD 6.4-RELEASE-p6 i386". The command line is like "syslog-ng -f &lt;conf&gt; -d -F". And for now, I have not found any special or abnormal resource "limit" setup on that box. <br><br>Another interesting thing is no coredumps if I use "-e" option too.<br><br>The conf file actually is a copy of "contrib/freebsd-packaging/syslog-ng.conf.example", I just added a new log path for a program called "hecxd".<br><br>Thanks a lot again.<br><br>&gt; From: bazsi@balabit.hu<br>&gt; To: syslog-ng@lists.balabit.hu<br>&gt; Date: Fri, 11 Dec 2009 07:52:02 +0100<br>&gt; Subject: Re: [syslog-ng] syslog-ng OSE 3.0.4 coredumps when use "internal()" in s_local<br>&gt; <br>&gt; On Wed, 2009-12-09 at 18:04 +0000, nova club wrote:<br>&gt; &gt; Hi there,<br>&gt; &gt; <br>&gt; &gt; I am a new user of syslog-ng. Thanks for your time and attention in<br>&gt; &gt; advance.<br>&gt; &gt; <br>&gt; &gt; The problem is syslog-ng coredumps when use "internal()" in "source",<br>&gt; &gt; however it will work fine without "internal()". The conf file is like:<br>&gt; <br>&gt; <br>&gt; hmm... g_malloc() never fails, it aborts() instead after logging the<br>&gt; failure using assert.<br>&gt; <br>&gt; This assert is then caught by syslog-ng, to be put in the internal()<br>&gt; message source , but then again allocation fails, thus the segfault.<br>&gt; <br>&gt; Are you sure that syslog-ng is not severely constrained by ulimit or<br>&gt; something?<br>&gt; <br>&gt; Generally if memory allocation fails, syslog-ng aborts.<br>&gt; <br>&gt; Ah, as I see you said the core file is large, this seems to be some kind<br>&gt; of memory leak, or overuse of memory, and that's the root reason of the<br>&gt; crash.<br>&gt; <br>&gt; Can you send me your complete configuration file? Maybe we could<br>&gt; reproduce the problem. Do you happen to have large log_fifo_size()<br>&gt; configured to one of your destinations?<br>&gt; <br>&gt; &gt; <br>&gt; &gt; ===&gt;BEGIN<br>&gt; &gt; @version:3.0<br>&gt; &gt; <br>&gt; &gt; options { dir_perm(0755); perm(0644);<br>&gt; &gt;           chain_hostnames(no);<br>&gt; &gt;           keep_hostname(yes);<br>&gt; &gt;           };<br>&gt; &gt; <br>&gt; &gt; # Default local source.<br>&gt; &gt; source local {<br>&gt; &gt;         unix-dgram("/var/run/log");<br>&gt; &gt;         unix-dgram("/var/run/logpriv" perm(0600));<br>&gt; &gt;         internal();<br>&gt; &gt;         file("/dev/klog");<br>&gt; &gt; };<br>&gt; &gt; <br>&gt; &gt; ...<br>&gt; &gt; <br>&gt; &gt; filter f_hecxd { program("hecxd"); };<br>&gt; &gt; <br>&gt; &gt; ...<br>&gt; &gt; <br>&gt; &gt; log { source(local); filter(f_hecxd); destination(d_hecxd); };<br>&gt; &gt; ==&gt;END<br>&gt; &gt; <br>&gt; &gt; The options used for building syslog-ng is: <br>&gt; &gt;  <br>&gt; &gt;    CFLAGS='-Wl,-Bdynamic -liconv -Wl,-Bstatic' --enable-static-linking<br>&gt; &gt; \<br>&gt; &gt;    --enable-debug \<br>&gt; &gt;    --enable-ssl --enable-ipv6=no --enable-tcp-wrapper=no \<br>&gt; &gt;    --with-pidfile-dir="/var/run/"<br>&gt; &gt; <br>&gt; &gt; The platform is: FREEBSD 6.4-RELEASE-p6 i386<br>&gt; &gt; <br>&gt; &gt; I got a very big core dump file (&gt;500M), by backtracing that file, I<br>&gt; &gt; can see the problem is "g_malloc0" for some reason failed to allocate<br>&gt; &gt; memory, while syslog-ng did not check the return value and tried to<br>&gt; &gt; use the "0x0" pointer in a "strlen()" call later. Here is a part of<br>&gt; &gt; trace information:<br>&gt; &gt; <br>&gt; &gt; #0  0x080a2d8d in strlen ()<br>&gt; &gt; No symbol table info available.<br>&gt; &gt; #1  0x0804e7fe in log_msg_new_internal (prio=43, msg=0x0, flags=6) at<br>&gt; &gt; logmsg.c:1971<br>&gt; &gt;         buf = (gchar *) 0x0<br>&gt; &gt;         self = (LogMessage *) 0x8159000<br>&gt; &gt; #2  0x080492b1 in msg_send_internal_message (prio=43, msg=0x0) at<br>&gt; &gt; messages.c:128<br>&gt; &gt;         context = (MsgContext *) 0x81893a0<br>&gt; &gt;         m = (LogMessage *) 0x7<br>&gt; &gt; #3  0x0804954c in msg_log_func (log_domain=0x81186ea "GLib",<br>&gt; &gt; log_flags=6, msg=0x0, user_data=0x0) at messages.c:187<br>&gt; &gt;         pri = 43<br>&gt; &gt; #4  0x08084906 in IA__g_logv (log_domain=0x81186ea "GLib",<br>&gt; &gt; log_level=G_LOG_LEVEL_ERROR, format=0x811cbac "%s: failed to allocate<br>&gt; &gt; %u bytes",<br>&gt; &gt;     args1=0xbfbfe6cc "3�\021\bl") at gmessages.c:519<br>&gt; &gt;         msg = (gchar *) 0x0<br>&gt; &gt;         was_fatal = 0<br>&gt; &gt;         was_recursion = 0<br>&gt; &gt;         i = 2<br>&gt; &gt; #5  0x08084ae4 in IA__g_log (log_domain=0x81186ea "GLib",<br>&gt; &gt; log_level=G_LOG_LEVEL_ERROR, format=0x811cbac "%s: failed to allocate<br>&gt; &gt; %u bytes")<br>&gt; &gt;     at gmessages.c:569<br>&gt; &gt; No locals.<br>&gt; &gt; #6  0x08084239 in IA__g_malloc0 (n_bytes=108) at gmem.c:155<br>&gt; &gt;         mem = 0x0<br>&gt; &gt; #7  0x0804e5ef in log_msg_new (<br>&gt; &gt;     msg=0x8a82180 "&lt;47&gt; syslog-ng[3277]: Filter node evaluation<br>&gt; &gt; result; filter_result='not-match', filter_type='level'\n", length=100,<br>&gt; &gt;     saddr=0x0, flags=6, bad_hostname=0x0, assume_timezone=-1,<br>&gt; &gt; default_pri=47) at logmsg.c:1873<br>&gt; &gt;         self = (LogMessage *) 0x810ba1b<br>&gt; &gt; #8  0x0804e80a in log_msg_new_internal (prio=47,<br>&gt; &gt;     msg=0x817f500 "Filter node evaluation result;<br>&gt; &gt; filter_result='not-match', filter_type='level'", flags=6) at<br>&gt; &gt; logmsg.c:1971<br>&gt; &gt;         buf = (gchar *) 0x8a82180 "&lt;47&gt; syslog-ng[3277]: Filter node<br>&gt; &gt; evaluation result; filter_result='not-match', filter_type='level'\n"<br>&gt; &gt;         self = (LogMessage *) 0x8159000<br>&gt; &gt; #9  0x080492b1 in msg_send_internal_message (prio=47,<br>&gt; &gt;     msg=0x817f500 "Filter node evaluation result;<br>&gt; &gt; filter_result='not-match', filter_type='level'") at messages.c:128<br>&gt; &gt;         context = (MsgContext *) 0x81893a0<br>&gt; &gt;         m = (LogMessage *) 0x8182030<br>&gt; &gt; <br>&gt; &gt; If you need the completed coredump file, just let me know and tell me<br>&gt; &gt; where to put it :)<br>&gt; &gt; <br>&gt; &gt; Any help is much appreciated.<br>&gt; &gt; <br>&gt; &gt; Thanks a lot.<br>&gt; &gt; Shen<br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; ______________________________________________________________________<br>&gt; &gt; Windows Live: Make it easier for your friends to see what you’re up to<br>&gt; &gt; on Facebook.<br>&gt; &gt; ______________________________________________________________________________<br>&gt; &gt; Member info: https://lists.balabit.hu/mailman/listinfo/syslog-ng<br>&gt; &gt; Documentation: http://www.balabit.com/support/documentation/?product=syslog-ng<br>&gt; &gt; FAQ: http://www.campin.net/syslog-ng/faq.html<br>&gt; &gt; <br>&gt; <br>&gt; <br>&gt; -- <br>&gt; Bazsi<br>&gt; <br>&gt; <br>&gt; ______________________________________________________________________________<br>&gt; Member info: https://lists.balabit.hu/mailman/listinfo/syslog-ng<br>&gt; Documentation: http://www.balabit.com/support/documentation/?product=syslog-ng<br>&gt; FAQ: http://www.campin.net/syslog-ng/faq.html<br>&gt; <br>                                               <br /><hr />Get a great deal on Windows 7 and see how it works the way you want. <a href='http://go.microsoft.com/?linkid=9691812' target='_new'>Check out the offers on Windows 7now.</a></body>
</html>