[glibmm/glibmm-2-66] Gio::SocketClient, TlsClientConnection: Ignore some deprecations
- From: Kjell Ahlstedt <kjellahl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glibmm/glibmm-2-66] Gio::SocketClient, TlsClientConnection: Ignore some deprecations
- Date: Wed, 24 Nov 2021 17:26:19 +0000 (UTC)
commit 390747e89370f3028300a87585b85a5166c1e928
Author: Kjell Ahlstedt <kjellahlstedt gmail com>
Date: Wed Nov 24 17:20:26 2021 +0100
Gio::SocketClient, TlsClientConnection: Ignore some deprecations
g_socket_client_[set,get]_tls_validation_flags() and
g_tls_client_connection_[set,get]_validation_flags() are deprecated in
glib 2.72. They can't be deprecated in glibmm 2.66. Ignore the deprecations,
so it will still be possible to compile with warnings=fatal.
gio/src/socketclient.ccg | 12 ++++++++++++
gio/src/socketclient.hg | 28 ++++++++++++++++++++++++++--
gio/src/tlsclientconnection.ccg | 12 ++++++++++++
gio/src/tlsclientconnection.hg | 27 +++++++++++++++++++++++++--
4 files changed, 75 insertions(+), 4 deletions(-)
---
diff --git a/gio/src/socketclient.ccg b/gio/src/socketclient.ccg
index 8f17c65d..f3592421 100644
--- a/gio/src/socketclient.ccg
+++ b/gio/src/socketclient.ccg
@@ -125,4 +125,16 @@ SocketClient::connect_to_uri_async(
gobj(), uri.c_str(), default_port, nullptr, &SignalProxy_async_callback, slot_copy);
}
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+TlsCertificateFlags SocketClient::get_tls_validation_flags() const
+{
+ return
((TlsCertificateFlags)(g_socket_client_get_tls_validation_flags(const_cast<GSocketClient*>(gobj()))));
+}
+
+void SocketClient::set_tls_validation_flags(TlsCertificateFlags flags)
+{
+ g_socket_client_set_tls_validation_flags(gobj(), ((GTlsCertificateFlags)(flags)));
+}
+G_GNUC_END_IGNORE_DEPRECATIONS
+
} // namespace Gio
diff --git a/gio/src/socketclient.hg b/gio/src/socketclient.hg
index 169a2751..b48bfd05 100644
--- a/gio/src/socketclient.hg
+++ b/gio/src/socketclient.hg
@@ -145,8 +145,32 @@ public:
_WRAP_METHOD(bool get_tls() const, g_socket_client_get_tls)
_WRAP_METHOD(void set_tls(bool tls = true), g_socket_client_set_tls)
- _WRAP_METHOD(TlsCertificateFlags get_tls_validation_flags() const,
g_socket_client_get_tls_validation_flags)
- _WRAP_METHOD(void set_tls_validation_flags(TlsCertificateFlags flags),
g_socket_client_set_tls_validation_flags)
+
+ // g_socket_client_get/set_tls_validation_flags() are deprecated in glib 2.72.
+ /** Gets the TLS validation flags used creating TLS connections via
+ * this socket client.
+ *
+ * This function does not work as originally designed and is impossible
+ * to use correctly.
+ *
+ * @newin{2,28}
+ *
+ * @return The TLS validation flags.
+ */
+ TlsCertificateFlags get_tls_validation_flags() const;
+
+ /** Sets the TLS validation flags used when creating TLS connections
+ * via this socket client. The default value is Gio::TLS_CERTIFICATE_VALIDATE_ALL.
+ *
+ * This function does not work as originally designed and is impossible
+ * to use correctly.
+ *
+ * @newin{2,28}
+ *
+ * @param flags The validation flags.
+ */
+ void set_tls_validation_flags(TlsCertificateFlags flags);
+ _IGNORE(g_socket_client_get_tls_validation_flags, g_socket_client_set_tls_validation_flags)
_WRAP_METHOD(Glib::RefPtr<ProxyResolver> get_proxy_resolver(), g_socket_client_get_proxy_resolver,
refreturn)
_WRAP_METHOD(Glib::RefPtr<const ProxyResolver> get_proxy_resolver() const,
g_socket_client_get_proxy_resolver, refreturn, constversion)
diff --git a/gio/src/tlsclientconnection.ccg b/gio/src/tlsclientconnection.ccg
index c2785a42..f19dc7f4 100644
--- a/gio/src/tlsclientconnection.ccg
+++ b/gio/src/tlsclientconnection.ccg
@@ -25,4 +25,16 @@ TlsClientConnection::TlsClientConnection(GTlsClientConnection* castitem)
{
}
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+void TlsClientConnection::set_validation_flags(TlsCertificateFlags flags)
+{
+ g_tls_client_connection_set_validation_flags(gobj(), ((GTlsCertificateFlags)(flags)));
+}
+
+TlsCertificateFlags TlsClientConnection::get_validation_flags() const
+{
+ return
((TlsCertificateFlags)(g_tls_client_connection_get_validation_flags(const_cast<GTlsClientConnection*>(gobj()))));
+}
+G_GNUC_END_IGNORE_DEPRECATIONS
+
} // namespace Gio
diff --git a/gio/src/tlsclientconnection.hg b/gio/src/tlsclientconnection.hg
index aa096e12..a8f63874 100644
--- a/gio/src/tlsclientconnection.hg
+++ b/gio/src/tlsclientconnection.hg
@@ -54,8 +54,31 @@ public:
_WRAP_METHOD(Glib::RefPtr<SocketConnectable> get_server_identity(),
g_tls_client_connection_get_server_identity, refreturn)
_WRAP_METHOD(Glib::RefPtr<const SocketConnectable> get_server_identity() const,
g_tls_client_connection_get_server_identity, constversion)
- _WRAP_METHOD(void set_validation_flags(TlsCertificateFlags flags),
g_tls_client_connection_set_validation_flags)
- _WRAP_METHOD(TlsCertificateFlags get_validation_flags() const,
g_tls_client_connection_get_validation_flags)
+ // g_tls_client_connection_set/get_validation_flags() are deprecated in glib 2.72.
+ /** Sets this client connection's validation flags, to override the default set of
+ * checks performed when validating a server certificate. By default,
+ * Gio::TLS_CERTIFICATE_VALIDATE_ALL is used.
+ *
+ * This function does not work as originally designed and is impossible
+ * to use correctly.
+ *
+ * @newin{2,28}
+ *
+ * @param flags The TlsCertificateFlags to use.
+ */
+ void set_validation_flags(TlsCertificateFlags flags);
+
+ /** Gets this client connection's validation flags
+ *
+ * This function does not work as originally designed and is impossible
+ * to use correctly.
+ *
+ * @newin{2,28}
+ *
+ * @return The validation flags.
+ */
+ TlsCertificateFlags get_validation_flags() const;
+ _IGNORE(g_tls_client_connection_set_validation_flags, g_tls_client_connection_get_validation_flags)
_WRAP_METHOD(void set_use_ssl3(bool use_ssl3 = true), g_tls_client_connection_set_use_ssl3,
deprecated "SSL 3.0 is insecure, and this function does not generally enable or disable it, despite its
name.")
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]