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
Daniel Oaks
55503961cb
Release v0.12.0
2018-10-15 12:18:23 +10:00
Daniel Oaks
e365103fb5
Add missing key to changelog
2018-10-15 12:05:22 +10:00
Daniel Oaks
2b10b73bbc
Update changelog
2018-10-15 12:03:38 +10:00
Daniel Oaks
8e027fb58f
vendor: Updated submodules
2018-10-15 11:51:55 +10:00
Daniel Oaks
a7e88f51fe
Merge pull request #294 from slingamn/proxy_ipv6.1
...
fix PROXY protocol support for IPv6
2018-10-15 11:43:16 +10:00
Shivaram Lingamneni
8de6da14c0
Merge pull request #295 from vilmibm/patch-1
...
Correct NS REGISTER example
2018-09-05 23:46:10 -04:00
Nate Smith
aab44155a2
Correct NS REGISTER example
2018-09-05 11:01:47 -07:00
Shivaram Lingamneni
10d4f77638
fix PROXY protocol support for IPv6
...
1. Handle PROXY lines with IPv6 addresses starting with ::
(similar to WEBIRC in issue #211 )
2. Strip v6 mapping from v4 addresses when handling proxied IPs.
2018-09-03 00:38:32 -04:00
Shivaram Lingamneni
f0491c2254
Merge pull request #293 from slingamn/perms
...
configurable file mode for unix socket listeners
2018-08-29 14:51:25 -04:00
Shivaram Lingamneni
72599ba01f
review fix
2018-08-28 21:11:58 -04:00
Shivaram Lingamneni
0362269215
upgrade travis to golang 1.11
2018-08-28 19:28:49 -04:00
Shivaram Lingamneni
0e5842b33a
fix #211
2018-08-28 19:28:49 -04:00