terom@89: #ifndef NETWORK_SOCKET_HH terom@89: #define NETWORK_SOCKET_HH terom@89: terom@89: #include "Error.hh" terom@89: terom@89: #include terom@89: #include saiam@118: #include terom@89: terom@89: typedef CL_Socket NetworkSocket; terom@89: terom@89: // Network.cc terom@89: class NetworkSocketError : public Error { terom@89: protected: terom@89: std::string build_str (const NetworkSocket &socket, const char *op, const char *err); terom@89: terom@89: NetworkSocketError (const NetworkSocket &socket, const char *op, const char *err); terom@89: }; terom@89: terom@89: class NetworkSocketOSError : public NetworkSocketError { terom@89: public: terom@89: NetworkSocketOSError (const NetworkSocket &socket, const char *op) : terom@89: NetworkSocketError(socket, op, strerror(errno)) { } terom@89: }; terom@89: terom@89: class NetworkSocketEOFError : public NetworkSocketError { terom@89: public: terom@89: NetworkSocketEOFError (const NetworkSocket &socket, const char *op) : terom@89: NetworkSocketError(socket, op, "EOF") { } terom@89: }; terom@89: terom@89: #endif /* NETWORK_SOCKET_HH */