00001
00002
00007 #ifndef __TRANSPORT_EXCEPTION_H__
00008 #define __TRANSPORT_EXCEPTION_H__
00009
00010 #include "libepp_nicbr.H"
00011
00012 #include "GeneralException.H"
00013
00014 LIBEPP_NICBR_NS_BEGIN
00015
00017 class TransportException : public GeneralException
00018 {
00019 public:
00021 enum ExceptionCode {
00022 BIO_DO_CONNECT_ERR = 1000,
00023 LOST_CONNECTION = 1001,
00024 SSL_NEW_ERR = 1002,
00025 SSL_CONNECT_ERR = 1003,
00026 SSL_READ_ERR = 1004,
00027 SSL_WRITE_ERR = 1005,
00028 READ_TIMEOUT = 1006,
00029 WRITE_TIMEOUT = 1007,
00030 MISSING_TOTAL_LENGTH = 1008,
00031 INVALID_TOTAL_LENGTH = 1009,
00032 PAYLOAD_INCOMPLETE = 1010,
00033 LOAD_CERT_FILE_ERR = 1011,
00034 LOAD_KEY_FILE_ERR = 1012,
00035 GET_FNCTL_ERR = 1013,
00036 SET_NONBLOCKING_ERR = 1014
00037 };
00038
00040
00045 TransportException(const ExceptionCode &code, const string &msg,
00046 const string &low_level_msg = "") :
00047 GeneralException(code, msg, low_level_msg) {};
00048
00049 private:
00050
00051 };
00052
00053 LIBEPP_NICBR_NS_END
00054 #endif //__TRANSPORT_EXCEPTION_H__