Commit graph

304 commits

Author SHA1 Message Date
fiaxh b71196ef07 Fix compiler warnings ('passing argument .. from incompatible pointer type') by passing (non)const argument 2021-10-12 19:53:22 +02:00
fiaxh 9285fd07bf Fix compiler warnings ('Type `uint8[]' can not be used for a GLib.Object property') 2021-10-12 19:43:57 +02:00
fiaxh 237081e573 Fix compiler warnings ('Switch does not handle .. of enum ..') 2021-10-12 19:43:57 +02:00
fiaxh e8c162eae3 Fix misc compiler warnings 2021-10-12 19:43:57 +02:00
fiaxh 76e425ed27 Fix compiler warnings ('assignment .. from incompatible pointer type') by returning non-const after_actions in OrderListener 2021-10-12 17:59:47 +02:00
fiaxh 7c7910729a Send SOCKS error and close connection when SOCKS5 handshake fails 2021-09-30 15:47:48 +02:00
fiaxh 863d66b16e Improve logging on jingle file transfer failure 2021-08-19 15:42:18 +02:00
fiaxh 447464f4d1 Display message delivery error, color text using theme colors
fixes #672
2021-08-17 22:32:33 +02:00
selurvedu f15982de72 Unify connection debug messages 2021-08-09 18:52:07 +02:00
fiaxh 1ac16ecd84 Send 'initiator' in jingle node, send 'creator' in content node 2021-06-01 10:48:09 -06:00
fiaxh d71604913d Merge remote-tracking branch 'origin/feature/calls' 2021-05-11 12:57:02 +02:00
fiaxh 7d2e647690 Improve call wording, cleanup 2021-05-01 21:51:24 +02:00
fiaxh 4c6664a365 Improve JMI handling (type=chat, filter message sender) 2021-04-29 16:14:17 +02:00
fiaxh 421f43dd8b Add support for OMEMO call encryption 2021-04-29 16:13:25 +02:00
Marvin W 3880628de4
Video optimizations 2021-04-29 15:53:59 +02:00
Marvin W d19a01d5f2
Handle DTLS edge-cases 2021-04-12 18:05:08 +02:00
fiaxh 1b92a1f774 Fix processing of XEP-0184 delivery receipts 2021-04-11 15:25:43 +02:00
fiaxh 369755781e Send JMI retract 2021-04-11 15:09:28 +02:00
fiaxh dfffa08ec1 Fix warnings 2021-04-11 14:42:59 +02:00
fiaxh 5e11986838 Fix dtls pull_timeout_function, fix cyclic references 2021-04-09 22:23:56 +02:00
Marvin W fbc10c2023 DTLS-SRTP: Wait for setup finish and handle setup=passive 2021-04-09 22:23:53 +02:00
fiaxh 8d1c6c29be Display+store call encryption info 2021-04-09 22:23:13 +02:00
fiaxh aeeda76c92 StreamManagement: Fix HashMap potentially being altered while being itterated 2021-04-08 12:19:11 +02:00
fiaxh a91cada4fb Fix segfault on bad certificate with multiple xmpp records
Co-authored-by: Marvin W <git@larma.de>
2021-04-07 23:43:32 +02:00
fiaxh 3454201e5a Use outgoing JMI if contact has supporting device 2021-04-01 12:03:04 +02:00
Marvin W c7d1ee4dc5
Make RTCP-MUX a stream property 2021-03-29 13:19:52 +02:00
fiaxh ec35f95e13 Add initial support for DTLS-SRTP 2021-03-25 14:45:54 +01:00
Marvin W c8a37c0246
Make foundation a string 2021-03-23 15:11:00 +01:00
Marvin W b393d41601
Add support for SRTP 2021-03-23 15:11:00 +01:00
Marvin W 9fed5ea865
Don't wait for reply on XEP-0199 pongs.
Nobody replies to pongs...
2021-03-21 16:01:50 +01:00
fiaxh 8a95f9dd1d Add initial Jingle Message Initiation (XEP-0353) support
Co-authored-by: Marvin W <git@larma.de>
2021-03-21 12:41:35 +01:00
Marvin W dfd7940104 Add support for Jingle RTP sessions (XEP-0167) to xmpp-vala
Co-authored-by: fiaxh <git@lightrise.org>
2021-03-21 12:41:32 +01:00
fiaxh f328bf93fb Add External Service Discovery (XEP-0215) support 2021-03-21 12:41:14 +01:00
Marvin W 5bd719a919 Add ICE-UDP Jingle transport (XEP-0176) to xmpp-vala
Co-authored-by: fiaxh <git@lightrise.org>
2021-03-21 12:41:06 +01:00
fiaxh 2b90fcc39a Improve & refactor Jingle base implementation
Co-authored-by: Marvin W <git@larma.de>
2021-03-21 12:40:04 +01:00
hrxi 148cf48d2b Add libnice and listen for direct connections in Jingle SOCKS5 (#608)
Add libnice as a plugin. If it is present, use libnice to enumerate
local IP addresses and listen on them to support direct connections for
Jingle SOCKS5.

Tested with Conversations and Gajim.

Created the nice.vapi file using
```
vapigen --library nice --pkg gio-2.0 --metadatadir metadata /usr/share/gir-1.0/Nice-0.1.gir
```
2021-03-19 22:06:02 +01:00
Michel Le Bihan e06cc08425
Improve IBR form handling (#990)
* Change register account dialog to show instructions

Change data forms to handle title and instructions elements

* Change register account dialog to show fixed fields

Closes #988

* Change form switch to halign start

Closes #992

* Change register account dialog to markup URLs
2021-02-17 22:57:53 +01:00
fiaxh 59236ec01a Add support for Direct MUC Invitations (XEP-0249) 2021-01-12 23:10:45 +01:00
fiaxh 2c22c0428c Fix segfault on accept_certificate signal (fixup 81a5505) 2020-12-31 23:19:06 +01:00
fiaxh 81a5505270 Allow certificates from unknown CAs from .onion domains
It's barely possible for .onion servers to provide a non-self-signed cert. But that's fine because encryption is provided independently though TOR.

see #958
2020-12-31 19:04:02 +01:00
fiaxh 07917f1d84 Refactor XmppStream, TLS and connection method logic
fixes #534
2020-11-20 15:21:18 +01:00
fiaxh 10adf716f3 Fix incoming muc voice request notification 2020-11-11 11:27:31 +01:00
fiaxh dba63b1473 Fix runtime critical when room has no name 2020-10-29 19:11:55 +01:00
fiaxh 4f0ca55cf0 Fix for older glib versions 2020-10-27 16:19:59 +01:00
fiaxh 2e0357877c Fix some compiler warnings 2020-10-27 16:05:30 +01:00
fiaxh 4f636dbd8e Service Discovery Module: Clear cached disco info requests when detaching from stream
If a info request did not receive a response in some stream (e.g. due to network errors), any requests to the same entity in subsequent streams waited indefinitively.
2020-10-12 18:23:15 +02:00
fiaxh 6325a98cff Fix runtime criticals related to jingle file transfer 2020-09-19 11:16:22 +02:00
fiaxh 8a2edbe661 Fix new compiler error (don't reference private variable from public one)
fixes #901
2020-09-07 15:29:32 +02:00
fiaxh 2d31d9d470 Cleanup 2020-09-07 15:21:42 +02:00
fiaxh e6a90fc25c Implement MUC self ping 2020-08-31 16:48:20 +02:00
fiaxh c887240fdc Improve stream management queue 2020-07-21 15:48:42 +02:00
fiaxh 7309c6f3ac Visually highlight pending messages, improve resending 2020-07-16 23:31:19 +02:00
fiaxh e159fd2492 Only query entity caps when we need them 2020-07-16 23:31:19 +02:00
fiaxh 74f7fa897f Add queue and resending to stream management 2020-07-15 18:12:19 +02:00
Marvin W 48964bc5cc
Don't strip() at XML layer 2020-06-28 11:53:43 +02:00
fiaxh 50c55c7f55 Fetch avatars only when they are used 2020-06-10 19:53:56 +02:00
fiaxh e3724f96ed Fix runtime critical in entity capabilities hashing 2020-06-04 14:08:41 +02:00
fiaxh d01af5b520 Fix compiler warnings 2020-06-03 21:50:40 +02:00
fiaxh b5066e0e2f Check if server supports uid 2020-06-03 21:50:40 +02:00
fiaxh 74b511593d Convert '<' back to '&lt;' in factors of the XEP-0115 verification string 2020-05-14 13:22:25 +02:00
fiaxh cd3a119eff Handle incoming own read marker in private MUCs 2020-04-28 23:56:53 +02:00
fiaxh af52c24df7 Fix nick change in MUC, update bookmark accordingly; remove unused code 2020-04-26 00:20:27 +02:00
fiaxh ee9795d8f4 Handle if Items/InfoResult are null 2020-04-25 16:15:43 +02:00
fiaxh f8f305efe5 xmpp-vala: Use more async 2020-04-24 14:19:42 +02:00
fiaxh e7bc68ad4d Handle entity hash in server features node, make ServiceDiscovery request_info/items async, add caching has_entity_feature 2020-04-24 14:18:24 +02:00
Anmol 2631a9bdba
voice handling in moderated groups (#788) 2020-04-22 20:04:03 +02:00
fiaxh 7c4260eed7 Remove features from service discovery module when detaching module from stream
fixes #179
fixes #812
2020-04-21 16:25:21 +02:00
kmq fcad6720e6
HTTP-Upload: parsing max-file-size attribute (#809)
When a server returns multiple <x/> elements
in response to a discinfo query, this change
uses all of them instead of just the first one.
2020-04-17 19:50:10 +02:00
fiaxh d091a6c3cd Add keyboard shortcut (up key) to activate last message correction 2020-04-05 16:19:56 +02:00
fiaxh 871ff33ac7 Add support for last message correction 2020-04-03 22:49:59 +02:00
Marvin W 0af8526ab1
Work-around use after free
Upstream: https://gitlab.gnome.org/GNOME/vala/-/issues/751
2020-04-01 17:40:47 +02:00
fiaxh 12cd56612d Store entity identity info, use it in conversation list tooltips 2020-03-29 20:24:39 +02:00
fiaxh ed6eda129e Update live whether encryption is possible in MUC (lock icon visible) 2020-03-08 22:21:09 +01:00
fiaxh 013b388896 Make message sending async and set unsent on error 2020-03-05 12:21:43 +01:00
fiaxh a81af020f3 Preserve unchanged conference data (name) in bookmarks
fixes #748
2020-02-20 17:15:51 +01:00
Marvin W 3650288a11
Don't use GObject/properties for JoinResult 2020-01-09 13:37:40 +01:00
Marvin W 11a118d53d
Fix issues in ICU usage 2019-12-25 19:56:51 +01:00
fiaxh bce709b794 Store MUC passwords in bookmark
fixes #470
2019-12-24 23:31:17 +01:00
fiaxh f58119f25e Don't show own typing notifications (other devices)
fixes #669
2019-12-24 01:46:01 +01:00
Marvin W 53d467938c
Use UTS46 instead of IDNA2003 2019-12-23 16:58:55 +01:00
Marvin W a0a956ee08
Properly check Jids everywhere 2019-12-23 16:58:53 +01:00
Marvin W 1bb75f40d2
Add timing to logs, fix issue of silently ignored I/O errors 2019-12-22 19:30:16 +01:00
fiaxh c3532bdf31 Refactor MAM catchup. Fetch from latest to earliest message. 2019-12-18 20:35:04 +01:00
fiaxh 321c3529f3 Add (partial) support for unique stanza ids (XEP-0359) 2019-12-18 20:35:04 +01:00
fiaxh 890b91ce4d Only send new room config if something was changed
fixes #675
2019-12-16 01:41:04 +01:00
fiaxh d194eae61d Set ALPN info on XMPP connections if GIO >= 2.60 2019-11-29 16:03:18 +01:00
fiaxh 1985fe1d7b Don't continue reading after stream was disconnected, make disconnecting async
fixes #636
2019-11-27 20:01:48 +01:00
fiaxh f9c69a204e Small changes to "Add support for HTTP Upload headers" 2019-11-19 21:50:46 +01:00
Wiktor Kwapisiewicz 687ec1a159 Add support for HTTP Upload headers
Some services use Authorization header [0] to pass upload credential
data. This avoids the token being exposed in server logs and is allowed
by XEP-0363 since version 0.5.0.

This change adds support for headers allowed in XEP-0363: Authorization,
Expires and Cookie.

[0]: https://xmpp.org/extensions/xep-0363.html#request
2019-11-19 21:24:28 +01:00
fiaxh 41ada4fcc8 Don't attempt DNS SRV lookups in connection fallback 2019-11-18 22:45:18 +01:00
fiaxh fcce176b91 Open new connection to send filled-in registration form
fixes #644
2019-11-18 17:02:59 +01:00
fiaxh 05561dd677 Parse presence delivery errors when joining MUC
fixes #224
2019-11-17 17:53:46 +01:00
fiaxh a2f63a7789 Parse offline member info from MUC presence
Fixes OMEMO only encrypting to new member after restart and private MUC name only updating after restart
2019-11-17 17:53:27 +01:00
fiaxh 247a368150 OMEMO: Don't set publish options, configure only bundle node instead 2019-11-04 15:11:36 +01:00
fiaxh c032ab00ec Don't send delivery recipts or chat states for own messages
fixes #631
2019-10-22 01:23:08 +02:00
fiaxh 7adb0e82fb Fix pubsub item listener notifying 2019-10-02 19:09:29 +02:00
fiaxh 5d65f047d0 Fix Jingle transport error 2019-09-29 01:53:59 +02:00
fiaxh 74c29d4df1 Add Bookmarks2 implementation, introduce bookmarks interfaces 2019-09-29 01:53:59 +02:00
Marvin W 9daf18f031
Fix warnings and compilation with older valac 2019-09-16 23:57:48 +02:00
Marvin W e899668213
Add JET support 2019-09-16 23:31:11 +02:00