接收TCP数据包并将其放入Openssl BIO_mem

时间:2016-07-25 05:04:43

标签: c++ sockets tcp openssl

我想使用socket fd接收TCP数据包并将其放入Openssl BIO中。以下代码:

char buffer[256];
n = recv(fd, buffer, 256, 0);
BIO* bio = BIO_new(BIO_s_mem());
int y = BIO_puts(bio, buffer);

但它接收n = 227个字节,并且它只在生物中放置y = 3个字节。我该如何解决?

1 个答案:

答案 0 :(得分:0)

感谢jwwRemy Lebeau。我们的问题解决了,因为他们用以下代码说:

BIO_write(bio, buffer, n)