NetworkExceptions.h

Go to the documentation of this file.
00001 /*
00002  * $Id: NetworkExceptions.h 566 2007-12-02 08:20:52Z mindstorm2600 $
00003  *
00004  * X-VR2 
00005  * 
00006  * Copyright (C) Juan V. Guerrero 2007
00007  * 
00008  * Juan V. Guerrero <mindstorm2600@users.sourceforge.net>
00009  * 
00010  * This program is free software, distributed under the terms of
00011  * the GNU General Public License Version 2. See the LICENSE file
00012  * at the top of the source tree.
00013  */
00014 #ifndef __XVR2_NETWORK_EXCEPTION_H__
00015 #define __XVR2_NETWORK_EXCEPTION_H__
00016 #include<xvr2/CoreExceptions.h>
00017 #include<xvr2/SystemException.h>
00018 
00019 namespace xvr2 {
00020         namespace Net {
00023                 class NetworkException:public SystemException{
00024                         public:
00030                                 NetworkException();
00033                                 NetworkException(OSErrorCodeT error_code);
00034                 };
00035 
00036                 class UnsupportedProtocol:public NetworkException {
00037                         private:
00038                                 int _proto_id;
00039                         public:
00040                                 UnsupportedProtocol();
00041                                 UnsupportedProtocol(OSErrorCodeT error_code);
00042                                 UnsupportedProtocol(OSErrorCodeT error_code, int _protocol_id);
00043                                 int protocolID();
00044                                 String protocolName();
00045 
00046                 };
00047 
00049                 class ConnectionTimeout:public NetworkException{
00050                         public:
00056                                 ConnectionTimeout();
00057                                 ConnectionTimeout(OSErrorCodeT error_code);
00058                 };
00059 
00062                 class ConnectionRefused:public NetworkException{
00063                         public:
00069                                 ConnectionRefused();
00070                                 ConnectionRefused(OSErrorCodeT error_code);
00071                 };
00072 
00075                 class NetworkUnreachable:public NetworkException{
00076                         public:
00082                                 NetworkUnreachable();
00083                                 NetworkUnreachable(OSErrorCodeT error_code);
00084                 };
00085 
00088                 class SocketAlreadyBounded:public NetworkException{
00089                         public:
00095                                 SocketAlreadyBounded();
00096                                 SocketAlreadyBounded(OSErrorCodeT error_code);
00097                 };
00098 
00100                 class SocketAlreadyUsed:public NetworkException{
00101                         public:
00107                                 SocketAlreadyUsed();
00108                                 SocketAlreadyUsed(OSErrorCodeT error_code);
00109                 };
00110 
00111                 class CertificateLoadLocations:public NetworkException{
00112                         public:
00114                                 CertificateLoadLocations();
00115                 };
00116                 class CertificateLookupPending:public NetworkException{
00117                         public:
00119                                 CertificateLookupPending();
00120                 };
00122                 class ConnectionResetByPeer:public NetworkException{
00123                         public:
00127                                 ConnectionResetByPeer();
00128                 };
00131                 class HostNotFound:public NetworkException{
00132                         public:
00136                                 HostNotFound();
00137                 };
00138                 class KeyfileUnreadable:public NetworkException{
00139                         public:
00141                                 KeyfileUnreadable();
00142                 };
00143                 class NoDataForReading:public NetworkException{
00144                         public:
00146                                 NoDataForReading();
00147                 };
00150                 class NoIPForYou:public NetworkException{
00151                         public:
00155                                 NoIPForYou();
00156                 };
00157                 class NotConnected:public NetworkException{
00158                         public:
00160                                 NotConnected();
00161                 };
00162                 class NoValidCipherInList:public NetworkException{
00163                         public:
00165                                 NoValidCipherInList();
00166                 };
00168                 class NSFatal:public NetworkException{
00169                         public:
00173                                 NSFatal();
00174                 };
00176                 class NSTryAgain:public NetworkException{
00177                         public:
00181                                 NSTryAgain();
00182                 };
00183 
00184                 class SSLConnectFailed:public NetworkException{
00185                         public:
00187                                 SSLConnectFailed();
00188                 };
00189 
00190 
00191                 class SSLConnectionClosed:public NetworkException{
00192                         public:
00194                                 SSLConnectionClosed();
00195                 };
00196 
00197 
00198                 class SSLConnectionIsBusy:public NetworkException{
00199                         public:
00201                                 SSLConnectionIsBusy();
00202                 };
00203 
00205                 class SSLContextCreation:public NetworkException{
00206                         public:
00208                                 SSLContextCreation();
00209                 };
00210 
00211                 class SSLGeneric:public NetworkException{
00212                         public:
00214                                 SSLGeneric();
00215                 };
00216 
00217                 class UDPReceiveTimeout:public NetworkException{
00218                         public:
00220                                 UDPReceiveTimeout();
00221                 };
00222 
00223                 class SSLInvalidCertificate:public SSLGeneric{
00224                         public:
00226                                 SSLInvalidCertificate();
00227                 };
00228 
00229                 class SSLInvalidPeerCertificate:public SSLGeneric{
00230                         public:
00232                                 SSLInvalidPeerCertificate();
00233                 };
00234 
00235                 class SSLSocketAddIOFailure:public SSLGeneric {
00236                         public:
00238                                 SSLSocketAddIOFailure();
00239                 };
00240 
00241                 class Crypto:public NetworkException {
00242                         public:
00244                                 Crypto();
00245                 };
00246 
00247                 class X509Exception:public Crypto{
00248                         public:
00250                                 X509Exception();
00251                 };
00252 
00253                 class CertificateIssuerNotFoundLocally:public X509Exception{
00254                         public:
00256                                 CertificateIssuerNotFoundLocally();
00257                 };
00258 
00259                 class X509IssuerCertificateNotFound:public X509Exception{
00260                         public:
00262                                 X509IssuerCertificateNotFound();
00263                 };
00264 
00265                 class X509UnableToDecryptCertificate:public X509Exception{
00266                         public:
00268                                 X509UnableToDecryptCertificate();
00269                 };
00270 
00271         };
00272 };
00273 #endif
00274 

Generated on Fri Jun 20 22:55:47 2008 for X-VR2 SDK by  doxygen 1.5.5