Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2018-01-21 | Format: Run the new clang format on everything | James Rowe | 1 | -1/+1 | |
2017-06-06 | Kernel: Add a dedicated SetHleHandler method to ServerPort/ServerSession | Yuri Kunde Schlesner | 1 | -7/+4 | |
This allows attaching a HLE handle to a ServerPort at any point after it is created, allowing port/session creation to be generic between HLE and regular services. | |||||
2017-06-06 | HLE: Move SessionRequestHandler from Service:: to Kernel:: | Yuri Kunde Schlesner | 1 | -0/+1 | |
Most of the code that works with this is or will be in the kernel, so it's a more appropriate place for it to be. | |||||
2017-05-25 | Kernel: Centralize error definitions in errors.h | Yuri Kunde Schlesner | 1 | -2/+2 | |
2017-05-15 | Kernel: Use a Session object to keep track of the status of a Client/Server session pair. | Subv | 1 | -8/+5 | |
Reduce the associated port's connection count when a ServerSession is destroyed. | |||||
2016-12-14 | Fixed the codestyle to match our clang-format rules. | Subv | 1 | -2/+4 | |
2016-12-08 | Added a framework for partially handling Session disconnections. | Subv | 1 | -2/+6 | |
Further implementation will happen in a future commit. Fixes a regression. | |||||
2016-12-08 | Use std::move where appropriate. | Subv | 1 | -1/+4 | |
2016-12-05 | Return an error code when connecting to a saturated port. | Subv | 1 | -2/+9 | |
The error code was taken from the 3DS kernel. | |||||
2016-12-05 | Split SessionRequestHandler::HandleSyncRequest into HandleSyncRequest, TranslateRequest and HandleSyncRequestImpl. | Subv | 1 | -0/+1 | |
HandleSyncRequest now takes care of calling the command buffer translate function before actually invoking the command handler for HLE services. | |||||
2016-12-05 | KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it. | Subv | 1 | -1/+9 | |
2016-12-01 | Fixed the rebase mistakes. | Subv | 1 | -1/+0 | |
2016-12-01 | A bit of a redesign. | Subv | 1 | -14/+0 | |
Sessions and Ports are now detached from each other. HLE services are handled by means of a SessionRequestHandler class, Interface now inherits from this class. The File and Directory classes are no longer kernel objects, but SessionRequestHandlers instead, bound to a ServerSession when requested. File::OpenLinkFile now creates a new session pair and binds the File instance to it. | |||||
2016-12-01 | IPC/HLE: Associate the ClientSessions with their parent port's HLE interface if it exists. | Subv | 1 | -9/+1 | |
Pass the triggering ServerSession to the HLE command handler to differentiate which session caused the request. | |||||
2016-12-01 | Kernel/HLE: Service::Interface no longer inherits from any Kernel object, and is now its own standalone class. | Subv | 1 | -0/+23 | |
Interface is now used by aggregation in ClientPort, to forward service commands to their HLE implementation if needed. | |||||
2016-12-01 | Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication. | Subv | 1 | -0/+7 | |
All handles obtained via srv::GetServiceHandle or svcConnectToPort are references to ClientSessions. Service modules will wait on the counterpart of those ClientSessions (Called ServerSessions) using svcReplyAndReceive or svcWaitSynchronization[1|N], and will be awoken when a SyncRequest is performed. HLE Interfaces are now ClientPorts which override the HandleSyncRequest virtual member function to perform command handling immediately. | |||||
2016-09-21 | Use negative priorities to avoid special-casing the self-include | Yuri Kunde Schlesner | 1 | -1/+1 | |
2016-09-21 | Remove empty newlines in #include blocks. | Emmanuel Gil Peyrot | 1 | -2/+1 | |
This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation. | |||||
2016-09-19 | Manually tweak source formatting and then re-run clang-format | Yuri Kunde Schlesner | 1 | -4/+2 | |
2016-09-18 | Sources: Run clang-format on everything. | Emmanuel Gil Peyrot | 1 | -2/+4 | |
2016-06-05 | Kernel: Added ClientPort and ServerPort classes. | Subv | 1 | -0/+16 | |
This is part of an ongoing effort to implement support for multiple processes. |