Přemysl Eric Janouch
5c0a2975e8
degesch: refactor and fix reconnect delays
2015-07-18 13:39:30 +02:00
Přemysl Eric Janouch
baacb27d4b
degesch: allow executing a command when registered
...
To authenticate with NickServ or whatever.
2015-07-18 13:27:50 +02:00
Přemysl Eric Janouch
b3acc4904f
degesch: add exponential reconnect backoff
2015-07-17 21:23:01 +02:00
Přemysl Eric Janouch
403dbc83ab
degesch: allow multiple commands in aliases
...
Separated by ;, which can be escaped as $;
2015-07-16 22:12:59 +02:00
Přemysl Eric Janouch
1b56b4ee72
degesch: skip unrecognized config items in /set
2015-07-16 20:40:10 +02:00
Přemysl Eric Janouch
6f3b48e4eb
SSL -> TLS; fix error handling
2015-07-15 23:34:36 +02:00
Přemysl Eric Janouch
c8496a83d8
Unfuck OpenSSL error messages
...
We still take just the first error message in the queue, though.
2015-07-15 23:11:12 +02:00
Přemysl Eric Janouch
6351ff387e
degesch: set a limit on backlog entries
...
So that buffers don't grow indefinitely in memory.
2015-07-15 23:05:45 +02:00
Přemysl Eric Janouch
bcbbdbc4bc
degesch: fix some encoding issues
2015-07-15 22:59:55 +02:00
Přemysl Eric Janouch
b257340ad2
Fix compiler warning
2015-07-15 22:57:12 +02:00
Přemysl Eric Janouch
ad08545f8f
Bump liberty
2015-07-15 22:56:53 +02:00
Přemysl Eric Janouch
d6a4ca1434
Bump liberty, fix map iterators
2015-07-14 22:25:30 +02:00
Přemysl Eric Janouch
955552f4fa
degesch: implement /server rename
2015-07-14 21:16:35 +02:00
Přemysl Eric Janouch
0c5591fed2
degesch: fix server loading
2015-07-14 07:49:28 +02:00
Přemysl Eric Janouch
855a9d81ba
degesch: simplify check_server_name_for_addition()
2015-07-14 07:29:30 +02:00
Přemysl Eric Janouch
c573435996
degesch: implement /server remove
2015-07-14 06:50:39 +02:00
Přemysl Eric Janouch
880a8ef080
degesch: finally fix rearm_date_change_timer()
2015-07-14 06:43:15 +02:00
Přemysl Eric Janouch
6f966d4aee
degesch: factor out buffer_remove_safe()
2015-07-14 06:11:14 +02:00
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