Shivaram Lingamneni
3480f124cd
fix #688
4年前
Shivaram Lingamneni
40df122c73
remove unused getters
4年前
Shivaram Lingamneni
65834c0729
optimize Sessions() at the expense of AddSession()
4年前
Shivaram Lingamneni
b134a63dc2
simplify "client dead" logic in AddSession
now that we have client.destroyed again, we don't need to test the
"0 sessions && brb disabled" condition in both AddSession() and
destroy()
5年前
Shivaram Lingamneni
5ac7ea5b1c
fix data race on exitedSnomaskSent
5年前
Shivaram Lingamneni
4b88a60ba6
clean up some old getters
5年前
Shivaram Lingamneni
1de166bccb
eliminate client.Realname() getter
5年前
Shivaram Lingamneni
3d445573cf
implement draft/resume-0.4
5年前
Shivaram Lingamneni
8fc588375b
implement user preferences system
5年前
Shivaram Lingamneni
353aeb0389
normalize most times in the app to UTC
Fixes #480
5年前
Shivaram Lingamneni
ce6a3e42df
load isupport directly into the config object
eliminates Server.configurableStateMutex
5年前
Shivaram Lingamneni
fbc6c84a01
add client compatibility switches
5年前
Shivaram Lingamneni
60c8f286e8
fix several session destruction bugs
5年前
Shivaram Lingamneni
da656c07c8
add NICKSERV SESSIONS command to list sessions
5年前
Shivaram Lingamneni
51465b4a3a
strip out the +a away mode
5年前
Shivaram Lingamneni
30f6e11698
fix #400
Also fix some issues with STATUSMSG
5年前
Shivaram Lingamneni
c2faeed4b5
initial implementation of bouncer functionality
5年前
Shivaram Lingamneni
63029e2ff5
refactor channel registration
5年前
Shivaram Lingamneni
2e88f82e41
remove indirections in Fakelag and NickTimer
5年前
Shivaram Lingamneni
b0f89062fa
add support for tor (#369)
5年前
Shivaram Lingamneni
c6b9fe0218
fix #384
5年前
Shivaram Lingamneni
a5b9634783
fix #394
5年前
Shivaram Lingamneni
afe94d43c3
update resume support to draft/resume-0.3
5年前
Shivaram Lingamneni
35abe7940a
RESUME should end cap negotiation without requiring CAP LS
5年前
Chris Smith
34a9a37b82
Fix usernames being used in place of hostnames.
Closes #355
5年前
Shivaram Lingamneni
eff2571096
limit the number of channels a client can join
5年前
Shivaram Lingamneni
1c23af8767
add sasl-only config option
5年前
Shivaram Lingamneni
b9b2553a2f
use the TR39 skeleton algorithm to prevent confusables (#178)
5年前
Shivaram Lingamneni
9a2117f75d
preregNick doesn't need synchronization
(since it's only accessed from the client's own goroutine)
5年前
Shivaram Lingamneni
960d51159c
add ClientDetails struct for getting a snapshot of client state
5年前
Shivaram Lingamneni
2c7c8fbaf9
history replay enhancements
5年前
Shivaram Lingamneni
b6b4d365bc
fix #313
5年前
Shivaram Lingamneni
a0bf548fc5
draft/resume-0.2 implementation, message history support
5年前
Shivaram Lingamneni
7154f14781
move handling of RecoverFromErrors into LoadConfig
6年前
Shivaram Lingamneni
1383190249
refactor rehash to rely more on server.config
6年前
Shivaram Lingamneni
31f386f5a9
add CHANSERV UNREGISTER
6年前
Shivaram Lingamneni
d3815fbe61
review fixes and updates
6年前
Shivaram Lingamneni
1016f86f70
implement CHANSERV AMODE
6年前
Shivaram Lingamneni
f6373f7a4d
fix #262
6年前
Shivaram Lingamneni
fad2475c3f
modes refactor, #255
6年前
Shivaram Lingamneni
5e62cc4ebc
initial vhosts implementation, #183
6年前
Shivaram Lingamneni
8fb5a38851
Updates to channel persistence
1. Implement persistent channel keys (#208 )
2. Persist changes to registered channel modes
3. Backend changes for persisting operator status (partial #198 )
6年前
Shivaram Lingamneni
1bf5e2a7c8
implement fakelag (#189)
6年前
Shivaram Lingamneni
a8b952da77
store maxSendQBytes in a uint32 to avoid alignment problems
The sync.atomic documentation says:
"On both ARM and x86-32, it is the caller's responsibility to arrange
for 64-bit alignment of 64-bit words accessed atomically."
6年前
Shivaram Lingamneni
d1f5c59eef
fix #190
6年前
Shivaram Lingamneni
be86684e96
implement #199
6年前
Shivaram Lingamneni
878f9ca94c
fix: store the uncasefolded account name correctly
6年前
Shivaram Lingamneni
ad73d68807
refactor account registration, add nick enforcement
6年前
Daniel Oaks
3634d0601e
Split modes into a subpackage (this is painful, but will force us to simplify and improve the API for interacting with modes)
6年前
Shivaram Lingamneni
d4cb15354f
remove registeredChannelsMutex
This moves channel registration to an eventual consistency model,
where the in-memory datastructures (Channel and ChannelManager)
are the exclusive source of truth, and updates to them get persisted
asynchronously to the DB.
6年前