View Issue Details

IDProjectCategoryView StatusLast Update
0006569unrealircdpublic2025-08-11 03:17
ReporterBun-Bun Assigned To 
PrioritylowSeveritymajorReproducibilityalways
Status newResolutionopen 
PlatformLinuxOSCentosOS Version7
Product Version6.1.10 
Summary0006569: FTP Remote Includes timesout
DescriptionFTP Remote includes times out even though all data is transferred. This causes fallback to cached copy meaning remote conf changes are not synced during rehash.
Steps To ReproduceRehash server while utilizing remote includes over FTP.
Additional Informationunrealircd.conf
[ircadmin@hugo unrealircd]$ cat conf/unrealircd.conf
include "ftp://***:***@remoteconfig.***.ca/ircd-remote.u6.conf";
include "ftp://***:***@remoteconfig.***.ca/hugo.***.ca.u6.conf";

console output
[info] Loading IRCd configuration..
[error] [io] fd_refresh(): epoll_ctl returned error for fd 6 (CURL transfer): File exists
(hangs here awhile)
[error] /home/ircadmin/unrealircd/conf/unrealircd.conf:1: Failed to download 'ftp://***:***@remoteconfig.***.ca/ircd-remote.u6.conf': Operation timed out after 45000 milliseconds with 7190 out of 7190 bytes received
[error] Using a cached copy instead.
[error] /home/ircadmin/unrealircd/conf/modules.default.conf:307: Failed to download 'https://www.unrealircd.org/files/geo/classic/GeoIPv6.dat': Unknown cipher in list: ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
[error] Using a cached copy instead.
[error] /home/ircadmin/unrealircd/conf/modules.default.conf:308: Failed to download 'https://www.unrealircd.org/files/geo/classic/GeoIPASNum.dat': Unknown cipher in list: ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
[error] Using a cached copy instead.
[error] /home/ircadmin/unrealircd/conf/modules.default.conf:309: Failed to download 'https://www.unrealircd.org/files/geo/classic/GeoIPASNumv6.dat': Unknown cipher in list: ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
[error] Using a cached copy instead.
[error] /home/ircadmin/unrealircd/conf/modules.default.conf:306: Failed to download 'https://www.unrealircd.org/files/geo/classic/GeoIP.dat': Unknown cipher in list: ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
[error] Using a cached copy instead.
[info] Testing IRCd configuration..
[info] Configuration loaded
[info] Configuration test passed OK
[ircadmin@hugo unrealircd]$



changing from FTP to http doesn't exhibit the same behavior.


unrealircd.conf
[ircadmin@hugo unrealircd]$ cat conf/unrealircd.conf
include "http://nyy.ca/ircd-remote.u6.conf";
include "http://nyy.ca/hugo.nyy.ca.u6.conf";

console output
[ircadmin@hugo unrealircd]$ ./unrealircd configtest
[info] Loading IRCd configuration..
[error] /home/ircadmin/unrealircd/conf/modules.default.conf:309: Failed to download 'https://www.unrealircd.org/files/geo/classic/GeoIPASNumv6.dat': Unknown cipher in list: ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
[error] Using a cached copy instead.
[error] /home/ircadmin/unrealircd/conf/modules.default.conf:307: Failed to download 'https://www.unrealircd.org/files/geo/classic/GeoIPv6.dat': Unknown cipher in list: ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
[error] Using a cached copy instead.
[error] /home/ircadmin/unrealircd/conf/modules.default.conf:308: Failed to download 'https://www.unrealircd.org/files/geo/classic/GeoIPASNum.dat': Unknown cipher in list: ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
[error] Using a cached copy instead.
[error] /home/ircadmin/unrealircd/conf/modules.default.conf:306: Failed to download 'https://www.unrealircd.org/files/geo/classic/GeoIP.dat': Unknown cipher in list: ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
[error] Using a cached copy instead.
[info] Testing IRCd configuration..
[info] Configuration loaded
[info] Configuration test passed OK
[ircadmin@hugo unrealircd]$

Recompiling unrealircd using systemwide curl did not fix the issue. Curl has no issues downloading any of the above files over FTP or http or https at console.

However, if I renamed the config file on the ftp target and updated the local config to point to that would work on the first sync. After that it would repeat the error suggesting a cache issue.

Upgrading from Centos 7 to Alma Linux 8 and then recompiling unrealircd ultimately fixes all the issues, the ftp remote include as well as the https geoip downloads. After a ton of testing and going back and forth, my best guess is the remote include loop for ftp targets falls back to cache more easily (maybe from the geoip download errors?) than when using http.

Since this is a unsupported OS and likely an issue stemming from out of date libraries, I am not sure it is worth investigating. But I do have a copy of the VM prior to upgrading to Alma 8 if additional info or testing is needed.
Tags/rehash, configcheck, ircd
3rd party modules

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2025-08-11 03:17 Bun-Bun New Issue
2025-08-11 03:17 Bun-Bun Tag Attached: /rehash
2025-08-11 03:17 Bun-Bun Tag Attached: configcheck
2025-08-11 03:17 Bun-Bun Tag Attached: ircd