diff options
Diffstat (limited to 'databases/mysqlwsrep57-server/files/patch-sql_conn__handler_socket__connection.cc')
-rw-r--r-- | databases/mysqlwsrep57-server/files/patch-sql_conn__handler_socket__connection.cc | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/databases/mysqlwsrep57-server/files/patch-sql_conn__handler_socket__connection.cc b/databases/mysqlwsrep57-server/files/patch-sql_conn__handler_socket__connection.cc new file mode 100644 index 000000000000..2b5e80a44574 --- /dev/null +++ b/databases/mysqlwsrep57-server/files/patch-sql_conn__handler_socket__connection.cc @@ -0,0 +1,32 @@ +--- sql/conn_handler/socket_connection.cc.orig 2017-03-18 07:45:14 UTC ++++ sql/conn_handler/socket_connection.cc +@@ -942,22 +942,25 @@ Channel_info* Mysqld_socket_listener::li + signal(SIGCHLD, SIG_DFL); + request_init(&req, RQ_DAEMON, m_libwrap_name, RQ_FILE, + mysql_socket_getfd(connect_sock), NULL); +- 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... + clean_exit() - same stupid thing ... + */ ++ char *(*my_eval_client) (void *) = (char *(*) (void *)) eval_client; + syslog(LOG_AUTH | m_deny_severity, +- "refused connect from %s", eval_client(&req)); ++ "refused connect from %s", 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); ++ ((void (*)(int)) (req.sink))(req.fd); + #else + // Some distros have not patched tcpd.h + if (req.sink) |