REGISTRY_VALUE *v,
struct spoolss_PrinterEnumValues *r)
{
- WERROR result;
-
- r->data = TALLOC_ZERO_P(mem_ctx, union spoolss_PrinterData);
+ r->data = TALLOC_ZERO_P(mem_ctx, DATA_BLOB);
W_ERROR_HAVE_NO_MEMORY(r->data);
r->value_name = talloc_strdup(mem_ctx, regval_name(v));
r->data_length = regval_size(v);
if (r->data_length) {
- DATA_BLOB blob = data_blob_const(regval_data_p(v),
- regval_size(v));
- result = pull_spoolss_PrinterData(mem_ctx, &blob,
- r->data,
- r->type);
- if (!W_ERROR_IS_OK(result)) {
- return result;
- }
+ *r->data = data_blob_talloc(r->data, regval_data_p(v), regval_size(v));
}
return WERR_OK;