about summary refs log tree commit diff
path: root/state.c (unfollow)
Commit message (Collapse)Author
2019-11-02Note calico in pounce CAVEATSJune McEnroe
2019-11-02Add calico rc scriptJune McEnroe
2019-11-02Apply capsicum to calicoJune McEnroe
2019-11-02Fix trying to cap_rights_limit a NULL saveFileJune McEnroe
2019-11-02Implement UNIX-domain bindingJune McEnroe
2019-11-02Don't try to sendfd if connect failedJune McEnroe
2019-11-02Document pounce -U flagJune McEnroe
Not yet implemented.
2019-11-02Add SNI socket dispatcherJune McEnroe
pounce can't accept connections from it yet though!
2019-11-01Limit saveFile to CAP_WRITEJune McEnroe
2019-11-01Implement capsicum workaround for certbotJune McEnroe
2019-11-01Reload certificates using openatJune McEnroe
This is more versatile since files are more likely to be replaced than overwritten.
2019-11-01Re-read cert and key from the same FILEsJune McEnroe
2019-11-01Use capsicumJune McEnroe
2019-10-31Use explicit_bzero to clear passwordsJune McEnroe
GNU doesn't implement memset_s, but both FreeBSD and GNU implement explicit_bzero. Darwin doesn't, so #define it in terms of memset_s.
2019-10-31Send clients their own QUIT on shutdownJune McEnroe
2019-10-31Shrink client buffer sizeJune McEnroe
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.
2019-10-31Iterator over pollfds in reverseJune McEnroe
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.
2019-10-31Clear passwords from memory with memset_sJune McEnroe
2019-10-30Clean up cert path documentationJune McEnroe
2019-10-30Remove client count FIXMEJune McEnroe
This minor thing would take too much code convolution to do.
2019-10-30Preserve consumers ptr in realloc failureJune McEnroe
2019-10-30Add option for ring sizeJune McEnroe
2019-10-30Set away status upon connectingJune McEnroe
2019-10-30Add make target for localhost.crtJune McEnroe
Adapted from <https://letsencrypt.org/docs/certificates-for-localhost/>.
2019-10-30Warn when consumers drop messagesJune McEnroe
2019-10-29Allocate ring buffer at runtimeJune McEnroe
2019-10-29Do not duplicate origin on nick changeJune McEnroe
Oops!
2019-10-29Update self origin on nick changeJune McEnroe
2019-10-29Clarify some documentationJune McEnroe
2019-10-29Implement getopt_long-integrated configuration parsingJune McEnroe
2019-10-29Relay optional 5th RPL_MYINFO parameterJune McEnroe
2019-10-29Use ETCDIR variable for install targetJune McEnroe
2019-10-29Sort standards in manual pageJune McEnroe
2019-10-29Document lack of channel distinction caveatJune McEnroe
2019-10-28Lock save fileJune McEnroe
2019-10-28Add option to save and load ring contents across restartsJune McEnroe
2019-10-28Use "producer/consumer" consistently in ring codeJune McEnroe
2019-10-28Add quit message optionJune McEnroe
2019-10-28Specify when command is allowed in Handlers listJune McEnroe
2019-10-28Disallow PRIVMSG/NOTICE before registrationJune McEnroe
2019-10-28Move entire login flow to state and reorganize itJune McEnroe
2019-10-27Wait for SASL success before sending CAP ENDJune McEnroe
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...
2019-10-27Only increment consumer after successful sendJune McEnroe
2019-10-27Set SO_REUSEADDR on bindsJune McEnroe
2019-10-27Output ring info on SIGINFOJune McEnroe
2019-10-27Improve client/server error messagesJune McEnroe
2019-10-27Add reload cmd to rc scriptJune McEnroe
Using daemon(8) makes this way more awkward than it should be.
2019-10-27Reload certificate on SIGUSR1June McEnroe
2019-10-27Drop clients on zero-length readsJune McEnroe
2019-10-27Explicitly tls_handshake new clientsJune McEnroe
This prevents a client connecting, sending nothing, and getting blocked in tls_read immediately.