From 57a4c840cbf95a835b840b5f2ddbc2aa68053f98 Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Wed, 1 Jul 2026 14:47:42 -0400 Subject: [PATCH] Fix web shell sessions --- confluent_server/confluent/consoleserver.py | 3 ++- confluent_server/confluent/httpapi.py | 2 +- confluent_server/confluent/shellserver.py | 5 ++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/confluent_server/confluent/consoleserver.py b/confluent_server/confluent/consoleserver.py index ea0329d0..6b8a0e2f 100644 --- a/confluent_server/confluent/consoleserver.py +++ b/confluent_server/confluent/consoleserver.py @@ -767,8 +767,9 @@ class ConsoleSession(object): @classmethod async def create(cls, node, configmanager, username, datacallback=None, - skipreplay=False, direct=True, width=80, height=24): + skipreplay=False, direct=True, width=80, height=24, sessionid=None): self = cls() + self.sessionid = sessionid self.registered = False self.tenant = configmanager.tenant if not configmanager.is_node(node): diff --git a/confluent_server/confluent/httpapi.py b/confluent_server/confluent/httpapi.py index 8d91ce40..f8bff9dd 100644 --- a/confluent_server/confluent/httpapi.py +++ b/confluent_server/confluent/httpapi.py @@ -548,7 +548,7 @@ async def wsock_handler(req): auditlog.log(auditmsg) datacallback = datacallback_bound(clientsessid, rsp) if shellsession: - consession = shellserver.ShellSession( + consession = await shellserver.ShellSession.create( node=node, configmanager=cfgmgr, username=username, skipreplay=skipreplay, datacallback=datacallback, diff --git a/confluent_server/confluent/shellserver.py b/confluent_server/confluent/shellserver.py index 857b4d4b..cdcdcfe2 100644 --- a/confluent_server/confluent/shellserver.py +++ b/confluent_server/confluent/shellserver.py @@ -124,10 +124,9 @@ class ShellSession(consoleserver.ConsoleSession): @classmethod async def create(cls, node, configmanager, username, datacallback=None, skipreplay=False, sessionid=None, width=80, height=24): - self = await super().__init__(node, configmanager, username, + self = await super().create(node, configmanager, username, datacallback, skipreplay, - width=width, height=height) - self.sessionid = sessionid + width=width, height=height, sessionid=sessionid) return self