xrtSshPacketMeasure
计算 plain packet 的 padding 和 packet_length;零块长使用八字节。
xsshcode xrtSshPacketMeasure( size_t iPayloadSize, size_t iBlockSize, uint8* pPaddingSize, uint32* pPacketSize );
| 参数 | 说明 |
|---|---|
| size_t iPayloadSize | PayloadSze 参数 |
| size_t iBlockSize | BlockSze 参数 |
| uint8* pPaddingSize | PaddngSze 参数 |
| uint32* pPacketSize | PacketSze 参数 |
返回:计算 plain packet 的 padding 和 packet_length;零块长使用八字节。
示例已编译验证
/* 计算 plain packet 的 padding 和 packet_length;零块长使用八字节。 */ result = xrtSshPacketMeasure(iPayloadSize, iBlockSize, pPaddingSize, pPacketSize);
xrtSshPacketWrite
使用调用方 padding 源写入一个完整 plain packet,并在成功后递增序列号。
xsshcode xrtSshPacketWrite( xsshwriter* pWriter, xbytesview Payload, size_t iBlockSize, uint32* pSequence, xsshpaddingproc pPadding, ptr pUserData );
| 参数 | 说明 |
|---|---|
| xsshwriter* pWriter | 写入器 |
| xbytesview Payload | 负载 |
| size_t iBlockSize | BlockSze 参数 |
| uint32* pSequence | 序号 |
| xsshpaddingproc pPadding | Paddng 参数 |
| ptr pUserData | 透传用户数据 |
返回:使用调用方 padding 源写入一个完整 plain packet,并在成功后递增序列号。
示例已编译验证
/* 使用调用方 padding 源写入一个完整 plain packet,并在成功后递增序列号。 */ result = xrtSshPacketWrite(pWriter, Payload, iBlockSize, pSequence, pPadding, pUserData);
xrtSshPacketRead
从增量输入读取一个完整 plain packet,并在成功后递增序列号。
xsshcode xrtSshPacketRead( xsshreader* pReader, size_t iBlockSize, uint32 iMaxPacketSize, uint32* pSequence, xsshpacketview* pPacket );
| 参数 | 说明 |
|---|---|
| xsshreader* pReader | 读取器 |
| size_t iBlockSize | BlockSze 参数 |
| uint32 iMaxPacketSize | MaxPacketSze 参数 |
| uint32* pSequence | 序号 |
| xsshpacketview* pPacket | 数据包 |
返回:从增量输入读取一个完整 plain packet,并在成功后递增序列号。
示例已编译验证
/* 从增量输入读取一个完整 plain packet,并在成功后递增序列号。 */ result = xrtSshPacketRead(pReader, iBlockSize, iMaxPacketSize, pSequence, pPacket);