{
size_t sz;
- if (val == NULL || p == NULL || p->data_type != type)
+ if ((val == NULL && used_len == NULL) || p == NULL || p->data_type != type)
return 0;
sz = p->data_size;
if (p->data == NULL)
return 0;
+ if (val == NULL)
+ return 1;
+
if (*val == NULL) {
char *const q = OPENSSL_malloc(sz);