File: Helpers.cpp

package info (click to toggle)
swift-im 5.0~alpha2.145.g12d031cf8%2Bdfsg-4.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 27,256 kB
  • sloc: cpp: 134,640; python: 2,701; sh: 774; xml: 561; javascript: 69; makefile: 59
file content (65 lines) | stat: -rw-r--r-- 4,310 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
/*
 * Copyright (c) 2013-2015 Isode Limited.
 * All rights reserved.
 * See the COPYING file for more information.
 */

#include <Sluift/Helpers.h>

#include <Swiften/Client/ClientError.h>
#include <Swiften/Component/ComponentError.h>

using namespace Swift;

std::string Swift::getErrorString(const ClientError& error) {
    std::string reason = "Disconnected: ";
    switch(error.getType()) {
        case ClientError::UnknownError: reason += "Unknown Error"; break;
        case ClientError::ConnectionError: reason += "Error connecting to server"; break;
        case ClientError::ConnectionReadError: reason += "Error while receiving server data"; break;
        case ClientError::ConnectionWriteError: reason += "Error while sending data to the server"; break;
        case ClientError::XMLError: reason += "Error parsing server data"; break;
        case ClientError::AuthenticationFailedError: reason += "Login/password invalid"; break;
        case ClientError::UnexpectedElementError: reason += "Unexpected response"; break;
        case ClientError::DomainNameResolveError: reason += "Unable to find server"; break;
        case ClientError::CompressionFailedError: reason += "Error while compressing stream"; break;
        case ClientError::ServerVerificationFailedError: reason += "Server verification failed"; break;
        case ClientError::NoSupportedAuthMechanismsError: reason += "Authentication mechanisms not supported"; break;
        case ClientError::ResourceBindError: reason += "Error binding resource"; break;
        case ClientError::RevokedError: reason += "Certificate got revoked"; break;
        case ClientError::RevocationCheckFailedError: reason += "Failed to do revokation check"; break;
        case ClientError::SessionStartError: reason += "Error starting session"; break;
        case ClientError::StreamError: reason += "Stream error"; break;
        case ClientError::TLSError: reason += "Encryption error"; break;
        case ClientError::ClientCertificateLoadError: reason += "Error loading certificate (Invalid file or password?)"; break;
        case ClientError::ClientCertificateError: reason += "Certificate not authorized"; break;
        case ClientError::UnknownCertificateError: reason += "Unknown certificate"; break;
        case ClientError::CertificateCardRemoved: reason += "Certificate card removed"; break;
        case ClientError::CertificateExpiredError: reason += "Certificate has expired"; break;
        case ClientError::CertificateNotYetValidError: reason += "Certificate is not yet valid"; break;
        case ClientError::CertificateSelfSignedError: reason += "Certificate is self-signed"; break;
        case ClientError::CertificateRejectedError: reason += "Certificate has been rejected"; break;
        case ClientError::CertificateUntrustedError: reason += "Certificate is not trusted"; break;
        case ClientError::InvalidCertificatePurposeError: reason += "Certificate cannot be used for encrypting your connection"; break;
        case ClientError::CertificatePathLengthExceededError: reason += "Certificate path length constraint exceeded"; break;
        case ClientError::InvalidCertificateSignatureError: reason += "Invalid certificate signature"; break;
        case ClientError::InvalidCAError: reason += "Invalid Certificate Authority"; break;
        case ClientError::InvalidServerIdentityError: reason += "Certificate does not match the host identity"; break;
    }
    return reason;
}

std::string Swift::getErrorString(const ComponentError& error) {
    std::string reason = "Disconnected: ";
    switch(error.getType()) {
        case ComponentError::UnknownError: reason += "Unknown Error"; break;
        case ComponentError::ConnectionError: reason += "Error connecting to server"; break;
        case ComponentError::ConnectionReadError: reason += "Error while receiving server data"; break;
        case ComponentError::ConnectionWriteError: reason += "Error while sending data to the server"; break;
        case ComponentError::XMLError: reason += "Error parsing server data"; break;
        case ComponentError::AuthenticationFailedError: reason += "Login/password invalid"; break;
        case ComponentError::UnexpectedElementError: reason += "Unexpected response"; break;
    }
    return reason;
}