/* * * Connection Manager * * Copyright (C) 2007-2009 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 * published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA * */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include #include "connman.h" DBusMessage *__connman_error_failed(DBusMessage *msg, int errnum) { const char *str = strerror(errnum); switch (errnum) { case EACCES: return __connman_error_permission_denied(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 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: return __connman_error_not_connected(msg); case EALREADY: return __connman_error_in_progress(msg); } return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE ".Failed", str); } DBusMessage *__connman_error_invalid_arguments(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE ".InvalidArguments", "Invalid arguments"); } DBusMessage *__connman_error_permission_denied(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE ".PermissionDenied", "Permission denied"); } DBusMessage *__connman_error_not_supported(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE ".NotSupported", "Not supported"); } DBusMessage *__connman_error_not_implemented(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE ".NotImplemented", "Not implemented"); } DBusMessage *__connman_error_no_carrier(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE ".NoCarrier", "No carrier"); } DBusMessage *__connman_error_in_progress(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE ".InProgress", "In progress"); } 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"); } DBusMessage *__connman_error_operation_timeout(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE "OperationTimeout", "Operation timeout"); } DBusMessage *__connman_error_invalid_service(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE "InvalidService", "Invalid service"); } DBusMessage *__connman_error_invalid_property(DBusMessage *msg) { return g_dbus_create_error(msg, CONNMAN_ERROR_INTERFACE, "InvalidProperty", "Invalid property"); }