Tracks channel membership (join/part/kick), the current key, and per-nick last-seen in the network view. Entry messages greet joiners; enforce re-applies the lock, access modes and auto-kicks to everyone present; getkey reports the key; seen reports last activity; clone copies a channel's settings; aop/sop/vop are tiered shortcuts over the access list. |
||
|---|---|---|
| .. | ||
| chanserv | ||
| nickserv | ||
| protocol | ||
| README.md | ||
modules/
The pluggable parts of fedserv: one directory per protocol and per pseudoclient.
The core (engine, event log, gossip, link loop) stays in ../src/.
modules/
protocol/ ircd link protocols (inspircd.rs)
nickserv/ NickServ pseudoclient
chanserv/ ChanServ pseudoclient
src/main.rs pulls each in with #[path = "../modules/..."], so crate paths
stay flat (crate::proto, crate::nickserv, crate::chanserv).
Naming
A service directory holds its pseudoclient file plus, as commands are split out,
one file per command: register.rs, mode.rs, etc.