Alex Jaspersen
b6264a43b6
Rename "realIP" to "ip" in WhoWas struct.
It could be the real IP or the proxied IP.
3 年之前
Alex Jaspersen
e5c2588eab
Show real IP in WHOWAS to opers with ban capability.
3 年之前
Shivaram Lingamneni
23c7218bf1
first pass at renaming Oragono to Ergo
3 年之前
Shivaram Lingamneni
ba21987d03
remove draft/resume-0.5
3 年之前
Shivaram Lingamneni
ab870c2ffe
fix #1576
List IRCv3 CAPs in `NS CLIENTS LIST` output
3 年之前
Shivaram Lingamneni
70b20750aa
fix #1531
AWAY status should be tracked per-session:
1. With auto-away enabled, away status is aggregated across sessions
(if any session is not away, the client is not away, else use
the away status that was set most recently)
2. With auto-away disabled, we get the legacy behavior where AWAY
applies directly to the client
3 年之前
Shivaram Lingamneni
4a48e52518
fix #1490
Track channel join times, use them to optionally enforce history access
restrictions
3 年之前
Shivaram Lingamneni
bb5276553d
initial UBAN implementation
3 年之前
Shivaram Lingamneni
6b7f0e15ac
fix always-on expiration checks
checkAlwaysOnExpirationNoMutex was respecting registered status, but
always-on clients were not considered registered at the time of the
initial check, so they were being created regardless of expiration.
3 年之前
Shivaram Lingamneni
d1f8317180
fix #1479
Give Tor clients who authenticate via SASL a unique cloak, so chanops
can ban *!*@tor-network.onion and still allow authenticated Tor users
3 年之前
Shivaram Lingamneni
48166b5b4b
Implement expiration for always-on clients
Fixes #810
3 年之前
Shivaram Lingamneni
fd71b79bb8
Enhancements to CS PURGE
1. Consolidate PURGE and UNPURGE into subcommands
2. Add PURGE LIST
3. PURGE ADD now requires a confirmation code
Fixes #1294
3 年之前
Shivaram Lingamneni
ba72d3acfc
implement a channel forwarding mode
Fixes #1260
3 年之前
Shivaram Lingamneni
51f279289d
fix #1345
Store the channel-user modes of always-on clients along with their
channel memberships, restore them on server startup. This will coexist
alongside /CS AMODE, which autoapplies modes to clients on join regardless
of their always-on status.
3 年之前
Shivaram Lingamneni
4f571c2cf3
implement NS RENAME
Fixes #1380
3 年之前
Shivaram Lingamneni
a6d793a2d5
pointless optimization
3 年之前
Shivaram Lingamneni
bcdf61bd7a
fix #1284
3 年之前
Alex Jaspersen
ca2132ff09
Add NickServ "CLIENTS LIST" and "CLIENTS LOGOUT".
CLIENTS LIST shows information about clients attached to a nick.
CLIENTS LOGOUT allows individual (or all) sessions to be logged out.
SESSIONS is now an alias for CLIENTS LIST.
Fixes #1072 .
3 年之前
Shivaram Lingamneni
06882a9b89
fix #1225
3 年之前
Hubert Hirtz
f6d5fe812f
Update draft/rename implementation
Link to the new draft PR:
<https://github.com/ircv3/ircv3-specifications/pull/420 >
Changes in the spec:
- Use standard replies instead of numerics:
<https://github.com/ircv3/ircv3-specifications/pull/420/files#diff-70e90beef48dc9cf5d784d1e179ea822R44 >
- Allow RENAME to a different case:
<https://github.com/ircv3/ircv3-specifications/pull/420/files#diff-70e90beef48dc9cf5d784d1e179ea822R42 >
This commit makes oragono send the PART-JOIN fallback even on case-only
changes. This is so that clients don't have to worry about oragono's
UTF8 casefolding. See the following comments for further info:
<https://github.com/ircv3/ircv3-specifications/pull/420#issuecomment-668770837 >
Misc fixes:
- Remove unused variable,
- Add missing calls to utils.SafeErrorParam,
- Don't fill replies with the user-provided "oldName", for the same
reason as sending the PART-JOIN fallback.
3 年之前
Shivaram Lingamneni
470756cd3e
fix an edge case with `/NS SASET user always-on true`
If force-nick-equals-account is disabled, then this could cause
a client with a non-reserved (or grouped) nick to become always-on.
(This can't happen with `/NS SET always-on true` because we check in
advance.)
4 年之前
Shivaram Lingamneni
027886046c
clean up always-on state machine
4 年之前
Shivaram Lingamneni
93530ae397
fix #1198
4 年之前
Shivaram Lingamneni
77184c1625
restore transition mechanism
4 年之前
Conrad Lukawski
6f8711da3b
Persist realname for always-on clients
4 年之前
Shivaram Lingamneni
a7ca6601c7
enhancements to moderation (#1134, #1135)
4 年之前
Shivaram Lingamneni
6ea2eb367d
fix #328 (implement DEFCON)
4 年之前
Shivaram Lingamneni
70f533ee07
fix #1155
4 年之前
Shivaram Lingamneni
9aa53aa3aa
update lastSeen on reattach
4 年之前
Shivaram Lingamneni
ca79da87b1
fix disabling of autoreplay-missed
4 年之前
Shivaram Lingamneni
17cd831319
fix #1144
4 年之前
Shivaram Lingamneni
df1be01f54
simplify lastSeen handling
4 年之前
Shivaram Lingamneni
218bea5a3e
fix #843
4 年之前
Shivaram Lingamneni
a0f4e90b7e
add auto-away
4 年之前
Shivaram Lingamneni
3f717436f8
fix #933
4 年之前
Shivaram Lingamneni
26fd3e69a8
fix #749
4 年之前
Shivaram Lingamneni
d5f68215e1
mark dirty when a client first becomes always-on
4 年之前
Shivaram Lingamneni
db39608bcb
change "last signoff" tracking to "last seen"
Explicit quit and ping timeout behave the same way,
but reattach after abandoning/losing the previous session
(without the break being detected server-side) is more aggressive
about replaying missed messages, at the cost of potential duplication.
4 年之前
Shivaram Lingamneni
904fa9653c
clear reg date and settings during logout
4 年之前
Shivaram Lingamneni
f5ca35ed72
rename 'bouncer' to 'multiclient'
4 年之前
Shivaram Lingamneni
4472683d58
persist lastSignoff in the database
4 年之前
Shivaram Lingamneni
ad32356e34
move authentication data from Client to Session
4 年之前
Shivaram Lingamneni
33dac4c0ba
initial persistent history implementation
4 年之前
Shivaram Lingamneni
3480f124cd
fix #688
4 年之前
Shivaram Lingamneni
40df122c73
remove unused getters
4 年之前
Shivaram Lingamneni
65834c0729
optimize Sessions() at the expense of AddSession()
5 年之前
Shivaram Lingamneni
b134a63dc2
simplify "client dead" logic in AddSession
now that we have client.destroyed again, we don't need to test the
"0 sessions && brb disabled" condition in both AddSession() and
destroy()
5 年之前
Shivaram Lingamneni
5ac7ea5b1c
fix data race on exitedSnomaskSent
5 年之前
Shivaram Lingamneni
4b88a60ba6
clean up some old getters
5 年之前
Shivaram Lingamneni
1de166bccb
eliminate client.Realname() getter
5 年之前