<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Hi there,<br><br>I am a new user of syslog-ng. Thanks for your time and attention in advance.<br><br>The problem is syslog-ng coredumps when use "internal()" in "source", however it will work fine without "internal()". The conf file is like:<br><br>===&gt;BEGIN<br>@version:3.0<br><br>options { dir_perm(0755); perm(0644);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; chain_hostnames(no);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; keep_hostname(yes);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; };<br><br># Default local source.<br>source local {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix-dgram("/var/run/log");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix-dgram("/var/run/logpriv" perm(0600));<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; internal();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; file("/dev/klog");<br>};<br><br>...<br><br>filter f_hecxd { program("hecxd"); };<br><br>...<br><br>log { source(local); filter(f_hecxd); destination(d_hecxd); };<br>==&gt;END<br><br>The options used for building syslog-ng is: <br>&nbsp;<br>&nbsp;&nbsp; CFLAGS='-Wl,-Bdynamic -liconv -Wl,-Bstatic' --enable-static-linking \<br>&nbsp;&nbsp; --enable-debug \<br>&nbsp;&nbsp; --enable-ssl --enable-ipv6=no --enable-tcp-wrapper=no \<br>&nbsp;&nbsp; --with-pidfile-dir="/var/run/"<br><br>The platform is: FREEBSD 6.4-RELEASE-p6 i386<br><br>I got a very big core dump file (&gt;500M), by backtracing that file, I can see the problem is "g_malloc0" for some reason failed to allocate memory, while syslog-ng did not check the return value and tried to use the "0x0" pointer in a "strlen()" call later. Here is a part of trace information:<br><br>#0&nbsp; 0x080a2d8d in strlen ()<br>No symbol table info available.<br>#1&nbsp; 0x0804e7fe in log_msg_new_internal (prio=43, msg=0x0, flags=6) at logmsg.c:1971<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; buf = (gchar *) 0x0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self = (LogMessage *) 0x8159000<br>#2&nbsp; 0x080492b1 in msg_send_internal_message (prio=43, msg=0x0) at messages.c:128<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; context = (MsgContext *) 0x81893a0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m = (LogMessage *) 0x7<br>#3&nbsp; 0x0804954c in msg_log_func (log_domain=0x81186ea "GLib", log_flags=6, msg=0x0, user_data=0x0) at messages.c:187<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pri = 43<br>#4&nbsp; 0x08084906 in IA__g_logv (log_domain=0x81186ea "GLib", log_level=G_LOG_LEVEL_ERROR, format=0x811cbac "%s: failed to allocate %u bytes",<br>&nbsp;&nbsp;&nbsp; args1=0xbfbfe6cc "3�\021\bl") at gmessages.c:519<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; msg = (gchar *) 0x0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; was_fatal = 0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; was_recursion = 0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; i = 2<br>#5&nbsp; 0x08084ae4 in IA__g_log (log_domain=0x81186ea "GLib", log_level=G_LOG_LEVEL_ERROR, format=0x811cbac "%s: failed to allocate %u bytes")<br>&nbsp;&nbsp;&nbsp; at gmessages.c:569<br>No locals.<br>#6&nbsp; 0x08084239 in IA__g_malloc0 (n_bytes=108) at gmem.c:155<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mem = 0x0<br>#7&nbsp; 0x0804e5ef in log_msg_new (<br>&nbsp;&nbsp;&nbsp; msg=0x8a82180 "&lt;47&gt; syslog-ng[3277]: Filter node evaluation result; filter_result='not-match', filter_type='level'\n", length=100,<br>&nbsp;&nbsp;&nbsp; saddr=0x0, flags=6, bad_hostname=0x0, assume_timezone=-1, default_pri=47) at logmsg.c:1873<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self = (LogMessage *) 0x810ba1b<br>#8&nbsp; 0x0804e80a in log_msg_new_internal (prio=47,<br>&nbsp;&nbsp;&nbsp; msg=0x817f500 "Filter node evaluation result; filter_result='not-match', filter_type='level'", flags=6) at logmsg.c:1971<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; buf = (gchar *) 0x8a82180 "&lt;47&gt; syslog-ng[3277]: Filter node evaluation result; filter_result='not-match', filter_type='level'\n"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self = (LogMessage *) 0x8159000<br>#9&nbsp; 0x080492b1 in msg_send_internal_message (prio=47,<br>&nbsp;&nbsp;&nbsp; msg=0x817f500 "Filter node evaluation result; filter_result='not-match', filter_type='level'") at messages.c:128<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; context = (MsgContext *) 0x81893a0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m = (LogMessage *) 0x8182030<br><br>If you need the completed coredump file, just let me know and tell me where to put it :)<br><br>Any help is much appreciated.<br><br>Thanks a lot.<br>Shen<br><br><br>                                               <br /><hr />Windows Live: Make it easier for your friends to see  <a href='http://go.microsoft.com/?linkid=9691811' target='_new'>what you’re up to on Facebook.</a></body>
</html>