如何使用内存BIO的指针进行读写?

时间:2013-04-10 06:09:39

标签: pointers openssl bios read-write

首先我像这样创建Memory BIO

BIO *mem = BIO_new(BIO_s_mem());
BIO_puts(mem, "Hello World\n");

并获取像这样的指针

BUF_MEM *bptr;
BIO_get_mem_ptr(mem, &bptr);

我怀疑的是如何使用 bptr 指针进行书写和阅读? 这可能吗??

1 个答案:

答案 0 :(得分:0)

BUF_MEM的定义如下:

typedef struct buf_mem_st BUF_MEM;
struct buf_mem_st
{
size_t length;  /* current number of bytes */
char *data;
size_t max; /* size of buffer */
};

你可以看到它基本上是char * buffer的包装器。您可以访问数据并执行读写操作(同时保持结构长度和最大值的约束)。