Commit Graph

438 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 1285ba2d13 degesch: make "/server" alone list all servers 2015-07-13 20:51:23 +02:00
Přemysl Eric Janouch a3074ef83d degesch: fix the date change timer 2015-07-13 02:39:28 +02:00
Přemysl Eric Janouch 606f0b1faa degesch: fix /server add 2015-07-13 00:13:14 +02:00
Přemysl Eric Janouch e86dc2fbcd Disable SSL 2 and 3 2015-07-13 00:13:14 +02:00
Přemysl Eric Janouch de61f9ce5b degesch: don't save on quit after a parse error 2015-07-13 00:13:14 +02:00
Přemysl Eric Janouch efe5112a8f degesch: force a TLS handshake
This is sort of a no-op.
2015-07-13 00:13:10 +02:00
Přemysl Eric Janouch fc87d54649 Cleanup 2015-07-12 17:39:29 +02:00
Přemysl Eric Janouch 3c1bbbc513 degesch: add an "ssl_ciphers" option to servers 2015-07-12 17:15:33 +02:00
Přemysl Eric Janouch 88b2200051 degesch: log certificate verification errors
At last, there should be no more serious issues with TLS.
2015-07-12 06:03:28 +02:00
Přemysl Eric Janouch d5a153bbe3 Call ERR_clear_error() where necessary 2015-07-12 05:30:13 +02:00
Přemysl Eric Janouch 4ead42f4e3 degesch: fix certificate verification
Also print some certificate information while connecting.
2015-07-12 01:58:38 +02:00
Přemysl Eric Janouch 20b317db30 degesch: fix failure handling in SSL_CTX creation 2015-07-12 00:43:52 +02:00
Přemysl Eric Janouch fe95f97101 degesch: rejoin channels on reconnect
Unless we've left them and the buffer just stays open, that is.
2015-07-12 00:30:10 +02:00
Přemysl Eric Janouch 5b96f2ccb7 degesch: fix the date change timer
It used absolute time, while we need relative.
2015-07-12 00:08:56 +02:00
Přemysl Eric Janouch 0ce4872254 degesch: fix nick cycling 2015-07-11 18:04:07 +02:00
Přemysl Eric Janouch b3876260b9 degesch: make /disconnect abort reconnect timer 2015-07-11 17:54:49 +02:00
Přemysl Eric Janouch 0c4b727961 Bump liberty 2015-07-11 17:54:38 +02:00
Přemysl Eric Janouch 5692da47be Fix various issues reported by Coverity 2015-07-11 14:48:00 +02:00
Přemysl Eric Janouch 4865f91eb0 degesch: add "autoconnect" option for servers 2015-07-11 06:16:53 +02:00
Přemysl Eric Janouch 8ed93ae03e degesch: write date change messages earlier 2015-07-11 06:10:46 +02:00
Přemysl Eric Janouch ccc167d120 degesch: print a marker for unread messages 2015-07-11 05:41:39 +02:00
Přemysl Eric Janouch d48adf4557 degesch: log CAP traffic 2015-07-11 05:04:17 +02:00
Přemysl Eric Janouch f2a6c0f299 degesch: log disconnection in all buffers 2015-07-11 04:55:34 +02:00
Přemysl Eric Janouch d27a23a7d6 degesch: sanitize terminal output 2015-07-11 04:55:34 +02:00
Přemysl Eric Janouch e2c0240a84 degesch: move the -d option to configuration 2015-07-11 04:28:34 +02:00
Přemysl Eric Janouch 8f587117f7 degesch: add aliases to /help and autocomplete 2015-07-11 03:58:53 +02:00
Přemysl Eric Janouch a24c068a3b degesch: mostly finish /alias sans name checking 2015-07-11 03:29:52 +02:00
Přemysl Eric Janouch b987b2cc64 degesch: add config_item_string_from_cstr() 2015-07-11 03:29:52 +02:00
Přemysl Eric Janouch 30252e069d degesch: add an /unalias command 2015-07-11 03:29:52 +02:00
Přemysl Eric Janouch 8f1d81eefb degesch: add an option to save config on quit 2015-07-11 03:29:52 +02:00
Přemysl Eric Janouch 0a657a0294 degesch: silence compiler warnings 2015-07-11 01:53:04 +02:00
Přemysl Eric Janouch 5ddf963e33 degesch: actually avoid recursive aliases 2015-07-11 01:46:11 +02:00
Přemysl Eric Janouch dcb1d2f97b degesch: fix argument checking 2015-07-11 01:44:58 +02:00
Přemysl Eric Janouch 5da45877d6 degesch: add /alias that only lists aliases 2015-07-10 01:45:39 +02:00
Přemysl Eric Janouch 0fd53af0d1 degesch: factor out get_aliases_config() 2015-07-10 01:44:02 +02:00
Přemysl Eric Janouch c839649551 degesch: add some default aliases 2015-07-10 00:55:13 +02:00
Přemysl Eric Janouch 4ddded3512 degesch: print the logo in a buffer 2015-07-10 00:55:13 +02:00
Přemysl Eric Janouch 3e17bfb54c degesch: add a first time help 2015-07-10 00:55:13 +02:00
Přemysl Eric Janouch 7a7192d327 degesch: unfuck debug logging
We can store most of the messages in buffers, which gives us the nice
possibility of using the formatter to fix encodings, as well as the
ability to redisplay the debug prints.

And we can also have some nice colors.
2015-07-10 00:55:13 +02:00
Přemysl Eric Janouch 445837007d degesch: get rid of partial command name matching 2015-07-09 22:34:42 +02:00
Přemysl Eric Janouch 567ce62257 degesch: tiny miscellaneous fixes 2015-07-09 22:34:42 +02:00
Přemysl Eric Janouch ba1ac58d9d degesch: add backend support for aliases 2015-07-09 22:34:42 +02:00
Přemysl Eric Janouch 5e7f9882dd degesch: "nickname" -> "nicks"
Now you can specify multiple nicknames to try.
2015-07-09 02:46:31 +02:00
Přemysl Eric Janouch 2b2da0beab degesch: support CASEMAPPING=rfc1459-strict 2015-07-09 01:48:34 +02:00
Přemysl Eric Janouch f57cc7923d degesch: clean up irc_handle_irc_isupport() 2015-07-09 01:36:19 +02:00
Přemysl Eric Janouch 1ba6db50b6 degesch: split handle_command_help() 2015-07-09 00:10:46 +02:00
Přemysl Eric Janouch f907f1e3dc Add str_cut_until() 2015-07-09 00:10:06 +02:00
Přemysl Eric Janouch d3b1754e14 degesch: introduce transform_str() 2015-07-08 23:15:48 +02:00
Přemysl Eric Janouch aa39445afb Miscellaneous, cleanup
Went through the entire source of degesch and made changes along the way.
2015-07-06 01:54:02 +02:00
Přemysl Eric Janouch 096a179e09 degesch: implement /server add 2015-07-05 20:32:48 +02:00
Přemysl Eric Janouch 15d3129ea3 degesch: mark all unrecognized config values 2015-07-05 18:26:46 +02:00
Přemysl Eric Janouch ff20e74868 degesch: fix usage of "prompt_shown"
It can go very negative.
2015-07-05 17:29:44 +02:00
Přemysl Eric Janouch 550f8baa1a degesch: add "on_change" for behaviour.logging 2015-07-05 17:02:11 +02:00
Přemysl Eric Janouch 8c2c0472cb degesch: add some trivial "on_change" callbacks 2015-07-05 16:28:27 +02:00
Přemysl Eric Janouch 6de7ae9583 degesch: only apply relevant attributes on change 2015-07-05 16:15:30 +02:00
Přemysl Eric Janouch 3a922c3c1a degesch: start using "on_change" notifications
Terminal attributes can be changed on the fly now.
2015-07-05 15:57:53 +02:00
Přemysl Eric Janouch b1dd34a7ba degesch: set "user_data" while loading config
It'd be quite wrong to call "on_change" on them without this.
2015-07-05 02:16:43 +02:00
Přemysl Eric Janouch 9b41256ebf degesch: create servers from configuration
This means that as of now, the only way of creating a server is
to edit the configuration file by hand and add (at least) an empty
object under the server's name.
2015-07-05 02:16:43 +02:00
Přemysl Eric Janouch 0ecd297c6f degesch: stubplement /server 2015-07-04 22:28:59 +02:00
Přemysl Eric Janouch bda1239a33 degesch: /buffer close switches to previous buffer
buffer_next() proved too annoying.
2015-07-04 20:04:20 +02:00
Přemysl Eric Janouch 990e8d7d94 degesch: optimize buffer_print_backlog()
Apparently readline can be really, really slow at redrawing.
2015-07-04 16:58:25 +02:00
Přemysl Eric Janouch ef2b4d9a01 degesch: flush I/O buffers on disconnect
Discovered thanks to weercd.
2015-07-04 16:37:31 +02:00
Přemysl Eric Janouch 4471e0c6cd degesch: periodically flush logs to disk 2015-07-04 15:45:27 +02:00
Přemysl Eric Janouch 94d495fbfa degesch: add logging to file 2015-07-04 15:45:27 +02:00
Přemysl Eric Janouch 3503b76015 degesch: fix unused variable 2015-07-04 01:46:35 +02:00
Přemysl Eric Janouch 6498690999 degesch: decode mIRC formatting in numerics
Just like... why not.  Makes colors in the MOTD and in LIST work.
2015-07-04 01:45:22 +02:00
Přemysl Eric Janouch 8a75c2447f degesch: fix memory issue in Readline
We didn't zero out the pointer for entries.
2015-07-04 01:11:27 +02:00
Přemysl Eric Janouch 7de1309421 degesch: clean up the async code a bit 2015-07-03 23:40:34 +02:00
Přemysl Eric Janouch 2357f1382a degesch: rewrite to use asynchronous I/O 2015-07-03 22:19:12 +02:00
Přemysl Eric Janouch 15882dcdf9 degesch: part channel on /buffer close 2015-07-02 20:50:53 +02:00
Přemysl Eric Janouch be10e61c90 degesch: fix /msg with CAP echo-message 2015-06-29 21:39:40 +02:00
Přemysl Eric Janouch 2b240b6631 degesch: add a #N format specifier
Fixes RPL_TOPICWHOTIME with some servers.
2015-06-29 08:56:43 +02:00
Přemysl Eric Janouch 134e19adf0 degesch: mark an issue with CAP echo-message 2015-06-28 23:01:38 +02:00
Přemysl Eric Janouch fdff5f8c72 degesch: reclaim more memory with Readline 2015-06-28 23:00:46 +02:00
Přemysl Eric Janouch b5d472f0df degesch: clean up log_formatter() 2015-06-28 20:56:45 +02:00
Přemysl Eric Janouch 0074b1eda9 degesch: reorder code 2015-06-28 20:48:43 +02:00
Přemysl Eric Janouch 3f55693400 degesch: don't put dashes in listings
Just reflecting the behaviour of weechat.
2015-06-28 19:56:05 +02:00
Přemysl Eric Janouch c9b33846cb degesch: add an option to beep on highlight 2015-06-28 19:41:31 +02:00
Přemysl Eric Janouch db6939bd60 degesch: fix /ctcp with CAP echo-message 2015-06-28 17:08:42 +02:00
Přemysl Eric Janouch a1fa9d187e degesch: log self nick changes in server buffer 2015-06-28 16:36:51 +02:00
Přemysl Eric Janouch 3e47abdfbb degesch: further logging cleanup 2015-06-28 16:26:51 +02:00
Přemysl Eric Janouch ed349cb1d3 degesch: logging cleanup 2015-06-28 16:16:19 +02:00
Přemysl Eric Janouch 02ab0f743b degesch: remove "ctx" from command handler args 2015-06-28 03:00:19 +02:00
Přemysl Eric Janouch 335aeb599a degesch: refactor logging
- everything coming from the server should be properly transcoded
 - most nicknames should be highlighted
 - some other minor changes here and there
2015-06-28 02:51:31 +02:00
Přemysl Eric Janouch fafe1fde90 degesch: finish implementation of rehashing
I can only hope it works.
2015-06-23 23:20:03 +02:00
Přemysl Eric Janouch e39bb976cb degesch: partially implement rehashing 2015-06-23 22:10:16 +02:00
Přemysl Eric Janouch 63a65f9f7c degesch: stubplement casemapping changes 2015-06-23 21:04:38 +02:00
Přemysl Eric Janouch c3439175d7 degesch: NICK handling cleanup 2015-06-23 21:01:38 +02:00
Přemysl Eric Janouch 9603bae003 degesch: fix logging of NICK in PM buffers 2015-06-22 23:07:09 +02:00
Přemysl Eric Janouch c8c1697e20 degesch: final fix for /query
rl_delete_text() didn't fix rl_point.
2015-06-22 23:07:09 +02:00
Přemysl Eric Janouch de019e7832 degesch: fix handling of buffer collisions 2015-06-22 23:07:09 +02:00
Přemysl Eric Janouch e276fe0022 degesch: fix /query
It changed the buffer, which saved the state, which saved the line
currently being processed (thanks Readline, so obvious).
2015-06-21 23:38:22 +02:00
Přemysl Eric Janouch 1e04fc24a7 degesch: fix /nick handling
When the new nickname was lexicographically identical (for example
User -> uSer), the whole thing broke down.

In addition to that, we used to check if the new nickname exists
and failed in that case.  It _can_, however, exist.  It just mustn't
be us.
2015-06-21 23:38:22 +02:00
Přemysl Eric Janouch e85c98f315 degesch: implement the rest of buffer merging 2015-06-21 21:50:47 +02:00
Přemysl Eric Janouch ce96be2d5e degesch: show usage on /buffer move failure 2015-06-21 19:52:15 +02:00
Přemysl Eric Janouch b56245cf5b degesch: implement /buffer move 2015-06-21 19:35:35 +02:00
Přemysl Eric Janouch b3a80630aa degesch: change arguments to handle_buffer_close() 2015-06-21 18:39:32 +02:00
Přemysl Eric Janouch 85cebbcfa2 degesch: make highlights more obvious
Just the tiniest bit.
2015-06-21 04:00:20 +02:00
Přemysl Eric Janouch 1eb38fa5ec degesch: implement /buffer clear
At least somehow.
2015-06-21 03:35:35 +02:00
Přemysl Eric Janouch 3c982c7077 degesch: make buffer_send_*() accept a NULL buffer 2015-06-20 23:30:05 +02:00