steering7253
49d7302e98
fix irssi SASL negotiation with multiple CAP ACK
...
when attempting SASL, if multiple CAP ACK were received (for example,
because a script sent an additional CAP REQ), then any not containing
`sasl` would cause SASL to fail (immediately aborting the connection
with no message, depending on sasl_disconnect_on_failure setting)
check not only if SASL is set in this line, but also if we've already
seen it in a previous line.
2025-04-07 13:53:39 -06:00
ailin-nemui
51508ff1d3
use starttls
2021-04-08 21:55:35 +02:00
Ailin Nemui
b5ddc55fe6
correct wrong function prefixes: gslist -> i_slist
2021-01-07 10:14:34 +01:00
Ailin Nemui
18a1a0ba7c
fix multiple identical active caps
2021-01-06 10:41:57 +01:00
ailin-nemui
948e7bb317
free params
2019-08-30 22:14:26 +02:00
ailin-nemui
5a4e7ab659
fix use after free receiving caps
...
fixes GL#34
2019-08-27 23:34:03 +02:00
ailin-nemui
4ae1dbbd00
fix cap queue order
2019-08-14 16:34:18 +02:00
ailin-nemui
7e6e1f2e10
Use full paths to includes
2019-05-01 22:08:45 +02:00
Calvin Buckley
a634b34ba4
Rename cap_* funcs to irc_cap_*
...
Some systems often "namespace" cap_ for themselves, and so irssi's
usage can conflict with their own. Bump ABI for this.
2018-11-25 14:50:47 +00:00
Calvin Buckley
4380f3820e
Fix compilation of irc/core on AIX and IBM i
...
There's a function in the standard library of these OSes that conflict
with this function. Prefix it with `irc_`.
2018-11-19 13:58:51 +00:00
dequis
24f1ed7edb
irc-cap: Don't show warning on CAP LIST response
2018-08-23 03:22:30 -03:00
dequis
af5ee997e7
Add "server cap req" signal, emitted before requesting caps
2018-04-08 01:24:48 -03:00
ailin-nemui
16912e1a91
restore compat with glib <2.40
2018-02-08 14:41:08 +01:00
LemonBoy
260733475c
Accept CAPs with an empty value (KEY=)
2018-01-24 10:55:20 +01:00
LemonBoy
474ee8ee70
Address some minor stylish nits
2018-01-24 10:45:54 +01:00
LemonBoy
fed791ed91
Fix a problem with multiline responses
...
Do not clear the whole table every time a response is received.
2018-01-07 12:36:21 +01:00
LemonBoy
4b9fcbc15a
Nicer error message when a duplicate CAP in LS
2018-01-07 12:36:21 +01:00
LemonBoy
f3a5355648
Match LS instead of checking the first letter only
2018-01-07 12:36:21 +01:00
LemonBoy
6c45ab0493
Command names may be in lower-case
...
Do not take the string case into account when comparing the command
name.
2018-01-07 12:36:20 +01:00
LemonBoy
c00132ac4c
Simplify the code
...
Early exit, simpler code.
2018-01-07 12:36:20 +01:00
LemonBoy
9160ddaffd
Keep processing the CAPs on error
...
If an invalid CAP is found we keep going by parsing the next one.
2018-01-07 12:36:20 +01:00
LemonBoy
cd107deb46
Prevent a memory leak
...
When a CAP DEL is received the key/val pair is not stored in the
hashtable at all so just free them when we're done.
2018-01-07 12:36:20 +01:00
LemonBoy
74409aa850
Miscellaneous fixes
...
Stylistic stuff, please ignore.
2018-01-07 12:36:20 +01:00
LemonBoy
f683e81880
Prevent a NULL pointer deference
...
Always create the cap_supported table when a CAP event is received.
2018-01-07 12:36:20 +01:00
LemonBoy
432368bdc6
Use strcmp instead of g_strcmp0
...
There's no need to use the latter.
2018-01-07 12:36:19 +01:00
LemonBoy
cfc8c9f8e2
Properly dispose the GSList chains
...
We forgot to free the link and the data, oops.
2018-01-07 12:36:19 +01:00
LemonBoy
f4d811ddf5
Handle CAP {ADD,DEL} from cap-notify
...
This is the last piece of the puzzle.
2018-01-07 12:36:19 +01:00
LemonBoy
8c87766132
Parse multiline responses to CAP LS
...
The parsing logic isn't too elegant because of the optional parameter
used for signaling if a response has a continuation one.
2018-01-07 12:36:19 +01:00
LemonBoy
d21706e1cc
Factor out the parsing function
...
This is also needed for CAP NEW and CAP DEL.
2018-01-07 12:36:18 +01:00
LemonBoy
98836f8b7e
Parse the K/V form in CAP LS
...
This is a prerequisite for the IRC v3.2 compliance.
2018-01-07 12:36:18 +01:00
dequis
82ce1de5b0
irc-cap: Don't send a space at the beginning of the CAP REQ parameter
...
Turns out it confuses inspircd, making it reply a NAK with empty
parameter. The rest is ACKed anyway. I've already whined at saberuk
and there's a pending pull request over there fixing this issue.
And, of course, this is cleaner.
2015-11-26 19:50:58 -03:00
LemonBoy
21c1e4e9f8
Fix two minor issues outlined in the PR#222
...
irc-cap.c has now a licence header.
A minor style fix in misc.c
2015-09-02 22:40:10 +02:00
LemonBoy
2d7030a844
Implement support for IRCv3.1 CAP negotiation
2015-05-05 23:14:26 +02:00