summaryrefslogtreecommitdiffstats
path: root/src/modem.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/modem.c')
-rw-r--r--src/modem.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/modem.c b/src/modem.c
index d1886c94..13c6e608 100644
--- a/src/modem.c
+++ b/src/modem.c
@@ -677,6 +677,9 @@ static DBusMessage *set_property_online(struct ofono_modem *modem,
if (modem->online == online)
return dbus_message_new_method_return(msg);
+ if (ofono_modem_get_emergency_mode(modem) == TRUE)
+ return __ofono_error_emergency_active(msg);
+
if (driver->set_online == NULL)
return __ofono_error_not_implemented(msg);
@@ -922,6 +925,9 @@ static DBusMessage *set_property_lockdown(struct ofono_modem *modem,
goto done;
}
+ if (ofono_modem_get_emergency_mode(modem) == TRUE)
+ return __ofono_error_emergency_active(msg);
+
modem->lock_owner = g_strdup(caller);
modem->lock_watch = g_dbus_add_disconnect_watch(conn,
@@ -1012,6 +1018,9 @@ static DBusMessage *modem_set_property(DBusConnection *conn,
if (modem->powered == powered)
return dbus_message_new_method_return(msg);
+ if (ofono_modem_get_emergency_mode(modem) == TRUE)
+ return __ofono_error_emergency_active(msg);
+
if (modem->lockdown)
return __ofono_error_access_denied(msg);