3.3.4.61 GetBlockByIPAddressAndPrefixLength

The GetBlockByIPAddressAndPrefixLength operation can be used to retrieve the address block given its StartIPAddress, EndIPAddress, and PrefixLength.

 <wsdl:operation name="GetBlockByIPAddressAndPrefixLength">
   <wsdl:input wsaw:Action="http://Microsoft.Windows.Ipam/IIpamServer/GetBlockByIPAddressAndPrefixLength" message="ipam:IIpamServer_GetBlockByIPAddressAndPrefixLength_InputMessage" />
   <wsdl:output wsaw:Action="http://Microsoft.Windows.Ipam/IIpamServer/GetBlockByIPAddressAndPrefixLengthResponse" message="ipam:IIpamServer_GetBlockByIPAddressAndPrefixLength_OutputMessage" />
 </wsdl:operation>

Upon receiving the IIpamServer_GetBlockByIPAddressAndPrefixLength_InputMessage request message, the server performs the following processing steps. Upon successful completion of the steps specified below, the server MUST respond with the IIpamServer_GetBlockByIPAddressAndPrefixLength_OutputMessage message. In the event of a failure, an appropriate SOAP fault MUST be sent to the client as specified in section 2.2.2.1:

  1. GetBlockByIPAddressAndPrefixLength.addressFamily specifies the simple table within the ADM_IPBlocksTable compound table on which the processing has to be done.

  2. Enumerate the rows in ADM_IPBlocksTable which meet the following conditions:

    • StartIPAddress equals GetBlockByIPAddressAndPrefixLength.startIPAddress.

    • EndIPAddress equals GetBlockByIPAddressAndPrefixLength.endIPAddress.

    • PrefixLength equals GetBlockByIPAddressAndPrefixLength.prefixLength.

  3. If such a row is found, call the procedure GetIPBlockFromTable passing the following parameters:

    1. GetBlockByIPAddressAndPrefixLength.addressFamily is passed to Param_addressfamily.

    2. RecordId is passed to Param_blockId.

  4. Set the output parameter result to GetBlockByIPAddressAndPrefixLengthResponse. GetBlockByIPAddressAndPrefixLengthResult.