summaryrefslogtreecommitdiffstats
path: root/sql/proxy_protocol.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/proxy_protocol.h')
-rw-r--r--sql/proxy_protocol.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/sql/proxy_protocol.h b/sql/proxy_protocol.h
new file mode 100644
index 00000000..0f873e24
--- /dev/null
+++ b/sql/proxy_protocol.h
@@ -0,0 +1,19 @@
+#include "my_net.h"
+
+struct proxy_peer_info
+{
+ struct sockaddr_storage peer_addr;
+ int port;
+ bool is_local_command;
+};
+
+extern bool has_proxy_protocol_header(NET *net);
+extern int parse_proxy_protocol_header(NET *net, proxy_peer_info *peer_info);
+extern bool is_proxy_protocol_allowed(const sockaddr *remote_addr);
+
+extern int init_proxy_protocol_networks(const char *spec);
+extern void destroy_proxy_protocol_networks();
+
+extern int set_proxy_protocol_networks(const char *spec);
+extern bool proxy_protocol_networks_valid(const char *spec);
+