diff options
author | 2025-06-07 00:53:16 +0200 | |
---|---|---|
committer | 2025-06-07 01:00:28 +0200 | |
commit | f4d8e4f4a42efa6329b2adf6e8554d7235d5f95e (patch) | |
tree | faaecd0bc0d4fed2a9b7f9417c10acd94d6f7660 | |
parent | 0bf0f9e941c85d06ce4b5909d7a61b3a4f2a6a05 (diff) | |
download | libimobiledevice-f4d8e4f4a42efa6329b2adf6e8554d7235d5f95e.tar.gz libimobiledevice-f4d8e4f4a42efa6329b2adf6e8554d7235d5f95e.tar.bz2 |
Add idevice_strerror() to interface
-rw-r--r-- | include/libimobiledevice/libimobiledevice.h | 9 | ||||
-rw-r--r-- | src/idevice.c | 25 |
2 files changed, 34 insertions, 0 deletions
diff --git a/include/libimobiledevice/libimobiledevice.h b/include/libimobiledevice/libimobiledevice.h index 897aa37..8df3fed 100644 --- a/include/libimobiledevice/libimobiledevice.h +++ b/include/libimobiledevice/libimobiledevice.h @@ -404,6 +404,15 @@ LIBIMOBILEDEVICE_API idevice_error_t idevice_get_handle(idevice_t device, uint32 LIBIMOBILEDEVICE_API idevice_error_t idevice_get_udid(idevice_t device, char **udid); /** + * Gets a readable error string for a given idevice error code. + * + * @param err An idevice error code + * + * @return A readable error string + */ +LIBIMOBILEDEVICE_API const char* idevice_strerror(idevice_error_t err); + +/** * Returns a static string of the libimobiledevice version. * * @return The libimobiledevice version as static ascii string diff --git a/src/idevice.c b/src/idevice.c index d07b691..e9c909f 100644 --- a/src/idevice.c +++ b/src/idevice.c @@ -1534,3 +1534,28 @@ idevice_error_t idevice_connection_disable_bypass_ssl(idevice_connection_t conne return IDEVICE_E_SUCCESS; } + +const char* idevice_strerror(idevice_error_t err) +{ + switch (err) { + case IDEVICE_E_SUCCESS: + return "Success"; + case IDEVICE_E_INVALID_ARG: + return "Invalid argument"; + case IDEVICE_E_UNKNOWN_ERROR: + return "Unknown Error"; + case IDEVICE_E_NO_DEVICE: + return "No device"; + case IDEVICE_E_NOT_ENOUGH_DATA: + return "Not enough data"; + case IDEVICE_E_CONNREFUSED: + return "Connection refused"; + case IDEVICE_E_SSL_ERROR: + return "SSL error"; + case IDEVICE_E_TIMEOUT: + return "Timeout"; + default: + break; + } + return "Unknown Error"; +} |