]> source.dussan.org Git - tigervnc.git/commitdiff
Move SocketException to rdr
authorPierre Ossman <ossman@cendio.se>
Tue, 10 Sep 2024 15:05:39 +0000 (17:05 +0200)
committerPierre Ossman <ossman@cendio.se>
Wed, 9 Oct 2024 11:36:32 +0000 (13:36 +0200)
Socket APIs are used in more places than the abstraction in
common/network. Make it easier to use this exception class by putting
it in a more common place.

common/network/Socket.cxx
common/network/Socket.h
common/rdr/Exception.h

index 8da44366766e8a39bc5e0bb86652820ec867d16f..8bb96763718ac49733b0db2ab90a4eaa817ffc20 100644 (file)
@@ -53,7 +53,7 @@ void network::initSockets() {
   WSADATA initResult;
   
   if (WSAStartup(requiredVersion, &initResult) != 0)
-    throw SocketException("unable to initialise Winsock2", errorNumber);
+    throw rdr::SocketException("unable to initialise Winsock2", errorNumber);
 #else
   signal(SIGPIPE, SIG_IGN);
 #endif
@@ -161,7 +161,7 @@ Socket* SocketListener::accept() {
 
   // Accept an incoming connection
   if ((new_sock = ::accept(fd, nullptr, nullptr)) < 0)
-    throw SocketException("unable to accept new connection", errorNumber);
+    throw rdr::SocketException("unable to accept new connection", errorNumber);
 
   // Create the socket object & check connection is allowed
   Socket* s = createSocket(new_sock);
@@ -179,7 +179,7 @@ void SocketListener::listen(int sock)
   if (::listen(sock, 5) < 0) {
     int e = errorNumber;
     closesocket(sock);
-    throw SocketException("unable to set socket to listening mode", e);
+    throw rdr::SocketException("unable to set socket to listening mode", e);
   }
 
   fd = sock;
index 7085d73a1525bc3fc3bf48c4f658d0cf16a6a552..34b8db8eb4c124667a9cd07cab18f02b79ddd337 100644 (file)
@@ -26,7 +26,6 @@
 #include <limits.h>
 #include <rdr/FdInStream.h>
 #include <rdr/FdOutStream.h>
-#include <rdr/Exception.h>
 
 namespace network {
 
@@ -107,10 +106,6 @@ namespace network {
     ConnectionFilter* filter;
   };
 
-  struct SocketException : public rdr::SystemException {
-    SocketException(const char* text, int err_) : rdr::SystemException(text, err_) {}
-  };
-
 }
 
 #endif // __NETWORK_SOCKET_H__
index f1a167e5c64ab65d6245944b88b45b788dc8f6b1..1202c37c9a0b0bc29626a7109095d26a8999c80b 100644 (file)
@@ -37,6 +37,10 @@ namespace rdr {
     SystemException(const char* s, int err_);
   };
 
+  struct SocketException : public SystemException {
+    SocketException(const char* text, int err_) : SystemException(text, err_) {}
+  };
+
   struct GAIException : public Exception {
     int err;
     GAIException(const char* s, int err_);