diff options
author | Jean-François Micouleau <jfm@samba.org> | 2000-03-29 12:36:44 +0000 |
---|---|---|
committer | Jean-François Micouleau <jfm@samba.org> | 2000-03-29 12:36:44 +0000 |
commit | 6ca0ed9baa7d2a4b4d46ca730d4984f80965d849 (patch) | |
tree | b712c93cf4dcbcf59f1c45da0cd8ee56b70c371b /source3/include | |
parent | 84b16407bf8bdf2f318eba75a483c5b2a367d6ae (diff) | |
download | samba-6ca0ed9baa7d2a4b4d46ca730d4984f80965d849.tar.gz samba-6ca0ed9baa7d2a4b4d46ca730d4984f80965d849.tar.xz samba-6ca0ed9baa7d2a4b4d46ca730d4984f80965d849.zip |
rewrote getprinterdriver level 3, now correctly handle the dependent
files.
A number of memleak fixed
some error return values fixed.
J.F.
(This used to be commit c212fbe009fe556d5329b5d7106159cf21402d82)
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/proto.h | 6 | ||||
-rwxr-xr-x | source3/include/rpc_spoolss.h | 16 |
2 files changed, 12 insertions, 10 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index 19ad9b6f33c..7f40ac8fcde 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -2395,6 +2395,10 @@ uint32 spoolss_size_printprocessor_info_1(PRINTPROCESSOR_1 *info); uint32 spoolss_size_printprocdatatype_info_1(PRINTPROCDATATYPE_1 *info); uint32 spoolss_size_printmonitor_info_1(PRINTMONITOR_1 *info); uint32 spoolss_size_printmonitor_info_2(PRINTMONITOR_2 *info); +BOOL make_spoolss_q_getprinterdriver2(SPOOL_Q_GETPRINTERDRIVER2 *q_u, + const POLICY_HND *hnd, fstring architecture, + uint32 level, uint32 clientmajor, uint32 clientminor, + NEW_BUFFER *buffer, uint32 offered); BOOL spoolss_io_q_getprinterdriver2(char *desc, SPOOL_Q_GETPRINTERDRIVER2 *q_u, prs_struct *ps, int depth); BOOL spoolss_io_r_getprinterdriver2(char *desc, SPOOL_R_GETPRINTERDRIVER2 *r_u, prs_struct *ps, int depth); BOOL make_spoolss_q_enumprinters(SPOOL_Q_ENUMPRINTERS *q_u, uint32 flags, @@ -2404,6 +2408,8 @@ BOOL spoolss_io_q_enumprinters(char *desc, SPOOL_Q_ENUMPRINTERS *q_u, prs_struct BOOL new_spoolss_io_r_enumprinters(char *desc, SPOOL_R_ENUMPRINTERS *r_u, prs_struct *ps, int depth); BOOL spoolss_io_r_getprinter(char *desc, SPOOL_R_GETPRINTER *r_u, prs_struct *ps, int depth); BOOL spoolss_io_q_getprinter(char *desc, SPOOL_Q_GETPRINTER *q_u, prs_struct *ps, int depth); +BOOL make_spoolss_q_getprinter(SPOOL_Q_GETPRINTER *q_u, const POLICY_HND *hnd, uint32 level, + NEW_BUFFER *buffer, uint32 offered); BOOL spoolss_io_r_setprinter(char *desc, SPOOL_R_SETPRINTER *r_u, prs_struct *ps, int depth); BOOL spoolss_io_q_setprinter(char *desc, SPOOL_Q_SETPRINTER *q_u, prs_struct *ps, int depth); BOOL spoolss_io_r_fcpn(char *desc, SPOOL_R_FCPN *r_u, prs_struct *ps, int depth); diff --git a/source3/include/rpc_spoolss.h b/source3/include/rpc_spoolss.h index 0777a602b12..0100fb007ef 100755 --- a/source3/include/rpc_spoolss.h +++ b/source3/include/rpc_spoolss.h @@ -804,6 +804,7 @@ SPOOL_Q_ENUMPRINTERS; typedef struct printer_info_ctr_info { + PRINTER_INFO_0 *printers_0; PRINTER_INFO_1 *printers_1; PRINTER_INFO_2 *printers_2; } @@ -881,7 +882,7 @@ typedef struct driver_info_3 UNISTR datafile; UNISTR configfile; UNISTR helpfile; - UNISTR **dependentfiles; + uint16 *dependentfiles; UNISTR monitorname; UNISTR defaultdatatype; } @@ -889,16 +890,11 @@ DRIVER_INFO_3; typedef struct driver_info_info { - union - { - DRIVER_INFO_1 *info1; - DRIVER_INFO_2 *info2; - DRIVER_INFO_3 *info3; - } - driver; - + DRIVER_INFO_1 *info1; + DRIVER_INFO_2 *info2; + DRIVER_INFO_3 *info3; } -DRIVER_INFO; +PRINTER_DRIVER_CTR; typedef struct spool_q_getprinterdriver2 { |