| /* |
| * |
| * neard - Near Field Communication manager |
| * |
| * Copyright (C) 2011 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 <config.h> |
| #endif |
| |
| #include <errno.h> |
| #include <string.h> |
| |
| #include <gdbus.h> |
| |
| #include "near.h" |
| |
| DBusMessage *__near_error_failed(DBusMessage *msg, int errnum) |
| { |
| const char *str = strerror(errnum); |
| |
| switch (errnum) { |
| case ESRCH: |
| return __near_error_not_registered(msg); |
| case ENXIO: |
| return __near_error_not_found(msg); |
| case ENOMEM: |
| return __near_error_out_of_memory(msg); |
| case EACCES: |
| return __near_error_permission_denied(msg); |
| case EEXIST: |
| return __near_error_already_exists(msg); |
| case EINVAL: |
| return __near_error_invalid_arguments(msg); |
| case EIO: |
| return __near_error_io_error(msg); |
| case ENOSYS: |
| return __near_error_not_implemented(msg); |
| case ENOLINK: |
| return __near_error_no_carrier(msg); |
| case ENOTUNIQ: |
| return __near_error_not_unique(msg); |
| case EOPNOTSUPP: |
| return __near_error_not_supported(msg); |
| case ECONNABORTED: |
| return __near_error_operation_aborted(msg); |
| case EISCONN: |
| return __near_error_already_connected(msg); |
| case ENOTCONN: |
| return __near_error_not_connected(msg); |
| case ETIMEDOUT: |
| return __near_error_operation_timeout(msg); |
| case EALREADY: |
| return __near_error_in_progress(msg); |
| case ENOKEY: |
| return __near_error_passphrase_required(msg); |
| case ENOSPC: |
| return __near_error_no_space_left(msg); |
| } |
| |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".Failed", "%s", str); |
| } |
| |
| DBusMessage *__near_error_invalid_arguments(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".InvalidArguments", "Invalid arguments"); |
| } |
| |
| DBusMessage *__near_error_out_of_memory(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".OutOfMemory", "Out of memory"); |
| } |
| |
| DBusMessage *__near_error_permission_denied(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".PermissionDenied", "Permission denied"); |
| } |
| |
| DBusMessage *__near_error_passphrase_required(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".PassphraseRequired", "Passphrase required"); |
| } |
| |
| DBusMessage *__near_error_not_registered(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".NotRegistered", "Not registered"); |
| } |
| |
| DBusMessage *__near_error_not_unique(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".NotUnique", "Not unique"); |
| } |
| |
| DBusMessage *__near_error_not_supported(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".NotSupported", "Not supported"); |
| } |
| |
| DBusMessage *__near_error_not_implemented(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".NotImplemented", "Not implemented"); |
| } |
| |
| DBusMessage *__near_error_not_found(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".NotFound", "Not found"); |
| } |
| |
| DBusMessage *__near_error_not_polling(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".Failed", "Not polling"); |
| } |
| |
| DBusMessage *__near_error_no_carrier(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".NoCarrier", "No carrier"); |
| } |
| |
| DBusMessage *__near_error_in_progress(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".InProgress", "In progress"); |
| } |
| |
| DBusMessage *__near_error_already_exists(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".AlreadyExists", "Already exists"); |
| } |
| |
| DBusMessage *__near_error_already_enabled(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".AlreadyEnabled", "Already enabled"); |
| } |
| |
| DBusMessage *__near_error_already_disabled(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".AlreadyDisabled", "Already disabled"); |
| } |
| |
| DBusMessage *__near_error_already_connected(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".AlreadyConnected", "Already connected"); |
| } |
| |
| DBusMessage *__near_error_not_connected(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".NotConnected", "Not connected"); |
| } |
| DBusMessage *__near_error_operation_aborted(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".OperationAborted", "Operation aborted"); |
| } |
| |
| DBusMessage *__near_error_operation_timeout(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".OperationTimeout", "Operation timeout"); |
| } |
| |
| DBusMessage *__near_error_invalid_service(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".InvalidService", "Invalid service"); |
| } |
| |
| DBusMessage *__near_error_invalid_property(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".InvalidProperty", "Invalid property"); |
| } |
| |
| DBusMessage *__near_error_io_error(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".IOError", "I/O Error"); |
| } |
| |
| DBusMessage *__near_error_no_space_left(DBusMessage *msg) |
| { |
| return g_dbus_create_error(msg, NFC_ERROR_INTERFACE |
| ".NoSpaceLeft", "No space left"); |
| } |