Daniel Oaks
695faefd93
Allow formatting codes in the MOTD
6 anni fa
Daniel Oaks
68b1dc9e72
Split passwd into its' own subpackage
6 anni fa
Daniel Oaks
207c1074df
Split utils out to a separate subpackage
6 anni fa
Daniel Oaks
4aa52956e5
Split isupport to its' own subpackage
6 anni fa
Daniel Oaks
eac6a69782
Fix some notes and add some comments.
6 anni fa
Shivaram Lingamneni
456174ed53
review fixes for raw i/o notification
6 anni fa
Shivaram Lingamneni
aff1752d67
refactor logging to implement #142
6 anni fa
Daniel Oaks
f7f049973f
Rip out REST API and web interface.
It's not really used and I'd rather not have it here unless I'm able to actively maintain it properly and build out the web interface.
I might re-add it later but for now I'd rather not have it unless anyone's actively using it.
6 anni fa
Shivaram Lingamneni
26686d7e86
refactor monitor and /oper implementations
6 anni fa
Shivaram Lingamneni
23a66fa502
fix various data races, including 2 introduced by #139
6 anni fa
Daniel Oaks
275449e6cc
caps: Move most capability-handling types into the caps package
6 anni fa
Daniel Oaks
9bfdc4fdfb
Move caps to their own package to prevent conflicts
6 anni fa
Daniel Oaks
830484feb6
AWAY: Send correct mode string (thanks for pointing out this silly bug @jwheare!)
6 anni fa
Daniel Oaks
ffe7375a68
Fix proxied DLINE/throttle/etc error messages
6 anni fa
Shivaram Lingamneni
a9e4ed237e
deduplicate d-line and throttle code
6 anni fa
Daniel Oaks
8b1f722655
server: Fix the PROXY command
6 anni fa
Shivaram Lingamneni
b7b24c34b4
rehash cannot modify the server name
6 anni fa
Shivaram Lingamneni
3b0f1ff1cc
delete websocket support as per discussion on #139
6 anni fa
Shivaram Lingamneni
e8b1870067
refactor the rehash implementation
6 anni fa
Daniel Oaks
cd8b4877b6
accounts: Check for account logins correctly, fixes registration. Also fix a typo, thanks squigz!
6 anni fa
Daniel Oaks
3b0d9c4db9
Send nick parameter correctly on ERR_NOSUCHNICK numerics
6 anni fa
Daniel Oaks
e95c75f87d
monitor: Fix a crash around the MONITOR command
6 anni fa
Daniel Oaks
acec0e1690
PROXY: Check DLINEs and connection limits/throttle on new proxied connections
7 anni fa
Daniel Oaks
38498b752b
PROXY: Make sure given IPs are valid and pass them through appropriately
7 anni fa
Daniel Oaks
7d140c9e43
PROXY: Update some comments, disallow from registered clients
7 anni fa
Shivaram Lingamneni
99f02ede20
restore PROXY protocol support
support for PROXY was removed in 43e28e2fef . After discussion,
it's worth keeping around in case of client compatibility issues,
and until /rehash support is more mature.
7 anni fa
Daniel Oaks
8cd016e4c0
server: Fix comments
7 anni fa
Shivaram Lingamneni
0f0f2d1314
refactor listener update/destroy code
Don't close and reopen listeners
6 anni fa
Shivaram Lingamneni
d5528f6e56
execute rehash() in its own goroutine
This prevents a deadlock:
1. rehash() is executing on the main goroutine
2. it's trying to stop a listener goroutine
3. the listener goroutine needs to hand off a new connection to newConns
4. but the main goroutine is blocked by rehash() so it can't receive it
7 anni fa
Shivaram Lingamneni
b1376d5f71
Fix a concurrency error with Server.listeners
See #134 ; there was a `fatal error: concurrent map read and map write`
due to unsynchronized accesses to `Server.listeners`. Now, `listeners`
is only accessed by `NewServer` and `rehash`, so it doesn't need
synchronization.
7 anni fa
Shivaram Lingamneni
333afe1062
make default channel modes configurable
7 anni fa
Daniel Oaks
f9ef97b204
modes: Add experimental, untested +R user mode to block messages from unregistered users
7 anni fa
Daniel Oaks
97cfc0b629
Print warnings to heavily encourage exposing port 6697 as a TLS port
7 anni fa
Euan Kemp
2b155f9b1e
server: close connection on parse-ip failure
Close the client's connection if we're unable to parse their IP.
This also simplifies the check to reduce indentation by a level.
Finally, this replaces the two-var construction of the pseudo-const
messages with an inline dereference via a slice to allow constructing
them less noisily.
7 anni fa
Daniel Oaks
b807f492ed
OPER: If client's already opered-up, ignore new OPER attempts
7 anni fa
Daniel Oaks
23a26f83fe
client: Show real IP and whether the target's using TLS in WHOIS
7 anni fa
Daniel Oaks
c9ed749538
Rename deps
7 anni fa
Daniel Oaks
a8fa131244
Move to new repo
7 anni fa
Daniel Oaks
309ec8191e
Add 'k' snomask for kills (including those coming from dlines and klines)
7 anni fa
Daniel Oaks
8a6ba6f9cc
LIST: Start implementing ELIST conditions
7 anni fa
Daniel Oaks
34863a6320
JOIN: Disable JOIN 0 support, in line with Insp
7 anni fa
Daniel Oaks
4128ff6137
server: Check for channel permissions when renaming channels
7 anni fa
Daniel Oaks
0f8ab4eaec
server: Add proposed RENAME command
7 anni fa
Daniel Oaks
53190ef131
Send a whole lot more snomasks
7 anni fa
Daniel Oaks
ebb9d629d7
xline: Add ANDKILL param to kill all matching clients
7 anni fa
Daniel Oaks
d847d55c06
Fix wordWrap function so it doesn't drop chars, and fix client.Notice() to automagically split very long lines.
7 anni fa
Daniel Oaks
9fe7c143c8
server: Remove useless comments, make idle/quit function layouts nicer
7 anni fa
Daniel Oaks
fd793d6adb
Add very initial snomasks
7 anni fa
Daniel Oaks
1afd3b8f78
server: Change localconnect msg to include username/realname
7 anni fa
Daniel Oaks
51425b7764
help: Generate index of help topics
7 anni fa