Sébastien Helleu
a311764d12
relay: add signal "relay_client_auth_ok" for irc and weechat protocols
2014-04-13 08:27:27 +02:00
Sébastien Helleu
001ea53f9d
core: fix crash on "weechat --upgrade" if no .upgrade files are found
2014-04-12 21:45:27 +02:00
Sébastien Helleu
7618fdd240
core: use lower case for CMake keywords
2014-04-12 18:00:27 +02:00
Sébastien Helleu
836ed0bbfe
relay: add messages "_buffer_hidden" and "_buffer_unhidden"
2014-04-05 16:53:48 +02:00
Sébastien Helleu
2a9bd75eee
core: close .upgrade files before deleting them after /upgrade
2014-04-03 14:23:31 +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
cd66b459de
relay: search buffers by full name
2014-03-11 15:30:51 +01:00
Sebastien Helleu
7a191c2de1
relay: fix crash on /upgrade received from a client (weechat protocol)
...
Some commands like /upgrade sent by relay client can cause problems, because
they were executed immediately (while relay code is running). The /upgrade
command unloads all plugins, so the result is unpredictable (it can cause a
crash).
This commit adds a timer (1 millisecond) to delay the execution of command
after we go back in the WeeChat main loop.
2014-03-07 09:22:21 +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
0995eb334f
relay: add signals "relay_client_xxx" for client status changes ( closes #2 )
...
New signals:
- relay_client_connecting
- relay_client_waiting_auth
- relay_client_connected
- relay_client_auth_failed
- relay_client_disconnected
2014-03-05 11:43:32 +01:00
Sebastien Helleu
4c3a10506a
relay: fix size used in a snprintf
2014-02-28 11:40:55 +01:00
Sebastien Helleu
fdfee08cf8
relay: add option relay.network.clients_purge_delay
2014-02-23 20:32:42 +01:00
Sebastien Helleu
897bb0950c
relay: fix freeze after /upgrade when many disconnected clients still exist
...
The hooks for the WeeChat disconnected clients are not created again
after /upgrade (they were removed on client disconnection, so there is
no reason to create them again).
The hooks like nicklist sync are called often (for example on irc
disconnection), which can cause long freeze if many WeeChat disconnected
clients exist in relay.
2014-02-23 13:07:45 +01:00
Sebastien Helleu
60456c31e9
relay: remove dead assignment in function relay_client_recv_cb
2014-02-22 15:13:26 +01:00
Sebastien Helleu
e4493a1b0c
relay: remove dead assignment in function relay_irc_get_line_info
2014-02-22 14:51:59 +01:00
Sebastien Helleu
57e195391b
relay: fix NULL pointer when reading buffer lines for irc backlog
2014-02-22 11:44:19 +01:00
Sebastien Helleu
eb26e13814
relay: return WEECHAT_RC_ERROR in command /relay if arguments are wrong/missing
2014-02-21 13:39:03 +01:00
Sebastien Helleu
437767c0ca
api: add integer return code for functions hook_{signal|hsignal}_send
2014-02-10 17:42:53 +01:00
Sebastien Helleu
59481611dd
relay: send backlog for irc private buffers
2014-01-31 16:41:12 +01:00
Sebastien Helleu
8fc7515322
core: reformat hook_command arguments
2014-01-18 20:33:19 +01:00
Sebastien Helleu
73eb2564f3
core: add "POSIX extended" in description of options/commands/functions using regular expressions
2014-01-09 17:21:19 +01:00
Sebastien Helleu
4a6bdc1c9c
relay: fix memory leak on unload of relay plugin
2014-01-09 15:34:30 +01:00
Sebastien Helleu
846dde00aa
core: fix crash with hdata_update on shared strings, add hdata type "shared_string" (bug #41104 )
2014-01-05 14:37:27 +01:00
Sebastien Helleu
892aa79fb5
core: update copyright dates
2014-01-01 00:14:12 +01:00
Sebastien Helleu
929a7906c4
relay: use syntax \xNN instead of \NN for control chars in raw buffer
2013-12-22 18:31:53 +01:00
Sebastien Helleu
e8ed81ec22
relay: load plugin even if options can not be read in relay.conf (with warnings)
2013-11-09 10:25:16 +01:00
Sebastien Helleu
b5f6874f2c
core: move the "-no-undefined" from LDFLAGS in configure.ac to Makefile.am in plugins
...
This "-no-undefined" was causing an error when detecting "ld" lib on Cygwin.
2013-10-05 20:17:18 +02:00
Sebastien Helleu
a6c188ce4f
relay: fix decoding of websocket frames when there are multiple frames in a single message received (only the first one was decoded)
2013-10-05 16:49:39 +02:00
Sebastien Helleu
e900579fba
relay: add support of secured data in option relay.network.password (evaluate content) (patch from Nils Görs)
2013-09-19 15:11:51 +02:00
Sebastien Helleu
94b9104d14
core: replace obsolete INCLUDES by AM_CPPFLAGS in files Makefile.am
2013-07-20 09:07:05 +02:00
Sebastien Helleu
fa9f787e14
core: sort config options by name in sources
2013-07-11 22:31:33 +02:00
Sebastien Helleu
dd41e5776f
relay: add command "ping" in weechat protocol (task #12689 )
2013-06-09 20:43:24 +02:00
Mantas Mikulėnas
1e49718398
relay: fix binding to an IP address (bug #39119 )
2013-05-30 08:03:21 +02:00
Sebastien Helleu
e459939ead
relay: fix uncontrolled format string in redirection of irc commands
2013-05-18 22:42:16 +02:00
Sebastien Helleu
86a8b9fb5f
relay: remove temporary option "nicklistdiff" (in command init), send nicklist diff by default (weechat protocol)
...
The temporary option was introduced because the nicklist diff was experimental.
It is now enabled by default, and there is no way to disable it. Therefore any
relay client using weechat protocol must implement the message "_nicklist_diff"
(unless nicklist is ignored by client).
Extra note: a full nicklist may still be sent if a message with diff would be
bigger than whole nicklist. So both full nicklist (message "_nicklist") and
nicklist diff (message "_nicklist_diff") must be implemented by clients.
2013-05-01 21:01:12 +02:00
Sebastien Helleu
2a4e9aef8a
relay: fix typo in error displayed by command /relay del
2013-04-21 21:57:21 +02:00
Sebastien Helleu
a9ff529d83
relay: rename compression "gzip" to "zlib" (compression is zlib, not gzip) (thanks to Dominik Honnef)
2013-03-17 16:14:20 +01:00
Sebastien Helleu
149c77decd
core: fix typos in many comments and some strings
2013-03-17 12:55:20 +01:00
Sebastien Helleu
d74041de25
relay: add missing "id" in raw messages sent to clients when compression is off (weechat protocol)
2013-03-13 12:12:48 +01:00
Sebastien Helleu
7672139d6b
relay: add negative numbers (integer: -123456 and long: -1234567890L) in command "test" (weechat protocol)
2013-03-13 11:50:32 +01:00
Sebastien Helleu
d2ff46fa69
relay: add message "_nicklist_diff" (differences between old and current nicklist)
...
This is an experimental feature, that must be explicitely enabled by clients
(for weechat protocol) in the init command with option "nicklistdiff", for example:
init password=mypasswd,nicklistdiff=1
This option will be removed when clients will handle nicklist diff.
2013-03-09 09:04:49 +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
f7811b0ae2
relay: fix crash when decoding a websocket frame
2013-02-12 14:14:40 +01:00
Sebastien Helleu
8d5dee9aa0
relay: add gcrypt include and link arguments to compile relay plugin
2013-02-12 12:51:26 +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
e4149b073d
relay: add options "buffers" and "upgrade" for commands sync/desync in weechat protocol
2013-02-07 22:08:31 +01:00
Sebastien Helleu
7a1f9a1d7f
relay: fix commands sync/desync in weechat protocol (bug #38215 )
...
Fix:
- use proper arguments in commands sync/desync (use argv[0] instead of argv[1])
- when searching if a buffer is synchronized, its name has higher priority on "*"
(so first check if buffer is synchronized, and if not found, search if "*" is
synchronized)
- when receiving a "nicklist_*" signal, check if the buffer is synchronized with
flag "RELAY_WEECHAT_PROTOCOL_SYNC_NICKLIST"
2013-02-03 09:51:15 +01:00
Sebastien Helleu
afe729435a
relay: fix typo in comment
2013-02-03 08:38:41 +01:00
Sebastien Helleu
ac94f68b59
relay: add return of a NULL pointer in command "test"
2013-02-01 09:58:30 +01:00
Sebastien Helleu
08f360692d
relay: add comments with example of messages in weechat protocol
2013-02-01 08:53:37 +01:00