summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2025-04-30 00:18:25 +0000
committermidipix <writeonce@midipix.org>2025-04-30 00:26:15 +0000
commit015a8901ff4c78189fbd34f6c87c8b4d73b6621e (patch)
tree2e78e3b08f9624e898cc608a74d451f2b893b189
parent5cfb245ced358cfbd21b8f5c9fbf6a2caa7ca7db (diff)
downloadntapi-015a8901ff4c78189fbd34f6c87c8b4d73b6621e.tar.bz2
ntapi-015a8901ff4c78189fbd34f6c87c8b4d73b6621e.tar.xz
__ntapi_tty_join_session(): refine session integration and session semantics.
-rw-r--r--src/tty/ntapi_tty_join_session.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/tty/ntapi_tty_join_session.c b/src/tty/ntapi_tty_join_session.c
index 77bcc3c..2bcefc4 100644
--- a/src/tty/ntapi_tty_join_session.c
+++ b/src/tty/ntapi_tty_join_session.c
@@ -17,10 +17,14 @@ int32_t __stdcall __ntapi_tty_join_session(
nt_status status;
ntapi_internals * __internals;
- /* init */
+ /* init, primary session semantics */
__internals = __ntapi_internals();
if (type == NT_TTY_SESSION_PRIMARY) {
+ if (__internals->rtdata)
+ if (__internals->rtdata->hsession)
+ return NT_STATUS_PORT_ALREADY_SET;
+
hport = hport ? hport : &__internals->hport_tty_session;
port_name = port_name ? port_name : __internals->subsystem;
}