Daniel Oaks
79de443496
channel: Don't send TOPIC on entirely new channel
6 yıl önce
Daniel Oaks
2759d8f5d3
modes: Allow 'MODE b' (used by irssi for channel sync) (thanks @dx!)
6 yıl önce
Daniel Oaks
3b0d9c4db9
Send nick parameter correctly on ERR_NOSUCHNICK numerics
6 yıl önce
Daniel Oaks
1ccdd67a45
Setup v0.9.1-unreleased devel ver
6 yıl önce
Daniel Oaks
02cd620bd4
Release v0.9.0
6 yıl önce
Daniel Oaks
e95c75f87d
monitor: Fix a crash around the MONITOR command
6 yıl önce
Daniel Oaks
7ff33b88dd
Update info doc and changelog
6 yıl önce
Daniel Oaks
ee73d136fc
vendor: Updated submodules
6 yıl önce
Daniel Oaks
acec0e1690
PROXY: Check DLINEs and connection limits/throttle on new proxied connections
6 yıl önce
Daniel Oaks
38498b752b
PROXY: Make sure given IPs are valid and pass them through appropriately
6 yıl önce
Daniel Oaks
7d140c9e43
PROXY: Update some comments, disallow from registered clients
6 yıl önce
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.
6 yıl önce
Daniel Oaks
8cd016e4c0
server: Fix comments
6 yıl önce
Daniel Oaks
989fea18f9
Merge pull request #135 from slingamn/listeners_refactor_again.7
refactor create/update/destroy of listeners
6 yıl önce
Shivaram Lingamneni
0f0f2d1314
refactor listener update/destroy code
Don't close and reopen listeners
6 yıl önce
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
6 yıl önce
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.
6 yıl önce
Daniel Oaks
c48d869f4d
Allow multiple account registrations for testing
6 yıl önce
Daniel Oaks
8e32098f1f
Quiet mkcerts messages
6 yıl önce
Daniel Oaks
97010461f7
Merge pull request #133 from slingamn/default_modes.2
implement #132 (configurable default channel modes)
6 yıl önce
Shivaram Lingamneni
6063d30bc5
add a test for default channel mode parsing
6 yıl önce
Shivaram Lingamneni
333afe1062
make default channel modes configurable
6 yıl önce
Shivaram Lingamneni
a50e68af4d
ignore vim swapfiles
6 yıl önce
Daniel Oaks
34964a9920
changelog: Document new stuff
6 yıl önce
Daniel Oaks
d052ca8a8d
accounts: Disable reg if client's already registered an account
6 yıl önce
Daniel Oaks
eb72c38d0c
changelog: Note latest changes, reword some dodgy lines
6 yıl önce
Daniel Oaks
ac91a3e484
strings: Follow latest advice on PRECIS regarding string stabilizing
6 yıl önce
Daniel Oaks
f9ef97b204
modes: Add experimental, untested +R user mode to block messages from unregistered users
6 yıl önce
Daniel Oaks
b975c6f182
Merge pull request #131 from slingamn/hostmask_fix
fix hostmask issue
6 yıl önce
Shivaram Lingamneni
9a9a85cd55
fix hostmask issue
PTR records ending in . (e.g., `google-public-dns-b.google.com.`)
were considered invalid
6 yıl önce
Daniel Oaks
ffabd26653
Make sure ISUPPORT outputs are sorted and tested
7 yıl önce
Daniel Oaks
0fe3855582
changelog: Describe new changes
7 yıl önce
Daniel Oaks
97cfc0b629
Print warnings to heavily encourage exposing port 6697 as a TLS port
7 yıl önce
Daniel Oaks
0b75351e56
Merge pull request #128 from euank/return-bad-ip-err
server: close connection on parse-ip failure
7 yıl önce
Daniel Oaks
c7cf79648e
Merge pull request #129 from euank/disallow-colon-nick
strings: disallow ':' in nicks
7 yıl önce
Euan Kemp
3b47f3d470
config: don't casefold tls names
I don't think casefolding things like `:6697` ever made sense.
Since these are configured by the ircd operator, it makes sense to
assume they'll already be in a canonical form regardless.
7 yıl önce
Euan Kemp
449ef4cea1
strings: disallow ':' in nicks
This matches the behavior of inspircd at the very least.
Previously, the comment above that section claimed ':' should be
disallowed, but the code didn't do so.
I also simplified the code a little bit and added tests.
7 yıl önce
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 yıl önce
Daniel Oaks
9bb0062dbc
readme: Add build status
7 yıl önce
Daniel Oaks
470fc2a469
travis: Also run Go tests where they exist, when running through Travis
7 yıl önce
Daniel Oaks
73703be181
Merge pull request #126 from enckse/master
simple travisci definition
7 yıl önce
Sean Enck
68c23102d8
dependency retrieval make rule
7 yıl önce
Sean Enck
89053fdd15
change location of svg
7 yıl önce
Sean Enck
28562b0f85
travis basic settings
7 yıl önce
Daniel Oaks
b807f492ed
OPER: If client's already opered-up, ignore new OPER attempts
7 yıl önce
Daniel Oaks
cc15ec9d2d
vendor: Updated submodules
7 yıl önce
Euan Kemp
2e8a98a925
irc: fix timer memleak
This is a gotcha called out in the `time.After` docs. `time.After` will
leak the underlying channel if nothing ever receives on it.
7 yıl önce
Daniel Oaks
b003cd6287
make: Fix build dirs
7 yıl önce
Euan Kemp
2f3838d95a
make: properly specify targets as phony
None of them are referring to actual files
7 yıl önce
Euan Kemp
e6b6ab2b11
make: remove extraneous slash
The variables were often referenced with a trailing slash, and having
`//` works, but is sloppy.
7 yıl önce