summary refs log tree commit diff
Commit message (Collapse)AuthorAge
* Specify when command is allowed in Handlers listJune McEnroe2019-10-28
|
* Disallow PRIVMSG/NOTICE before registrationJune McEnroe2019-10-28
|
* Move entire login flow to state and reorganize itJune McEnroe2019-10-28
|
* Wait for SASL success before sending CAP ENDJune McEnroe2019-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 sendJune McEnroe2019-10-27
|
* Set SO_REUSEADDR on bindsJune McEnroe2019-10-27
|
* Output ring info on SIGINFOJune McEnroe2019-10-27
|
* Improve client/server error messagesJune McEnroe2019-10-27
|
* Add reload cmd to rc scriptJune McEnroe2019-10-27
| | | | Using daemon(8) makes this way more awkward than it should be.
* Reload certificate on SIGUSR1June McEnroe2019-10-27
|
* Drop clients on zero-length readsJune McEnroe2019-10-27
|
* Explicitly tls_handshake new clientsJune McEnroe2019-10-27
| | | | | This prevents a client connecting, sending nothing, and getting blocked in tls_read immediately.
* Document rationaleJune McEnroe2019-10-26
|
* Handle nick collisionJune McEnroe2019-10-26
|
* Wait for AUTHENTICATE + from serverJune McEnroe2019-10-26
|
* Respond to PING with same parameterJune McEnroe2019-10-26
|
* Add undocumented flag to disable verificationJune McEnroe2019-10-26
|
* Do not require RPL_ISUPPORT for stateReadyJune McEnroe2019-10-26
|
* Implement graceful shutdownJune McEnroe2019-10-26
|
* Require PASS before USERJune McEnroe2019-10-26
| | | | Prevent creating a ring consumer without authentication.
* Track channel topicsJune McEnroe2019-10-26
|
* Set AWAY when no clients are connectedJune McEnroe2019-10-26
|
* Add flags to request TOPIC and NAMES on client connectJune McEnroe2019-10-26
|
* OopsJune McEnroe2019-10-26
|
* Disconnect client on unknown commandJune McEnroe2019-10-26
| | | | | During registration, no other commands should be sent. Afterwards, only intercepted commands will get parsed.
* Allow reading sensitive information from filesJune McEnroe2019-10-26
|
* Add rc scriptJune McEnroe2019-10-26
|
* Add install and uninstall targetsJune McEnroe2019-10-25
|
* Expand documentationJune McEnroe2019-10-25
|
* Add AGPLv3 notice on client registrationJune McEnroe2019-10-25
| | | | OwO
* Rename project pounceJune McEnroe2019-10-25
|
* Add copy of AGPLv3June McEnroe2019-10-25
|
* Send PRIVMSG and NOTICE to other clientsJune McEnroe2019-10-25
|
* Clean up event loopJune McEnroe2019-10-25
|
* Clean up clientJune McEnroe2019-10-25
|
* Clean up stateJune McEnroe2019-10-25
|
* Clean up server codeJune McEnroe2019-10-25
|
* Clean up listen APIJune McEnroe2019-10-25
|
* Use produce/consume words for ring bufferJune McEnroe2019-10-25
| | | | To disambiguate clientRecv and clientRead, say clientConsume.
* Implement client reading from ring bufferJune McEnroe2019-10-25
| | | | It's still messy but it works!!
* Implement ringDiff and ringReadJune McEnroe2019-10-25
|
* Remove manual client naming from manual pageJune McEnroe2019-10-24
|
* Zero entire Client structJune McEnroe2019-10-24
| | | | | Does zeroing that extra 4K really matter? I'd rather not have uninitialized reads.
* Register readers by client usernamesJune McEnroe2019-10-24
|
* Unset non-blocking on clientsJune McEnroe2019-10-24
| | | | | I figure I'll actually use POLLOUT on clients so should never have issues.
* Intercept client QUITJune McEnroe2019-10-24
|
* Only set NeedCapEnd if unregisteredJune McEnroe2019-10-24
|
* Set client-side origin to irc.invalidJune McEnroe2019-10-24
|
* Factor out client-side origin nameJune McEnroe2019-10-24
|
* Intercept all CAP commands from clientsJune McEnroe2019-10-24
|