ergo/irc
Shivaram Lingamneni d0ded906d4 fix a fairly bad bug where nicks could get out of sync
during nick change, removeInternal(client) was being called even before checking
whether the new nick was in use or reserved. Reproduction steps:

1. Log in a client 'alice'
2. Log in a client 'bob'
3. bob issues /nick alice, which fails (correctly) with:
:oragono.test 433 bob alice :Nickname is already in use
4. alice issues /msg bob hi, which fails (incorrectly) with:
:oragono.test 401 alice bob :No such nick
2019-01-02 10:15:59 -05:00
..
caps draft/resume-0.2 implementation, message history support 2018-11-26 05:23:27 -05:00
connection_limits add support for login throttling 2019-01-02 10:15:59 -05:00
custime dline/kline: Allow year/month/day durations 2017-03-07 19:56:21 +10:00
history history replay enhancements 2018-12-28 13:45:55 -05:00
isupport fix #297 2018-12-30 18:17:24 -05:00
languages Split language into a subpackage 2018-02-03 19:46:14 +10:00
logger pointless optimizations to the logger 2019-01-01 16:43:35 -05:00
mkcerts Move mkcerts package under lib/ 2018-02-04 05:34:26 +10:00
modes draft/resume-0.2 implementation, message history support 2018-11-26 05:23:27 -05:00
passwd refactor the password hashing / password autoupgrade system 2018-08-06 02:26:21 -04:00
sno Only allow valid snomasks to be set 2018-04-16 13:20:37 +10:00
utils history replay enhancements 2018-12-28 13:45:55 -05:00
accounts.go avoid some uses of Sprintf for loglines 2019-01-02 09:55:45 -05:00
channel.go refactor join/part 2019-01-02 09:55:45 -05:00
channelmanager.go implement SAJOIN, allow channel founders to join unconditionally 2018-05-25 02:47:50 -04:00
channelreg.go fix a bug in CS UNREGISTER 2018-08-06 10:08:58 -04:00
chanserv.go add support for service command aliases 2018-08-06 10:08:58 -04:00
client.go add support for login throttling 2019-01-02 10:15:59 -05:00
client_lookup_set.go fix a fairly bad bug where nicks could get out of sync 2019-01-02 10:15:59 -05:00
commands.go changes to client idle time counting 2018-12-30 18:17:24 -05:00
config.go add support for login throttling 2019-01-02 10:15:59 -05:00
constants.go Release v0.12.0 2018-10-15 12:18:23 +10:00
database.go prevents default create/open of buntdb, requires user to call initdb 2018-11-19 14:10:12 -05:00
dline.go Move all errors into errors.go 2018-02-03 22:03:36 +10:00
errors.go draft/resume-0.2 implementation, message history support 2018-11-26 05:23:27 -05:00
fakelag.go fix fakelag double-rate issue 2018-04-16 04:32:57 -04:00
fakelag_test.go fix fakelag double-rate issue 2018-04-16 04:32:57 -04:00
gateways.go fix PROXY protocol support for IPv6 2018-09-03 00:38:32 -04:00
getters.go preregNick doesn't need synchronization 2019-01-02 10:15:59 -05:00
handlers.go preregNick doesn't need synchronization 2019-01-02 10:15:59 -05:00
help.go fix PROXY protocol support for IPv6 2018-09-03 00:38:32 -04:00
hostserv.go fix hostserv help string 2018-12-28 11:07:08 -05:00
idletimer.go fix bad interaction between nickTimer.Stop() and accounts.Logout() 2018-03-14 08:43:50 -04:00
kline.go Centralise all command handlers in handlers.go 2018-02-03 19:28:02 +10:00
legacy.go refactor the password hashing / password autoupgrade system 2018-08-06 02:26:21 -04:00
modes.go history replay enhancements 2018-12-28 13:45:55 -05:00
modes_test.go refactor rehash to rely more on server.config 2018-07-16 03:46:40 -04:00
monitor.go draft/resume-0.2 implementation, message history support 2018-11-26 05:23:27 -05:00
nickname.go add ClientDetails struct for getting a snapshot of client state 2019-01-02 09:55:45 -05:00
nickserv.go add support for login throttling 2019-01-02 10:15:59 -05:00
numerics.go Make ERR_CANNOT_RESUME use RPL_NONE numeric 2018-02-04 21:25:08 +10:00
responsebuffer.go history replay enhancements 2018-12-28 13:45:55 -05:00
roleplay.go modes refactor, #255 2018-04-22 19:36:15 -04:00
semaphores.go add Semaphore and ServerSemaphores 2018-04-26 06:03:10 -04:00
server.go preregNick doesn't need synchronization 2019-01-02 10:15:59 -05:00
services.go add support for service command aliases 2018-08-06 10:08:58 -04:00
snomanager.go Only allow valid snomasks to be set 2018-04-16 13:20:37 +10:00
socket.go fixes to irc/socket.go 2018-11-28 00:24:44 -05:00
stats.go Stats for LUSERS logic now seperated, fixed params in LUSERS 2018-04-20 22:48:15 +02:00
strings.go fix #306 2018-12-05 22:39:01 -05:00
strings_test.go add more test cases 2018-12-06 06:46:11 -05:00
types.go draft/resume-0.2 implementation, message history support 2018-11-26 05:23:27 -05:00
whowas.go add ClientDetails struct for getting a snapshot of client state 2019-01-02 09:55:45 -05:00
whowas_test.go add ClientDetails struct for getting a snapshot of client state 2019-01-02 09:55:45 -05:00