This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
+ the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
return NULL;
}
- server = strdup(unc_name + 2);
+ server = SMB_STRDUP(unc_name + 2);
if (strchr(server, '\\')) {
char *c = strchr(server, '\\');
goto done;
}
- werror = cli_spoolss_open_printer_ex(
- cli, mem_ctx, unc_name, "", desired_access, server,
+ werror = rpccli_spoolss_open_printer_ex(
+ cli->pipe_list, mem_ctx, unc_name, "", desired_access, server,
"", &hnd);
if (!W_ERROR_IS_OK(werror)) {
/* Call rpc function */
- result = cli_spoolss_close_printer(hnd->cli, hnd->mem_ctx, &hnd->pol);
+ result = rpccli_spoolss_close_printer(
+ hnd->cli, hnd->mem_ctx, &hnd->pol);
/* Return value */
PyObject *result = NULL;
PRINTER_INFO_CTR ctr;
int level = 1;
- uint32 needed;
static char *kwlist[] = {"level", NULL};
/* Parse parameters */
/* Call rpc function */
- werror = cli_spoolss_getprinter(
- hnd->cli, hnd->mem_ctx, 0, &needed, &hnd->pol, level, &ctr);
-
- if (W_ERROR_V(werror) == ERRinsufficientbuffer)
- werror = cli_spoolss_getprinter(
- hnd->cli, hnd->mem_ctx, needed, NULL, &hnd->pol,
- level, &ctr);
+ werror = rpccli_spoolss_getprinter(
+ hnd->cli, hnd->mem_ctx, &hnd->pol, level, &ctr);
/* Return value */
/* Call rpc function */
- werror = cli_spoolss_setprinter(hnd->cli, hnd->mem_ctx, &hnd->pol,
- level, &ctr, 0);
+ werror = rpccli_spoolss_setprinter(
+ hnd->cli, hnd->mem_ctx, &hnd->pol, level, &ctr, 0);
/* Return value */
PyObject *result = NULL, *creds = NULL;
PRINTER_INFO_CTR ctr;
int level = 1, flags = PRINTER_ENUM_LOCAL, i;
- uint32 needed, num_printers;
+ uint32 num_printers;
static char *kwlist[] = {"server", "name", "level", "flags",
"creds", NULL};
TALLOC_CTX *mem_ctx = NULL;
/* Call rpc function */
- werror = cli_spoolss_enum_printers(
- cli, mem_ctx, 0, &needed, name, flags, level,
- &num_printers, &ctr);
-
- if (W_ERROR_V(werror) == ERRinsufficientbuffer)
- werror = cli_spoolss_enum_printers(
- cli, mem_ctx, needed, NULL, name, flags,
- level, &num_printers, &ctr);
+ werror = rpccli_spoolss_enum_printers(
+ cli->pipe_list, mem_ctx, name, flags, level, &num_printers, &ctr);
if (!W_ERROR_IS_OK(werror)) {
PyErr_SetObject(spoolss_werror, py_werror_tuple(werror));
ctr.printers_2 = &info2;
- werror = cli_spoolss_addprinterex(cli, mem_ctx, 2, &ctr);
+ werror = rpccli_spoolss_addprinterex(cli->pipe_list, mem_ctx, 2, &ctr);
Py_INCREF(Py_None);
result = Py_None;