summaryrefslogtreecommitdiffstats
path: root/src/input/privilegedHandlerForwarder.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/input/privilegedHandlerForwarder.h')
-rw-r--r--src/input/privilegedHandlerForwarder.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/src/input/privilegedHandlerForwarder.h b/src/input/privilegedHandlerForwarder.h
index 37e8f24..ea3326a 100644
--- a/src/input/privilegedHandlerForwarder.h
+++ b/src/input/privilegedHandlerForwarder.h
@@ -19,10 +19,25 @@
#include "inputEventHandler.h"
-class PrivilegedHandlerForwarder : public DefaultInputEventHandler<InputEvent::ET_SPECIAL>
+/**
+ * Forward the incoming InputEvent to \c pvsprivinputd.
+ */
+class PrivilegedHandlerForwarder : public InputEventHandler<
+ input_policy::Require<input_policy::UnixLike>,
+ input_policy::Unprivileged>
{
public:
- void handle(InputEvent const& evt, InputEventContext const* = 0);
+
+ /**
+ * Forward \c evt to \c pvsprivinputd, taking care that
+ * the security context is correctly sent.
+ */
+ void doHandle(InputEvent const& evt, InputEventContext const* = 0);
+
+ /**
+ * Read the address of \c pvsprivinputd's listening socket
+ * from its configuration and connect to it.
+ */
void initialize();
private: