Implement support for the HAProxy proxy protocol
[quassel.git] / src / core / coreauthhandler.h
index 82c2c2c..db54bec 100644 (file)
@@ -24,6 +24,7 @@
 #include "authhandler.h"
 #include "metricsserver.h"
 #include "peerfactory.h"
+#include "proxyline.h"
 #include "remotepeer.h"
 #include "types.h"
 
@@ -34,6 +35,9 @@ class CoreAuthHandler : public AuthHandler
 public:
     CoreAuthHandler(QTcpSocket* socket, QObject* parent = nullptr);
 
+    QHostAddress hostAddress() const;
+    bool isLocal() const override;
+
 signals:
     void handshakeComplete(RemotePeer* peer, UserId uid);
 
@@ -63,6 +67,9 @@ private:
     RemotePeer* _peer;
     MetricsServer* _metricsServer;
 
+    bool _proxyReceived;
+    ProxyLine _proxyLine;
+    bool _useProxyLine;
     bool _magicReceived;
     bool _legacy;
     bool _clientRegistered;