Andreas,

Here is and update to this set of questions:

a) what sections of the control file needs to be inspected?
Windows print system uses the underlying SetupAPI's to conduct the installation 
and inspection of the INF files. For example, the inf file is passed to 
SetupDiSetDeviceInstallParams function which is documented in MSDN. 
What we advise is to just validate that the file references are robust should 
be sufficient. 
There does not seem to be an existing requirement noted for validating a driver 
installation control file. Only that any files referenced in either the 
manifest or the control file be found.

        "Validate that any files referenced in the driver installation control 
file specified by the print client or in the printer driver manifest in the 
driver package specified by the print client are present on the print server; 
otherwise, the server MUST return ERROR_FILE_NOT_FOUND."

b) what sections of the manifest file needs to be inspected?

The existing documentation says:

        "the driver package specified by the printer client contains exactly 
one printer driver manifest for the printer driver and the printer driver 
manifest conforms to the implementation-specific rules governing the format of 
printer driver manifests"

Our implementation and interpretation of this paragraph is that the print 
server should be checking that the entire printer driver manifest file conforms 
to the schema, and not any particular sections.

INF Files
https://msdn.microsoft.com/en-us/windows/hardware/drivers/install/inf-files
Overveiw of INF files
https://msdn.microsoft.com/en-us/windows/hardware/drivers/install/overview-of-inf-files

c) whether there is any requirement for checksum verification of the Microsoft 
catalog file (driver.cat)?

Both Windows Client and Server do the checksum validation before installing the 
driver.

d) At what step should the server generate the Print Driver Package (cabinet 
file)? 

Can you elaborate on this question? Isn't the driver package stored when the 
driver is added to the print server?

Thanks,
Edgar

-----Original Message-----
From: Edgar Olougouna 
Sent: Tuesday, October 25, 2016 9:32 AM
To: Andreas Schneider <[email protected]>
Cc: [email protected]; MSSolve Case Email <[email protected]>
Subject: RE: [REG:116102514847681]: [MS-PAR] Q 1/2 3.1.4.2.7 
RpcAsyncInstallPrinterDriverFromPackage; performing additional validation steps

Andreas,
I will research this and follow-up.

Thanks,
Edgar

-----Original Message-----
From: Bryan Burgin 
Sent: Tuesday, October 25, 2016 10:06 AM
To: Andreas Schneider <[email protected]>
Cc: [email protected]; MSSolve Case Email <[email protected]>
Subject: [REG:116102514847681]: [MS-PAR] Q 1/2 3.1.4.2.7 
RpcAsyncInstallPrinterDriverFromPackage; performing additional validation steps

[+dochelp on bcc]
[+casemail]
[Changed title to reflect single issue...was "[MS-PAR] Some questions Printer 
Driver handling"]

Use this thread for the first of your two issues:

116102514847681: [MS-PAR] Q 1/2 3.1.4.2.7 
RpcAsyncInstallPrinterDriverFromPackage; performing additional validation steps:

3.1.4.2.7 RpcAsyncInstallPrinterDriverFromPackage

The print server SHOULD perform the following additional validation steps:

{
    This secion describes some steps but it lacks serveral details:

    Which sections of the printer-driver control file (inf-file, passed by
    pzInfPath) need to be inspected?

    If the driver is a v4 driver, which section of the Manifest (additional
    inf-File) need to be inspected?

    Also package-aware drivers ship with a Microsoft Catalog file
    (driver.cat) for each printer-driver control (inf-File). Does the Print
    server need to verify the catalog file and make sure the checksums in the
    Catalog files match to the files?

    It also isn't described at which step the Print Driver Package (cabinet
    file) needs to be generated.
}

An engineer from the protocols team will contact you soon on each of these.

Bryan

-----Original Message-----
From: Bryan Burgin 
Sent: Tuesday, October 25, 2016 8:01 AM
To: 'Andreas Schneider' <[email protected]>
Cc: [email protected]
Subject: RE: [MS-PAR] Some questions Printer Driver handling

[-dochelp]

Hi Andreas,

Do not reply to THIS e-mail.  I will make two cases for this issue and start 
two new threads; one each for each of your two issues.

The cases I made are:

116102514847681: [MS-PAR] Q 1/2 3.1.4.2.7 
RpcAsyncInstallPrinterDriverFromPackage; performing additional validation steps
116102514847712: [MS-PAR] Q 2/2 3.1.4.2.9 RpcAsyncGetCorePrinterDrivers (Opnum 
64); Where does someone find a copy of CorePrinterDrivers

An engineer from the protocols team will contact you soon on each of these.

Bryan

-----Original Message-----
From: Andreas Schneider [mailto:[email protected]] 
Sent: Monday, October 24, 2016 11:36 PM
To: Interoperability Documentation Help <[email protected]>
Cc: [email protected]
Subject: [MS-PAR] Some questions Printer Driver handling

Hello Dochelp!


I have some questions about printer driver handling in [MS-PAR]

3.1.4.2.7 RpcAsyncInstallPrinterDriverFromPackage

The print server SHOULD perform the following additional validation steps:

{
    This secion describes some steps but it lacks serveral details:

    Which sections of the printer-driver control file (inf-file, passed by
    pzInfPath) need to be inspected?

    If the driver is a v4 driver, which section of the Manifest (additional
    inf-File) need to be inspected?

    Also package-aware drivers ship with a Microsoft Catalog file
    (driver.cat) for each printer-driver control (inf-File). Does the Print
    server need to verify the catalog file and make sure the checksums in the
    Catalog files match to the files?

    It also isn't described at which step the Print Driver Package (cabinet
    file) needs to be generated.
}


3.1.4.2.9 RpcAsyncGetCorePrinterDrivers (Opnum 64)

{
    The protocol assumes that we have a copy of the CorePrinterDrivers if the
    client requests them. Where does someone find a copy of those drivers so
    he can put it to the driver store of his 3rd-party implementation?
}


Can you please clarify?


Thank for your help!


Best regards,


Andreas

-- 
Andreas Schneider                   GPG-ID: CC014E3D
Samba Team                             [email protected]
www.samba.org


_______________________________________________
cifs-protocol mailing list
[email protected]
https://lists.samba.org/mailman/listinfo/cifs-protocol

Reply via email to