[syslog-ng] syslog-ng 1.3.3 on FreeBSD 3-STABLE
Balazs Scheidler
bazsi@balabit.hu
Tue, 23 Nov 1999 20:36:29 +0100
On Tue, Nov 23, 1999 at 08:25:26PM +0100, Lowkrantz, Goran wrote:
> Hi,
>
> This is what I get when I run gdb on the core. It seems like the child dies,
> the parent get a SIGCHLD but will continue to wait.
>
> GNU gdb 4.18
> Copyright 1998 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB. Type "show warranty" for details.
> This GDB was configured as "i386-unknown-freebsd"...
> Core was generated by `syslog-ng'.
> Program terminated with signal 11, Segmentation fault.
> Reading symbols from /usr/lib/libc.so.3...done.
> Reading symbols from /usr/libexec/ld-elf.so.1...done.
> #0 0x8050f50 in do_init_afinet_source_connection (c=0x8069188,
> cfg=0x805f008,
> persistent=0x0) at afinet.c:69
> 69 notice("AF_INET client connected from %S, port %i\n",
> (gdb) bt
oopss.. this is the problem. try to apply the following patch:
--- afinet.c 1999/11/23 19:32:37 1.2
+++ afinet.c 1999/11/23 19:33:09
@@ -64,10 +64,12 @@
struct persistent_config *persistent)
{
CAST(afsocket_source_connection, self, c);
- CAST(inet_address_info, inet, self->client_addr);
-
- notice("AF_INET client connected from %S, port %i\n",
- inet->ip, inet->port);
+ if (self->client_addr) {
+ CAST(inet_address_info, inet, self->client_addr);
+
+ notice("AF_INET client connected from %S, port %i\n",
+ inet->ip, inet->port);
+ }
io_read(self->client,
make_log_reader(1, c),
make_afsocket_source_close_callback(self));
@@ -90,10 +92,13 @@
do_close_afinet_connection(struct afsocket_source_connection *c,
int close_reason)
{
- CAST(inet_address_info, inet, c->client_addr);
assert(c->owner);
- notice("AF_INET client dropped connection from %S, port %i\n",
- inet->ip, inet->port);
+ if (c->client_addr) {
+ CAST(inet_address_info, inet, c->client_addr);
+
+ notice("AF_INET client dropped connection from %S, port %i\n",
+ inet->ip, inet->port);
+ }
object_queue_remove(c->queue_node);
c->owner->num_connections--;
return ST_OK | ST_GOON;
if you have no scsh installed touch afinet.c.x before trying to remake.
--
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1
url: http://www.balabit.hu/pgpkey.txt