Evangelos Ribeiro Tzaras
21578557f4
sip: provider: Don't store the password in the GKeyFile
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
fe6b5f9f4a
sip: provider: Retrieve password from keyring
...
Fixes #251 .
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
8ca63828df
sip: provider: Delete password from keyring when deleting account
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
a8516f6e7b
sip: provider: Update credentials on disk when removing origin
...
Otherwise the key file will be unaltered and loads the same account on
the next startup.
One more step closer to fixing #251 .
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
40cea6760b
sip: provider: Use the secret store to store credentials
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
3f12b3fcd5
sip: provider: Add argument to _add_origin() whether to store credentials
...
This allows us to avoid unnecessary saving to disk during initial account
loading.
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
e9f155678e
sip: origin: Set and update name of origin
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
5c1b76908b
sip: provider: Save accounts to disk
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
7717633698
sip: provider: Add API to save credentials to GKeyFile
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
0e5366ddbb
sip: account-widget: Emit "widget-edit-done" when done editting
...
This let's top level containers know to take appropriate action (i.e. hide).
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
e36469e796
sip: Implement CallsAccountProvider interface
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
23cb050f61
sip: Introduce CallsSipAccountWidget
...
This widget can be used to add new accounts or edit existing ones.
First part of #264 .
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
1749dcec60
sip: provider: Add API to remove origins
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
1a4b501653
sip: provider: Rename test environment variable
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
fd9b57c1b3
sip: provider: Load credentials from GKeyFile
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
58331afcf7
sip: provider: Use g_auto and GStrv
...
Instead of char** and g_strfreev()
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
a638b64402
account: Add address property
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
babd013bd7
Remove CallsCredentials and adapt to changes
...
The provider knows best which credentials it needs and CallsCredentials
was not generic to begin with, so get rid of it.
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
2af2b316ec
Various codestyle fixes
2021-07-20 10:17:17 +02:00
Evangelos Ribeiro Tzaras
864a15d799
sip: origin: Explicitly include contact header for sofia > 1.13
...
Fixes #304
2021-07-16 09:11:27 +00:00
Evangelos Ribeiro Tzaras
f930874d00
sip: provider: Keep provider alive while there are still origins
...
CallsSipOrigin accesses the CallsSipContext (owned by the provider) in its
dispose() which will be invalid once CallsSipProvider gets freed.
This commit will make certain that the provider stays alive for the lifetime
of it's origins.
2021-06-26 08:56:18 +02:00
Evangelos Ribeiro Tzaras
8a230fc5b5
sip: origin: No need to explicitly clear nua handles
...
Memory allocations from su_home_t will get cleaned up, when the home is freed.
2021-06-21 13:20:32 +02:00
Evangelos Ribeiro Tzaras
a803294c4a
sip: origin: Handle unregistering (going offline)
...
and set the account state accordingly.
2021-06-18 19:29:25 +02:00
Evangelos Ribeiro Tzaras
e6c7994abc
sip: origin: Remove unnecessary notify
2021-06-18 19:29:25 +02:00
Evangelos Ribeiro Tzaras
5bd84043b9
sip: origin: codestyle
2021-06-18 19:28:12 +02:00
Evangelos Ribeiro Tzaras
dbb829be06
debug: Add G_LOG_DOMAIN to every file using g_debug()
2021-06-18 11:12:13 +02:00
Evangelos Ribeiro Tzaras
736c17a4bc
sip: origin: Fix if condition in dispose()
...
This should make sure that origins go offline
2021-06-11 17:51:06 +02:00
Evangelos Ribeiro Tzaras
6c146897d4
mm: origin: Don't shadow props variable
...
As caught by compiling with `'-Wshadow`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
521979ef69
ofono: call: Don't shadow props variable
...
As caught by compiling with `-Wshadow`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
7988ddf85b
sip: media-pipeline: Don't shadow props variable
...
As caught by compiling with `-Wshadow`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
2847508034
Fix missing-declarations warnings all over the codebase
...
As caught by compiling with `-Wmissing-declarations`
by either making functions static, or declaring them in the header.
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
96a7d901c1
Fix old-style warnings all over the codebase
...
As caught by compiling with `-Wold-style-definition` and `-Wstrict-prototypes`.
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
dde4bd8abf
sip: provider: Don't warn when trying to add account multiple times
...
A g_debug() will suffice which will let us get rid of g_test_expect_message() to
as we don't need to guard against the warning anymore.
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
44f2002f86
manager: Differentiate the NO_ORIGIN state
...
This avoids confusion when only the SIP plugin is loaded, but no account
is being used.
For this we introduce two new functions in the abstract CallsProvider class:
`is_modem()` to indicate whether the the provider deals with PTSN telephony and
`is_operational()` which by default simply checks if there any avalaible origins
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
0c966fdf83
origin: Add API to query supported protocols
...
This will allow selecting a suitable origin when placing outgoing calls.
2021-05-28 17:02:02 +02:00
Evangelos Ribeiro Tzaras
7ad0f4cdd6
provider: Add API to query supported protocols
...
These are the protocols that the provider plugin may support. The origins
must be queried independently whether or not they support any given protocol.
Example: A SIP origin/account may or may not support the "tel" protocol.
2021-05-28 17:02:02 +02:00
Evangelos Ribeiro Tzaras
53f69b06dd
call: Introduce protocol property
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
1def4c3585
plugins: provider: Use CallsOrigin instead of derived types for GListStore
...
Otherwise we run into trouble when using `g_list_store_find()`
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
a888ac54b1
mm: origin: Try using own number as the origin name
...
This will make it easier to select an origin for outgoing calls. Without this
change the name might be "0" which is not very expressive.
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
fecdc1fff8
cleanup: Fix calls_origin_get_name() related memory leaks
...
Document calls_origin_get_name() correctly as transfer-full.
Additionaly fix related memory leaks.
2021-05-28 13:18:24 +02:00
Mohammed Sadiq
b1278f6140
build: Avoid building files multiple times
...
We don't have to build each source for every test, instead we could
create a static library link it with every test, which will be a lot
faster.
2021-05-17 20:00:04 +05:30
Evangelos Ribeiro Tzaras
95f16cb527
sip: provider: Implement CallsAccountProvider interface
2021-05-04 06:44:43 +02:00
Evangelos Ribeiro Tzaras
36cd9bd122
sip: provider: return origin in calls_sip_provider_add_origin()
2021-05-04 05:58:41 +02:00
Evangelos Ribeiro Tzaras
a6cb02a4c9
sip: provider: codestyle
2021-05-04 05:58:41 +02:00
Evangelos Ribeiro Tzaras
3edd6d002b
sip: origin: Implement CallsAccountsInterface
2021-05-04 05:57:42 +02:00
Evangelos Ribeiro Tzaras
781adaddee
sip: origin: Use CallsAccountState instead of SipAccountState
2021-05-04 05:57:42 +02:00
Evangelos Ribeiro Tzaras
5d0de3d299
sip: origin: Use CallsCredentials and adapt to changes
...
All parts not related to credentials are now being set when creating the nua
handles and then updated with nua_set_params() when the credentials get updated.
2021-05-04 05:57:06 +02:00
Evangelos Ribeiro Tzaras
3f72d34c49
Add CallsCredentials class and use it in CallsSipProvider
...
CallsCredentials is a dumb container to store account credentials.
This is done in preparation for the account management in the UI.
2021-05-04 05:57:06 +02:00
Evangelos Ribeiro Tzaras
d6916b3510
sip: media-pipeline: Do not set the stream properties prematurely
2021-05-04 05:57:06 +02:00
Evangelos Ribeiro Tzaras
06076a864a
sip: media-pipeline: Fix memory leak in error path
2021-05-02 02:36:31 +02:00