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