summaryrefslogtreecommitdiff
path: root/src/kike.c
Commit message (Collapse)AuthorAgeFilesLines
* kike: shuffle things aroundPřemysl Janouch2014-08-091-160/+153
| | | | | Pseudorandomly. There are more than one way the program could be laid out. Some of them make more sense than others.
* kike: fix leaking of channelsPřemysl Janouch2014-08-091-13/+10
|
* kike: fix `struct channel_user'Přemysl Janouch2014-08-091-20/+15
| | | | | | Storing the nickname instead of a reference to `struct client' didn't play well with nickname changes. The client needs to be unlinked from any channels before his object can be deleted, anyway.
* kike: hackplement channel MODE changesPřemysl Janouch2014-08-091-39/+279
|
* kike: fix checking against channel masksPřemysl Janouch2014-08-091-1/+1
|
* kike: implement a useless ADMIN commandPřemysl Janouch2014-08-091-0/+11
|
* kike: channel user limit is also secretPřemysl Janouch2014-08-091-6/+8
|
* kike: preparation for multiple listening socketsPřemysl Janouch2014-08-091-52/+66
| | | | It should be only a matter of modifying irc_setup_listen_fds() now.
* kike: fix fingerprint generation and checkingPřemysl Janouch2014-08-081-2/+2
|
* kike: fix client unregistrationPřemysl Janouch2014-08-081-2/+3
|
* kike: implement SSL client cert. auth.Přemysl Janouch2014-08-081-2/+77
|
* kike: allow changing user modePřemysl Janouch2014-08-081-14/+100
|
* kike: implement DIE and KILLPřemysl Janouch2014-08-081-17/+55
|
* kike: also tell about +b, +e and +I in 004Přemysl Janouch2014-08-081-1/+1
|
* kike: don't send channel messages backPřemysl Janouch2014-08-051-7/+9
|
* kike: implement the WHOIS commandPřemysl Janouch2014-08-051-0/+99
| | | | The code is starting to stink a bit, refactor imminent.
* kike: implement the ISON commandPřemysl Janouch2014-08-051-0/+23
|
* kike: users also match their serversPřemysl Janouch2014-08-051-1/+3
|
* kike: fix wildcard matchingPřemysl Janouch2014-08-051-11/+18
| | | | It wasn't IRC case-insensitive.
* kike: set the OpenSSL's session ID contextPřemysl Janouch2014-08-051-0/+5
| | | | Fixes handshake failure on session reuse attempts.
* kike: implement the KICK commandPřemysl Janouch2014-08-051-1/+63
|
* kike: implement NOTICEPřemysl Janouch2014-08-051-7/+20
|
* kike: fix the NAMES reply upon JOIN'ingPřemysl Janouch2014-08-041-0/+1
| | | | Now Pidgin seems to be relatively happy with our server.
* kike: implement the WHO commandPřemysl Janouch2014-08-041-0/+108
|
* kike: remember to send back AWAY messagesPřemysl Janouch2014-08-041-0/+2
|
* kike: shuffle things aroundPřemysl Janouch2014-08-041-163/+170
| | | | No functional change, I hope.
* kike: stuffPřemysl Janouch2014-08-041-102/+682
| | | | Implemented a lot of the channel stuff and other stuff as well.
* kike: don't disclose secret channels in LUSERSPřemysl Janouch2014-08-031-1/+17
|
* kike: implement LISTPřemysl Janouch2014-08-031-0/+53
|
* kike: implement USERHOSTPřemysl Janouch2014-08-021-13/+47
|
* kike: update the poller properlyPřemysl Janouch2014-08-021-19/+24
| | | | Now we can send PRIVMSG's between users and all that jazz.
* kike: implement PRIVMSG to userPřemysl Janouch2014-08-021-0/+32
|
* kike: implement clean shutdownPřemysl Janouch2014-08-021-8/+25
|
* kike: implement connection limitPřemysl Janouch2014-08-021-21/+36
| | | | Somehow I'm not sure whether this thing is useful in any sense.
* kike: implement the ping-pong and QUITPřemysl Janouch2014-08-021-10/+135
|
* kike: add a `ping_interval' config. valuePřemysl Janouch2014-08-021-3/+25
|
* Fix some compiler warningsPřemysl Janouch2014-07-191-4/+4
| | | | | | `-Weverything' seems to have found a few problems. Also enabled clang sanitizers by default.
* Add a LIST_HEADER macroPřemysl Janouch2014-07-181-5/+2
| | | | | | To save us from specifying the `next' and `prev' pointers all the time. It's not perfect, just a tiny bit better.
* CleanupPřemysl Janouch2014-07-181-9/+1
|
* Implement TIME, VERSION, MOTD, LUSERSPřemysl Janouch2014-07-171-6/+72
|
* Fix the ERR_NOTREGISTERED messagePřemysl Janouch2014-07-171-1/+1
|
* Send LUSERS output upon registrationPřemysl Janouch2014-07-171-1/+45
|
* Fix handling of multiple NICK's before a USERPřemysl Janouch2014-07-171-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 registrationPřemysl Janouch2014-07-171-2/+30
|
* Return `struct error' from irc_initialize_ssl()Přemysl Janouch2014-07-171-14/+12
|
* Implement daemonizationPřemysl Janouch2014-07-161-5/+36
| | | | Now we're a real daemon, yay.
* Revise usage of print_{error,fatal}()Přemysl Janouch2014-07-161-13/+5
| | | | | | Let's limit print_fatal() to unexpected conditions. Also added exit_fatal() to save a few lines of code.
* Only print the first OpenSSL errorPřemysl Janouch2014-07-161-4/+6
| | | | Otherwise TLS autodetection and TLS communication itself seem to work, yay!
* str_map::key_cmp -> str_map::key_xfrmPřemysl Janouch2014-07-161-3/+3
| | | | | | It seemed to be almost too easy to be true, and it actually was. Now it should work.
* First bugfixesPřemysl Janouch2014-07-161-7/+9
| | | | Now we can at least successfully register.