Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Implement TIME, VERSION, MOTD, LUSERS | Přemysl Janouch | 2014-07-17 | 2 | -6/+73 |
| | |||||
* | Fix the ERR_NOTREGISTERED message | Přemysl Janouch | 2014-07-17 | 1 | -1/+1 |
| | |||||
* | Send LUSERS output upon registration | Přemysl Janouch | 2014-07-17 | 1 | -1/+45 |
| | |||||
* | Fix handling of multiple NICK's before a USER | Přemysl Janouch | 2014-07-17 | 1 | -5/+5 |
| | | | | | We have to release the old nickname _first_, so that we can register the same one again (albeit with a slight race condition). | ||||
* | Send the user's mode after registration | Přemysl Janouch | 2014-07-17 | 1 | -2/+30 |
| | |||||
* | Return `struct error' from irc_initialize_ssl() | Přemysl Janouch | 2014-07-17 | 1 | -14/+12 |
| | |||||
* | Implement daemonization | Přemysl Janouch | 2014-07-16 | 1 | -5/+36 |
| | | | | Now we're a real daemon, yay. | ||||
* | Revise usage of print_{error,fatal}() | Přemysl Janouch | 2014-07-16 | 3 | -50/+28 |
| | | | | | | Let's limit print_fatal() to unexpected conditions. Also added exit_fatal() to save a few lines of code. | ||||
* | Only print the first OpenSSL error | Přemysl Janouch | 2014-07-16 | 1 | -4/+6 |
| | | | | Otherwise TLS autodetection and TLS communication itself seem to work, yay! | ||||
* | str_map::key_cmp -> str_map::key_xfrm | Přemysl Janouch | 2014-07-16 | 2 | -13/+45 |
| | | | | | | It seemed to be almost too easy to be true, and it actually was. Now it should work. | ||||
* | First bugfixes | Přemysl Janouch | 2014-07-16 | 2 | -9/+14 |
| | | | | Now we can at least successfully register. | ||||
* | Cleanup | Přemysl Janouch | 2014-07-16 | 2 | -22/+11 |
| | | | | No functional changes. | ||||
* | Rip out error codes | Přemysl Janouch | 2014-07-16 | 3 | -123/+35 |
| | | | | | | | | | | | | | | | As it turns out, they're rather annoying to maintain, and we don't even need them. They also clutter the code unnecessarily in their current form. If it ever comes to having to have them, let's make another version of error_set(), maybe error_set_with_code(), that makes it possible to also set an integer within `struct error'. The only problem with the above solution is when we aggregate errors from multiple functions (be it by calling one after another, or through nesting of functions that may return an error). But let's care about that when the time comes for it. | ||||
* | Make it possible to route messages to syslog | Přemysl Janouch | 2014-07-15 | 2 | -13/+44 |
| | |||||
* | Resolve paths relative to XDG config. paths | Přemysl Janouch | 2014-07-14 | 3 | -100/+131 |
| | | | | This should make the programs an awful lot less painful to set up. | ||||
* | Rename `struct connection' to `struct client' | Přemysl Janouch | 2014-07-14 | 1 | -148/+144 |
| | | | | | It is shorter and makes more sense. Also replaced "conn" with "c" to keep it even more concise, and thus clearer. | ||||
* | Add a utility to extract a message catalogs | Přemysl Janouch | 2014-07-14 | 3 | -2/+23 |
| | |||||
* | Implement client registration | Přemysl Janouch | 2014-07-14 | 1 | -80/+381 |
| | | | | | And shuffle around some functions so that they form logical blocks (at least I've tried; it's not that easy when you try to avoid forward declarations). | ||||
* | Add support for custom str_map key comp. fun. | Přemysl Janouch | 2014-07-14 | 1 | -2/+6 |
| | | | | That wasn't hard. | ||||
* | Don't forget that channels have users | Přemysl Janouch | 2014-07-14 | 1 | -3/+28 |
| | |||||
* | Miscellaneous little things | Přemysl Janouch | 2014-07-14 | 1 | -10/+11 |
| | |||||
* | Put a prolog at the top of configuration files | Přemysl Janouch | 2014-07-13 | 3 | -26/+47 |
| | | | | Later I'm going to put in there some more information about the format etc. | ||||
* | Load X/Open message catalogs | Přemysl Janouch | 2014-07-13 | 1 | -1/+26 |
| | | | | | | | This is going to enable making changes to ERR and RPL messages without modifying the source code. Localized messages could be interesting. :) | ||||
* | Load an MOTD on start | Přemysl Janouch | 2014-07-13 | 2 | -0/+43 |
| | |||||
* | Add a strtoul() wrapper | Přemysl Janouch | 2014-07-13 | 2 | -4/+11 |
| | |||||
* | Apparently it's the "realname" | Přemysl Janouch | 2014-07-13 | 2 | -6/+6 |
| | |||||
* | Initialize the server name | Přemysl Janouch | 2014-07-13 | 1 | -0/+45 |
| | |||||
* | Only compile regex's once | Přemysl Janouch | 2014-07-13 | 3 | -70/+126 |
| | |||||
* | Add a few token validation functions | Přemysl Janouch | 2014-07-13 | 1 | -0/+87 |
| | |||||
* | Implement irc_try_write() | Přemysl Janouch | 2014-07-12 | 1 | -1/+21 |
| | |||||
* | Rename connection_abort() to connection_kill() | Přemysl Janouch | 2014-07-12 | 1 | -8/+8 |
| | |||||
* | Implement irc_try_read() | Přemysl Janouch | 2014-07-12 | 1 | -2/+31 |
| | |||||
* | Fix connection abortion | Přemysl Janouch | 2014-07-12 | 1 | -7/+8 |
| | |||||
* | Move `SSL_CTX *' into `struct server_context' | Přemysl Janouch | 2014-07-12 | 1 | -52/+85 |
| | | | | | It didn't make much sense to parse the configuration values and load the SSL keys on each connection. | ||||
* | Implement an iterator for `struct str_map' | Přemysl Janouch | 2014-07-12 | 1 | -0/+33 |
| | |||||
* | Implement parsing of IRC 3.2 message tags | Přemysl Janouch | 2014-07-12 | 1 | -3/+43 |
| | | | | | It's still in the making and we don't use it, but let's not fail on it if e.g. a plugin decides to enable it. | ||||
* | Add .gitignore | Přemysl Janouch | 2014-07-12 | 1 | -0/+6 |
| | |||||
* | WIP: add a stub IRC daemon named `kike' | Přemysl Janouch | 2014-07-12 | 5 | -1609/+2654 |
| | | | | | | | | | | | | | | As it is going to share a great lot of functionality with ZyklonB, I have decided to extract the common parts into `common.c' and make the two subprojects include this file. The Single Compile Unit concept has proven valuable (sub-second compile times, dead code warnings, almost no need for function declarations, whole-program optimizations), and the sources aren't that long so far anyway. I am probably going to add CMake support later but so far it's not a priority. This project is meant to be portable and freely relocatable (ie. no hardcoded paths if I can avoid it). | ||||
* | Initial commit | Přemysl Janouch | 2014-07-05 | 6 | -0/+3766 |