Commit Graph
784 Commits
Author SHA1 Message Date
louiz’ 458ea53db3 Fix a compile error with GCC 5.x
fix #3366
2018-07-14 13:36:53 +02:00
louiz’ 0d886d5f32 Default the throttle limit to 10 if not built with database support 2018-06-26 20:42:21 +02:00
louiz’ 7f8a612c98 Fix a warning (unused variable) in some build config 2018-06-25 22:57:23 +02:00
louiz’ 52166e07ac Trivial syntax improvements 2018-06-25 22:57:13 +02:00
louiz’ 09b10cc801 Throttle all commands sent to IRC servers
fix #3354
2018-06-25 22:54:32 +02:00
louiz’ ba97c442a8 Remove an outdated TODO comment 2018-06-22 21:35:46 +02:00
louiz’ 0b8738d87a Archive the Mode messages, except if they are received for an unjoined chan
fix #3362
2018-06-22 21:35:46 +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’ 3a9cc78a21 Make the global ad-hoc configure command available in fixed mode 2018-06-01 12:29:04 +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’ 28d79a9eaa Merge branch 'v8' 2018-05-15 19:58:03 +02:00
louiz’ a8e922fc89 Handle the NAMES message for an already-joined or non-existing channel
If a user manually does a NAMES query, the result were interpreted as a user
list, which is wrong. And with the special * argument, this would even cause
a crash.

Fix #3357
2018-05-15 19:34:58 +02:00
louiz’ 4f6bf078d2 Improve the forward_server_message to concatenate everything 2018-05-15 19:34:54 +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’ ed36c26598 Also handle SIGHUP to reload the configuration
Because that’s what is typically done on other deamons, and we don’t want to
suprise users.
2018-05-06 12:13:09 +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’ efa63ee5cb Merge branch 'v7' 2018-04-28 14:17:43 +02:00
louiz’ d887baa064 Fix a crash when botan policy does not allow any available ciphersuite 2018-04-28 13:57:40 +02:00
louiz’ 1236b8a03b Only use the ID to order archives
fix #3343
2018-04-24 20:25:40 +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 a429b2ea27 Add a Config::is_in_list() method 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’ e4f111accb Remove two unused (julianday) functions 2018-04-13 23:37:29 +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’ de8267fa3f Fix a build warning when compiling without postgres or sqlite 2018-04-11 00:45:29 +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
louiz’ 0cd848e532 Send the stanza-id for messages received by other users
fix #3347
2018-03-31 02:10:39 +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’ cdace80758 Check that db.prepare worked before using the returned statement 2018-03-23 15:54:36 +01:00
louiz’ faa33c1a71 Pass an IrcClient* to send_muc_leave instead of doing an other search 2018-03-22 20:44: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
louiz’ d7427fc9ca Re-connect to postgresql when the connection is lost
fix #3336
2018-03-19 00:16:16 +01:00
louiz’ 1320dc6db4 Don’t reflect an empty id if it was not included
Instead, generate a uuid for that message
2018-03-18 19:41:52 +01:00
louiz’ 0de282a177 Advertise the muc#stable_id feature on disco#info results
From XEP 0045:
“Note: the requirement to reflect the 'id' attribute was added in version
1.31 of this XEP. Servers following the new specification SHOULD advertise
that with a disco info feature of 'http://jabber.org/protocol/muc#stable_id'
on both the service domain and on individual MUCs, so that clients can check
for support.”
2018-03-18 19:37:41 +01:00
louiz’ 9500bfd4cc Reflect message IDs in channel MUCs
fix #3283
2018-03-18 19:33:07 +01:00
louiz’ 5af0a8040c Use a transaction around the DELETE + INSERT of the after_connection_commands
Otherwise we can imagine that two clients changing this value at the same
time would mix things up.

ref #3275
2018-03-18 02:54:34 +01:00
louiz’ 577984faf2 Allow the execution of multiple commands after the IRC connection
fix #3275
2018-03-18 02:31:18 +01:00
louiz’ 03714c6ceb Revert "Use std::optional<bool> instead of OptionalBool"
This reverts commit ba879a882e.
2018-03-17 17:28:47 +01:00