datalen = BIO_get_mem_data(mem, &data);
if (data) {
if (datalen > sizeof(buf)-1)
datalen = sizeof(buf)-1;
memset(&buf, '\0', sizeof(buf));
memcpy(buf, data, datalen);
buf[datalen] = '\0';