3.2.5.2.4 CREATE-SESSION REQUEST

The server MUST validate that it supports at least one of the supported protocols sent by the client. If no supported protocols are common between the client and the server, the server MUST send an HTTP status code as 400 and a BITS-Error as x80070057, BITS-Error-Context 0x5.

The server MUST generate a GUID (as specified in [MS-DTYP] section 2.3.4.3) for BITS session ID and store it in BITSSessionWrapper for the upload.

The server SHOULD<24> create a temporary location for storing the request entity being uploaded before updating the final destination entity.

If BITSHostId or BITSHostIdFallbackTimeout is specified for the virtual directory, the server SHOULD<25> send these headers as part of the response sent to the client.

If the create-session request is completed successfully or failed for some reason, the server MUST send the response as described in section 2.2.3.