"s.maertens" <[EMAIL PROTECTED]> writes: > Package: links > Version: Elinks 0.4pre5 - Text WWW browser > > When /etc/resolv.conf has an entry like this nameserver <wrong ip of > nameserver> or > route has a wrong default route and I start links , I lookup an url (shift > -g) and when it is searching i press "q" to quit or control-c it segfaults > > example of resolv.conf > nameserver 195.130.132.1 > > > > Memory leak by 25 bytes > LIst of Blocks: 0x8116080:49 @ dns.c:374 > > Forcing core dump > Man the Lifeboats! Woman and children first > Segmentation fault.
To reproduce the bug, I changed the name server address in /etc/resolv.conf to 192.168.101.1 which ignores DNS packets, started "env -u http_proxy LANG=C .../elinks -no-home -no-connect http://www.debian.org/" (without -no-home for those versions that don't support it), and pressed Q when "Looking up host" or the corresponding Finnish words appeared in the status line. Test results with various versions: ELinks 0.3.2 (links rather than src/elinks) does not crash. ELinks 0.4pre5 and 0.4pre6 (src/links rather than src/elinks) do not report a memory leak but rather crash like this: (gdb) bt #0 0x08094e02 in debug_mem_free ( file=0x80d35c0 "/home/Kalle/src/MIRROR/elinks-0.4pre5/src/lowlevel/sched.c", line=343, p=0x8116c38) at /home/Kalle/src/MIRROR/elinks-0.4pre5/src/util/error.c:201 #1 0x0807f638 in free_connection_data (c=0x81165e8) at /home/Kalle/src/MIRROR/elinks-0.4pre5/src/lowlevel/sched.c:343 #2 0x0807fd5c in interrupt_connection (c=0x81165e8) at /home/Kalle/src/MIRROR/elinks-0.4pre5/src/lowlevel/sched.c:551 #3 0x08080096 in abort_connection (c=0x81165e8) at /home/Kalle/src/MIRROR/elinks-0.4pre5/src/lowlevel/sched.c:655 #4 0x08080f2d in abort_all_connections () at /home/Kalle/src/MIRROR/elinks-0.4pre5/src/lowlevel/sched.c:1098 #5 0x0804a929 in terminate_all_subsystems () at /home/Kalle/src/MIRROR/elinks-0.4pre5/src/main.c:355 #6 0x0804a9e2 in main (argc=3, argv=0xbff2aa04) at /home/Kalle/src/MIRROR/elinks-0.4pre5/src/main.c:393 (gdb) bt #0 0x0809df6e in debug_mem_free ( file=0x80d88e0 "/home/Kalle/src/MIRROR/elinks-0.4pre6/src/lowlevel/sched.c", line=335, p=0x8119558) at /home/Kalle/src/MIRROR/elinks-0.4pre6/src/util/error.c:201 #1 0x0807f82c in free_connection_data (c=0x8119998) at /home/Kalle/src/MIRROR/elinks-0.4pre6/src/lowlevel/sched.c:335 #2 0x0807ff50 in interrupt_connection (c=0x8119998) at /home/Kalle/src/MIRROR/elinks-0.4pre6/src/lowlevel/sched.c:543 #3 0x0808028a in abort_connection (c=0x8119998) at /home/Kalle/src/MIRROR/elinks-0.4pre6/src/lowlevel/sched.c:647 #4 0x08081127 in abort_all_connections () at /home/Kalle/src/MIRROR/elinks-0.4pre6/src/lowlevel/sched.c:1090 #5 0x0804aa66 in terminate_all_subsystems () at /home/Kalle/src/MIRROR/elinks-0.4pre6/src/main.c:364 #6 0x0804ab1f in main (argc=3, argv=0xbf8adb84) at /home/Kalle/src/MIRROR/elinks-0.4pre6/src/main.c:402 ELinks 0.4pre10, 0.4pre14, and 0.4.0 crash before I even press Q: (gdb) bt #0 0x0807ee4e in get_text_translation (text=0x81133da "", term=0x822e991) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/intl/language.c:108 #1 0x0806e823 in get_stat_msg (stat=0x823d4a9, term=0x822e991) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:204 #2 0x0806ea0f in print_screen_status (ses=0x823d479) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:243 #3 0x080701be in end_load (stat=0x823d4a9, ses=0x823d479) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:826 #4 0x08083046 in send_connection_info (c=0x823d781) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/lowlevel/sched.c:381 #5 0x08082af0 in setcstate (c=0x823d781, state=0) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/lowlevel/sched.c:261 #6 0x08084368 in load_url (url=0x82291f9 "http://www.debian.org/", prev_url=0x0, stat=0x823d4a9, pri=0, cache_mode=NC_CACHE) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/lowlevel/sched.c:926 #7 0x0806f556 in ses_goto (ses=0x823d479, url=0x82291f9 "http://www.debian.org/", target=0x0, pri=0, cache_mode=NC_CACHE, wtd=WTD_FORWARD, pos=0x0, fn=0x80700c9 <end_load>, redir=0) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:529 #8 0x080712ab in really_goto_url_w (ses=0x823d479, url=0x823d589 "http://www.debian.org/", target=0x0, wtd=WTD_FORWARD, cache_mode=NC_CACHE) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:1309 #9 0x080712ea in goto_url_w (ses=0x823d479, url=0x823d589 "http://www.debian.org/", target=0x0, wtd=WTD_FORWARD, cache_mode=NC_CACHE) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:1328 #10 0x0807137e in goto_url (ses=0x823d479, url=0x823d589 "http://www.debian.org/") at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:1348 #11 0x08070ad0 in read_session_info (fd=5, ses=0x823d479, data=0x8232a59, len=30) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:1119 #12 0x080716b0 in win_func (win=0x812b361, ev=0x8230a31, fw=0) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/document/session.c:1432 #13 0x08086c93 in in_term (term=0x822e991) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/lowlevel/terminal.c:567 #14 0x0808583d in select_loop (init=0x804aa3d <init>) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/lowlevel/select.c:509 #15 0x0804aeb8 in main (argc=4, argv=0xbfe89144) at /home/Kalle/src/MIRROR/elinks-0.4pre10/src/main.c:400 (gdb) bt #0 0x080839ea in get_text_translation (text=0x81210bc "", term=0x8243111) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/intl/language.c:108 #1 0x08072dd4 in get_stat_msg (stat=0x813faa1, term=0x8243111) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:208 #2 0x08072fde in print_screen_status (ses=0x813fa71) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:247 #3 0x0807482f in end_load (stat=0x813faa1, ses=0x813fa71) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:833 #4 0x08087cdb in send_connection_info (c=0x824e089) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/lowlevel/sched.c:379 #5 0x08087720 in setcstate (c=0x824e089, state=0) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/lowlevel/sched.c:259 #6 0x08089101 in load_url (url=0x824df71 "http://www.debian.org/", prev_url=0x0, stat=0x813faa1, pri=0, cache_mode=NC_CACHE) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/lowlevel/sched.c:923 #7 0x08073b7d in ses_goto (ses=0x813fa71, url=0x824df71 "http://www.debian.org/", target=0x0, pri=0, cache_mode=NC_CACHE, wtd=WTD_FORWARD, pos=0x0, fn=0x807473a <end_load>, redir=0) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:536 #8 0x080759da in really_goto_url_w (ses=0x813fa71, url=0x824de49 "http://www.debian.org/", target=0x0, wtd=WTD_FORWARD, cache_mode=NC_CACHE) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:1320 #9 0x08075a19 in goto_url_w (ses=0x813fa71, url=0x824de49 "http://www.debian.org/", target=0x0, wtd=WTD_FORWARD, cache_mode=NC_CACHE) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:1339 #10 0x08075aad in goto_url (ses=0x813fa71, url=0x824de49 "http://www.debian.org/") at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:1359 #11 0x08075178 in read_session_info (fd=5, ses=0x813fa71, data=0x82433f9, len=30) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:1129 #12 0x08075dee in win_func (win=0x823d901, ev=0x82432c1, fw=0) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/document/session.c:1456 #13 0x0808bb65 in in_term (term=0x8243111) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/lowlevel/terminal.c:573 #14 0x0808a6a7 in select_loop (init=0x804a5ed <init>) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/lowlevel/select.c:509 #15 0x0804aa6d in main (argc=4, argv=0xbfe3c8f4) at /home/Kalle/src/MIRROR/elinks-0.4pre14/src/main.c:409 (gdb) bt #0 0xb7d1ad76 in raise () from /lib/libc.so.6 #1 0x0809a11c in force_dump () at /home/Kalle/src/MIRROR/elinks-0.4.0/src/util/error.c:32 #2 0x0809a26b in int_error (fmt=0x80e94dd "straconcat str=NULL") at /home/Kalle/src/MIRROR/elinks-0.4.0/src/util/error.c:83 #3 0x0809bed3 in straconcat (str=0x0) at /home/Kalle/src/MIRROR/elinks-0.4.0/src/util/string.c:179 #4 0x0809d3e5 in load_config_file (prefix=0x0, name=0x80e98ba "elinks.conf", options=0x811a6e0, str=0x0, len=0x0) at /home/Kalle/src/MIRROR/elinks-0.4.0/src/config/conf.c:426 #5 0x0809d564 in load_config () at /home/Kalle/src/MIRROR/elinks-0.4.0/src/config/conf.c:455 #6 0x0804ad37 in init () at /home/Kalle/src/MIRROR/elinks-0.4.0/src/main.c:320 #7 0x0807f700 in select_loop (init=0x804aaf2 <init>) at /home/Kalle/src/MIRROR/elinks-0.4.0/src/lowlevel/select.c:413 #8 0x0804afe5 in main (argc=4, argv=0xbfe89154) at /home/Kalle/src/MIRROR/elinks-0.4.0/src/main.c:447 ELinks 0.4.3, 0.5pre1, 0.9.0, 0.9.3, 0.10.0, 0.10.6, 0.11.0, and 0.11.3 do not crash. So, it appears I was unable to reproduce the reported bug.
pgp1zAE4cuT8y.pgp
Description: PGP signature