Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Shrink client buffer size | June McEnroe | 2019-10-31 |
| | | | | | | | Clients are generally not going to send huge amounts at a time, and IRC messages are limited to 512 bytes. If in the future we supported message tags from clients, which have a size limit of 8191 bytes, this would unfortunately have to be set much higher. | ||
* | Iterator over pollfds in reverse | June McEnroe | 2019-10-31 |
| | | | | | | | | | | | This has two advantages: 1. When removing a client, we don't need to break the loop, since the swap-remove will replace the current pollfd with one we've already handled and we can safely move on to the next (previous) one. 2. If a new client connects for the same consumer (for example if the previous one is going to time out), it will start consuming messages for that consumer, rather than them being sent to the old client. | ||
* | Clear passwords from memory with memset_s | June McEnroe | 2019-10-31 |
| | |||
* | Clean up cert path documentation | June McEnroe | 2019-10-30 |
| | |||
* | Remove client count FIXME | June McEnroe | 2019-10-30 |
| | | | | This minor thing would take too much code convolution to do. | ||
* | Preserve consumers ptr in realloc failure | June McEnroe | 2019-10-30 |
| | |||
* | Add option for ring size | June McEnroe | 2019-10-30 |
| | |||
* | Set away status upon connecting | June McEnroe | 2019-10-30 |
| | |||
* | Add make target for localhost.crt | June McEnroe | 2019-10-30 |
| | | | | Adapted from <https://letsencrypt.org/docs/certificates-for-localhost/>. | ||
* | Warn when consumers drop messages | June McEnroe | 2019-10-30 |
| | |||
* | Allocate ring buffer at runtime | June McEnroe | 2019-10-29 |
| | |||
* | Do not duplicate origin on nick change | June McEnroe | 2019-10-29 |
| | | | | Oops! | ||
* | Update self origin on nick change | June McEnroe | 2019-10-29 |
| | |||
* | Clarify some documentation | June McEnroe | 2019-10-29 |
| | |||
* | Implement getopt_long-integrated configuration parsing | June McEnroe | 2019-10-29 |
| | |||
* | Relay optional 5th RPL_MYINFO parameter | June McEnroe | 2019-10-29 |
| | |||
* | Use ETCDIR variable for install target | June McEnroe | 2019-10-29 |
| | |||
* | Sort standards in manual page | June McEnroe | 2019-10-29 |
| | |||
* | Document lack of channel distinction caveat | June McEnroe | 2019-10-29 |
| | |||
* | Lock save file | June McEnroe | 2019-10-28 |
| | |||
* | Add option to save and load ring contents across restarts | June McEnroe | 2019-10-28 |
| | |||
* | Use "producer/consumer" consistently in ring code | June McEnroe | 2019-10-28 |
| | |||
* | Add quit message option | June McEnroe | 2019-10-28 |
| | |||
* | Specify when command is allowed in Handlers list | June McEnroe | 2019-10-28 |
| | |||
* | Disallow PRIVMSG/NOTICE before registration | June McEnroe | 2019-10-28 |
| | |||
* | Move entire login flow to state and reorganize it | June McEnroe | 2019-10-28 |
| | |||
* | Wait for SASL success before sending CAP END | June McEnroe | 2019-10-27 |
| | | | | | | | Also refuse to continue logging in if SASL authentication fails. I should really just move all of log in and authentication from server.c to state.c... | ||
* | Only increment consumer after successful send | June McEnroe | 2019-10-27 |
| | |||
* | Set SO_REUSEADDR on binds | June McEnroe | 2019-10-27 |
| | |||
* | Output ring info on SIGINFO | June McEnroe | 2019-10-27 |
| | |||
* | Improve client/server error messages | June McEnroe | 2019-10-27 |
| | |||
* | Add reload cmd to rc script | June McEnroe | 2019-10-27 |
| | | | | Using daemon(8) makes this way more awkward than it should be. | ||
* | Reload certificate on SIGUSR1 | June McEnroe | 2019-10-27 |
| | |||
* | Drop clients on zero-length reads | June McEnroe | 2019-10-27 |
| | |||
* | Explicitly tls_handshake new clients | June McEnroe | 2019-10-27 |
| | | | | | This prevents a client connecting, sending nothing, and getting blocked in tls_read immediately. | ||
* | Document rationale | June McEnroe | 2019-10-26 |
| | |||
* | Handle nick collision | June McEnroe | 2019-10-26 |
| | |||
* | Wait for AUTHENTICATE + from server | June McEnroe | 2019-10-26 |
| | |||
* | Respond to PING with same parameter | June McEnroe | 2019-10-26 |
| | |||
* | Add undocumented flag to disable verification | June McEnroe | 2019-10-26 |
| | |||
* | Do not require RPL_ISUPPORT for stateReady | June McEnroe | 2019-10-26 |
| | |||
* | Implement graceful shutdown | June McEnroe | 2019-10-26 |
| | |||
* | Require PASS before USER | June McEnroe | 2019-10-26 |
| | | | | Prevent creating a ring consumer without authentication. | ||
* | Track channel topics | June McEnroe | 2019-10-26 |
| | |||
* | Set AWAY when no clients are connected | June McEnroe | 2019-10-26 |
| | |||
* | Add flags to request TOPIC and NAMES on client connect | June McEnroe | 2019-10-26 |
| | |||
* | Oops | June McEnroe | 2019-10-26 |
| | |||
* | Disconnect client on unknown command | June McEnroe | 2019-10-26 |
| | | | | | During registration, no other commands should be sent. Afterwards, only intercepted commands will get parsed. | ||
* | Allow reading sensitive information from files | June McEnroe | 2019-10-26 |
| | |||
* | Add rc script | June McEnroe | 2019-10-26 |
| |