]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s3-rpcclient: fix rpcclient after spoolss_SetPrinterData{Ex} IDL change.
authorGünther Deschner <gd@samba.org>
Thu, 4 Mar 2010 14:34:49 +0000 (15:34 +0100)
committerKarolin Seeger <kseeger@samba.org>
Thu, 11 Mar 2010 09:31:27 +0000 (10:31 +0100)
Guenther
(cherry picked from commit 4956650369156dfff96ccc827e55697ec642240d)

source3/rpcclient/cmd_spoolss.c

index 99bc129576d8bcc7528ea384acce8e0f55c6b35d..bd6bde5f17d1f36e5cd53c5a36403d37a2a35c5b 100644 (file)
@@ -2381,6 +2381,7 @@ static WERROR cmd_spoolss_setprinterdata(struct rpc_pipe_client *cli,
        union spoolss_PrinterInfo info;
        enum winreg_Type type;
        union spoolss_PrinterData data;
+       DATA_BLOB blob;
 
        /* parse the command arguments */
        if (argc < 5) {
@@ -2483,12 +2484,17 @@ static WERROR cmd_spoolss_setprinterdata(struct rpc_pipe_client *cli,
                goto done;
        }
 
+       result = push_spoolss_PrinterData(mem_ctx, &blob, type, &data);
+       if (!W_ERROR_IS_OK(result)) {
+               goto done;
+       }
+
        status = rpccli_spoolss_SetPrinterData(cli, mem_ctx,
                                               &pol,
                                               argv[3], /* value_name */
                                               type,
-                                              data,
-                                              0, /* autocalculated size */
+                                              blob.data,
+                                              blob.length,
                                               &result);
        if (!W_ERROR_IS_OK(result)) {
                printf ("Unable to set [%s=%s]!\n", argv[3], argv[4]);