我正在尝试计算mbedTLS库中的TLS握手期间传输的字节数(tx / rx)。看完代码库后,我认为可以通过将tx_bytes
和rx_bytes
的字段添加到mbedtls_ssl_config
结构中来完成。
然后,我在mbedtls_ssl_write_record
函数中添加一行:
ssl->tx_bytes += ssl->out_msglen;
和mbedtls_ssl_read_record
函数中的一行:
ssl->rx_bytes += ssl->in_msglen;
在我有一个connect()
函数的客户端函数中,如果在成功连接后立即打印tx_bytes
和rx_bytes
字段,那应该给我在传输过程中传输的累积字节整个握手。正确吗?
我的理由是,mbedtls_ssl_handshake_client_step
函数中处理的所有握手步骤最终都会调用write / read record函数,并且将是插入字节计数器的正确位置