Commit Graph

40 Commits (9fa3609c85e4b6608d366bed4e47ab9553cd5bc9)

Author SHA1 Message Date
Sébastien Helleu 9fa3609c85 relay: add command "handshake" in weechat relay protocol and nonce to prevent replay attacks (closes #1474)
This introduces a new command called "handshake" in the weechat relay protocol.
It should be sent by the client before the "init" command, to negotiate the way
to authenticate with a password.

3 new options are added:

* relay.network.auth_password
* relay.network.hash_iterations
* relay.network.nonce_size
2020-04-14 21:38:12 +02:00
Sébastien Helleu feb6258910 core: update copyright dates 2020-01-04 10:41:26 +01:00
Sébastien Helleu 2b0057239b core: update copyright dates 2019-01-01 15:40:51 +01:00
Sébastien Helleu 4712d0bb06 core: use https for links to GNU GPL license 2018-11-29 23:16:07 +01:00
Sébastien Helleu de8d640958 relay: add support of close frame in websocket connection (closes #1281) 2018-11-12 20:43:48 +01:00
Sébastien Helleu e28cb00106 relay: add real IP in client description (closes #1256) 2018-09-30 09:59:45 +02:00
Sébastien Helleu ed4837b2f6 core: update copyright dates 2018-01-05 00:54:18 +01:00
Sébastien Helleu 9bad3f44db core: remove value for first #define in headers, add "PLUGIN" in plugin headers 2017-08-10 20:05:16 +02:00
Sébastien Helleu 1361602ea5 tests: fix compilation of tests on FreeBSD 11
Some includes were missing in .h files, and the tests must be linked
with intl and execinfo on FreeBSD.
2017-01-13 20:57:59 +01:00
Sébastien Helleu 705d86e684 core: update copyright dates 2017-01-01 11:32:04 +01:00
Sébastien Helleu cf6aca1619 core: add pointer in some callbacks (closes #406)
This pointer is the first argument received by callbacks, and the
existing argument "data" is now automatically freed by WeeChat when the
object containing the callback is removed.

With this new pointer, the linked list of callbacks in scripts has been
removed. This will improve speed of scripts (using a lot of hooks),
reduce memory used by scripts and reduce time to unload scripts.

Following functions are affected in the C API:

* exec_on_files
* config_new
* config_new_section
* config_new_option
* hook_command
* hook_command_run
* hook_timer
* hook_fd
* hook_process
* hook_process_hashtable
* hook_connect
* hook_print
* hook_signal
* hook_hsignal
* hook_config
* hook_completion
* hook_modifier
* hook_info
* hook_info_hashtable
* hook_infolist
* hook_hdata
* hook_focus
* unhook_all_plugin
* buffer_new
* bar_item_new
* upgrade_new
* upgrade_read
2016-03-21 18:11:21 +01:00
Sébastien Helleu 45a1174000 relay: fix the max number of clients connected on a port, allow value 0 for "no limit" (closes #669) 2016-02-08 21:14:48 +01:00
Sébastien Helleu 9263634d2e relay: fix websocket frame decoding, answer a PONG to PING (closes #675) 2016-02-06 14:08:20 +01:00
Sébastien Helleu 3330724574 core: update copyright dates 2016-01-01 11:09:53 +01:00
Sébastien Helleu 71dd64678c core: add comments after some #endif 2015-04-30 21:15:30 +02:00
Sébastien Helleu a020c28ea6 core: update copyright dates 2015-01-01 09:23:23 +01:00
Sébastien Helleu 134a5f53d4 relay: add option relay.network.ssl_priorities (closes #234) 2014-10-26 18:03:47 +01:00
Sébastien Helleu 6295adad6d relay: fix number of bytes sent/received on 32-bit systems 2014-08-02 16:17:30 +02:00
Sebastien Helleu 9b380a935b core: fix use of reserved C identifiers in headers (closes #31) 2014-03-19 10:39:13 +01:00
Sebastien Helleu 2d7778292a relay: add info "relay_client_count" with optional status name as argument
Use in evaluated strings (for example in /eval or triggers):
- "${info:relay_client_count}": total number of relay clients (any status)

With a specific status:
- "${info:relay_client_count,connecting}"
- "${info:relay_client_count,waiting_auth}"
- "${info:relay_client_count,connected}"
- "${info:relay_client_count,auth_failed}"
- "${info:relay_client_count,disconnected}"
2014-03-05 11:49:25 +01:00
Sebastien Helleu 892aa79fb5 core: update copyright dates 2014-01-01 00:14:12 +01:00
Sebastien Helleu c17d3e155c relay: add support of multiple servers on same port for irc protocol (the client must send the server in the "PASS" command) 2013-02-23 08:33:38 +01:00
Sebastien Helleu c2aeb69c46 relay: add experimental websocket server support (RFC 6455) for irc and weechat protocols, new option relay.network.websocket_allowed_origins
It is a partial implementation of RFC 6455: fragmentation and control frames are
not yet supported.
Text and binary frames are supported.
2013-02-10 20:22:13 +01:00
Sebastien Helleu f97598b4aa core: update copyright dates 2013-01-01 13:12:49 +01:00
Sebastien Helleu cf76379aa9 relay: add backlog, options and server capability "server-time" for irc protocol (task #12076)
New options:
- relay.irc.backlog_max_minutes
- relay.irc.backlog_max_number
- relay.irc.backlog_since_last_disconnect
- relay.irc.backlog_tags
- relay.irc.backlog_time_format
2012-12-24 17:31:33 +01:00
Sebastien Helleu 782e01f177 relay: add support of SSL (for irc and weechat protocols), new option relay.network.ssl_cert_key (task #12044) 2012-07-27 17:54:08 +02:00
Sebastien Helleu 99c1065bcf relay: move creation of client from relay-upgrade.c to relay-client.c 2012-07-17 09:56:03 +02:00
Sebastien Helleu d247d773db relay: fix freeze when writing on relay socket (use non-blocking sockets in relay for irc and weechat protocols) (bug #36655) 2012-07-14 22:41:52 +02:00
Sebastien Helleu d87eacccc9 relay: redirect some irc messages from clients to hide output (bug #33516)
Messages redirected by relay plugin: mode, ison, list, names, topic, who,
whois, whowas, time, userhost.
2012-03-18 08:58:19 +01:00
Sebastien Helleu 47e4a03be6 core: update copyright dates 2012-01-08 18:59:50 +01:00
Sebastien Helleu 013f8cc757 relay: add WeeChat protocol (for remote GUI), doc about protocol, new options
The protocol is partial, under development, and NOT ready for usage.

New options added in relay.conf:
- relay.network.allowed_ips: allow only some IPs on relay plugin (by default
  all IPs are allowed)
- relay.network.compression_level: compression level used in WeeChat protocol
  (compression is made using zlib)
2011-12-06 23:06:23 +01:00
Sebastien Helleu d24f6e9e17 Update copyright dates 2011-01-01 18:06:29 +01:00
Sebastien Helleu 0100856251 Add support of /upgrade in Relay plugin 2010-09-18 21:44:26 +02:00
Sebastien Helleu d2d60d4711 Beta version of IRC proxy feature in Relay plugin
Major changes in Relay plugin:
- IRC proxy feature (beta),
- raw buffer.

Changes in IRC plugin:
- add tags for messages sent to servers,
- add signal "irc_input_send" to simulate text/command on an IRC buffer,
- add prefix in infolist "irc_nick".
2010-09-17 14:47:36 +02:00
Sebastien Helleu dcdba08f8a Update comments after #endif in C headers 2010-06-25 15:03:39 +02:00
Sebastien Helleu 6562d676fe Update licenses and copyrights, add missing author names in sources 2010-06-22 19:46:28 +02:00
Sebastien Helleu 2133eb30ff Update copyright dates 2010-01-03 19:31:55 +01:00
Sebastien Helleu 999de8bfc1 Add partial irc-proxy feature to relay plugin 2009-10-29 17:23:25 +01:00
Sebastien Helleu 2115f3f675 Update copyright dates 2009-01-03 10:06:53 +01:00
Sebastien Helleu 20a1360bd8 Add new plugin "relay", new function "string_format_size" in plugin API 2008-12-10 17:08:56 +01:00