summary refs log tree commit diff
path: root/config.h
AgeCommit message (Collapse)Author
11 daysChange way to deal with modes in channelsNakidai
I thought it'd be fine to store modes as an array. But using this is awful experience. Take a look at simple NAMES command: it just needs to check whether some user is oper or voice or not, and with that approach it will need to iterate over an array of users, and for each user iterate over an array of modes. Or it is possible to optimize it, saving all interesting modes to a local buffer and then iterating over it. But those are attempts to fix broken design So, instead of array of modes there'll be lots of fields regarding each mode or kind of mode From now on (struct Channel).peers is not a simple array of peers, but the one with metainformation. This is done by making an array of structures, so there are renames throughout the code Also, I didn't like that it was users and not peers and this is a nice opportunity to rename it: in first place this was done to avoid thing that compiler somehow could silently ignore type change, but this is also a stylistic change reflecting my view on naming
12 daysAdd OPER/SETOPERNakidai
SETOPER is a command for config, OPER is the one to authorize a user
12 daysAdd NAMESNakidai
So not it can show who's on the channel, yay. Though, no showing ops
13 daysAdd WHOIS and config parsingNakidai
Now users can query each other Plus, server info and creation date can be changed without recompiling using configuration file in IRC message format which is loaded on startup TODO: since readcfg uses IRC logic, handle() now should be able to deal with commands ending with simply \n
2026-02-01FixesNakidai
- Now code depends on config.h in Makefile - By default the smallest timeout is chosen for poll() - Somewhy there was sizeof(PEER_QUIT_MAX)...
2026-02-01Added copyright notice to the config.hNakidai
Well, example config values don't need licesing that much, but as every other file has that notice I think this one should have it as well
2026-02-01Enhance registration messagesNakidai
Now ircd responds with all replies up to 4 Plus memchr was wrong, yep
2026-02-01Refactor QUIT message sendingNakidai
After seeing same announcing code second time I decided it should be done before an actual quit in loop.c. Plus, channel exiting is now done in user_remove().
2026-02-01Add ping systemNakidai
Now users will be kicked for inactivity o.o
2026-02-01Remove magic numbers from ircd.hNakidai
Also make a new file config.h for storing that stuff