aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/k_server_session.h
diff options
context:
space:
mode:
authorFernando S <fsahmkow27@gmail.com>2023-12-24 16:23:14 +0100
committerGitHub <noreply@github.com>2023-12-24 16:23:14 +0100
commit05e3db3ac9edbff0e4885ef8b42d3a2427c9f027 (patch)
tree2f959b67638ab1134cfca19ac1f041552a68c335 /src/core/hle/kernel/k_server_session.h
parent91290b9be4e99a9890c6545e327f600484e39914 (diff)
parentc57ae803a6e04f303c168292aaf727ccb61e5de2 (diff)
Merge pull request #12394 from liamwhite/per-process-memory
general: properly support multiple memory instances
Diffstat (limited to 'src/core/hle/kernel/k_server_session.h')
-rw-r--r--src/core/hle/kernel/k_server_session.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/core/hle/kernel/k_server_session.h b/src/core/hle/kernel/k_server_session.h
index 403891919..2876c231b 100644
--- a/src/core/hle/kernel/k_server_session.h
+++ b/src/core/hle/kernel/k_server_session.h
@@ -49,14 +49,21 @@ public:
bool IsSignaled() const override;
void OnClientClosed();
- /// TODO: flesh these out to match the real kernel
Result OnRequest(KSessionRequest* request);
- Result SendReply(bool is_hle = false);
- Result ReceiveRequest(std::shared_ptr<Service::HLERequestContext>* out_context = nullptr,
+ Result SendReply(uintptr_t server_message, uintptr_t server_buffer_size,
+ KPhysicalAddress server_message_paddr, bool is_hle = false);
+ Result ReceiveRequest(uintptr_t server_message, uintptr_t server_buffer_size,
+ KPhysicalAddress server_message_paddr,
+ std::shared_ptr<Service::HLERequestContext>* out_context = nullptr,
std::weak_ptr<Service::SessionRequestManager> manager = {});
Result SendReplyHLE() {
- return SendReply(true);
+ R_RETURN(this->SendReply(0, 0, 0, true));
+ }
+
+ Result ReceiveRequestHLE(std::shared_ptr<Service::HLERequestContext>* out_context,
+ std::weak_ptr<Service::SessionRequestManager> manager) {
+ R_RETURN(this->ReceiveRequest(0, 0, 0, out_context, manager));
}
private: