我是DTLS的新手,正在尝试使用第三方库来实现DTLS服务器应用程序。
我们正在使用的BIO_read()函数尝试读取请求的字节数,并且每次读取均不返回一条数据报消息。
例如: ret = BIO_read(ssl,缓冲区,2048); 在这里,它尝试读取高达2048字节的可用数据,并且每个数据包都不起作用。
当前的问题是我们在应用程序数据中没有任何数据/字段来计算接收到的数据包大小。因此,如果read()返回包含多个数据包的DTLS记录,我们将很难在应用程序层拆分消息。
我们是否可以在BIO对象/连接句柄上设置任何选项,从而迫使BIO_read()一次在任何标准库(例如openssl等)中一次仅返回一条消息/数据包。?
以便我们将要求我们的图书馆团队为我们提供同样的支持?
谢谢。