]> source.dussan.org Git - tigervnc.git/commitdiff
Replace base exception class with standard library
authorPierre Ossman <ossman@cendio.se>
Tue, 3 Sep 2024 06:02:30 +0000 (08:02 +0200)
committerPierre Ossman <ossman@cendio.se>
Wed, 6 Nov 2024 20:18:52 +0000 (21:18 +0100)
There is no point to having our own generic exception class. Let's use
the one provided by the standard C++ library.

15 files changed:
common/rdr/AESInStream.cxx
common/rdr/Exception.cxx
common/rdr/Exception.h
common/rdr/TLSException.cxx
common/rdr/TLSException.h
common/rfb/Exception.h
common/rfb/SSecurityRSAAES.cxx
common/rfb/VNCSConnectionST.cxx
vncviewer/CConn.cxx
vncviewer/ServerDialog.cxx
vncviewer/UserDialog.cxx
vncviewer/parameters.cxx
win/rfb_win32/Clipboard.cxx
win/rfb_win32/DIBSectionBuffer.cxx
win/rfb_win32/WMPoller.cxx

index d6d944a33012cf8728b12bcd896414fe8ede1ba4..3a56ef7381f6ca12daff418ae5e513451aca13e6 100644 (file)
@@ -21,8 +21,8 @@
 #endif
 
 #include <assert.h>
+
 #include <rdr/AESInStream.h>
-#include <rdr/Exception.h>
 
 #ifdef HAVE_NETTLE
 using namespace rdr;
@@ -68,7 +68,7 @@ bool AESInStream::fillBuffer()
     EAX_DIGEST(&eaxCtx256, aes256_encrypt, 16, macComputed);
   }
   if (memcmp(mac, macComputed, 16) != 0)
-    throw Exception("AESInStream: failed to authenticate message");
+    throw std::runtime_error("AESInStream: failed to authenticate message");
   in->setptr(2 + length + 16);
   end += length;
 
index b2c7e7d0c1f809f93f48798139e8ca71ce5016c0..65bd9720785c38ea0061b6f04a84af1f8ba20876 100644 (file)
@@ -44,7 +44,15 @@ using namespace rdr;
 
 
 GAIException::GAIException(const char* s, int err_)
-  : Exception(rfb::format("%s: %s (%d)", s, strerror(err_).c_str(), err_)),
+  : std::runtime_error(rfb::format("%s: %s (%d)", s,
+                                   strerror(err_).c_str(), err_)),
+    err(err_)
+{
+}
+
+GAIException::GAIException(const std::string& s, int err_)
+  : std::runtime_error(rfb::format("%s: %s (%d)", s.c_str(),
+                                   strerror(err_).c_str(), err_)),
     err(err_)
 {
 }
@@ -63,8 +71,16 @@ std::string GAIException::strerror(int err_) const
 #endif
 }
 
-PosixException::PosixException(const char* s, int err_)
-  : Exception(rfb::format("%s: %s (%d)", s, strerror(err_).c_str(), err_)),
+PosixException::PosixException(const char* what_arg, int err_)
+  : std::runtime_error(rfb::format("%s: %s (%d)", what_arg,
+                                   strerror(err_).c_str(), err_)),
+    err(err_)
+{
+}
+
+PosixException::PosixException(const std::string& what_arg, int err_)
+  : std::runtime_error(rfb::format("%s: %s (%d)", what_arg.c_str(),
+                                   strerror(err_).c_str(), err_)),
     err(err_)
 {
 }
@@ -84,8 +100,16 @@ std::string PosixException::strerror(int err_) const
 }
 
 #ifdef WIN32
-Win32Exception::Win32Exception(const char* s, unsigned err_)
-  : Exception(rfb::format("%s: %s (%d)", s, strerror(err_).c_str(), err_)),
+Win32Exception::Win32Exception(const char* what_arg, unsigned err_)
+  : std::runtime_error(rfb::format("%s: %s (%d)", what_arg,
+                                   strerror(err_).c_str(), err_)),
+    err(err_)
+{
+}
+
+Win32Exception::Win32Exception(const std::string& what_arg, unsigned err_)
+  : std::runtime_error(rfb::format("%s: %s (%d)", what_arg.c_str(),
+                                   strerror(err_).c_str(), err_)),
     err(err_)
 {
 }
index 9ce0462a4608be6d62a27df21c0c45737c7dde48..3e0ec46703fa9c99008e386da8c6336fda491ed3 100644 (file)
 
 namespace rdr {
 
-  class Exception : public std::runtime_error {
+  class PosixException : public std::runtime_error {
   public:
-    Exception(const char* what_arg) : std::runtime_error(what_arg) {}
-    Exception(const std::string& what_arg) : std::runtime_error(what_arg) {}
-  };
-
-  struct PosixException : public Exception {
     int err;
-    PosixException(const char* s, int err_);
+    PosixException(const char* what_arg, int err_);
+    PosixException(const std::string& what_arg, int err_);
   private:
     std::string strerror(int err_) const;
   };
 
 #ifdef WIN32
-  struct Win32Exception : public Exception {
+  class Win32Exception : public std::runtime_error {
+  public:
     unsigned err;
-    Win32Exception(const char* s, unsigned err_);
+    Win32Exception(const char* what_arg, unsigned err_);
+    Win32Exception(const std::string& what_arg, unsigned err_);
   private:
     std::string strerror(unsigned err_) const;
   };
 #endif
 
 #ifdef WIN32
-  struct SocketException : public Win32Exception {
-    SocketException(const char* text, unsigned err_) : Win32Exception(text, err_) {}
+  class SocketException : public Win32Exception {
+  public:
+    SocketException(const char* what_arg, unsigned err_) : Win32Exception(what_arg, err_) {}
+    SocketException(const std::string& what_arg, unsigned err_) : Win32Exception(what_arg, err_) {}
   };
 #else
-  struct SocketException : public PosixException {
-    SocketException(const char* text, int err_) : PosixException(text, err_) {}
+  class SocketException : public PosixException {
+  public:
+    SocketException(const char* what_arg, unsigned err_) : PosixException(what_arg, err_) {}
+    SocketException(const std::string& what_arg, unsigned err_) : PosixException(what_arg, err_) {}
   };
 #endif
 
-  struct GAIException : public Exception {
+  class GAIException : public std::runtime_error {
+  public:
     int err;
     GAIException(const char* s, int err_);
+    GAIException(const std::string& s, int err_);
   private:
     std::string strerror(int err_) const;
   };
 
-  struct EndOfStream : public Exception {
-    EndOfStream() : Exception("End of stream") {}
+  class EndOfStream : public std::runtime_error {
+  public:
+    EndOfStream() : std::runtime_error("End of stream") {}
   };
 
 }
index df2701d3725fee2021cf88c7694c1cd538e7a7b0..7061f38b145f8f3e4641ac045889cf2af1aaf2ef 100644 (file)
@@ -36,7 +36,8 @@ using namespace rdr;
 
 #ifdef HAVE_GNUTLS
 TLSException::TLSException(const char* s, int err_)
-  : Exception(rfb::format("%s: %s (%d)", s, gnutls_strerror(err_), err_)),
+  : std::runtime_error(rfb::format("%s: %s (%d)", s,
+                                   gnutls_strerror(err_), err_)),
     err(err_)
 {
 }
index b519bfef690abebde8e28d030d1d07ec071c3ae5..f58b618ded9870cd94b4a30d9fb6967cbd6dbfb7 100644 (file)
@@ -25,7 +25,8 @@
 
 namespace rdr {
 
-  struct TLSException : public Exception {
+  class TLSException : public std::runtime_error {
+  public:
     int err;
     TLSException(const char* s, int err_);
   };
index b11609d01e9166fb625571335b2444ef3f848b38..3b81b4a732aab51f81cc263a51cf96a87a764d2a 100644 (file)
 #ifndef __RFB_EXCEPTION_H__
 #define __RFB_EXCEPTION_H__
 
-#include <rdr/Exception.h>
+#include <stdexcept>
 
 namespace rfb {
-  typedef rdr::Exception Exception;
-
-  class ProtocolException : public Exception {
+  class ProtocolException : public std::runtime_error {
   public:
-    ProtocolException(const char* what_arg) : Exception(what_arg) {}
-    ProtocolException(const std::string& what_arg) : Exception(what_arg) {}
+    ProtocolException(const char* what_arg) : std::runtime_error(what_arg) {}
+    ProtocolException(const std::string& what_arg) : std::runtime_error(what_arg) {}
   };
 
-  struct AuthFailureException : public Exception {
-    AuthFailureException(const char* reason)
-      : Exception(reason) {}
-    AuthFailureException(std::string& reason)
-      : Exception(reason) {}
+  class AuthFailureException : public std::runtime_error {
+  public:
+    AuthFailureException(const char* reason) : std::runtime_error(reason) {}
+    AuthFailureException(std::string& reason) : std::runtime_error(reason) {}
   };
-  struct AuthCancelledException : public rfb::Exception {
+
+  class AuthCancelledException : public std::runtime_error {
+  public:
     AuthCancelledException()
-      : Exception("Authentication cancelled") {}
+      : std::runtime_error("Authentication cancelled") {}
   };
 }
 #endif
index c2fb0f6f36cf758c0da6defbb0ae047f096ed912..45f5c293b3fe2409649686f96e6a170cca96faaf 100644 (file)
 #include <nettle/base64.h>
 #include <nettle/asn1.h>
 
+#include <rdr/AESInStream.h>
+#include <rdr/AESOutStream.h>
+#include <rdr/Exception.h>
+
 #include <rfb/SSecurityRSAAES.h>
 #include <rfb/SConnection.h>
 #include <rfb/LogWriter.h>
 #include <rfb/Exception.h>
-#include <rdr/AESInStream.h>
-#include <rdr/AESOutStream.h>
 #if !defined(WIN32) && !defined(__APPLE__)
 #include <rfb/UnixPasswordValidator.h>
 #endif
index 7fa8f626c3ec7a20cc58ce7e65c012b6fba17ca4..6f207eb0555d5ed8ad98edc9c2d86b493105752f 100644 (file)
@@ -22,6 +22,8 @@
 #include <config.h>
 #endif
 
+#include <rdr/Exception.h>
+
 #include <network/TcpSocket.h>
 
 #include <rfb/ComparingUpdateTracker.h>
index 265e2491115175711f4f4649b8b26c2a63716414..90021d95638884c9ab338fdb008437a6c48b7042 100644 (file)
@@ -27,6 +27,8 @@
 #include <unistd.h>
 #endif
 
+#include <rdr/Exception.h>
+
 #include <rfb/CMsgWriter.h>
 #include <rfb/CSecurity.h>
 #include <rfb/Exception.h>
index d4ec2006f353acb2a4721ebfd4010268a832d5f2..18909a6071fb8d2148449fffad94e1db458fedf0 100644 (file)
@@ -36,7 +36,9 @@
 #include <FL/Fl_File_Chooser.H>
 
 #include <os/os.h>
-#include <rfb/Exception.h>
+
+#include <rdr/Exception.h>
+
 #include <rfb/Hostname.h>
 #include <rfb/LogWriter.h>
 #include <rfb/util.h>
index b3840d62dc4ebc6913e75baf1c3dcaab05e73867..56e6c17f0a958859e27f21684624644db2b34c5d 100644 (file)
@@ -36,6 +36,8 @@
 #include <FL/Fl_Return_Button.H>
 #include <FL/Fl_Pixmap.H>
 
+#include <rdr/Exception.h>
+
 #include <rfb/Exception.h>
 #include <rfb/obfuscate.h>
 
index de7289876dbc2bbe890850ceef003a52048ce55c..b66c7da284cecba89cc05d4138e1f9551cfaa5e0 100644 (file)
@@ -33,7 +33,9 @@
 #include "parameters.h"
 
 #include <os/os.h>
-#include <rfb/Exception.h>
+
+#include <rdr/Exception.h>
+
 #include <rfb/LogWriter.h>
 #include <rfb/SecurityClient.h>
 #include <rfb/util.h>
index 5bda26b29dc35c72c045a7ab70162fab6f751099..72e8999ec96a7c77f184b888ed7abf5c32391dc6 100644 (file)
@@ -23,6 +23,8 @@
 #include <config.h>
 #endif
 
+#include <rdr/Exception.h>
+
 #include <rfb_win32/Clipboard.h>
 #include <rfb_win32/WMShatter.h>
 #include <rfb/util.h>
index 62b917c0436654d3972b492820e393eda77a11a2..f6447b0d5eb4aece4b1695b19928adfdeed44115 100644 (file)
@@ -21,6 +21,8 @@
 #include <config.h>
 #endif
 
+#include <rdr/Exception.h>
+
 #include <rfb_win32/DIBSectionBuffer.h>
 #include <rfb_win32/DeviceContext.h>
 #include <rfb_win32/BitmapInfo.h>
index 2c5917e96c5d1e0d95322e15f1dc0005e65a842f..db2672699e8916a68ada7a491740c761345e3984 100644 (file)
@@ -22,8 +22,9 @@
 #include <config.h>
 #endif
 
+#include <rdr/Exception.h>
+
 #include <rfb_win32/WMPoller.h>
-#include <rfb/Exception.h>
 #include <rfb/LogWriter.h>
 #include <rfb/Configuration.h>