我正在编写一个用于加密网络通信的小型客户端/服务器程序,并具有以下结构以允许端点协商功能。
struct KeyExchangePacket {
kexinit: u8,
replay_cookie: [u8; 32],
kex_algorithms: String,
kgen_algorithms: String,
encryption_algorithms: String,
mac_algorithms: String,
compression_algorithms: String,
supported_languages: String,
}
我需要将字段转换为字节以便通过TcpStream
,但我目前必须一次转换它们。
send_buffer.extend_from_slice(kex_algorithms.as_bytes());
send_buffer.extend_from_slice(kgen_algorithms.as_bytes());
etc...
有没有办法迭代字段并将它们的字节值推入缓冲区以进行发送?
有没有办法迭代字段
不,您必须自己实现它,或者找到一个可以为您完成此操作的宏/编译器插件。
See 如何迭代或映射元组? https://stackoverflow.com/q/29148544/155423对于类似的问题。
想想迭代器是如何工作的。迭代器必须产生一个single为每次迭代键入。对于由至少 3 种不同类型组成的结构来说,该类型是什么?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)