3.1.4.7 GetDriverIdList
The GetDriverIdList method SHOULD<40> get driver revisions and driver sets for new driver updates. This method is invoked only when an upstream server (USS) syncs with Microsoft Update.
-
<wsdl:operation name="GetRevisionIdList"> <wsdl:input message="tns:GetDriverIdListSoapIn" /> <wsdl:output message="tns:GetDriverIdListSoapOut" /> </wsdl:operation>
The SOAP operation is defined as follows.
-
<wsdl:operation name="GetDriverIdList"> <soap:operation soapAction="http://www.microsoft.com/SoftwareDistribution/GetDriverIdList" style="document" /> </wsdl:operation>
Request validation:
The USS validates inputs as specified in the following table. If any of the inputs are not valid, the USS MUST return a SOAP fault message to Microsoft Update with the ErrorCode set, as shown in the table.
Input |
Validation conditions |
ErrorCode |
---|---|---|
Cookie |
MUST be present and not empty. |
InvalidCookie |
Cookie |
The EncryptedData MUST be the correct format such that the USS can read values out of it, as specified in section 2.2.4.4. |
InvalidCookie |
protocolVersion in the cookie EncryptedData |
MUST be of the format x.y where x is the Major Version and y is the Minor Version number. |
InvalidParameters |
protocolVersion in the cookie EncryptedData |
Major Version MUST be 1. |
IncompatibleProtocolVersion |
filter:Anchor |
MUST be a valid format, NULL or empty string. The format of the anchor is implementation specific and not defined by the protocol.<41> |
InvalidParameters |
ComputerIds in the ServerSyncDriverFilter parameter |
Must be less than or equal to the value defined in the MaxNumberOfComputerIdsInRequest config value. |
InvalidParameters |
PnpHardwareIds in the ServerSyncDriverFilter parameter |
Must be less than or equal to the value defined in the MaxNumberOfPnpHardwareIdsInRequest config value. |
InvalidParameters |
Data processing:
The USS MUST compose a GetDriverIdListResponse message as follows:
The method checks that the number of computer Ids and device hardware Ids is not greater than the maximum configuration value that is returned to the caller in the GetConfigData method.
If the caller specifies more Ids, FaultException is returned.
The method looks at computer hardware Ids and PNP hardware Ids specified by Microsoft Update and sends the corresponding driver set identities and the referenced driver identities back.
If categories are specified and no values t are valid, the method returns an empty result (no exception).
When only some categories are invalid, the invalid categories are ignored and the method continues to return driver sets/drivers matching ComputerIds and PnpHardwareIds with the correct operating system and category prerequisites.
If ComputerIds contains a computer Id that the system is unaware of, that computer Id is ignored.
Set the Anchor field in the response to mark the time this operation completed.
Response:
If no errors occur during processing, the USS MUST return the success response.
If an error occurs during processing, the USS MUST return a SOAP fault. The SOAP fault SHOULD contain an <ErrorCode> element, as described in section 2.2.9. If the SOAP fault contains an <ErrorCode> element, its value MUST be one of the following.
If Microsoft Update receives a SOAP fault containing an <ErrorCode> element, it MUST react to the fault, with one of the following errors defined in section 2.2.9.3.
InvalidParameters
InternalServerError
InvalidCookie
IncompatibleProtocolVersion
If a fault that does not contain an <ErrorCode> element is received, the protocol MUST be stopped.