Commit Graph
333 Commits
Author SHA1 Message Date
Stephen Paul Weber e0c50dd99a Add gateway/irc and caps 2022-03-07 22:41:44 -05:00
louiz’ 80c5a0e150 Use recipient-unavailable when we are not connected to the IRC server
Instead of remote-server-not-found

See #3427
2021-01-15 12:34:30 +01:00
louiz’ 752931b7a5 fix localtime call -> _r 2020-12-28 23:43:13 +01:00
louiz’ 9cb6a0c2c9 Entirely remove the code for the “preferred_from” nick
Since private messages are now always coming from the server-wide JIDs
2020-09-23 23:38:46 +02:00
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