summaryrefslogtreecommitdiff
path: root/librpc
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-02-11 10:15:56 +0100
committerGünther Deschner <gd@samba.org>2009-02-11 10:20:52 +0100
commit4fb1ccef4bf7e385e92d3724c1c8d7969ffcaa7c (patch)
tree8a43cf39ae2d70ca0f5fdf57b03eb40d8c3e7dd7 /librpc
parent7b2aae56462a0825167bbbd11a3f46547897819d (diff)
downloadsamba-4fb1ccef4bf7e385e92d3724c1c8d7969ffcaa7c.tar.gz
samba-4fb1ccef4bf7e385e92d3724c1c8d7969ffcaa7c.tar.bz2
samba-4fb1ccef4bf7e385e92d3724c1c8d7969ffcaa7c.zip
spoolss: fill in spoolss_AddPrinterDriverEx. This is metze's work from 2005 (!).
Guenther
Diffstat (limited to 'librpc')
-rw-r--r--librpc/gen_ndr/cli_spoolss.c14
-rw-r--r--librpc/gen_ndr/cli_spoolss.h7
-rw-r--r--librpc/idl/spoolss.idl6
3 files changed, 26 insertions, 1 deletions
diff --git a/librpc/gen_ndr/cli_spoolss.c b/librpc/gen_ndr/cli_spoolss.c
index 4906d239de..492f2c2a71 100644
--- a/librpc/gen_ndr/cli_spoolss.c
+++ b/librpc/gen_ndr/cli_spoolss.c
@@ -477,12 +477,18 @@ NTSTATUS rpccli_spoolss_GetPrinter(struct rpc_pipe_client *cli,
NTSTATUS rpccli_spoolss_AddPrinterDriver(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
+ const char *servername /* [in] [ref,charset(UTF16)] */,
+ uint32_t level /* [in] */,
+ union spoolss_AddDriverInfo info /* [in] [switch_is(level)] */,
WERROR *werror)
{
struct spoolss_AddPrinterDriver r;
NTSTATUS status;
/* In parameters */
+ r.in.servername = servername;
+ r.in.level = level;
+ r.in.info = info;
if (DEBUGLEVEL >= 10) {
NDR_PRINT_IN_DEBUG(spoolss_AddPrinterDriver, &r);
@@ -4189,12 +4195,20 @@ NTSTATUS rpccli_spoolss_XcvData(struct rpc_pipe_client *cli,
NTSTATUS rpccli_spoolss_AddPrinterDriverEx(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
+ const char *servername /* [in] [ref,charset(UTF16)] */,
+ uint32_t level /* [in] */,
+ union spoolss_AddDriverInfo info /* [in] [switch_is(level)] */,
+ uint32_t flags /* [in] */,
WERROR *werror)
{
struct spoolss_AddPrinterDriverEx r;
NTSTATUS status;
/* In parameters */
+ r.in.servername = servername;
+ r.in.level = level;
+ r.in.info = info;
+ r.in.flags = flags;
if (DEBUGLEVEL >= 10) {
NDR_PRINT_IN_DEBUG(spoolss_AddPrinterDriverEx, &r);
diff --git a/librpc/gen_ndr/cli_spoolss.h b/librpc/gen_ndr/cli_spoolss.h
index 9eb43d61a5..25000a4cc4 100644
--- a/librpc/gen_ndr/cli_spoolss.h
+++ b/librpc/gen_ndr/cli_spoolss.h
@@ -76,6 +76,9 @@ NTSTATUS rpccli_spoolss_GetPrinter(struct rpc_pipe_client *cli,
WERROR *werror);
NTSTATUS rpccli_spoolss_AddPrinterDriver(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
+ const char *servername /* [in] [ref,charset(UTF16)] */,
+ uint32_t level /* [in] */,
+ union spoolss_AddDriverInfo info /* [in] [switch_is(level)] */,
WERROR *werror);
NTSTATUS rpccli_spoolss_EnumPrinterDrivers(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
@@ -521,6 +524,10 @@ NTSTATUS rpccli_spoolss_XcvData(struct rpc_pipe_client *cli,
WERROR *werror);
NTSTATUS rpccli_spoolss_AddPrinterDriverEx(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
+ const char *servername /* [in] [ref,charset(UTF16)] */,
+ uint32_t level /* [in] */,
+ union spoolss_AddDriverInfo info /* [in] [switch_is(level)] */,
+ uint32_t flags /* [in] */,
WERROR *werror);
NTSTATUS rpccli_spoolss_5a(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
diff --git a/librpc/idl/spoolss.idl b/librpc/idl/spoolss.idl
index b4207c4652..294ab50aaf 100644
--- a/librpc/idl/spoolss.idl
+++ b/librpc/idl/spoolss.idl
@@ -1751,7 +1751,11 @@ import "misc.idl", "security.idl", "winreg.idl";
/******************/
/* Function: 0x59 */
- [public,todo] WERROR spoolss_AddPrinterDriverEx(
+ [public] WERROR spoolss_AddPrinterDriverEx(
+ [in] [string,charset(UTF16)] uint16 *servername,
+ [in] uint32 level,
+ [in,switch_is(level)] spoolss_AddDriverInfo info,
+ [in] uint32 flags
);
/******************/