3
0
mirror of https://github.com/ergochat/ergo.git synced 2024-11-29 23:49:25 +01:00
Commit Graph

1369 Commits

Author SHA1 Message Date
Shivaram Lingamneni
d6494957a4 forbid logging in twice via nickserv 2019-01-05 20:59:42 -05:00
Shivaram Lingamneni
3db6c9472b
Merge pull request #325 from slingamn/services.1
services refactor
2019-01-05 18:30:26 -05:00
Shivaram Lingamneni
598d9a025b review fix: add maxParams for service commands 2019-01-04 11:45:59 -05:00
Shivaram Lingamneni
4caa362f18 fix histserv nick reservation 2019-01-04 10:32:08 -05:00
Shivaram Lingamneni
a52d167278 additional defensive check in EnforcementStatus 2019-01-03 23:44:01 -05:00
Shivaram Lingamneni
efc0ce3b81 fix an edge case in configurable nickname reservation 2019-01-03 23:05:47 -05:00
Shivaram Lingamneni
b80df0885f refactor services code 2019-01-03 22:34:11 -05:00
Daniel Oaks
ea970f94a0
Merge pull request #323 from slingamn/initdb.1
fix #322
2019-01-03 09:18:19 +10:00
Daniel Oaks
0e22f8d6a5
Merge pull request #324 from slingamn/misc_again.5
some more changes
2019-01-03 09:16:44 +10:00
Shivaram Lingamneni
501bb1e5c5 replay JOIN/PART/QUIT/KICK as PRIVMSG from HistServ
see https://github.com/ircv3/ircv3-specifications/issues/293
2019-01-02 17:58:04 -05:00
Shivaram Lingamneni
f20abf414f don't log an error logline for an incorrect SASL password 2019-01-02 10:29:42 -05:00
Shivaram Lingamneni
2ee89b15b3 per-user settings for nickname enforcement 2019-01-02 10:15:59 -05:00
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
Shivaram Lingamneni
9a2117f75d preregNick doesn't need synchronization
(since it's only accessed from the client's own goroutine)
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
3cd3601a30 refactor join/part 2019-01-02 09:55:45 -05:00
Shivaram Lingamneni
960d51159c add ClientDetails struct for getting a snapshot of client state 2019-01-02 09:55:45 -05:00
Shivaram Lingamneni
c2b2559ab4 avoid some uses of Sprintf for loglines 2019-01-02 09:55:45 -05:00
Shivaram Lingamneni
ec4f1c189a pointless optimizations to the logger 2019-01-01 16:43:35 -05:00
Shivaram Lingamneni
6402a69fb9 use the rehash log category consistently 2018-12-31 01:44:31 -05:00
Shivaram Lingamneni
9e87d6dd10 remove explicit initdb instructions from the docs 2018-12-31 01:44:31 -05:00
Shivaram Lingamneni
d6d3a10817 implement #322
Automatically create the datastore on `oragono run` if it doesn't exist.
See also #302.
2018-12-31 01:44:31 -05:00
Daniel Oaks
847922e53d
Merge pull request #321 from slingamn/misc.2
eight small changes
2018-12-31 13:12:34 +10:00
Shivaram Lingamneni
7c36ec3f9d allow auto-ops (halfop and higher) to bypass channel join restrictions 2018-12-30 18:28:56 -05:00
Shivaram Lingamneni
a4b3fb0e83 changes to client idle time counting
1. Remove leaveClientIdle (unused)
2. s/leaveClientActive/leaveClientIdle/
3. make ISON a leaveClientIdle command (some clients send it periodically
   if a /msg window is left open)
2018-12-30 18:17:24 -05:00
Shivaram Lingamneni
ba2aacaf5b fix #297
add validation for isupport tokens
2018-12-30 18:17:24 -05:00
Shivaram Lingamneni
b34bab16a7 ensure that identical PRIVMSG share a time tag 2018-12-30 18:17:24 -05:00
Shivaram Lingamneni
d5eade5494 force trailing zeroes in timestamp wire format
According to jwheare, ISO 8601 doesn't specify the behavior one way
or the other, and the server-time spec is also ambiguous, but this
is safest.
2018-12-30 18:17:24 -05:00
Shivaram Lingamneni
ac480d782f add millisecond resolution to loglines 2018-12-30 18:17:24 -05:00
Shivaram Lingamneni
f35a1c7212 use GenerateSecretToken for msgids 2018-12-30 18:17:24 -05:00
Shivaram Lingamneni
c95ed46949 add whois support for services 2018-12-30 18:17:24 -05:00
Daniel Oaks
cd339281e4
Merge pull request #320 from slingamn/replay.1
history replay enhancements
2018-12-29 10:15:02 +10:00
Shivaram Lingamneni
2c7c8fbaf9 history replay enhancements 2018-12-28 13:45:55 -05:00
Shivaram Lingamneni
6beeceb52c
Merge pull request #316 from slingamn/hsfix
fix hostserv help string
2018-12-28 11:15:25 -05:00
Shivaram Lingamneni
525b2c52b1 fix hostserv help string 2018-12-28 11:07:08 -05:00
Daniel Oaks
f3d138d909
Merge pull request #314 from slingamn/invite.1
fix #313 and a related issue
2018-12-24 08:52:03 +10:00
Shivaram Lingamneni
f58c873f84 fix RPL_INVITING response to match modern ircdocs 2018-12-23 13:49:03 -05:00
Shivaram Lingamneni
b6b4d365bc fix #313 2018-12-23 13:30:25 -05:00
Daniel Oaks
f912f64f21
Merge pull request #304 from slingamn/history.1
draft/resume-0.2 implementation, message history support
2018-12-15 04:37:16 +10:00
Daniel Oaks
6cedb80374
Merge pull request #311 from iNecas/fix-docopt-deprecation
Replace docopt.Parse with docopt.ParseArgs
2018-12-08 08:55:00 +10:00
Ivan Nečas
9a1ede86d3 Replace docopt.Parse with docopt.ParseArgs
docopt.Parse has been deprecated in
943c2addfe
2018-12-07 22:48:54 +01:00
Daniel Oaks
e1aa3e0f4a
Merge pull request #305 from slingamn/passwd.1
implement NS PASSWD for password changes
2018-12-07 10:43:10 +10:00
Daniel Oaks
a0c1fa1843
Merge pull request #308 from slingamn/bidirule
fix #306
2018-12-07 10:40:00 +10:00
Shivaram Lingamneni
92eca4d795 add more test cases 2018-12-06 06:46:11 -05:00
Shivaram Lingamneni
40e63dbbe8 fix #306
Fix spurious bidi rule violations in casefolding channel names
by stripping the # before starting the casefolding.
2018-12-05 22:39:01 -05:00
Shivaram Lingamneni
48f9b5e4fa implement NS PASSWD for password changes 2018-11-28 18:25:15 -05:00
Shivaram Lingamneni
c8cf0befc6 fixes to irc/socket.go
* fix a race condition: a call to `Write` does not spawn a writer goroutine
  if the trylock is held, so `BlockingWrite` must check for fresh data after
  releasing the trylock
* streamline some close/finalize logic
2018-11-28 00:24:44 -05:00
Shivaram Lingamneni
a0bf548fc5 draft/resume-0.2 implementation, message history support 2018-11-26 05:23:27 -05:00
Shivaram Lingamneni
70364f5f67
Merge pull request #303 from enckse/master
prevents default create/open of buntdb, requires user to call initdb
2018-11-19 14:23:03 -05:00
Sean Enck
c20afab7c2
prevents default create/open of buntdb, requires user to call initdb 2018-11-19 14:10:12 -05:00