aboutsummaryrefslogtreecommitdiff
path: root/databases/mysql84-server/files/patch-sql_conn__handler_socket__connection.cc
diff options
context:
space:
mode:
Diffstat (limited to 'databases/mysql84-server/files/patch-sql_conn__handler_socket__connection.cc')
-rw-r--r--databases/mysql84-server/files/patch-sql_conn__handler_socket__connection.cc32
1 files changed, 32 insertions, 0 deletions
diff --git a/databases/mysql84-server/files/patch-sql_conn__handler_socket__connection.cc b/databases/mysql84-server/files/patch-sql_conn__handler_socket__connection.cc
new file mode 100644
index 000000000000..38341a4c6902
--- /dev/null
+++ b/databases/mysql84-server/files/patch-sql_conn__handler_socket__connection.cc
@@ -0,0 +1,32 @@
+--- sql/conn_handler/socket_connection.cc.orig 2024-04-10 06:26:28 UTC
++++ sql/conn_handler/socket_connection.cc
+@@ -961,9 +961,11 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC
+ signal(SIGCHLD, SIG_DFL);
+ request_init(&req, RQ_DAEMON, libwrap_name, RQ_FILE,
+ mysql_socket_getfd(connect_sock), nullptr);
+- fromhost(&req);
++ void (*my_fromhost) (void *) = (void (*)(void *)) fromhost;
++ my_fromhost(&req);
+
+- if (!hosts_access(&req)) {
++ int (*my_hosts_access) (void *) = (int (*) (void *)) hosts_access;
++ if (!my_hosts_access(&req)) {
+ /*
+ This may be stupid but refuse() includes an exit(0)
+ which we surely don't want...
+@@ -975,12 +977,13 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC
+ This is unproblematic as TCP-wrapper is unix specific,
+ anyway.
+ */
++ char *(*my_eval_client) (void *) = (char *(*) (void *)) eval_client;
+ syslog(LOG_AUTH | LOG_WARNING, "refused connect from %s",
+- eval_client(&req));
++ my_eval_client(&req));
+
+ #ifdef HAVE_LIBWRAP_PROTOTYPES
+ // Some distros have patched tcpd.h to have proper prototypes
+- if (req.sink) (req.sink)(req.fd);
++ if (req.sink) ((void (*)(int)) (req.sink))(req.fd);
+ #else
+ // Some distros have not patched tcpd.h
+ if (req.sink) ((void (*)(int))req.sink)(req.fd);