aboutsummaryrefslogtreecommitdiff
path: root/src/mm-base-call.c
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2019-09-25 14:41:58 +0200
committerAleksander Morgado <aleksander@aleksander.es>2019-10-17 10:51:50 +0200
commit2c0281aac9430731766cd4203c638848b9434633 (patch)
tree839531a6f53ed1b43157a97de246d8088c1dafeb /src/mm-base-call.c
parentd6f9d5e9ec36e403be9836c55c8ffd19422605ef (diff)
call: disallow non-emergency calls when in emergency-only state
Diffstat (limited to 'src/mm-base-call.c')
-rw-r--r--src/mm-base-call.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mm-base-call.c b/src/mm-base-call.c
index ce41112e..40dd6edd 100644
--- a/src/mm-base-call.c
+++ b/src/mm-base-call.c
@@ -225,6 +225,13 @@ handle_start_auth_ready (MMBaseModem *modem,
mm_info ("user request to start call");
+ /* Disallow non-emergency calls when in emergency-only state */
+ if (!mm_iface_modem_voice_authorize_outgoing_call (MM_IFACE_MODEM_VOICE (modem), ctx->self, &error)) {
+ g_dbus_method_invocation_take_error (ctx->invocation, error);
+ handle_start_context_free (ctx);
+ return;
+ }
+
/* Check if we do support doing it */
if (!MM_BASE_CALL_GET_CLASS (ctx->self)->start ||
!MM_BASE_CALL_GET_CLASS (ctx->self)->start_finish) {