xrtSshPacketMeasure

计算 plain packet 的 padding 和 packet_length;零块长使用八字节。

xsshcode xrtSshPacketMeasure( size_t iPayloadSize, size_t iBlockSize, uint8* pPaddingSize, uint32* pPacketSize );
参数说明
size_t iPayloadSizePayloadSze 参数
size_t iBlockSizeBlockSze 参数
uint8* pPaddingSizePaddngSze 参数
uint32* pPacketSizePacketSze 参数
返回:计算 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 iBlockSizeBlockSze 参数
uint32* pSequence序号
xsshpaddingproc pPaddingPaddng 参数
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 iBlockSizeBlockSze 参数
uint32 iMaxPacketSizeMaxPacketSze 参数
uint32* pSequence序号
xsshpacketview* pPacket数据包
返回:从增量输入读取一个完整 plain packet,并在成功后递增序列号。

示例已编译验证

/* 从增量输入读取一个完整 plain packet,并在成功后递增序列号。 */
result = xrtSshPacketRead(pReader, iBlockSize, iMaxPacketSize, pSequence, pPacket);