Shivaram Lingamneni
a46c0eed9f
Merge pull request #1004 from slingamn/vanish.4
...
fix #858 and #383
2020-05-14 06:54:24 -07:00
Shivaram Lingamneni
be0dedf260
fix #1003
2020-05-13 06:51:15 -04:00
Shivaram Lingamneni
67f35e5c8a
fix #858 and #383
2020-05-12 12:05:40 -04:00
Alex Jaspersen
d5cec62df3
Call ApplyUserModeChanges for default user modes.
...
This ensures that counts like the number of invisible users are updated
correctly.
2020-05-11 05:41:40 +00:00
Shivaram Lingamneni
8c74b0660b
fix #952
2020-05-08 01:18:00 -04:00
Shivaram Lingamneni
14bcd46588
fix #982
2020-05-06 05:56:00 -04:00
Shivaram Lingamneni
c92192ef48
review fixes; add submatch support to glob
2020-05-05 17:20:55 -04:00
Shivaram Lingamneni
4ef6c58317
work around a chrome bug
2020-05-05 04:13:55 -04:00
Shivaram Lingamneni
620e30293d
use consistent spelling of WebSocket
2020-05-05 04:07:19 -04:00
Shivaram Lingamneni
3dc5c8de78
more work on websocket support
2020-05-04 23:26:51 -04:00
Shivaram Lingamneni
25813f6d3a
Merge remote-tracking branch 'origin/master' into websockets_draft.2
2020-04-30 22:16:07 -04:00
Hubert Hirtz
f5930444f7
WebSocket support
2020-04-30 23:17:33 +02:00
Alex Jaspersen
df9bf15f00
Add support for setting user modes by default.
2020-04-30 03:54:09 +00:00
Shivaram Lingamneni
57e2187742
fix #964
2020-04-26 02:52:09 -04:00
Shivaram Lingamneni
ee05a4324d
fix #920 , #921
2020-04-05 03:48:59 -04:00
Shivaram Lingamneni
895a0e6d68
fix #913
2020-03-27 17:52:37 -04:00
Shivaram Lingamneni
2d908eac8b
fix #874
2020-03-20 09:16:22 -04:00
Shivaram Lingamneni
2428acab95
enhancements to roleplay
2020-03-19 17:10:28 -04:00
Shivaram Lingamneni
bd45c346dc
fix #685
2020-03-18 07:07:20 -04:00
Shivaram Lingamneni
9559ea6764
fix #408
2020-03-18 07:07:20 -04:00
Shivaram Lingamneni
65ebe7f64a
fix #868
2020-03-18 07:07:20 -04:00
Shivaram Lingamneni
edd161ddfd
rename config keys from review feedback
2020-03-17 09:04:14 -04:00
Shivaram Lingamneni
26fd3e69a8
fix #749
2020-03-16 13:48:14 -04:00
Shivaram Lingamneni
b45f8436a4
refactoring / bug fixing in history preferences
2020-02-25 00:19:24 -05:00
Shivaram Lingamneni
fb8b73e29a
Merge branch 'persistent.14'
2020-02-22 23:10:52 -05:00
Shivaram Lingamneni
5fe4d0b133
fix #794
...
Remove support for `listen` config block
2020-02-21 04:12:00 -05:00
Shivaram Lingamneni
fd90893fa6
handle old bouncer name for multiclient config
2020-02-21 00:33:55 -05:00
Shivaram Lingamneni
f5ca35ed72
rename 'bouncer' to 'multiclient'
2020-02-21 00:33:55 -05:00
Shivaram Lingamneni
98a7b45d96
add mysql timeouts
2020-02-21 00:33:48 -05:00
Shivaram Lingamneni
8123e3c08f
improve nick and channel length validation
2020-02-21 00:33:37 -05:00
Shivaram Lingamneni
ef161c47ed
use custime.Duration for more config fields
2020-02-20 00:09:39 -05:00
Shivaram Lingamneni
33dac4c0ba
initial persistent history implementation
2020-02-19 00:24:12 -05:00
Shivaram Lingamneni
0c2d8adeac
improve maintainability and license compliance
...
0. Maximum parity with upstream code
1. Added Apache-required modification notices
2. Added Apache license
2020-02-11 16:13:12 -05:00
Shivaram Lingamneni
c13597f807
additional LDAP support
2020-02-11 06:35:17 -05:00
Matt Ouille
d4afb027e5
Add LDAP support
2020-02-09 22:13:02 -05:00
Shivaram Lingamneni
b329cf430e
Merge pull request #744 from slingamn/hostserv_offer.1
...
add support for offering vhosts
2020-01-28 19:36:17 -08:00
Shivaram Lingamneni
5d662742b9
remove oragono.io/maxline-2 and fmsgid
2020-01-18 23:47:05 -05:00
Shivaram Lingamneni
d807f1252f
move generateISupport to config.go
2020-01-14 01:21:47 -05:00
Shivaram Lingamneni
05cb80507f
fix #741
2020-01-11 22:43:40 -05:00
Shivaram Lingamneni
f920d3b79f
fix #530 , #721
2019-12-29 12:05:01 -05:00
Shivaram Lingamneni
9de9fcf069
Merge pull request #695 from slingamn/issue693_casemappings.4
...
#693 : configurable casemappings
2019-12-29 09:20:06 -05:00
Shivaram Lingamneni
f6757f814e
Merge pull request #707 from slingamn/multiline.4
...
implement draft/multiline
2019-12-26 23:18:54 -05:00
Shivaram Lingamneni
9b5d6bf746
fix #713
2019-12-24 16:20:18 -05:00
Shivaram Lingamneni
358c4b7d81
implement draft/multiline
2019-12-24 09:29:54 -05:00
Shivaram Lingamneni
0df25e0e30
remove redundant error check
2019-12-19 18:41:46 -05:00
Shivaram Lingamneni
78da024b24
improve an error message
2019-12-19 09:30:49 -05:00
Shivaram Lingamneni
b717402b5e
implement review feedback
...
1. If both fingerprint and hash are specified, require both instead of either
2. Implement auto-oper on connect
2019-12-19 06:33:43 -05:00
Shivaram Lingamneni
6033d9f569
tweaks for consistency
2019-12-18 20:33:58 -05:00
Shivaram Lingamneni
e143aaa83f
fix #696
2019-12-18 16:04:43 -05:00
Shivaram Lingamneni
91d6888b7e
fix #693
2019-12-18 12:26:09 -05:00
Shivaram Lingamneni
ab444a3980
remove unnecessary uses of Casefold
2019-12-18 12:21:03 -05:00
Shivaram Lingamneni
f1e2bbc0e4
more permissive hostname validation
...
In particular, allow hostnames without periods (like on a LAN).
This shouldn't be a client compability concern since we allow
vhosts without periods.
2019-12-18 09:21:45 -05:00
Shivaram Lingamneni
3480f124cd
fix #688
2019-12-17 19:37:33 -05:00
Shivaram Lingamneni
fec1139dc8
Merge pull request #673 from slingamn/proxytls.18
...
fix #561 , take two
2019-11-23 22:09:45 -05:00
Shivaram Lingamneni
7432ef07a7
rename some variables for clarity
2019-11-20 17:43:45 -05:00
Shivaram Lingamneni
50783d5276
fix #561 , take 2
2019-11-20 17:35:35 -05:00
Shivaram Lingamneni
4050b6571a
fix #646
...
Includes a partially backwards-incompatible config change
2019-11-18 01:47:18 -05:00
Shivaram Lingamneni
c1acf3ea43
move ISUPPORT regeneration to the end of config loading
2019-09-22 17:26:50 -04:00
Shivaram Lingamneni
ca17e58b3a
fix #595
2019-08-31 21:29:23 -04:00
Shivaram Lingamneni
7ed27d4a42
Fix #448 , #594
2019-08-27 03:58:04 -04:00
Daniel Oaks
7a56c4e0ad
Merge pull request #591 from slingamn/history_autoresize.4
...
autoresizing of history buffers (#349 )
2019-07-31 06:36:35 +10:00
Shivaram Lingamneni
ce651b4a90
remove obsolete consistency check
...
tor-listeners.listeners was checked against listen,
but listen is obsolete now, so config load would fail
on a config that used the new style `listeners` instead of
`listen` --- unless tor-listeners.listeners was empty, which
it should be under the new style, but there's no need to enforce
that
2019-07-12 15:19:43 -04:00
Shivaram Lingamneni
6e9a728354
autoresizing of history buffers ( #349 )
2019-07-03 21:08:37 -04:00
Shivaram Lingamneni
eee0747e5e
new format for listener section
2019-06-28 14:43:53 -04:00
Shivaram Lingamneni
5d0b8390e9
refactor listener config loading
2019-06-19 22:33:15 -04:00
Shivaram Lingamneni
3b71be3bf0
fix #537
2019-05-30 05:40:18 -04:00
Shivaram Lingamneni
4b88a60ba6
clean up some old getters
2019-05-22 19:07:12 -04:00
Shivaram Lingamneni
4e13f72ca9
put an upper limit on registration messages
...
Fixes #505
2019-05-22 16:42:25 -04:00
Shivaram Lingamneni
8fc588375b
implement user preferences system
2019-05-19 06:17:30 -04:00
Shivaram Lingamneni
18cf816396
add a manual entry for cloaks
2019-05-12 19:19:36 -04:00
Shivaram Lingamneni
11076be0ee
review fixes
2019-05-12 16:26:23 -04:00
Shivaram Lingamneni
2451737f87
give cloaks their own package
2019-05-12 04:03:50 -04:00
Shivaram Lingamneni
c28e6d13f9
implement ip cloaking
2019-05-12 02:52:12 -04:00
Shivaram Lingamneni
c193def606
fix some issues found with staticcheck.io
2019-05-10 01:44:14 -04:00
Shivaram Lingamneni
ce6a3e42df
load isupport directly into the config object
...
eliminates Server.configurableStateMutex
2019-05-10 00:32:10 -04:00
Shivaram Lingamneni
61d666a25b
load motd directly into the config object
2019-05-10 00:13:48 -04:00
Shivaram Lingamneni
fbc6c84a01
add client compatibility switches
2019-05-09 15:41:08 -04:00
Shivaram Lingamneni
c2faeed4b5
initial implementation of bouncer functionality
2019-04-14 20:48:50 -04:00
Daniel Oaks
0b644065b7
Review and spec updates
2019-04-08 11:36:48 +10:00
Shivaram Lingamneni
85493ef031
upgrade message-tags to non-draft version
2019-03-07 04:31:08 -05:00
Shivaram Lingamneni
5f26023d88
Merge remote-tracking branch 'origin/master' into tor.2
2019-02-26 14:46:15 -05:00
Shivaram Lingamneni
b0f89062fa
add support for tor ( #369 )
2019-02-25 22:09:09 -05:00
Shivaram Lingamneni
c6b9fe0218
fix #384
2019-02-19 03:12:47 -05:00
Shivaram Lingamneni
370255bec1
review fixes
2019-02-06 15:47:20 -05:00
Shivaram Lingamneni
eff2571096
limit the number of channels a client can join
2019-02-06 04:55:05 -05:00
Shivaram Lingamneni
ff7bbc4a9c
track channel registrations per account
...
* limit the total number of registrations per account
* when an account is unregistered, unregister all its channels
2019-02-06 04:34:45 -05:00
Daniel Oaks
71a33890b8
Merge pull request #344 from slingamn/history.4
...
add CHATHISTORY and HISTORY implementations
2019-02-05 22:16:45 +10:00
Shivaram Lingamneni
1c23af8767
add sasl-only config option
2019-02-05 00:51:58 -05:00
Shivaram Lingamneni
51fcedc5a1
review fix
2019-02-04 12:16:28 -05:00
Shivaram Lingamneni
f6b3008f8f
add CHATHISTORY and HISTORY implementations
2019-02-04 05:33:36 -05:00
Shivaram Lingamneni
057d00b2c8
Merge pull request #341 from oragono/restrict-usernames
...
Restrict idents as other servers do
2019-02-03 15:24:08 -05:00
Daniel Oaks
151002e232
Up identlen default to 20
2019-02-04 05:01:46 +10:00
Daniel Oaks
7eef390756
Handle translations a little better
2019-02-04 03:54:10 +10:00
Daniel Oaks
46f8ef9ed3
Be less strict with our language file loading, and handle multiple credits better
2019-02-03 20:21:07 +10:00
Daniel Oaks
cfbb4361dc
Restrict ident length similar to other servers
2019-02-03 19:24:59 +10:00
Daniel Oaks
63fde2d62a
Re-enable MaxLine
2019-01-12 22:17:51 +10:00
Shivaram Lingamneni
2ee89b15b3
per-user settings for nickname enforcement
2019-01-02 10:15:59 -05:00
Shivaram Lingamneni
f94f737b31
add support for login throttling
2019-01-02 10:15:59 -05:00
Shivaram Lingamneni
2c7c8fbaf9
history replay enhancements
2018-12-28 13:45:55 -05:00
Shivaram Lingamneni
a0bf548fc5
draft/resume-0.2 implementation, message history support
2018-11-26 05:23:27 -05:00
Shivaram Lingamneni
c3d197f4ff
make unix domain socket permissions configurable
2018-08-28 19:28:49 -04:00
Shivaram Lingamneni
cbc2b07d35
Merge remote-tracking branch 'origin/master' into passhashing.2
2018-08-15 13:02:05 -04:00
Shivaram Lingamneni
a2c2419084
remove stackimpact
2018-08-14 23:26:43 -04:00
Shivaram Lingamneni
6eda236eab
remove allow-multiple-per-connection
2018-08-14 22:50:20 -04:00
Shivaram Lingamneni
3c12fb6254
fix #283 (remove unnecessary log.Fatal)
...
The server should never crash during rehash, even if the config is invalid.
2018-08-06 10:08:58 -04:00
Shivaram Lingamneni
dfb0a57040
refactor the password hashing / password autoupgrade system
2018-08-06 02:26:21 -04:00
Shivaram Lingamneni
7154f14781
move handling of RecoverFromErrors into LoadConfig
2018-07-16 04:08:24 -04:00
Shivaram Lingamneni
1383190249
refactor rehash to rely more on server.config
2018-07-16 03:46:40 -04:00
Shivaram Lingamneni
74fa58dda0
Merge remote-tracking branch 'origin/master' into vhosts.4
2018-04-23 21:46:12 -04:00
Shivaram Lingamneni
cc9941cb07
review fixes, bug fixes
2018-04-23 02:38:35 -04:00
Shivaram Lingamneni
fad2475c3f
modes refactor, #255
2018-04-22 19:36:15 -04:00
Shivaram Lingamneni
3db71415c9
review fixes
2018-04-20 03:59:01 -04:00
Shivaram Lingamneni
5e62cc4ebc
initial vhosts implementation, #183
2018-04-19 03:00:56 -04:00
Shivaram Lingamneni
69fd3ac324
implement database auto-upgrades ( #243 )
2018-04-16 16:35:01 -04:00
Shivaram Lingamneni
7cfa75a59e
Merge pull request #218 from slingamn/socketwriter.1
...
refactor irc.Socket
2018-03-28 13:26:03 -04:00
Shivaram Lingamneni
36018174b0
default fakelag to off, add explicit cooldown config
2018-03-28 13:18:08 -04:00
Shivaram Lingamneni
1bf5e2a7c8
implement fakelag ( #189 )
2018-03-22 11:04:21 -04:00
Shivaram Lingamneni
d1f5c59eef
fix #190
2018-03-17 23:26:07 -04:00
Shivaram Lingamneni
b0f262bc0c
Merge pull request #206 from slingamn/ghost.2
...
nickserv: implement GHOST, GROUP, DROP, and INFO
2018-03-14 09:42:20 -04:00
Shivaram Lingamneni
211ed6af99
add an option to expose a pprof http endpoint
2018-03-13 16:55:30 -04:00
Shivaram Lingamneni
a022befffe
nickserv: implement GHOST, GROUP, DROP, and INFO
2018-03-02 17:05:47 -05:00
Shivaram Lingamneni
be86684e96
implement #199
2018-02-26 22:48:52 -05:00
Shivaram Lingamneni
988cb22692
changes to nick reservation
...
* Clients are now renamed, not disconnected, on reservation timeout
* Nick reservation config is now its own subsection
2018-02-18 04:46:14 -05:00
Shivaram Lingamneni
ad73d68807
refactor account registration, add nick enforcement
2018-02-11 05:30:40 -05:00
Daniel Oaks
2419f69879
Move all errors into errors.go
2018-02-03 22:03:36 +10:00
Daniel Oaks
afd6ca610c
Split language into a subpackage
2018-02-03 19:46:14 +10:00
Daniel Oaks
cabb3b219d
Fix some config loading issues
2018-01-28 10:52:07 +10:00
Daniel Oaks
1a5ff05493
Update translation framework
2018-01-23 16:50:19 +10:00
Daniel Oaks
ddec79f8d0
Update translation framework a touch more
2018-01-23 15:09:47 +10:00
Daniel Oaks
75dcff7183
Update translation framework, add badge to readme
2018-01-23 15:06:55 +10:00
Daniel Oaks
b2afd55285
Don't load example translation file, make example actually list all translatable strings
2018-01-22 22:16:07 +10:00
Daniel Oaks
e99f22488f
Make LANGUAGE support work
2018-01-22 17:30:31 +10:00
Daniel Oaks
ba77a95c81
Very initial beginning of languages implementation
2018-01-21 16:11:16 +10:00
Shivaram Lingamneni
7b58bf76ef
make error recovery configurable
2017-10-26 04:19:01 -04:00
Daniel Oaks
b0649cb5d3
WEBIRC: Allow protecting with fingerprint and parse tls
flag
2017-10-16 08:47:49 +10:00
Daniel Oaks
e1868f8a47
WEBIRC: Export fields so the config loads properly
2017-10-15 18:15:18 +10:00
Daniel Oaks
34987ba53a
Allow WEBIRC from specified hosts
2017-10-15 16:18:14 +10:00
Shivaram Lingamneni
d66470f1c4
review fix: rename various packages and objects
2017-10-09 17:38:06 -04:00
Shivaram Lingamneni
ac9ac5ef19
create separate irc/connection_limiting package
2017-10-09 13:24:12 -04:00
Daniel Oaks
695faefd93
Allow formatting codes in the MOTD
2017-10-08 20:17:49 +10:00
Daniel Oaks
68b1dc9e72
Split passwd into its' own subpackage
2017-10-06 00:03:53 +10:00
Daniel Oaks
207c1074df
Split utils out to a separate subpackage
2017-10-05 23:47:43 +10:00
Shivaram Lingamneni
aff1752d67
refactor logging to implement #142
2017-10-05 21:05:57 +10:00
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.
2017-10-05 17:14:16 +10:00
Shivaram Lingamneni
3b0f1ff1cc
delete websocket support as per discussion on #139
2017-09-28 02:53:08 -04:00
Shivaram Lingamneni
e8b1870067
refactor the rehash implementation
2017-09-28 02:13:24 -04:00
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.
2017-09-25 10:52:01 +10:00
Shivaram Lingamneni
0f0f2d1314
refactor listener update/destroy code
...
Don't close and reopen listeners
2017-09-11 18:40:15 -04:00
Daniel Oaks
c48d869f4d
Allow multiple account registrations for testing
2017-09-11 09:16:13 +10:00
Shivaram Lingamneni
333afe1062
make default channel modes configurable
2017-09-06 17:37:29 -04:00