Commit Graph
100 Commits
Author SHA1 Message Date
louiz’ c671da13b3 Fix a std::move() warning with clang 2020-05-09 14:40:49 +02:00
louiz’ fa905a741f Fix a compile error with gcc 10
Fix #3431
2020-05-09 14:40:41 +02:00
louiz’ f6dd3c4656 Release version 8.4 2020-02-25 23:38:20 +01:00
louiz’ 4b0fb8b37e Remove all identd sockets on exit signal
fix #3420
2020-02-25 23:20:54 +01:00
louiz’ 9913518178 Add an error message for udns error DNS_E_NODATA (cherry-picked from master)
In cases where the DNS server does not respond “domain not found” but
“domain found, but no IP for that record type”, we just say “domain not
found” too (instead of nothing, previously).
2020-02-25 23:11:38 +01:00
louiz’ 5fbd900fd6 Ignore malformed identd queries
fix #3422
2020-02-25 23:07:26 +01:00
louiz’ 23f3f48b4a Only consider sockets that are in valid states as identd candidates
When an identd query happens, we check all the connected sockets for their
local and remote ports, to compare them with the query.  But we MUST only
consider the connected ones because:

- It doesn’t make sense to answer for a connection that has just been closed
- A non-connected sockets is not in a valid state for this (specifically
  here: its ::port attribute is empty)

fix #3421
2020-02-25 22:53:37 +01:00
louiz’ b18d81ae9f Fix a typo in a function name (match_pairt)
It’s totally harmless
2020-02-25 22:52:58 +01:00
louiz’ ab7d1bbf02 Release version 8.3 2018-06-01 12:43:34 +02:00
louiz’ 3a9cc78a21 Make the global ad-hoc configure command available in fixed mode 2018-06-01 12:29:04 +02:00
louiz’ d3eda68761 Release version 8.2 2018-05-23 01:12:31 +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’ 1c4620d992 Release version 8.1 2018-05-15 19:50:41 +02:00
louiz’ 861f55ed83 Add a e2e test for a raw NAMES command 2018-05-15 19:48:50 +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’ 08fabd0a10 Release version 8.0 2018-05-02 19:49:31 +02:00
louiz’ 063cfcfb72 Add a changelog entry for gcc 5.0 2018-05-02 19:49:31 +02:00
louiz’ 3e29dd39a2 Add a missing changelog entry 2018-05-02 19:43:14 +02:00
louiz’ eb5c93595c Add signature_methods=IMPLICIT for ppirc and gimp.org servers
fix #3351

See https://github.com/randombit/botan/issues/1558
2018-04-30 19:15:03 +02:00
louiz’ 678f5d079b Add a test for the <max>0</max> MAM query 2018-04-29 23:25:53 +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’ 0887be6eef Next version will just be 8.0, not 7.3 2018-04-29 19:45:43 +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’ f481e2f194 Fix the test_suite by using catch’s single_include directory 2018-04-28 13:57:17 +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
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
louiz’ 99c364892a Fix the e2e test broken by previous commit 2018-03-26 22:34:48 +02:00
louiz’ 2fe06ffab7 build:archlinux is way too slow, run it only manually
(that is, from time to time, hope I won’t forget)
2018-03-23 21:22:53 +01: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’ 8f74d4dd40 Update the changelog with this latest feature 2018-03-18 19:42:11 +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’ 68e1480075 Add a multiline_message e2e test 2018-03-18 13:55:35 +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’ c8e96fc31b Add some missing include 2018-03-18 02:35:07 +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’ ad7aa5b709 Use Catch2’s single_include/ directory 2018-03-18 02:12:25 +01:00
louiz’ 86f275e111 Revert "C++17"
This reverts commit 3f088e7b3a.
2018-03-17 17:28:49 +01:00
louiz’ 03714c6ceb Revert "Use std::optional<bool> instead of OptionalBool"
This reverts commit ba879a882e.
2018-03-17 17:28:47 +01:00
louiz’ d0e3c71b91 Revert "Use if constexpr to make things a lot more readable"
This reverts commit d62ca9f879.
2018-03-17 17:28:41 +01:00
louiz’ d62ca9f879 Use if constexpr to make things a lot more readable 2018-03-16 01:13:50 +01:00
louiz’ ba879a882e Use std::optional<bool> instead of OptionalBool 2018-03-16 01:13:50 +01:00
louiz’ 3f088e7b3a C++17 2018-03-16 01:13:50 +01:00
louiz’ 9b17a96187 Add a few \n in the e2e error messages 2018-03-12 01:34:24 +01:00
louiz’ 06438fe8ec Remove an unused function 2018-03-12 01:34:10 +01:00
louiz’ 8fa050abb2 Little doc typo 2018-03-12 01:12:49 +01:00
louiz’ b4a01758b0 And this one (hostname -> address)
ref #3273
2018-03-12 01:10:54 +01:00
louiz’ b3b90139db Rename a few “hostname” into “address”, regarding last commit
ref #3273
2018-03-12 01:06:15 +01:00
louiz’ bb476f4a0d Allow to override the addresses used to connect to an IRC network
fix #3273
2018-03-12 01:00:17 +01:00
louiz’ 9e4a3e2b05 Fix the INSERT query for types that don’t have any Id column 2018-03-12 00:17:03 +01:00
louiz’ bb596582bd Add a <item/> node in the presence of a leaving participant
fix #3339
2018-03-12 00:13:59 +01:00
louiz’ 158d743bf5 Remove the virtual channel feature altogether 2018-03-12 00:13:59 +01:00
louiz’ 8503d1f683 Actually display the error message from postgresql when a query failed 2018-02-16 00:58:49 +01:00
louiz’ b175084300 Log the warn/error messages coming from libpq in a correct format 2018-02-16 00:57:49 +01:00
louiz’ d3e07eee13 Sort archive messages by date (and only then by id)
fix #3337

Because apparently the IDs are not always incrementing. We still use them to
know the order of two messages that were received at the same second (in
this case, the ID will always be incrementing).
2018-02-16 00:56:07 +01:00
louiz’ dbb86bcc12 Fix the actual_bind versions for integrals 2018-02-15 16:54:54 +01:00
louiz’ 505deda176 Fix a memory leak when psql connection fails 2018-02-14 23:25:12 +01:00
louiz’ 4a2a280d76 Support the <before/> element in MAM requests 2018-02-13 03:51:03 +01:00
louiz’ 50d3c4a0b2 Do not forget an early return, to return the correct item-not-found error 2018-02-13 03:39:13 +01:00
louiz’ fd7c365288 Use the same function for both history orders 2018-02-13 03:10:00 +01:00
louiz’ fd9c713938 Fix a few warnings 2018-02-11 23:39:42 +01:00
louiz’ d705541435 Send a item-not-found error when the “after” value is not in the archive 2018-02-11 23:29:58 +01:00
louiz’ 0280343ced Handle the “after” RSM value to page through results 2018-02-10 19:51:59 +01:00
louiz’ ce1b6583e8 e2e test that the last uuid is the same as the “last” value in the iq result 2018-02-10 19:24:12 +01:00
louiz’ 99389eefba Always return the oldest matching messages from MAM, even if no date is set 2018-02-10 17:47:42 +01:00
louiz’ e0d1a0b44a Add a check for GCC’s and Clang’s minimal versions 2018-02-05 12:27:52 +01:00
louiz’ 1ebd8a2321 Fix conversion warnings on 32 bits 2018-02-04 16:58:04 +01:00
louiz’ d7cf736adb Fix argument types in declaration of send_history_message 2018-02-04 11:02:56 +01:00
louiz’ 369da19d41 Remove the debug logs from previous commit 2018-01-30 09:16:12 +01:00
louiz’ 58fd689166 Add a ifndef USE_DATABASE guard around send_history_message 2018-01-30 09:14:26 +01:00
louiz’ cb83178894 Add the complete='true' attribute only when appropriate 2018-01-30 09:07:21 +01:00
louiz’ 17f2cb5c93 Do not forget the complete='true' attribute in MAM’s result iq 2018-01-29 21:11:20 +01:00
louiz’ 7403c397ed Correctly include the database header 2018-01-28 14:20:21 +01:00
louiz’ 442f46c4ac And an other conversion warning 2018-01-28 14:15:34 +01:00
louiz’ 9bf81a2c04 This should fix the int conversion warning on 32bits arch 2018-01-28 14:10:14 +01:00
louiz’ 6e7ee320bc ci: Add Werror and Wno-psabi compiler flags 2018-01-26 01:40:26 +01:00
louiz’ ca95f89753 Add a archlinux-armv7l build 2018-01-26 01:40:26 +01:00
louiz’ e0265c81be ci: remove some useless template, directly define the jobs 2018-01-26 01:07:03 +01:00
louiz’ a209e77fc2 Rename a few CI things to a useful names 2018-01-26 00:35:32 +01:00
louiz’ 6dca27f08d Only support gcc >= 5.0 from now on 2018-01-25 02:22:19 +01:00
louiz’ e267512ad4 Restore the is_one_of variable template 2018-01-25 02:22:19 +01:00
louiz’ 3f85137265 Merge tag '7.2' 2018-01-25 02:10:17 +01:00