louiz’
189015afb4
Conditionally compile the SASL code only with botan and database
2020-07-29 00:37:24 +02:00
louiz’
2e1ddeb654
Implement SASL plain authentication
2020-06-15 00:18:51 +02:00
louiz’
2ef41e1afc
Add missing affiliation and role in nick change presence
...
Fix #3429
2020-04-19 11:49:07 +02:00
louiz’
212e8e5989
Merge remote-tracking branch 'linkmauve/die-gc1.0-die'
2020-03-11 18:41:43 +01:00
louiz’
2c4ffbf25a
Consider the nick change only if it is NOT a join
2020-03-11 15:27:16 +01:00
louiz’
fc22e06317
Fix a type stable-id -> stanza-id, and add a test case to be exhaustive
2020-03-11 00:32:18 +01:00
louiz’
40d2168ae5
Announce the urn:xmpp:sid:0 NS in MUC's disco#info
...
As required by XEP 0359
Should fix #3369
2020-03-11 00:19:19 +01:00
louiz’
e967088986
Make sure we keep the stable-id and origin-id nodes when required
...
See https://xmpp.org/extensions/xep-0359.html
2020-03-11 00:13:46 +01:00
louiz’
fd98e60a1d
Avoid nick changes when joining a room that was already joined
...
By an other resource, or anything
fix #3423
2020-03-02 23:20:54 +01:00
Emmanuel Gil Peyrot
14fe971183
Don’t treat presence updates as MUC joins
...
If the user sends a directed presence to an unjoined MUC without a <x/>
element, send a presence error back instead of attempting to join it
again, as this is almost never what the user wants.
Fixes #3415 .
2019-11-13 23:25:17 +01:00
louiz’
e4a4addaf8
Add a missing max_history_length field in the IRC server option form
2019-11-06 17:23:43 +01:00
louiz’
34b4caeccf
Properly set the default values for invalid integer conf options
...
fix #3372
2019-11-06 17:23:35 +01:00
louiz’
61757e4822
Mark all rooms as non-anonymous
...
close #3390
2019-09-23 22:47:20 +02:00
louiz’
3339ce2cc0
Trivial little naming changes
2019-09-23 22:17:27 +02:00
louiz’
6ab064d04d
USe safer functions, gmtime_r and localtime_r
2019-09-23 22:07:57 +02:00
louiz’
89bb886a1b
Always add a 210 status in our self join presence
...
Because it's much much simpler than to track if we changed the nick that
was requested in the join request. And client will probably not get confused,
I hope.
2019-09-22 15:54:13 +02:00
louiz’
c13f3005e6
Use a “complete” action for the last step of ad-hoc commands instead of next
2019-09-14 11:50:21 +02:00
Jonas Schäfer
b68f36056d
XEP-0410: implement server-side optimisation for self-pings
...
This prevents the ping from round-tripping through IRC and
possibly a random other client of the user. Please see XEP-0410
for the rationale.
Fixes #3385 .
2019-08-20 21:42:43 +02:00
louiz’
88fe1783bf
Do not change our nick if we send a presence to a non-joined channel
...
fix #3378
2018-09-17 22:36:59 +02:00
louiz’
478619b10a
Trivial little syntax changes
2018-08-26 15:42:38 +02:00
louiz’
7d0df9b6dd
Disable the throttle limit if negative
...
Also, invalid values result in -1 being set
2018-08-23 22:18:49 +02:00
louiz’
b1564e4ddc
Fix a bunch of int to unsigned int conversion warnings
2018-08-23 20:31:31 +02:00
louiz’
89e038bc3a
Fix the real_type of ThrottleLimit
2018-08-04 15:11:59 +02:00
louiz’
782732ba16
Remove a bunch of useless empty lines
2018-08-04 14:50:33 +02:00
louiz’
6a86b14d05
Rename SetDesc to set_desc, and only define it if USE_DATABASE
2018-07-27 23:06:48 +02:00
Jonas Wielicki
b490ba6e56
Make SetDesc static
2018-07-27 23:06:48 +02:00
Jonas Wielicki
4953f7baa5
Fix incorrect setting of field description in Ad-Hoc config forms
...
The description has to be a child element of the field, not an
attribute.
2018-07-27 23:06:48 +02:00
louiz’
09b10cc801
Throttle all commands sent to IRC servers
...
fix #3354
2018-06-25 22:54:32 +02:00
louiz’
21a79b7bad
Reject messages from unjoined resources, with an error
...
fix #3346
2018-06-19 21:33:33 +02:00
louiz’
2f0e26db4c
Channels’ disco#info includes the number of participants
...
fix #3311
2018-06-17 15:16:49 +02:00
louiz’
5ff3696d6f
Merge branch 'v8'
2018-06-01 12:49:33 +02:00
louiz’
760076a33a
Make the global ad-hoc configure command available in fixed mode
...
fix #3360
2018-06-01 12:44:40 +02:00
louiz’
68d86a9daa
Merge branch 'v8'
2018-05-23 01:17:36 +02:00
louiz’
7d3c1ed927
Do not use (or present to the user) the Address field in fixed mode
...
fix #3359
2018-05-23 01:09:36 +02:00
louiz’
ba61d20340
Empty the <command/> nodes before reusing them in our responses
...
fix #3356
2018-05-14 22:07:29 +02:00
louiz’
b0168fd45b
mam: Send “fin complete” only when appropriate
...
Also simplify how we did the whole “limit + 1”
And fix one bad interpretation of the XEP for the case where the query has
no after or before restriction.
fix #3349
2018-04-29 22:18:26 +02:00
louiz’
7592d966e6
Missing fields in a data-form response are now interpreted as an empty value
2018-04-29 01:40:46 +02:00
louiz’
61de6b1dac
Revert "Use a different Date data type"
...
This reverts commit 857c7d3972 .
2018-04-24 20:25:40 +02:00
louiz’
a90f196a1c
Revert "Use the Date to find a next page in RSM, not the id"
...
This reverts commit 5ef7ba0802 .
2018-04-24 20:25:39 +02:00
Emmanuel Gil Peyrot
0d487f40c5
Use Config::is_in_list() to allow for multiple admins
2018-04-16 00:53:25 +02:00
Emmanuel Gil Peyrot
39a32d5524
Use jid.bare() instead of manual concatenation
2018-04-16 00:53:25 +02:00
louiz’
5ef7ba0802
Use the Date to find a next page in RSM, not the id
...
This way, it works, whatever the order of insertion in the database was.
fix #3343
2018-04-14 19:48:45 +02:00
louiz’
d375a9edeb
one log_debug -> log_error, also some trivial indent
2018-04-13 23:37:46 +02:00
louiz’
4bd7b6981b
Refactor that fixes a compilation issue in Release mode
...
Some template specialization were not found, because they were not declared
at the point they were used.
We moved things around, things are less inter-dependant, and also now it
works.
2018-04-13 23:35:06 +02:00
louiz’
857c7d3972
Use a different Date data type
...
PLEASE backup your database before testing this commit, and report any
migration issue.
In postgresql, we use timestamp with timezone.
In sqlite3 we use REAL (the date is expressed as julianday)
This requires a migration of the muclogline_ table:
In postgresql it’s pretty simple, we convert all the integer into timestamps
With sqlite3, we actually rename the table, create the new one with the
correct type, then copy everything to the new table, with a conversion
function for the Date_ column, and then we delete the old table.
fix #3343
2018-04-11 00:25:18 +02:00
Georg Lukas
49bb383080
Channel disco-info: use shorter string
2018-03-26 22:27:45 +02:00
louiz’
d81a9456ac
Change the nick of the joining user AFTER sending all the join stuff
...
fix #3305
2018-03-23 21:18:52 +01:00
louiz’
e2fc3cf68e
Properly handle force-join presences by sending everything in return
...
fix #3305
2018-03-23 16:16:30 +01:00
louiz’
9ce0166777
Add a missing pointer check
2018-03-19 20:16:01 +01:00
louiz’
619c991a69
Add a nick field in the IRC server configuration form
...
fix #3317
2018-03-19 20:15:44 +01:00