spoolss: add spoolss_AddDriverInfo8 (used by vista for adding drivers).
authorGünther Deschner <gd@samba.org>
Wed, 18 Feb 2009 16:01:37 +0000 (17:01 +0100)
committerGünther Deschner <gd@samba.org>
Wed, 18 Feb 2009 19:18:56 +0000 (20:18 +0100)
Guenther

librpc/idl/spoolss.idl

index 4c428f8953a5a29d0ed839ba80f4b601079e2ed7..14cf41704468ac7a24d03906e54fde77f30cf2bd 100644 (file)
@@ -708,12 +708,45 @@ import "misc.idl", "security.idl", "winreg.idl";
                [string,charset(UTF16)] uint16 *provider;
        } spoolss_AddDriverInfo6;
 
+       typedef struct {
+               spoolss_DriverOSVersion version;
+               [string,charset(UTF16)] uint16 *driver_name;
+               [string,charset(UTF16)] uint16 *architecture;
+               [string,charset(UTF16)] uint16 *driver_path;
+               [string,charset(UTF16)] uint16 *data_file;
+               [string,charset(UTF16)] uint16 *config_file;
+               [string,charset(UTF16)] uint16 *help_file;
+               [string,charset(UTF16)] uint16 *monitor_name;
+               [string,charset(UTF16)] uint16 *default_datatype;
+               [value(((ndr_size_spoolss_StringArray(dependent_files, ndr->iconv_convenience, ndr->flags)-4)/2))] uint32 _ndr_size_dependent_files;
+               spoolss_StringArray *dependent_files;
+               [value(((ndr_size_spoolss_StringArray(previous_names, ndr->iconv_convenience, ndr->flags)-4)/2))] uint32 _ndr_size_previous_names;
+               spoolss_StringArray *previous_names;
+               NTTIME driver_data;
+               hyper driver_version;
+               [string,charset(UTF16)] uint16 *manufacturer_name;
+               [string,charset(UTF16)] uint16 *manufacturer_url;
+               [string,charset(UTF16)] uint16 *hardware_id;
+               [string,charset(UTF16)] uint16 *provider;
+               [string,charset(UTF16)] uint16 *print_processor;
+               [string,charset(UTF16)] uint16 *vendor_setup;
+               [value(((ndr_size_spoolss_StringArray(color_profiles, ndr->iconv_convenience, ndr->flags)-4)/2))] uint32 _ndr_size_color_profiles;
+               spoolss_StringArray *color_profiles;
+               [string,charset(UTF16)] uint16 *inf_path;
+               uint32 printer_driver_attributes;
+               [value(((ndr_size_spoolss_StringArray(core_driver_dependencies, ndr->iconv_convenience, ndr->flags)-4)/2))] uint32 _ndr_size_core_driver_dependencies;
+               spoolss_StringArray *core_driver_dependencies;
+               NTTIME min_inbox_driver_ver_date;
+               hyper min_inbox_driver_ver_version;
+       } spoolss_AddDriverInfo8;
+
        typedef [switch_type(uint32)] union {
                [case(1)] spoolss_AddDriverInfo1 *info1;
                [case(2)] spoolss_AddDriverInfo2 *info2;
                [case(3)] spoolss_AddDriverInfo3 *info3;
                [case(4)] spoolss_AddDriverInfo4 *info4;
                [case(6)] spoolss_AddDriverInfo6 *info6;
+               [case(8)] spoolss_AddDriverInfo8 *info8;
        } spoolss_AddDriverInfo;
 
        WERROR spoolss_AddPrinterDriver(
@@ -829,6 +862,7 @@ import "misc.idl", "security.idl", "winreg.idl";
                [case(4)] spoolss_DriverInfo4 info4;
                [case(5)] spoolss_DriverInfo5 info5;
                [case(6)] spoolss_DriverInfo6 info6;
+               [case(8)] spoolss_DriverInfo8 info8;
                [default];
        } spoolss_DriverInfo;