summaryrefslogtreecommitdiff
path: root/Userland/Services/LookupServer/ConnectionFromClient.h
diff options
context:
space:
mode:
Diffstat (limited to 'Userland/Services/LookupServer/ConnectionFromClient.h')
-rw-r--r--Userland/Services/LookupServer/ConnectionFromClient.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/Userland/Services/LookupServer/ConnectionFromClient.h b/Userland/Services/LookupServer/ConnectionFromClient.h
new file mode 100644
index 0000000000..72ded551b2
--- /dev/null
+++ b/Userland/Services/LookupServer/ConnectionFromClient.h
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2021, Sergey Bugaev <bugaevc@serenityos.org>
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#pragma once
+
+#include <AK/HashMap.h>
+#include <LibIPC/ConnectionFromClient.h>
+#include <LookupServer/LookupClientEndpoint.h>
+#include <LookupServer/LookupServerEndpoint.h>
+
+namespace LookupServer {
+
+class ConnectionFromClient final
+ : public IPC::ConnectionFromClient<LookupClientEndpoint, LookupServerEndpoint> {
+ C_OBJECT(ConnectionFromClient);
+
+public:
+ virtual ~ConnectionFromClient() override;
+
+ virtual void die() override;
+
+private:
+ explicit ConnectionFromClient(NonnullOwnPtr<Core::Stream::LocalSocket>, int client_id);
+
+ virtual Messages::LookupServer::LookupNameResponse lookup_name(String const&) override;
+ virtual Messages::LookupServer::LookupAddressResponse lookup_address(String const&) override;
+};
+
+}