dns-terror (fastresolve-2.10_5) core dump na FreeBSD 10.x
Miroslav Lachman
000.fbsd at quip.cz
Wed Jan 13 13:05:32 CET 2016
Dlouha leta pouzivam prikaz dns-terror na resolvovani IP adres v log
souborech Apache pred generovanim vystupu AWStats. Jenze po upgrade z
FreeBSD 8.4 na 10.2 mi na vsech strojich prestal fungovat.
Balicek si vytvarim na buildserveru s poudrierem, ktery je FreeBSD 10.2.
Zkousel jsem to resit i v ports@ mailinglistu, ale bez vysledku.
Stejne chovani je na 10.1 i 10.2
+pid 62102 (dns-terror), uid 0: exited on signal 10 (core dumped)
+pid 62105 (dns-terror), uid 0: exited on signal 10 (core dumped)
+pid 62111 (dns-terror), uid 0: exited on signal 10 (core dumped)
+pid 62114 (dns-terror), uid 0: exited on signal 10 (core dumped)
+pid 62117 (dns-terror), uid 0: exited on signal 10 (core dumped)
+pid 62123 (dns-terror), uid 0: exited on signal 10 (core dumped)
K otestovani staci jednoduchy prikaz
dns-terror -p 1000 -d /var/tmp/ip2host.db -o < /var/log/httpd/access.log
Ani zmena cisla za -p neudela zadnou zmenu v chovani, stejne jako to
neovlivni prazdny soubor ip2host.db, nebo jeho nepouziti.
Pri verbose vystupu dostanu tohle
# dns-terror -vvv -p 100 -d /var/tmp/ip2host.db -o <
/var/log/httpd/access.log
adns debug: environment variable RES_OPTIONS not set
adns debug: environment variable ADNS_RES_OPTIONS not set
adns debug: using nameserver 208.67.222.222
adns debug: using nameserver 37.235.1.174
adns debug: environment variable RES_CONF not set
adns debug: environment variable ADNS_RES_CONF not set
adns debug: environment variable RES_CONF_TEXT not set
adns debug: environment variable ADNS_RES_CONF_TEXT not set
adns debug: environment variable LOCALDOMAIN not set
adns debug: environment variable ADNS_LOCALDOMAIN not set
read 0 addresses from DB file
110621 submitted
Bus error (core dumped)
Zkousel jsem i truss, ale to uz se dostavam na tenky led, kde moc nevim,
co delam a co mam videt.
access("/usr/local/lib/mysql/nss_dns.so.1",0) ERR#2 'No such file or
directory'
access("/lib/nss_dns.so.1",0) ERR#2 'No such file or
directory'
access("/usr/lib/nss_dns.so.1",0) ERR#2 'No such file or
directory'
ioctl(3,TIOCGETA,0xffffe040) ERR#25 'Inappropriate
ioctl for device'
close(3) = 0 (0x0)
open("/etc/protocols",O_CLOEXEC,0666) = 3 (0x3)
fstat(3,{ mode=-rw-r--r-- ,inode=47197,size=6456,blksize=16384 }) = 0 (0x0)
read(3,"#\n# Internet protocols\n#\n# $F"...,16384) = 6456 (0x1938)
close(3) = 0 (0x0)
socket(PF_INET,SOCK_DGRAM,17) = 3 (0x3)
fcntl(3,F_GETFL,) = 2 (0x2)
fcntl(3,F_SETFL,O_NONBLOCK|0x2) = 0 (0x0)
getpid() = 29542 (0x7366)
open("DB_CONFIG",O_RDONLY,0666) ERR#2 'No such file or
directory'
stat("/var/tmp",{ mode=drwxrwxrwt ,inode=2684928,size=1024,blksize=16384
}) = 0 (0x0)
clock_gettime(13,{1445175729.000000000 }) = 0 (0x0)
clock_gettime(4,{341660.053887029 }) = 0 (0x0)
clock_gettime(0,{1445175729.657872855 }) = 0 (0x0)
stat("/var/tmp/ip2host.db",{ mode=-rw-r--r--
,inode=2684940,size=140394496,blksize=16384 }) = 0 (0x0)
openat(0xffffff9c,0x8024580a0,0x2,0x0,0x20,0x802458010) = 4 (0x4)
fcntl(4,F_GETFD,) = 0 (0x0)
fcntl(4,F_SETFD,FD_CLOEXEC) = 0 (0x0)
read(4,"\0\0\0\0\^A\0\0\0\0\0\0\0b1\^E\0"...,512) = 512 (0x200)
close(4) = 0 (0x0)
openat(0xffffff9c,0x8024580a0,0x202,0x0,0x20,0x802458010) = 4 (0x4)
fcntl(4,F_GETFD,) = 0 (0x0)
fcntl(4,F_SETFD,FD_CLOEXEC) = 0 (0x0)
fstat(4,{ mode=-rw-r--r-- ,inode=2684940,size=140394496,blksize=16384 })
= 0 (0x0)
pread(0x4,0x8024ab060,0x4000,0x0,0x4000,0x0) = 16384 (0x4000)
sigprocmask(SIG_SETMASK,SIGHUP|SIGINT|SIGQUIT|SIGILL|SIGTRAP|SIGABRT|SIGEMT|SIGFPE|SIGKILL|SIGBUS|SIGSEGV|SIGSYS|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0)
= 0 (0x0)
sigaction(SIGHUP,{ 0x801cdd080 SA_SIGINFO ss_t },{ SIG_DFL 0x0 ss_t }) =
0 (0x0)
sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0)
sigprocmask(SIG_SETMASK,SIGHUP|SIGINT|SIGQUIT|SIGILL|SIGTRAP|SIGABRT|SIGEMT|SIGFPE|SIGKILL|SIGBUS|SIGSEGV|SIGSYS|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0)
= 0 (0x0)
sigaction(SIGTERM,{ 0x801cdd080 SA_SIGINFO ss_t },{ SIG_DFL 0x0 ss_t })
= 0 (0x0)
sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0)
sigprocmask(SIG_SETMASK,SIGHUP|SIGINT|SIGQUIT|SIGILL|SIGTRAP|SIGABRT|SIGEMT|SIGFPE|SIGKILL|SIGBUS|SIGSEGV|SIGSYS|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0)
= 0 (0x0)
sigaction(SIGINT,{ 0x801cdd080 SA_SIGINFO ss_t },{ SIG_DFL SA_RESTART
ss_t }) = 0 (0x0)
sigprocmask(SIG_SETMASK,0x0,0x0) = 0 (0x0)
pread(0x4,0x8024b0060,0x4000,0x4000,0x4000,0x0) = 16384 (0x4000)
pread(0x4,0x8024b5060,0x4000,0x9d0000,0x4000,0x0) = 16384 (0x4000)
pread(0x4,0x8024ba060,0x4000,0x8000,0x4000,0x0) = 16384 (0x4000)
fstat(0,{ mode=-rw-r--r-- ,inode=1366935,size=4351,blksize=16384 }) = 0
(0x0)
read(0,"188.165.15.222 - - [18/Oct/2015:"...,16384) = 4351 (0x10ff)
gettimeofday({1445175729.663793 },0x0) = 0 (0x0)
sendto(3,"1\^_\^A\0\0\^A\0\0\0\0\0\0\^C222"...,45,0x0,{ AF_INET
208.67.222.222:53 },0x10) = 45 (0x2d)
gettimeofday({1445175729.664378 },0x0) = 0 (0x0)
recvfrom(3,0x7fffffffe060,512,0x0,0x7fffffffe000,0x7fffffffe01c) ERR#35
'Resource temporarily unavailable'
stat("/usr/share/nls/C/libc.cat",0x7fffffffded0) ERR#2 'No such file or
directory'
stat("/usr/share/nls/libc/C",0x7fffffffded0) ERR#2 'No such file or
directory'
stat("/usr/local/share/nls/C/libc.cat",0x7fffffffded0) ERR#2 'No such
file or directory'
stat("/usr/local/share/nls/libc/C",0x7fffffffded0) ERR#2 'No such file
or directory'
SIGNAL 10 (SIGBUS)
process exit, rval = 0
Selze to i na naprosto jednoduchem prikladu, kdy soubor pro resolvovani
obsahuje jenom jednu IP adresu
# cat /tmp/test.log
1.2.3.4
dns-terror pouziva knihovny libadns z baliku adns. Ten obsahuje prikaz
adnslogres, ktery funguje normalne. Takze v te knihovne libadns nejspis
taky problem neni.
dns-terror spadne tehdy, pokud soubor obsahuje IP adresu. Pokud zadnou
neobsahuje, tak se ji nepokousi resolvovat a nespadne.
Jak postupovat dal, abych zjistil, v cem je problem a jak ho vyresit?
Jde zkompilovat ten port s nejakyma debug options_
Bohuzel se mi nedoparilo v mailinglistu dostat zadnou odpoved, jestli
vubec nekomu na 10.x funguje, takze netusim, jestli je to jen muj
problem, nebo ne. (me takhle pada asi na 10 strojich - vsude, kde se
pouziva a je to FreeBSD 10.x)
Mirek
More information about the Users-l
mailing list