summaryrefslogtreecommitdiffstats
path: root/source3/rpcclient/cmd_spoolss.c
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2003-11-05 16:40:13 +0000
committerTim Potter <tpot@samba.org>2003-11-05 16:40:13 +0000
commit36d534ef745f09a811f0c4928d771fa527a7186d (patch)
tree13cd54ee7d36a8a0e62a198601872666fdbf55af /source3/rpcclient/cmd_spoolss.c
parent41316b5255eedbc43927283b06b520b0d6c2b0df (diff)
downloadsamba-36d534ef745f09a811f0c4928d771fa527a7186d.tar.gz
samba-36d534ef745f09a811f0c4928d771fa527a7186d.tar.xz
samba-36d534ef745f09a811f0c4928d771fa527a7186d.zip
Patch from James Henstridge to allow rpcclient adddriver command to specify
printer driver version. Closes bug #514. (This used to be commit c5865e3dfe0166a4714129a3ddfe1c39218e28f0)
Diffstat (limited to 'source3/rpcclient/cmd_spoolss.c')
-rw-r--r--source3/rpcclient/cmd_spoolss.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/source3/rpcclient/cmd_spoolss.c b/source3/rpcclient/cmd_spoolss.c
index eca31ae4444..798949fae92 100644
--- a/source3/rpcclient/cmd_spoolss.c
+++ b/source3/rpcclient/cmd_spoolss.c
@@ -1266,12 +1266,13 @@ static WERROR cmd_spoolss_addprinterdriver(struct cli_state *cli,
fstring driver_name;
/* parse the command arguements */
- if (argc != 3)
+ if (argc != 3 && argc != 4)
{
- printf ("Usage: %s <Environment>\\\n", argv[0]);
+ printf ("Usage: %s <Environment> \\\n", argv[0]);
printf ("\t<Long Printer Name>:<Driver File Name>:<Data File Name>:\\\n");
printf ("\t<Config File Name>:<Help File Name>:<Language Monitor Name>:\\\n");
- printf ("\t<Default Data Type>:<Comma Separated list of Files>\n");
+ printf ("\t<Default Data Type>:<Comma Separated list of Files> \\\n");
+ printf ("\t[version]\n");
return WERR_OK;
}
@@ -1292,6 +1293,14 @@ static WERROR cmd_spoolss_addprinterdriver(struct cli_state *cli,
return WERR_INVALID_PARAM;
}
+ /* if printer driver version specified, override the default version
+ * used by the architecture. This allows installation of Windows
+ * 2000 (version 3) printer drivers. */
+ if (argc == 4)
+ {
+ info3.version = atoi(argv[3]);
+ }
+
ctr.info3 = &info3;
result = cli_spoolss_addprinterdriver (cli, mem_ctx, level, &ctr);