xrtSshSessionReaderInit
使用与 TCP 会话相同的 Worker 缓冲池初始化空动态读取器。
bool xrtSshSessionReaderInit( xsshsessionreader* pReader, xnetbufpool* pPool, xsshsessiontcp* pSession );
| 参数 | 说明 |
|---|---|
| xsshsessionreader* pReader | 读取器 |
| xnetbufpool* pPool | 池 |
| xsshsessiontcp* pSession | 会话对象 |
返回:使用与 TCP 会话相同的 Worker 缓冲池初始化空动态读取器。
示例已编译验证
sshsessionreaderinit obj; xrtSshSessionReaderInit(&obj, pReader, pPool, pSession);
xrtSshSessionReaderClear
中止未决读取并释放动态块;不会清理借用的 TCP 会话。
void xrtSshSessionReaderClear(xsshsessionreader* pReader);
| 参数 | 说明 |
|---|---|
| xsshsessionreader* pReader | 读取器 |
返回:中止未决读取并释放动态块;不会清理借用的 TCP 会话。
示例已编译验证
/* 中止未决读取并释放动态块;不会清理借用的 TCP 会话。 */ result = xrtSshSessionReaderClear(pReader);
xrtSshSessionReaderSession
返回读取器绑定的 TCP 会话;无效对象返回空。
xsshsessiontcp* xrtSshSessionReaderSession( xsshsessionreader* pReader );
| 参数 | 说明 |
|---|---|
| xsshsessionreader* pReader | 读取器 |
返回:返回读取器绑定的 TCP 会话;无效对象返回空。
示例已编译验证
/* 返回读取器绑定的 TCP 会话;无效对象返回空。 */ result = xrtSshSessionReaderSession(pReader);
xrtSshSessionReaderSessionConst
返回只读 TCP 会话;无效对象返回空。
const xsshsessiontcp* xrtSshSessionReaderSessionConst( const xsshsessionreader* pReader );
| 参数 | 说明 |
|---|---|
| const xsshsessionreader* pReader | 读取器 |
返回:返回只读 TCP 会话;无效对象返回空。
示例已编译验证
/* 返回只读 TCP 会话;无效对象返回空。 */ result = xrtSshSessionReaderSessionConst(pReader);
xrtSshSessionReaderState
返回空闲、空间重试或已准备状态;无效对象返回独立 INVALID。
xsshsessionreaderstate xrtSshSessionReaderState( const xsshsessionreader* pReader );
| 参数 | 说明 |
|---|---|
| const xsshsessionreader* pReader | 读取器 |
返回:返回空闲、空间重试或已准备状态;无效对象返回独立 INVALID。
示例已编译验证
/* 返回空闲、空间重试或已准备状态;无效对象返回独立 INVALID。 */ result = xrtSshSessionReaderState(pReader);
xrtSshSessionReaderPrepare
XRT_API xsshcode xrtSshSessionReaderPrepare( xsshsessionreader* pReader, xnetbuf* pInput, uint64 iNowMs, xsshsessiontcppacket* pPacket );
;
返回:XRT_API xsshcode xrtSshSessionReaderPrepare( xsshsessionreader* pReader, xnetbuf* pInput, uint64 iNowMs, xsshsessiontcppacket* pPacket );
示例已编译验证
/* XRT_API xsshcode xrtSshSessionReaderPrepare( xsshsessionreader* pReader, xnetbuf* pInput, uint64 iNowMs, xsshsessiontcppacket* pPacket ); */ result = xrtSshSessionReaderPrepare();
xrtSshSessionReaderCommit
提交已接受 packet,释放临时明文并发布本轮主机公钥存储。
xsshcode xrtSshSessionReaderCommit( xsshsessionreader* pReader, uint64 iNowMs, xsshrekeydecision* pDecision );
| 参数 | 说明 |
|---|---|
| xsshsessionreader* pReader | 读取器 |
| uint64 iNowMs | 当前毫秒时间 |
| xsshrekeydecision* pDecision | Decson 参数 |
返回:提交已接受 packet,释放临时明文并发布本轮主机公钥存储。
示例已编译验证
/* 提交已接受 packet,释放临时明文并发布本轮主机公钥存储。 */ result = xrtSshSessionReaderCommit(pReader, iNowMs, pDecision);
xrtSshSessionReaderAbort
拒绝当前 packet、消费其线路前缀并终止绑定会话。
xsshcode xrtSshSessionReaderAbort(xsshsessionreader* pReader);
| 参数 | 说明 |
|---|---|
| xsshsessionreader* pReader | 读取器 |
返回:拒绝当前 packet、消费其线路前缀并终止绑定会话。
示例已编译验证
/* 拒绝当前 packet、消费其线路前缀并终止绑定会话。 */ result = xrtSshSessionReaderAbort(pReader);
xrtSshSessionReaderHostKey
返回当前或最近一轮 KEX 已验签主机公钥的稳定借用视图。
xbytesview xrtSshSessionReaderHostKey( const xsshsessionreader* pReader );
| 参数 | 说明 |
|---|---|
| const xsshsessionreader* pReader | 读取器 |
返回:返回当前或最近一轮 KEX 已验签主机公钥的稳定借用视图。
示例已编译验证
/* 返回当前或最近一轮 KEX 已验签主机公钥的稳定借用视图。 */ result = xrtSshSessionReaderHostKey(pReader);