3.3.4.17 Server Application Requests Transport Binding Change

The application provides:

  • TransportName: A string containing an implementation-dependent name of the transport.

  • ServerName: An optional string containing the name of the server to be used for binding the transport.

  • EnableFlag: A Boolean flag indicating whether to enable or disable the transport.

The server MUST use implementation-specific<233> means to determine whether TransportName is an eligible transport entry as specified in section 2.1, and if not, the server MUST return ERROR_NOT_SUPPORTED to the caller.

If EnableFlag is TRUE, the server SHOULD<234> obtain ServerName, SHOULD obtain binding information for the transport from the appropriate standards assignments as specified in section 2.1, and MUST attempt to start listening on the requested transport endpoint.<235>

If EnableFlag is FALSE, the server MUST attempt to stop listening on the transport indicated by TransportName.

If the attempt to start or stop listening on the transport succeeds, the server MUST return STATUS_SUCCESS to the caller; otherwise, it MUST return an implementation-dependent error.