View Issue Details

IDProjectCategoryView StatusLast Update
0004446unrealircdpublic2015-11-02 14:11
Reportersyzop Assigned Tosyzop  
PrioritynormalSeveritymajorReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version4.0.0-rc2 
Fixed in Version4.0.0-rc3 
Summary0004446: remote includes: rehash never finishes if DNS server is down
DescriptionI killed my DNS today for testing (due to other issue). UnrealIRCd boots OK, after 15sec timeout, using cached version instead etc. etc.

Then, when I /REHASH on IRC, it says:
[11:32:10] -maintest.test.net- *** Syzop is rehashing server config file
[11:32:10] /home/syzop/unrealircd/conf/unrealircd.conf Rehashing

and that's it... it never finishes. I forgot about it and it was still like this 1 hour later.

If you try to /REHASH again it says 'A rehash is already in progress', IOTW: the server is now un-rehashable. Not good.
Additional InformationLatest UnrealIRCd build

libcurl/7.45.0 OpenSSL/1.0.1k zlib/1.2.8 c-ares/1.10.0 libidn/1.29 libssh2/1.4.3

so compiled with c-ares etc.
TagsNo tags attached.
3rd party modules

Activities

syzop

2015-11-02 12:33

administrator   ~0018848

Event is being called fine every second...

(gdb) b curl_socket_timeout
Breakpoint 1 at 0x47e77e: file url.c, line 345.
(gdb) c
Continuing.

Breakpoint 1, curl_socket_timeout (data=0x0) at url.c:345
345 {
(gdb) n
348 curl_multi_socket_action(multihandle, CURL_SOCKET_TIMEOUT, 0, &dummy);
(gdb)
349 }
(gdb) quit

syzop

2015-11-02 13:42

administrator   ~0018849

After 15 seconds url_socket_cb gets called to unmap/close the fd, but.. other than that nothing... no curl function is called to say that the downloading failed or has finished
I've been breaking on:
b url_socket_cb
b url_check_multi_handles
b download_file_async
b conf_download_complete
b remote_include

syzop

2015-11-02 14:10

administrator   ~0018850

https://github.com/unrealircd/unrealircd/commit/a5760351fefdcc78bfe1dfa3ed7959be8f8a2f5e

Issue History

Date Modified Username Field Change
2015-11-02 12:31 syzop New Issue
2015-11-02 12:33 syzop Note Added: 0018848
2015-11-02 12:37 syzop Additional Information Updated
2015-11-02 13:42 syzop Note Added: 0018849
2015-11-02 14:10 syzop Note Added: 0018850
2015-11-02 14:10 syzop Status new => resolved
2015-11-02 14:10 syzop Fixed in Version => 4.0.0-rc3
2015-11-02 14:10 syzop Resolution open => fixed
2015-11-02 14:10 syzop Assigned To => syzop