Commit graph

328 commits

Author SHA1 Message Date
Kim Alvefur 839be0e316 Collect previous counter from failed stream resumption
The server is allowed to keep the counter after the session has expired,
which allows a final ack to know wheter in-transit stanzas were
delivered or not.
2021-12-30 16:26:53 +01:00
Kim Alvefur 9072f15556 Forget previous session on failed stream resumption (#1164)
Assuming received_features_node() is what triggers another attempt to
authenticate, this should prevent an attempt to XEP-0198 resume again
using the same session id.
2021-12-30 16:26:53 +01:00
Marvin W f591335ee3
Remove unnecessary override from interface method implementation
Fixes build on Vala 0.42
2021-12-23 07:27:39 +01:00
fiaxh d02c5bc55d Merge branch groupcalls 2021-12-23 00:46:58 +01:00
fiaxh ff4e2540ae xmpp-vala: Fix muji issues when waiting for peer to prepare 2021-12-22 20:48:48 +01:00
fiaxh 78bb2bbdda Add calls in private MUCs via a MUJI MUC 2021-12-18 21:34:39 +01:00
linkmauve 905f93bccc
Reject non-TLS URLs in HTTP File Upload (#1098)
* Reject non-TLS URLs in HTTP File Upload

This is a MUST in the XEP.

* Update 0363_http_file_upload.vala

Co-authored-by: fiaxh <fiaxh@users.noreply.github.com>
2021-11-28 22:54:48 +01:00
fiaxh 2b3d150949 Improve call details dialog + small multi-party call fixes 2021-11-15 13:29:13 +01:00
fiaxh e205743f0c Display target bitrates in connection details UI 2021-11-11 21:54:55 +01:00
fiaxh 26d10d1dcb Add multiparty call support to libdino and xmpp-vala 2021-11-10 11:05:34 +01:00
fiaxh 38944d7023 Add Jingle Raw UDP Transport Method to xmpp-vala 2021-11-04 17:32:28 +01:00
fiaxh 54427b04f9 Add initial COIN (XEP-0298) implementation to xmpp-vala 2021-11-04 17:11:33 +01:00
fiaxh 37c543b6e7 Add MUJI (XEP-0272) implementation to xmpp-vala 2021-11-04 17:10:10 +01:00
fiaxh 8339d95621 Fix crash when using direct TLS + ALPN 2021-10-15 01:13:56 +02:00
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 2824dedd22
Change test code for older vala compat 2020-06-28 13:00:17 +02:00
Marvin W 48964bc5cc
Don't strip() at XML layer 2020-06-28 11:53:43 +02:00
Marvin W 8f8018ec81
Fix async tests 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 4a9c05ea37
Enabling display of more compiler warnings and fix some of them
Most of these are caused by various issues is the Vala compiler,
but it doesn't hurt to display them and report them upstream.
2020-01-21 21:55:08 +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