1
0
Fork 0
mirror of https://gitlab.gnome.org/GNOME/calls.git synced 2024-09-19 18:05:25 +00:00
Commit graph

378 commits

Author SHA1 Message Date
Evangelos Ribeiro Tzaras
3e699275a4 mm-origin: Don't unref origin in call_deleted_cb
Fixes: 72a85d62fa
Closes: #573
2023-05-10 18:00:42 +00:00
Дилян Палаузов
378da62ccb srtp-utils: Add skeleton code to ease adding crypto suites
With this in place enabling an additional crypto suite
would only require two changes:
- Adding GStreamer capability mapping
- Add case in calls_srtp_parse_sdp_crypto_attribute()
2023-05-09 13:23:43 +00:00
Дилян Палаузов
267eecf049 srtp-utils: Add support for AES 256 bit crypto suites
As specified by RFC 6188.
2023-05-09 13:23:43 +00:00
Дилян Палаузов
8ca3597646 sdp-crypto: Include "ICM" in crypto suite enums
This indicates integer counter mode being used and
helps disambiguate additional crypto suites in the future.

Renamed CALLS_SRTP_SUITE_AES_128_SHA1_80 → CALLS_SRTP_SUITE_AES_128_ICM_SHA1_80
and CALLS_SRTP_SUITE_AES_128_SHA1_32 → CALLS_SRTP_SUITE_AES_128_ICM_SHA1_32
2023-05-09 13:23:43 +00:00
Дилян Палаузов
e6bfa6d933 srtp-utils: Reuse existing function to get expected key length
This avoids unnecessary and potentially error-prone duplication.
2023-05-09 13:23:43 +00:00
Дилян Палаузов
3db2c5dbb9 srtp-utils: Add implicit padding characters explicitly
Otherwise base64 decoding will give us a wrong key.
2023-05-09 13:23:43 +00:00
Дилян Палаузов
cfd371d72e srtp-utils: Strip padding characters in crypto attribute lines
https://www.rfc-editor.org/rfc/rfc4568.html#section-6.1 says:
 When base64 decoding the key and salt, padding characters (i.e.,
 one or two "=" at the end of the base64-encoded data) are discarded
 (see [RFC3548] for details).

https://www.rfc-editor.org/rfc/rfc3548#section-2.2 says:
 In some circumstances, the use of padding ("=") in base encoded data
 is not required nor used.  In the general case, when assumptions on
 size of transported data cannot be made, padding is required to yield
 correct decoded data.
2023-05-09 13:23:43 +00:00
Evangelos Ribeiro Tzaras
037d2c55f6 srtp-utils: Pass MKI length into error message
Fixes: 4937723541
2023-05-09 09:23:39 +00:00
Evangelos Ribeiro Tzaras
e80abf713a tests: Use g_test_init instead of gtk_test_init
gtk_test_init() ends up calling gtk_init() which tries opening
the default display. CI jobs sometimes seem to trip over this
even when run through xvfb-run. Therefore we use g_test_init()
instead.
2023-05-09 07:44:09 +00:00
Дилян Палаузов
8eb46de6f9 srtp-utils: Remove unused variable srtp_crypto_suites 2023-05-03 17:05:58 +02:00
Florian Weimer
4fa542751b test-sip: Use su_random() (not su_random64())
su_random64() is not exposed in the freeswitch fork of sofia-sip.
2023-05-03 14:40:22 +00:00
Evangelos Ribeiro Tzaras
61b81a285c mm-provider: Don't warn about cancelled mm_manager_new()
It is cancelled when disposing and does not warrant a warning.
2023-05-01 09:35:10 +02:00
Evangelos Ribeiro Tzaras
4576547c20 sip-origin: Prefer named constant over magic numbers 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras
5362d1c975 sip-origin: Don't leak address 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras
0e753816c9 sip-origin: Include SIP address in debugging
This makes it easier to see if all accounts are being disposed
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras
f7745f50bd sip-origin: Keep sofia running to allow unregistering on dispose
sofia-sip needs to keep iterating its' main loop in order to
unregister as well as process the response from the server.

Closes: #554
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras
8b3eccd1b7 sip-origin: Use g_clear_pointer() instead of emulating it 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras
94cfbd83b2 sip-provider: Chain up to constructed early 2023-04-12 09:17:40 +00:00
Evangelos Ribeiro Tzaras
243753d064 sip-provider: Improve debugging of account loading
This should help diagnosing why the flatpak sometimes fails to add SIP accounts.
2023-04-12 09:17:40 +00:00
Evangelos Ribeiro Tzaras
208438236c sip-provider: Don't leak keyfile
The reference taken in new_origin_from_keyfile_secret() was never
released in the async callback.
2023-04-12 09:17:40 +00:00
Evangelos Ribeiro Tzaras
c84f2a2bd9 sip-provider: Remove unused variables 2023-04-12 09:17:40 +00:00
Guido Günther
47afc70552 mm-provider: Don't exit early when country code matches
This makes sure we fetch emergency numbers in any case (and also
further things should they be added later).
2023-04-09 15:38:01 +00:00
Guido Günther
b880ddf1d7 mm-provider: Implement get_country_code 2023-04-06 16:37:59 +00:00
Guido Günther
69250ac121 mm-provider: Fetch emergency numbers from sim 2023-04-06 16:37:59 +00:00
Guido Günther
6cdae3fd40 origin: Allow to fetch country code
This is an optional method as not all origins might support this
(e.g. SIP).
2023-04-06 16:37:59 +00:00
Guido Günther
d598acd96b mm-provider: Initialize parent class first 2023-04-06 16:37:59 +00:00
Дилян Палаузов
242efcc06a SIP:calls_sdp_crypto_context_generate_answer() accept the first supporetd a=crypto: line 2023-02-12 12:06:06 +00:00
Evangelos Ribeiro Tzaras
d790e35bc3 sip-provider: Remove duplicated check
init() already checked if CALLS_SIP_TEST was set,
no need to do it again in constructed()
2023-02-12 10:26:46 +01:00
Evangelos Ribeiro Tzaras
4d402d2f79 sip-provider: Use STR_IS_NULL_OR_EMPTY macro 2023-02-12 10:26:46 +01:00
Guido Günther
8a4a7c6131 mm: Implement empty emegency call property
This allows the tests to pass.
2023-02-12 08:00:56 +00:00
Guido Günther
75cbc30dc0 sip: Implement empty emegency call property
This allows the tests to pass.
2023-02-12 08:00:56 +00:00
Guido Günther
9af09a0db9 dummy: Support getting emergency call numbers 2023-02-12 08:00:56 +00:00
Evangelos Ribeiro Tzaras
205f691570 mm-origin: Disable call waiting
As Calls cannot deal with call waiting we should disable it entirely.
This works around issues where call audio get's completely broken once
the waiting call is disconnected on the BM818 modem shipped with the
Librem 5.

See https://source.puri.sm/Librem5/OS-issues/-/issues/311
2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
72a85d62fa mm-origin: Ensure objects stay alive during async operations 2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
0f9a89aa3b mm-origin: Remove unnecessary cast
g_signal_connect takes a gpointer, so the instance parameter does not
need to be cast explicitly.
2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
3dcb1881bf mm-origin: Don't leak ID 2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
5379907cf8 mm-origin: Don't leak MMModem
mm_object_get_modem() is transfer full,
so we need to unref it when we're done.
2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
9c8e70088c mm-origin: Don't leak MMModemVoice
mm_object_get_modem_voice() is transfer full,
so we need to unref it when we're done.
2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
6f771b1685 mm-origin: Avoid unnecessary allocation 2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
0232430ae1 mm-origin: Prefer g_autoptr instead of explicit reference counting 2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
f09852bc19 mm-origin: Prefer STR_IS_NULL_OR_EMPTY macro to explicit checks 2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
ab6f1a4c45 mm-origin: Explicitly cast ussd state
This is better than the implicit conversion of the enum.
2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
e5780677f6 mm-origin: Chain up to to parent's constructed() early
Not strictly needed here, because we don't depend on the parent being
constructed but this is how it should generally be done.
2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
2e43639d03 mm-origin: Codestyle
- Prefer char* over gchar*
- g_auto* variables come first
- Two newlines between functions
2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
1793035683 mm-call: Guard public API 2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
9ee436135f mm-call: Codestyle
Prefer char over gchar and some whitespace cleanups.
2023-01-31 08:55:38 +00:00
Evangelos Ribeiro Tzaras
18173f067f sip-provider: Use STR_IS_NULL_OR_EMPTY macro 2023-01-26 12:03:39 +00:00
Evangelos Ribeiro Tzaras
204772abbd sip-provider: Sort includes
We want the configuration to be included first
2023-01-26 12:03:39 +00:00
Evangelos Ribeiro Tzaras
bb6b76107c build: Rename util.{c,h} to calls-util.{c,h}
"util" is a very generic name. This guards against accidentally
including similarly named headers from elsewhere.
2023-01-22 07:33:02 +00:00
Evangelos Ribeiro Tzaras
8d15f46b3f sip-pipeline: Only use gstreamer debugging if option is set
Fixes build issues when gstreamer has not been compiled with debugging
enabled.

Fixes: #533
2022-12-22 15:08:18 +00:00