summaryrefslogtreecommitdiff
path: root/source3/rpc_server
diff options
context:
space:
mode:
Diffstat (limited to 'source3/rpc_server')
-rw-r--r--source3/rpc_server/srv_spoolss_util.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/source3/rpc_server/srv_spoolss_util.c b/source3/rpc_server/srv_spoolss_util.c
index 82882af2dc..ecb583c3e4 100644
--- a/source3/rpc_server/srv_spoolss_util.c
+++ b/source3/rpc_server/srv_spoolss_util.c
@@ -4017,11 +4017,12 @@ WERROR winreg_get_driver_list(TALLOC_CTX *mem_ctx,
const char *architecture,
uint32_t version,
uint32_t *num_drivers,
- const char ***drivers)
+ const char ***drivers_p)
{
uint32_t access_mask = SEC_FLAG_MAXIMUM_ALLOWED;
struct rpc_pipe_client *winreg_pipe = NULL;
struct policy_handle hive_hnd, key_hnd;
+ const char **drivers;
TALLOC_CTX *tmp_ctx;
WERROR result;
@@ -4055,7 +4056,7 @@ WERROR winreg_get_driver_list(TALLOC_CTX *mem_ctx,
winreg_pipe,
&key_hnd,
num_drivers,
- drivers);
+ &drivers);
if (!W_ERROR_IS_OK(result)) {
DEBUG(0, ("winreg_get_driver_list: "
"Could not enumerate drivers for (%s,%u): %s\n",
@@ -4063,6 +4064,8 @@ WERROR winreg_get_driver_list(TALLOC_CTX *mem_ctx,
goto done;
}
+ *drivers_p = talloc_steal(mem_ctx, drivers);
+
result = WERR_OK;
done:
if (winreg_pipe != NULL) {