Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Declare globals as extern in headers, and define in source file | Michael Forney | 2019-11-21 |
| | | | | | | | | | | | | | | | Otherwise, each source file that includes the header gets its own definition, and according to the C standard (C99 6.9p5): > If an identifier declared with external linkage is used in an > expression (other than as part of the operand of a sizeof operator > whose result is an integer constant), somewhere in the entire > program there shall be exactly one external definition for the > identifier Most compilers use the .bss section for zero data, but if it uses .data instead, or if -Wl,--warn-common is used, this will cause a linking error. | ||
* | Request NAMES on sync by default | June McEnroe | 2019-11-15 |
| | | | | This inverts the meaning of -N! | ||
* | Rename listen to local | June McEnroe | 2019-11-10 |
| | |||
* | Check that password is hashed | June McEnroe | 2019-11-08 |
| | |||
* | Only change AWAY status for registered clients | June McEnroe | 2019-11-08 |
| | | | | | | Turns out I did eventually fix this, because I may want to implement "passive clients" for logging or notification stuff, which wouldn't affect AWAY status either. | ||
* | Include path in readlinkat error | June McEnroe | 2019-11-07 |
| | |||
* | Call clientConsume before clientRecv | June McEnroe | 2019-11-07 |
| | | | | | This might reduce the frequency of a client getting its own message back because it was behind in the ring when it sent it. | ||
* | Declare more missing functions and deal with lack of SO_NOSIGPIPE | June McEnroe | 2019-11-06 |
| | |||
* | Define one CERTBOT_PATH rather than two format strings | June McEnroe | 2019-11-06 |
| | |||
* | Change license to GPLv3 | June McEnroe | 2019-11-06 |
| | | | | | | | | | | | | | | > Notwithstanding any other provision of this License, if you modify the > Program, your modified version must prominently offer all users > interacting with it remotely through a computer network (if your version > supports such interaction) an opportunity to receive the Corresponding > Source of your version by providing access to the Corresponding Source > from a network server at no charge, through some standard or customary > means of facilitating copying of software. This potentially means that every freenode user, for example, is interacting with this software, and offering the corresponding source to each of them is an unreasonable burden. | ||
* | Add flag to generate a client certificate | June McEnroe | 2019-11-06 |
| | | | | | This is essentially the command freenode tells you to run: <https://freenode.net/kb/answer/certfp>. | ||
* | Use explicit_bzero from LibreSSL | June McEnroe | 2019-11-06 |
| | |||
* | Clean up bounce.c | June McEnroe | 2019-11-05 |
| | |||
* | Use "priv" instead of "key" in options | June McEnroe | 2019-11-05 |
| | | | | Let all words be four letter words. | ||
* | Use arc4random_buf | June McEnroe | 2019-11-05 |
| | |||
* | Implement SASL EXTERNAL | June McEnroe | 2019-11-05 |
| | |||
* | Add options for TLS client certificate | June McEnroe | 2019-11-04 |
| | |||
* | Hash client passwords with crypt | June McEnroe | 2019-11-04 |
| | |||
* | Rename bind-unix to bind-path | June McEnroe | 2019-11-03 |
| | |||
* | Append bindHost to bindPath if it is a directory | June McEnroe | 2019-11-03 |
| | |||
* | Fix trying to cap_rights_limit a NULL saveFile | June McEnroe | 2019-11-02 |
| | |||
* | Implement UNIX-domain binding | June McEnroe | 2019-11-02 |
| | |||
* | Limit saveFile to CAP_WRITE | June McEnroe | 2019-11-01 |
| | |||
* | Implement capsicum workaround for certbot | June McEnroe | 2019-11-01 |
| | |||
* | Reload certificates using openat | June McEnroe | 2019-11-01 |
| | | | | | This is more versatile since files are more likely to be replaced than overwritten. | ||
* | Re-read cert and key from the same FILEs | June McEnroe | 2019-11-01 |
| | |||
* | Use capsicum | June McEnroe | 2019-11-01 |
| | |||
* | Use explicit_bzero to clear passwords | June McEnroe | 2019-10-31 |
| | | | | | 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. | ||
* | Send clients their own QUIT on shutdown | June McEnroe | 2019-10-31 |
| | |||
* | 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 |
| | |||
* | Remove client count FIXME | June McEnroe | 2019-10-30 |
| | | | | This minor thing would take too much code convolution to do. | ||
* | Add option for ring size | June McEnroe | 2019-10-30 |
| | |||
* | Set away status upon connecting | June McEnroe | 2019-10-30 |
| | |||
* | Allocate ring buffer at runtime | June McEnroe | 2019-10-29 |
| | |||
* | Implement getopt_long-integrated configuration parsing | 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 |
| | |||
* | Add quit message option | June McEnroe | 2019-10-28 |
| | |||
* | Move entire login flow to state and reorganize it | June McEnroe | 2019-10-28 |
| | |||
* | Output ring info on SIGINFO | June McEnroe | 2019-10-27 |
| | |||
* | Reload certificate on SIGUSR1 | 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. | ||
* | Add undocumented flag to disable verification | June McEnroe | 2019-10-26 |
| | |||
* | Implement graceful shutdown | June McEnroe | 2019-10-26 |
| | |||
* | 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 |
| | |||
* | Allow reading sensitive information from files | June McEnroe | 2019-10-26 |
| | |||
* | Clean up event loop | June McEnroe | 2019-10-25 |
| |