<div class="content" name="R_DhcpV4FailoverGetRelationship" uuid="a1f84b4e-b7b9-4d94-8402-631cf0935463"><p>The <b>R_DhcpV4FailoverGetRelationship</b> method retrieves
the failover relationship information configured on the DHCPv4 server. The
caller of this function can free the memory pointed to by the <i>pRelationship</i>
parameter by calling the function <b>midl_user_free</b> (section <a href="a7e5f2d1-04b7-4363-bdc0-76a1099664eb" data-linktype="relative-path">3</a>).</p><dl>
<dd>
<div><pre> DWORD R_DhcpV4FailoverGetRelationship(
   [in, unique, string] DHCP_SRV_HANDLE ServerIpAddress,
   [in, string, unique] LPWSTR pRelationshipName,
   [out] LPDHCP_FAILOVER_RELATIONSHIP* pRelationship
 );
</pre></div>
</dd></dl><p><b>ServerIpAddress: </b>The IP address/host name of
the DHCP server. This parameter is unused.</p><p><b>pRelationshipName: </b>A pointer to a
null-terminated Unicode string that contains the name of the failover
relationship for which the information is retrieved. There is no limit on the
length of this Unicode string.</p><p><b>pRelationship: </b>This is a pointer of type <b>LPDHCP_FAILOVER_RELATIONSHIP</b>
(section <a href="9153f2b7-e4df-4475-9275-d2092a93bd51" data-linktype="relative-path">2.2.1.2.98</a>) in
which the information about the failover relationship is retrieved based on the
<i>pRelationshipName</i> parameter.</p><p><b>Return Values: </b>A 32-bit unsigned integer value
that indicates return status. A return value of <b>ERROR_SUCCESS</b>
(0x00000000) indicates that the operation was completed successfully.
Otherwise, it contains a Win32 error code, as specified in <a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a>.
This error code value can correspond to a DHCP-specific failure, which takes a
value between 20000 and 20123, or any generic failure.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Return value/code</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>0x00000000 ERROR_SUCCESS</td>
  <td>The call was successful.</td>
 </tr><tr>
  <td>0x00004E92 ERROR_DHCP_FO_RELATIONSHIP_DOES_NOT_EXIST</td>
  <td>The failover relationship does not exist.</td>
 </tr></tbody></table>
</dd></dl><p>The opnum field value for this method is 92.</p><p>When processing this call, the DHCP server MUST do the
following:</p><ul><li><p><span><span> 
</span></span>Return ERROR_INVALID_PARAMETER if any of the following are true:</p>
<ul><li><p><span><span>  </span></span><i>pRelationship</i>
parameter is NULL.</p>
</li><li><p><span><span>  </span></span><i>pRelationshipName</i>
parameter is NULL.</p>
</li></ul></li><li><p><span><span> 
</span></span>Validate whether this method is authorized for read access as
specified in section <a href="baec2112-1146-4c42-b77e-b706e170a590" data-linktype="relative-path">3.5.4</a>.
If not, return ERROR_ACCESS_DENIED.</p>
</li><li><p><span><span> 
</span></span>Iterate through the server ADM element <b>DHCPv4FailoverRelationshipList</b>,
and retrieve the <b>DHCPv4FailoverRelationship</b> ADM element corresponding to
<i>pRelationshipName</i> parameter. If the corresponding ADM element <b>DHCPv4FailoverRelationship</b>
is not found, return ERROR_DHCP_FO_RELATIONSHIP_DOES_NOT_EXIST, otherwise,
allocate memory for the <i>pRelationship</i> parameter, and copy the failover
relationship information from the retrieved <b>DHCPv4FailoverRelationship</b>
ADM entry in the allocated memory.</p>
</li><li><p><span><span> 
</span></span>Return ERROR_SUCCESS.</p>
</li></ul><p><b>Exceptions Thrown:</b> No exceptions are thrown beyond
those thrown by the underlying RPC protocol <a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a>.</p></div>