3.1.4.15 Disconnect

Web Services Management Protocol Extensions for Windows Vista SHOULD<124> support the Disconnect operation, using the following Action URIs.

 http://schemas.microsoft.com/wbem/wsman/1/windows/shell/Disconnect http://schemas.microsoft.com/wbem/wsman/1/windows/shell/DisconnectResponse

The set of resource URIs on which Web Services Management Protocol Extensions for Windows Vista MAY support the Disconnect operation is defined in the following table. Where relevant, the XML Schema Definition (XSD) type for the data that is passed as part of the request or response is referenced.

Resource URI

Input Data Type

Output Data Type

http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd

rsp:Disconnect

None

This operation is applicable for the Custom Remote Shell scenario only. To disconnect from an existing shell instance, a client sends the Disconnect message to the EPR of that shell instance. For a server to support the Disconnect operation, the client must supply a unique ShellId in the original Create (section 3.1.4.5) request, as specified in the definition for the Shell complex type (section 2.2.4.37). The server MUST process the Disconnect request as follows:

  1. If the ShellID value in the request is not present in the CustomRemoteShells table, the server MUST return a wsman:InvalidSelectorsInternalError fault.

  2. The server MUST set the state of the shell to "disconnecting".

  3. The server MUST wait for completion of any existing Send, Signal, Command, and Receive operations on the shell. For Receive operations, any available data on the server MUST be delivered to the client before the Disconnect operation completes. Once the shell is disconnected, the client MUST NOT receive any additional responses until the shell is reconnected again.

  4. The server MUST set the state of the shell in the CustomRemoteShells table to "disconnected".

  5. The server MUST return a DisconnectResponse message.