aboutsummaryrefslogtreecommitdiff
path: root/src/olm.cpp
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2016-05-16 16:47:49 +0100
committerRichard van der Hoff <richard@matrix.org>2016-05-24 13:35:28 +0100
commit256bce10fc6c811293cd7d9089ba2d69cec0d59b (patch)
tree6462822c0faf18393d71eaeaa71fbb6e4bd803c8 /src/olm.cpp
parent2e7800cf650197f4b8998ef8ac24d08daa316a2f (diff)
Factor out olm_error_to_string to a separate file
I want to be able to use this functionality from elsewhere, so factor it out to its own file.
Diffstat (limited to 'src/olm.cpp')
-rw-r--r--src/olm.cpp38
1 files changed, 6 insertions, 32 deletions
diff --git a/src/olm.cpp b/src/olm.cpp
index fcd033a..babe7eb 100644
--- a/src/olm.cpp
+++ b/src/olm.cpp
@@ -164,20 +164,6 @@ std::size_t b64_input(
return raw_length;
}
-static const char * ERRORS[11] {
- "SUCCESS",
- "NOT_ENOUGH_RANDOM",
- "OUTPUT_BUFFER_TOO_SMALL",
- "BAD_MESSAGE_VERSION",
- "BAD_MESSAGE_FORMAT",
- "BAD_MESSAGE_MAC",
- "BAD_MESSAGE_KEY_ID",
- "INVALID_BASE64",
- "BAD_ACCOUNT_KEY",
- "UNKNOWN_PICKLE_VERSION",
- "CORRUPTED_PICKLE",
-};
-
} // namespace
@@ -192,35 +178,23 @@ size_t olm_error() {
const char * olm_account_last_error(
OlmAccount * account
) {
- unsigned error = unsigned(from_c(account)->last_error);
- if (error < (sizeof(ERRORS)/sizeof(ERRORS[0]))) {
- return ERRORS[error];
- } else {
- return "UNKNOWN_ERROR";
- }
+ auto error = from_c(account)->last_error;
+ return _olm_error_to_string(error);
}
const char * olm_session_last_error(
OlmSession * session
) {
- unsigned error = unsigned(from_c(session)->last_error);
- if (error < (sizeof(ERRORS)/sizeof(ERRORS[0]))) {
- return ERRORS[error];
- } else {
- return "UNKNOWN_ERROR";
- }
+ auto error = from_c(session)->last_error;
+ return _olm_error_to_string(error);
}
const char * olm_utility_last_error(
OlmUtility * utility
) {
- unsigned error = unsigned(from_c(utility)->last_error);
- if (error < (sizeof(ERRORS)/sizeof(ERRORS[0]))) {
- return ERRORS[error];
- } else {
- return "UNKNOWN_ERROR";
- }
+ auto error = from_c(utility)->last_error;
+ return _olm_error_to_string(error);
}
size_t olm_account_size() {