Sébastien Helleu
d8987a1678
all: replace Copyright lines by SPDX copyright tag
2025-03-30 14:47:12 +02:00
Aaron Jones
f5038bccbc
Fix function prototypes for list of arguments
...
At the moment, building WeeChat triggers several thousand -Wstrict-prototypes
diagnostics. This is due to its source code using an empty argument list for
functions and function pointers that take no arguments, instead of explicitly
declaring that they take no arguments by using a void list.
This commit replaces all empty argument lists with a void list.
Note that Ruby's headers also suffer the same problem, which WeeChat can't
do anything to fix. Thus, building WeeChat with the Ruby plugin enabled
will still issue approximately 30 such diagnostics.
2025-03-10 08:16:52 +01:00
Sébastien Helleu
547e2b934e
core: update copyright dates
2025-02-01 23:13:18 +01:00
Sébastien Helleu
883c12dec2
relay: fix description of relay clients after /upgrade
2024-12-22 19:31:06 +01:00
Sébastien Helleu
ad5fde5966
relay: fix crash after /upgrade when relay clients are connected
2024-12-22 19:31:04 +01:00
Emil Velikov
de4231c842
Bump required gnutls to v3.3.0
...
Bump the requirement to v3.3.0 as available in Ubuntu 16.04 (3.4.10) and
Debian 10 (3.6.7). It was released around 10 years ago and any remotely
supported distribution has newer version.
As result, we can remove hundred+ lines of #ifdef spaghetti code.
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com >
2024-10-13 13:55:16 +02:00
Sébastien Helleu
a317c785fb
relay/api: add automatic reconnection to remote ( closes #2166 )
...
New options:
- remote option "autoreconnect_delay"
- relay.api.remote_autoreconnect_delay_growing
- relay.api.remote_autoreconnect_delay_max
2024-08-11 12:18:28 +02:00
Sébastien Helleu
9264803bc3
relay: fix websocket permessage-deflate extension when the client doesn't send the max window bits parameters
2024-06-01 15:15:01 +02:00
Sébastien Helleu
529a22e342
plugins: remove check of NULL pointers before calling weechat_unhook() (issue #865 )
2024-04-26 08:41:44 +02:00
Sébastien Helleu
7ee57af8e3
relay: remove check of NULL pointers before calling free() (issue #865 )
2024-04-25 20:59:24 +02:00
Sébastien Helleu
ed2becf8fe
relay: free frames only if they were allocated by function relay_websocket_decode_frame
2024-04-09 13:08:12 +02:00
Sébastien Helleu
90b855e1aa
relay: add connection to remote (issue #2066 )
...
Connection to remote:
- handshake: offer support for all supported hash algorithms
- network connect with a socket
- upgrade to websocket and authenticate with remote (password/TOTP)
- check websocket response
- get list of buffers (not used yet)
Note: connection to remote with TLS or a proxy is not yet supported.
2024-04-07 13:18:13 +02:00
Sébastien Helleu
c2343ecb74
relay: add functions to parse HTTP response (issue #2066 )
2024-04-07 13:16:50 +02:00
Sébastien Helleu
786f889251
relay: add command /remote, add remote configuration in relay.conf (issue #2066 )
2024-04-07 13:16:47 +02:00
Sébastien Helleu
965beb37de
core: fix print of pointer values
2024-04-01 21:08:52 +02:00
Sébastien Helleu
acef7dd317
relay: move assignment after comment with important note
2024-03-26 21:22:55 +01:00
Sébastien Helleu
5a3dff1b97
relay: fix typo in comment
2024-03-26 20:23:10 +01:00
Sébastien Helleu
2f5936bc9f
relay: set the last IRC client disconnection time only after a successful connection ( closes #2103 )
2024-03-26 08:04:49 +01:00
Sébastien Helleu
e791535773
relay: add a fake send function in client
...
This will be used in unit tests to get the data that is sent to clients.
2024-03-12 20:37:48 +01:00
Sébastien Helleu
f153b6e6c3
relay: change message displayed when there is not enough memory for websocket frame
2024-02-11 08:53:29 +01:00
Sébastien Helleu
0414c139b0
relay: fix decoding of websocket frame when a partial frame is received
2024-02-04 18:52:00 +01:00
Sébastien Helleu
bc464679a7
relay: fix build when CJSON is disabled (issue #2066 )
2024-02-02 07:44:57 +01:00
Sébastien Helleu
83567fd871
relay: allow password hash authentication in api relay, add option relay.network.time_window (issue #2066 )
2024-02-01 21:39:23 +01:00
Sébastien Helleu
6cfb31c306
relay: add support of websocket extension "permessage-deflate" ( closes #1549 )
...
This extension is used to compress and decompress websocket frames (using
the DEFLATE algorithm, with zlib).
2024-02-01 21:38:53 +01:00
Sébastien Helleu
8971fc069a
relay: add "api" protocol (HTTP REST API) (issue #2066 )
2024-02-01 21:38:49 +01:00
Sébastien Helleu
eecb2a997e
core: update copyright dates
2024-01-01 22:29:58 +01:00
Sébastien Helleu
911c976f9b
tests: add tests on relay "irc" protocol
2023-06-02 18:50:45 +02:00
Sébastien Helleu
8eb096b3ef
relay: rename "ssl" options and protocol to "tls" (issue #1903 )
2023-04-12 17:17:34 +02:00
Sébastien Helleu
c07cf691ad
core, plugins: check that string parameters are not NULL in search functions (issue #1872 )
2023-01-28 15:14:22 +01:00
Sébastien Helleu
33bba784c3
core: update copyright dates
2023-01-01 14:54:35 +01:00
Sébastien Helleu
d068fe0de5
core: add option -save in command /upgrade ( closes #1630 )
2022-08-07 16:48:12 +02:00
Sébastien Helleu
57c9f371bc
relay: use enum type for websocket status in client
2022-08-07 09:31:24 +02:00
Sébastien Helleu
c44b79dce7
core: update copyright dates
2022-01-17 18:41:06 +01:00
Sébastien Helleu
efc7a588d6
core: update copyright dates
2021-01-02 21:34:16 +01:00
Sébastien Helleu
5b4d690ed7
relay: fix slow send of data to clients when SSL is enabled
2020-05-01 18:52:08 +02:00
Sébastien Helleu
60b75f4677
tests: add tests on functions relay_auth_password_hash_algo_search and relay_auth_generate_nonce
2020-04-20 07:16:08 +02:00
Sébastien Helleu
e130ee7358
core: make GnuTLS a required dependency
2020-04-18 11:34:59 +02:00
Sébastien Helleu
80693dcea9
relay: move variable nonce in relay client structure
2020-04-18 09:30:51 +02:00
Sébastien Helleu
95c908e83c
relay: rename configuration options and keywords in handshake command (weechat protocol)
...
Configuration options renamed:
* relay.network.auth_password -> relay.network.password_hash_algo
* relay.network.hash_iterations -> relay.network.password_hash_iterations
Handshake command options renamed:
* password -> password_hash_algo
Handshake reply keys renamed:
* auth_password -> password_hash_algo
* hash_iterations -> password_hash_iterations
2020-04-17 23:34:27 +02:00
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
ccd45e4921
relay: update message displayed when the client is connected/authenticated
2020-04-12 20:24:39 +02:00
Sébastien Helleu
b947512c9a
relay: add option relay.network.auth_timeout
2020-04-12 19:36:12 +02:00
Sébastien Helleu
fb6fc22c74
relay: add a function to send outqueue to the client
2020-04-12 19:25:21 +02:00
Sébastien Helleu
7ddc815726
relay: actually use the client status "waiting_auth" in irc and weechat protocols ( closes #1358 )
...
Now the status "waiting_auth" is used and displayed in the relay buffer.
When a client connects, there are now 2 messages (except for irc protocol if
there's no password required):
relay: new client on port 9000: 1/weechat/1.2.3.4 (waiting auth)
relay: client 1/weechat/1.2.3.4 authenticated
If the authentication fails, the messages are:
relay: new client on port 9000: 1/weechat/1.2.3.4 (waiting auth)
=!= relay: authentication failed with client 1/weechat/1.2.3.4
2020-04-12 17:46:46 +02:00
Sébastien Helleu
feb6258910
core: update copyright dates
2020-01-04 10:41:26 +01:00
Sébastien Helleu
9178156354
api: add argument "strip_items" in function string_split
2019-06-15 20:47:14 +02:00
Sébastien Helleu
ec5aca81e7
relay: set address to "local" if not known
2019-05-13 21:57:23 +02:00
Sébastien Helleu
c1af2702b8
relay: improve message displayed on a new client
2019-05-12 21:39:22 +02:00
Ryan Farley
ffefd1b785
relay: add UNIX socket support ( closes #733 )
2019-05-12 18:51:13 +02:00
Sébastien Helleu
2b70d71aa1
core: replace argument "keep_eol" by "flags" in function string_split ( closes #1322 )
2019-03-10 18:29:16 +01:00