This effectively restores a previously removed patch, thought to
be unnecessary (removed in cbba52ef when bumping gnutls). The issue
is fixed in a later version of gnutls, which opendht is not yet
ready to use.
Change-Id: I6d07028f7c5f95803776d1413c7e6a8411902fef
This patch partially reverts GnuTLS commit 516f48bfbf33d111e4fcd310541baa8f160067ae, which prevents the daemon from building on some old Linux distributions due to increasing the minimum required version of autoconf from 2.64 to 2.71.
The patch also removes the AM_GNU_GETTEXT macros from the configure.ac file. When these macros are present, autoreconf calls autopoint, which overwrites some m4 files in the GnuTLS repository with the version found on the system. This causes the Ubuntu 20.04 and snap builds to fail with "possibly undefined macro" errors.
GitLab: #1111
Change-Id: I45b8225bff148b3cf01aa2ce14adc639de823a8f
Fix file access issues when reading hard links on Windows by:
- Adding explicit share mode (_SH_DENYNO) to allow reading files opened
elsewhere
- Using binary mode to ensure consistent behavior with hard links
This resolves issues with reading hard linked files on Windows while
maintaining behavior on other platforms.
https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/1899
Change-Id: I2adc0f29db46d5bf5b69762018e7a5e677ec3d04
For an account's VCard, we store the actual VCard file in the account's
profile directory, alongside other contact profile files, and a link is
created in the account's directory to the VCard file that is named using
the base64-encoded account URI. This method will fail on Windows where
users can not create soft links.
When linking to this VCard file, we first try to hard link to it. If
that fails, we fall back to symlinking to it. This allows the new
profile linking mechanism to work on Windows, and we are fairly
confident that the `profiles` sub dir will not be on a different
filesystem.
https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/1899
Change-Id: I3be8150b02f8427c164beb6c652f96d895aab048
This patch enables nat-pmp for iOS and macOS and
fixes build for iOS by removing USE_SYSCTL_NET_ROUTE,
which requires net/route.h that is not available
on iOS.
Change-Id: I7342f65a85ecbc0d7f291c981cc78ded2e741e58
Add parseJson function to simplify json parsing:
* automatically log parsing failure
* allows single-line json parsing
* take a string_view instead of begin/end pointers
* optimize building the CharReader by reusing the CharReaderBuilder
Change-Id: I332a88fc476ee84ba400a96bc1b41515cca43c32
When removing a contact, we need to update the ID of its linked
conversation (to be empty, which is the convention used to signify that
a contact doesn't have a linked conversation).
This used to be done via the updateConvForContact function, but there
were two issues (which are fixed by this patch):
1) if the user had multiple one-to-one conversations with the removed
contact, then the function would be called multiple times (once per
conversation) even though the update only needs to be performed once;
2) more importantly, if the contact's linked conversation ID didn't
match any of its one-to-one conversations, then the update would not
be performed at all. (Every contact should normally be linked to a
valid conversation, but this can fail in practice due to
synchronization issues.) As a result, the contact would remain linked
to a conversation that no longer exists.
https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/1673https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/1804
Change-Id: Ia75c5b27a4120bc48da5f449a874354326c6d96a
Given the change made in commit
e048f1b999, it no longer makes sense to
use a null pointer as the default value for the optHistory argument of
the addToHistory function.
GitLab: #1102
Change-Id: Ifc5ca8b069c16d7d9cca2cbc0c8237c56895ff4e