From 7941b60725eca1b383b61e9806c59fec4e9afdd1 Mon Sep 17 00:00:00 2001 From: swee Date: Fri, 13 Dec 2024 23:10:32 -0800 Subject: [PATCH] Add todo.yml --- todo.yml | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 todo.yml diff --git a/todo.yml b/todo.yml new file mode 100644 index 0000000..52e52a3 --- /dev/null +++ b/todo.yml @@ -0,0 +1,67 @@ +# To-Do list +- [ ] Implement the base of an IRCd, using Libera.Chat as a reference + - [x] Add the (full) connection process + - [x] Add join/part, and it's requirements (WHO, etc) + - [x] Implement proper PRIVMSG + - [x] Broadcast QUIT + - [x] DNS lookup + - [x] Identity management + - [ ] WallOps + - [ ] Channel invite system + - [ ] Wildcard logic (for +b and +q) + - [x] Send PING and wait for PONG + - [x] Reply PONG if received PING + - [x] Change of nicknames + - [ ] Change of hostnames + - [ ] Away +- [ ] [Data file with SQLite](https://discuss.swee.codes/t/41/2) +- [ ] User Flags + - [ ] i (invisible) + - [ ] o (IRCOP) + - [ ] w (gets wallops) +- [ ] Channel Flags + - [ ] o \ (CHANOP) + - [ ] v \ (voice) + - [ ] m (moderated, only let voice or op talk) + - [ ] s (don't show in LIST) + - [ ] i (invite-only) + - [ ] t (topic lock) + - [ ] n (no outside msgs, people have to join first) + - [ ] l \ (user limit) + - [ ] b \ (ban a user) + - [ ] k \ (password lock) + - [ ] EXTRAS q \ (Quiet) +- [ ] Destructive features for CHANOPS + - [ ] `KICK` + - [ ] `MODE ` +- [ ] Destructive features for IRCOPS + - [ ] `KILL ` + - [ ] `MODE ` + - [ ] `RESTART` +- [ ] Extra commands + - [ ] `USERS` + - [x] `WHOIS` + - [ ] `WHOWAS` +- [ ] Implement services. + - [ ] Nickserv + - [ ] ChanServ + - [x] GitServ (Custom user for pull) + - [ ] Link `PRIVMSG *serv` to `*serv` +- [ ] Extra (not planned) features + - [ ] ident support +- [ ] Authentication + - [ ] Make the server able to change the client's host + - [ ] Store credentials in an SQLite3 file. + - [ ] Map NickServ IDENTIFY + - [ ] Map PASS + - [ ] Mock SASL PLAIN +- [ ] SSL/TLS + - [ ] Use a thread to accept connections on SSL port 6697 + - [ ] Automatically reload the certificate if defined in config. +- [ ] Add IRCv3 features. + - [x] List capabilities (`CAP LS 302`) + - [ ] `away-notify` + - [ ] `tls` (STARTTLS) + - Will research later. + +I am going to fully read [RFC 1459](https://datatracker.ietf.org/doc/html/rfc1459) soon and add each part to the TODO. \ No newline at end of file