https://gitlab.synchro.net/main/sbbs/-/commit/63844fa110647fc2660da61b
Modified Files:
docs/v322_new.md exec/load/ircd/core.js unregistered.js
Log Message:
ircd: serialize manual CONNECT, and stop answering ERROR with a numeric
IRCClient_do_connect() declined to start when Outbound_Connect_in_Progress
was set but never set it itself, so for the duration of an operator's
/CONNECT the flag stayed clear and a scheduled Automatic_Server_Connect()
could dial a second server concurrently -- the case 0b4056bbcf (2024-06-19) added the flag to prevent. It also meant every manual /CONNECT logged "Outbound connection while !Outbound_Connect_in_Progress" when the socket callback found the flag already false.
Unregistered_Commands() had no case for ERROR, so a server refusing our handshake -- which reports why with ERROR just before dropping the link --
was answered with 461 "You have not registered", and the reason went no
further than the raw protocol log. Log it and notify routing opers
instead. Outbound links are named by their configured server name, since
an unregistered client's hostname defaults to the socket's peer address,
which is not yet resolvable at that point in the connect callback.
Co-Authored-By: Claude Opus 5 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net