summaryrefslogtreecommitdiff
path: root/sql/proxy_protocol.h
diff options
context:
space:
mode:
authorVladislav Vaintroub <wlad@mariadb.com>2017-08-15 15:40:09 +0000
committerVladislav Vaintroub <wlad@mariadb.com>2017-08-22 16:48:46 +0000
commit41988245ca6e882bbfb1754200500d61e51e93c5 (patch)
tree4ede696cae3552d65783f064ff9bc9fc59234bdf /sql/proxy_protocol.h
parent7fee164faf8fce7be4ebe322d2178efd3d075eae (diff)
downloadmariadb-git-bb-10.3-proxy-protocol.tar.gz
MDEV-11159 Server proxy protocol supportbb-10.3-proxy-protocol
accept proxy protocol header from client connections. The new server variable 'proxy_protocol_networks' contains list of networks from which proxy header is accepted.
Diffstat (limited to 'sql/proxy_protocol.h')
-rw-r--r--sql/proxy_protocol.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/sql/proxy_protocol.h b/sql/proxy_protocol.h
new file mode 100644
index 00000000000..6f9bcf73307
--- /dev/null
+++ b/sql/proxy_protocol.h
@@ -0,0 +1,15 @@
+#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 set_proxy_protocol_networks(const char *spec);
+extern void cleanup_proxy_protocol_networks();