Build Charac server and client with OIDC, SSH sessions, and packages
This commit is contained in:
@@ -2,15 +2,8 @@
|
||||
|
||||
| 项目 | Windows | Linux |
|
||||
| --- | --- | --- |
|
||||
| 伪终端 | ConPTY | POSIX PTY master/slave |
|
||||
| 进程连接 | 伪控制台通过扩展启动属性关联用户进程 | session、控制终端、标准流和前台进程组 |
|
||||
| 尺寸变更 | `ResizePseudoConsole` | 窗口尺寸 ioctl 与终端信号行为 |
|
||||
| 生命周期 | 用户进程、管道和伪控制台句柄 | 子进程、进程组和 PTY 文件描述符 |
|
||||
| 伪终端 | 目标 OpenSSH 使用 ConPTY | 目标 OpenSSH 使用 POSIX PTY |
|
||||
| Shell | 可将目标用户默认 Shell 设为 PowerShell 7 | 使用目标账户允许的 Shell |
|
||||
| 尺寸 | SSH window-change 请求 | SSH window-change 请求 |
|
||||
|
||||
共享接口为 `IPtySessionFactory` 与 `IPtySession`。终端输入输出按字节传递;用户代理负责持续读出、缓冲边界及终端状态。平台实现明确句柄所有权、取消和资源释放顺序。
|
||||
|
||||
Windows 后端在用户代理上下文中创建 shell。Linux 后端使用适合托管运行时的原生启动边界完成进程和终端设置,子进程进入目标程序前完成系统调用配置。
|
||||
|
||||
验收覆盖交互 shell、UTF-8、方向键、Ctrl+C、全屏编辑器、尺寸变更、大量输出、子进程退出及显式终止。断线后的输出持续被消费,重连恢复见[连接协议](../connection-protocol.md)。
|
||||
|
||||
参考:[ConPTY 会话](https://learn.microsoft.com/en-us/windows/console/creating-a-pseudoconsole-session)、[Linux PTY API](https://man7.org/linux/man-pages/man3/openpty.3.html)。
|
||||
Server 只持有 SSH shell channel,转发输入、输出和尺寸变化,并管理客户端附着。伪终端创建、用户 Shell 启动与本地进程资源由目标 sshd 负责。需通过真实目标验收 PowerShell 7、交互提示、全屏 TUI、颜色、控制键和尺寸变化。Server 已实现内部密码 SSH Broker、PTY Shell、受保护的 WAN 会话入口与有界输出保持;真实目标上的 `ls` 和完整交互仍待验收,见[SSH 会话设计](../ssh-session.md)。
|
||||
|
||||
Reference in New Issue
Block a user