Imported Upstream version 1.38
[platform/upstream/connman.git] / src / error.c
index 59b2a6a..a7a8a1d 100644 (file)
@@ -2,7 +2,7 @@
  *
  *  Connection Manager
  *
- *  Copyright (C) 2007-2009  Intel Corporation. All rights reserved.
+ *  Copyright (C) 2007-2013  Intel Corporation. All rights reserved.
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License version 2 as
@@ -35,16 +35,45 @@ DBusMessage *__connman_error_failed(DBusMessage *msg, int errnum)
        const char *str = strerror(errnum);
 
        switch (errnum) {
+       case ESRCH:
+               return __connman_error_not_registered(msg);
+       case ENXIO:
+               return __connman_error_not_found(msg);
+       case EPERM:
        case EACCES:
                return __connman_error_permission_denied(msg);
+       case EEXIST:
+               return __connman_error_already_exists(msg);
        case EINVAL:
                return __connman_error_invalid_arguments(msg);
+       case ENOSYS:
+               return __connman_error_not_implemented(msg);
+       case ENOLINK:
+               return __connman_error_no_carrier(msg);
+       case ENOTUNIQ:
+               return __connman_error_not_unique(msg);
+       case EOPNOTSUPP:
+               return __connman_error_not_supported(msg);
+       case ECONNABORTED:
+               return __connman_error_operation_aborted(msg);
+       case EISCONN:
+               return __connman_error_already_connected(msg);
+       case ENOTCONN:
+       case ECONNREFUSED:
+               return __connman_error_not_connected(msg);
+       case ETIMEDOUT:
+               return __connman_error_operation_timeout(msg);
+       case EALREADY:
        case EINPROGRESS:
                return __connman_error_in_progress(msg);
+       case ENOKEY:
+               return __connman_error_passphrase_required(msg);
+       case ECANCELED:
+               return __connman_error_operation_canceled(msg);
        }
 
        return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
-                                                       ".Failed", str);
+                                       ".Failed", "%s", str);
 }
 
 DBusMessage *__connman_error_invalid_arguments(DBusMessage *msg)
@@ -59,6 +88,24 @@ DBusMessage *__connman_error_permission_denied(DBusMessage *msg)
                                ".PermissionDenied", "Permission denied");
 }
 
+DBusMessage *__connman_error_passphrase_required(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                               ".PassphraseRequired", "Passphrase required");
+}
+
+DBusMessage *__connman_error_not_registered(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                                       ".NotRegistered", "Not registered");
+}
+
+DBusMessage *__connman_error_not_unique(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                                       ".NotUnique", "Not unique");
+}
+
 DBusMessage *__connman_error_not_supported(DBusMessage *msg)
 {
        return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
@@ -71,6 +118,12 @@ DBusMessage *__connman_error_not_implemented(DBusMessage *msg)
                                        ".NotImplemented", "Not implemented");
 }
 
+DBusMessage *__connman_error_not_found(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                                               ".NotFound", "Not found");
+}
+
 DBusMessage *__connman_error_no_carrier(DBusMessage *msg)
 {
        return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
@@ -83,33 +136,61 @@ DBusMessage *__connman_error_in_progress(DBusMessage *msg)
                                                ".InProgress", "In progress");
 }
 
+DBusMessage *__connman_error_already_exists(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                               ".AlreadyExists", "Already exists");
+}
+
+DBusMessage *__connman_error_already_enabled(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                               ".AlreadyEnabled", "Already enabled");
+}
+
+DBusMessage *__connman_error_already_disabled(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                               ".AlreadyDisabled", "Already disabled");
+}
+
 DBusMessage *__connman_error_already_connected(DBusMessage *msg)
 {
        return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
                                ".AlreadyConnected", "Already connected");
-
 }
 
+DBusMessage *__connman_error_not_connected(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                                       ".NotConnected", "Not connected");
+}
 DBusMessage *__connman_error_operation_aborted(DBusMessage *msg)
 {
        return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
-                               "OperationAborted", "Operation aborted");
+                               ".OperationAborted", "Operation aborted");
 }
 
 DBusMessage *__connman_error_operation_timeout(DBusMessage *msg)
 {
        return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
-                               "OperationTimeout", "Operation timeout");
+                               ".OperationTimeout", "Operation timeout");
 }
 
 DBusMessage *__connman_error_invalid_service(DBusMessage *msg)
 {
        return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
-                                       "InvalidService", "Invalid service");
+                               ".InvalidService", "Invalid service");
 }
 
 DBusMessage *__connman_error_invalid_property(DBusMessage *msg)
 {
-       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE,
-                                       "InvalidProperty", "Invalid property");
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                               ".InvalidProperty", "Invalid property");
+}
+
+DBusMessage *__connman_error_operation_canceled(DBusMessage *msg)
+{
+       return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE
+                               ".OperationCanceled", "Operation canceled");
 }