qmail process hang on FreeBSD 4.8
Lay Chi Man
lazymanl at hgc.com.hk
Mon Sep 22 23:12:03 PDT 2003
I am using qmail-ldap on FreeBSD 4.8. Recently, I found that there are
many processes hang in my qmail system for a long time. I have attached
the process with gdb and found something strange in side.
(gdb) bt
#0 0x280a2fdc in ?? ()
#1 0x8048f1e in dropped () at qmail-remote.c:123
#2 0x804c9d1 in dns_mxip (ia=0x8048f00, sa=0xffffffff,
random=134547232)
at dns.c:363
#3 0x804ca25 in dns_mxip (ia=0x804e6c8, sa=0xbfbffc0b, random=12) at
dns.c:369
#4 0x804cac2 in dns_mxip (ia=0x804e6c8, sa=0xbfbffc0b, random=1) at
dns.c:376
#5 0x8049188 in outsmtptext () at qmail-remote.c:340
#6 0x8049654 in smtp () at qmail-remote.c:570
#7 0x804a26f in main (argc=4, argv=0xbfbffd50) at qmail-remote.c:825
(gdb)
In the frame 7
(gdb) frame
#7 0x804a26f in main (argc=4, argv=0xbfbffd50) at qmail-remote.c:825
825 i = str_chr(relayhost,':');
(gdb) l -
815 if (!stralloc_copys(&host,argv[1])) temp_nomem();
816
817 relayhost = 0;
818 for (i = 0;i <= host.len;++i)
819 if ((i == 0) || (i == host.len) || (host.s[i] == '.'))
820 if (relayhost = constmap(&maproutes,host.s + i,host.len -
i))
821 break;
822 if (relayhost && !*relayhost) relayhost = 0;
823
824 if (relayhost) {
(gdb) p relayhost
$16 = 0xbfbffd50 "??????\020??
(gdb) p host
$17 = {s = 0x0, len = 0, a = 0}
(gdb) p argv[1]
$18 = 0xbfbffdf1 "pbworld.com"
It seems that the stralloc_copys unable to copy the argv[1] into the
host variable.
Does anybody know what is this problem?
Thanks,
Man
More information about the freebsd-stable
mailing list