Commit Graph

134 Commits

Author SHA1 Message Date
tali 00eae82eb3 add LIST command 2024-02-02 17:35:46 -05:00
tali a34651b283 fix send_to_chan: non mebers cant send to moderated channels 2024-02-02 17:10:46 -05:00
tali 54291669a5 remove no longer relevant TODO comment 2024-02-02 13:24:56 -05:00
tali 50d27b7cd9 remove redundant setsocketopt 2024-02-02 12:24:11 -05:00
tali cac7a091fe yeet the mutex 2024-02-02 11:50:34 -05:00
tali 59511905c9 slightly modify is_trailing so we don't use String.starts_with 2024-02-02 11:46:58 -05:00
tali 6e4b1af984 remove Set.of_string so we dont use String.fold_left 2024-02-02 11:46:58 -05:00
tali aed3089995 send QUIT to all active connections 2024-02-01 19:04:54 -05:00
tali 04478ffa0e add Wheel.iter for arbitrary order iteration 2024-02-01 19:04:54 -05:00
tali 69f182d0c2 add Dllist.iter_l, reset 2024-02-01 19:04:54 -05:00
tali e160156b78 quit a little more gracefully when interrupted (SIGINT, SIGTERM) 2024-02-01 18:47:16 -05:00
tali e355bac41c use some sneaky codegen to get the 'version' variable 2024-02-01 14:34:43 -05:00
tali e2967fabd9 implement sd-notify protocol 2024-02-01 14:08:25 -05:00
tali 6790c22c4a load MOTD from file 2024-02-01 13:32:01 -05:00
tali 4cc0e8a6e1 fix logging issues
- clear dgram buffer before sending to journald
- only change pretty alignment to be bigger
2024-02-01 13:27:19 -05:00
tali 787dbe9d57 make NOTICE capable of sending to multiple targets 2024-01-31 19:04:22 -05:00
tali 0470cb85d0 add Connection.mli 2024-01-31 18:43:59 -05:00
tali b113247f48 promote new channel / recycle channel msgs to INFO 2024-01-31 18:43:15 -05:00
tali e333bc121b add native journald logging 2024-01-31 18:37:29 -05:00
tali 36d49a2f5d split logging facilities into separate files 2024-01-31 18:14:09 -05:00
tali 3033fc87b2 remove nickname from QUIT message 2024-01-31 17:29:38 -05:00
tali 8acfc89f0d add NOTICE command 2024-01-31 17:28:32 -05:00
tali 41bf46b8dc add cringe USERHOST command 2024-01-31 17:28:06 -05:00
tali 7d204b98b6 add LINKS command 2024-01-31 17:15:15 -05:00
tali a4e98a10ae add LUSERS command 2024-01-31 17:14:32 -05:00
tali 051f1659a3 add TIME command 2024-01-31 17:01:55 -05:00
tali 34bc83e12b record and display topic who + time 2024-01-31 16:54:22 -05:00
tali 6fdd47cd12 use ptime for displaying channel/server creation time 2024-01-31 16:47:42 -05:00
tali 45e9fac30a use ptime library to get rfc3339 timestamps w/ timezone 2024-01-31 16:29:24 -05:00
tali 484941c3ce vendored lwt-dllist, moved data structures to separate library 2024-01-31 16:02:40 -05:00
tali 47185c83e1 remove tryagain, fix USERSDONTMATCH error message 2024-01-31 15:17:01 -05:00
tali 4a249fa941 add INFO, HELP, plus a bunch of invalid "admin only" commands 2024-01-31 15:13:13 -05:00
tali 7534b2c4e7 add ADMIN command 2024-01-31 15:07:53 -05:00
tali b0e1b10868 make pretty logging configurable 2024-01-31 12:40:03 -05:00
tali 0711561c0d refactor ansi colors in pretty logger 2024-01-31 12:28:47 -05:00
tali c3ea3aea6d implement WHOWAS using Cache to store history 2024-01-31 11:55:23 -05:00
tali 41b7fde963 fix handling non-integer arguments to +l 2024-01-31 11:50:17 -05:00
tali 5c43d23dd5 attempt to fix handle_client error and cleanup 2024-01-31 11:48:52 -05:00
tali 4e8381ea35 add List.iter_up_to 2024-01-31 11:27:27 -05:00
tali fde89493b2 add rotating cache data structure 2024-01-31 11:26:38 -05:00
tali 5bc37c132b clean up some annots 2024-01-31 10:42:22 -05:00
tali bfa22c6dbd add WHOIS command 2024-01-31 10:39:48 -05:00
tali 65b3dc6672 add WHO command 2024-01-31 01:11:07 -05:00
tali 2e15ae3aac hmmb 2024-01-31 01:07:56 -05:00
tali eecd915d27 add command todolist 2024-01-31 00:42:30 -05:00
tali cdbb445319 away reply cleanup 2024-01-31 00:38:03 -05:00
tali b5bec6c601 implement periodic server->client pings, timeouts 2024-01-30 22:35:18 -05:00
tali 277af4202f create wheel data structure for implementing pings 2024-01-30 22:24:24 -05:00
tali 8348f2dc1f respond to client PING messages 2024-01-30 21:38:31 -05:00
tali 7de285524a add AWAY command 2024-01-30 21:30:54 -05:00