mirror of git://git.sysmocom.de/ofono
Refactor: Send NotAttached error
If one tries to activate the context and we're currently not attached to GPRS, report a NotAttached error instead of a failure
This commit is contained in:
parent
39b043a40a
commit
e1e44e772a
|
@ -316,6 +316,12 @@ DBusMessage *__ofono_error_in_use(DBusMessage *msg)
|
||||||
"The resource is currently in use");
|
"The resource is currently in use");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DBusMessage *__ofono_error_not_attached(DBusMessage *msg)
|
||||||
|
{
|
||||||
|
return g_dbus_create_error(msg, DBUS_GSM_ERROR_INTERFACE ".NotAttached",
|
||||||
|
"GPRS is not attached");
|
||||||
|
}
|
||||||
|
|
||||||
void __ofono_dbus_pending_reply(DBusMessage **msg, DBusMessage *reply)
|
void __ofono_dbus_pending_reply(DBusMessage **msg, DBusMessage *reply)
|
||||||
{
|
{
|
||||||
DBusConnection *conn = ofono_dbus_get_connection();
|
DBusConnection *conn = ofono_dbus_get_connection();
|
||||||
|
|
|
@ -603,12 +603,12 @@ static DBusMessage *pri_set_property(DBusConnection *conn,
|
||||||
if (ctx->active == (ofono_bool_t) value)
|
if (ctx->active == (ofono_bool_t) value)
|
||||||
return dbus_message_new_method_return(msg);
|
return dbus_message_new_method_return(msg);
|
||||||
|
|
||||||
|
if (value && !ctx->gprs->attached)
|
||||||
|
return __ofono_error_not_attached(msg);
|
||||||
|
|
||||||
if (ctx->gprs->flags & GPRS_FLAG_ATTACHING)
|
if (ctx->gprs->flags & GPRS_FLAG_ATTACHING)
|
||||||
return __ofono_error_busy(msg);
|
return __ofono_error_busy(msg);
|
||||||
|
|
||||||
if (value && !ctx->gprs->attached)
|
|
||||||
return __ofono_error_failed(msg);
|
|
||||||
|
|
||||||
if (gc == NULL || gc->driver->activate_primary == NULL ||
|
if (gc == NULL || gc->driver->activate_primary == NULL ||
|
||||||
gc->driver->deactivate_primary == NULL)
|
gc->driver->deactivate_primary == NULL)
|
||||||
return __ofono_error_not_implemented(msg);
|
return __ofono_error_not_implemented(msg);
|
||||||
|
|
|
@ -51,6 +51,7 @@ DBusMessage *__ofono_error_not_supported(DBusMessage *msg);
|
||||||
DBusMessage *__ofono_error_timed_out(DBusMessage *msg);
|
DBusMessage *__ofono_error_timed_out(DBusMessage *msg);
|
||||||
DBusMessage *__ofono_error_sim_not_ready(DBusMessage *msg);
|
DBusMessage *__ofono_error_sim_not_ready(DBusMessage *msg);
|
||||||
DBusMessage *__ofono_error_in_use(DBusMessage *msg);
|
DBusMessage *__ofono_error_in_use(DBusMessage *msg);
|
||||||
|
DBusMessage *__ofono_error_not_attached(DBusMessage *msg);
|
||||||
|
|
||||||
void __ofono_dbus_pending_reply(DBusMessage **msg, DBusMessage *reply);
|
void __ofono_dbus_pending_reply(DBusMessage **msg, DBusMessage *reply);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue