2.2.3 WDS_OP_GET_CLIENT_UNATTEND

This opcode is used to query for unattended instructions for the deployment agent.

The client MUST send the following variables to the server:

VERSION (WDSCPL_VAR_ULONG): MUST be set to 1.

ARCHITECTURE (WDSCPL_VAR_ULONG): MUST be set to the processor architecture of the client machine as specified in section 2.2.8.

CLIENT_MAC (WDSCPL_VAR_WSTRING): MUST be set to a string representation of the hardware address of the network interface card being used by the client to communicate with the WDS server. This string MUST use valid formatting, in the same format as the ABNF specification for the CLIENT_GUID variable.

CLIENT_GUID (WDSCPL_VAR_WSTRING): MUST be set to a string representation of the client's machine identifier, either the DHCP_UUID or DHCPv6 DUID.<12> The format of this string is given by the following ABNF specification, as specified in [RFC5234]:

 client-guid = short-mac / dashed-mac / raw-guid / formatted-guid / duid-ll / duid-llt / duid-uuid / duid
 digit = "0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9"
 hex-digit = "a" / "b" / "c" / "d" / "e" / "f" / digit
 short-mac = 12hex-digit
 dashed-mac = 5( 2hex-digit "-" ) 2hex-digit
 raw-guid = 32hex-digit
 formatted-guid = ("{" guid-body "}") / guid-body
 guid-body = 8hex-digit "-" 4hex-digit "-" 4hex-digit "-" 4hex-digit "-" 12hex-digit
 duid-llt = "00-01-00-01-" 9( 2hex-digit "-" ) 2hex-digit
 duid-ll = "00-03-00-01-" 5( 2hex-digit "-" ) 2hex-digit
 duid-uuid = "00-04-" 15( 2hex-digit "-" ) 2hex-digit
 duid = "[" *( 2hex-digit "-" ) 2hex-digit "]" 
  

The reply from the server MUST set the following variables:

VERSION (WDSCPL_VAR_ULONG): MUST be set to 1.

FLAGS (WDSCPL_VAR_ULONG):

The value for the FLAGS variable is a bitwise OR of the following values:

Flag

Description

WdsCliClientUnattendPresent

0x00000001

MUST be set if the server provided unattended instructions for the deployment agent. If this flag is set, the reply packet MUST also include the CLIENT_UNATTEND variable.

WdsCliClientUnattendOverride

0x00000002

When set, this flag specifies that unattended instructions for the deployed OS that are present locally on the client machine MUST override the unattended instructions for the deployed OS that are provided by the server.

CLIENT_UNATTEND (WDSCPL_VAR_BLOB): This variable specifies unattended instructions that are used by the deployment agent to operate in unattended mode. This variable MUST be present if the WdsCliClientUnattendPresent flag is specified for the FLAGS variable.

FIRMWARE (WDSCPL_VAR_BYTE): This variable specifies the firmware type of the client.  This variable SHOULD<13> be present to explicitly specify the firmware type of the client. The value of the FIRMWARE variable MUST be one of the following values:

Firmware Type

Description

WdsCliClientFirmwareTypePcat

0x00000000

MUST be set to indicate the client’s active firmware type is a PC/AT-compatible BIOS.

WdsCliClientFirmwareTypeUefi

0x00000001

MUST be set to indicate the client’s active firmware type is EFI or UEFI.