<div class="content" name="EvtRpcRetractConfig" uuid="9ffdf8ae-afb6-4986-9443-7c082f30cdea"><p>The EvtRpcRetractConfig (Opnum 16) method indicates to the
server that the publisher or channel is to be removed.</p><dl>
<dd>
<div><pre> error_status_t EvtRpcRetractConfig(
   /* [in] RPC_BINDING_HANDLE binding, {the binding handle will be generated by MIDL} */
   [in, range(1, MAX_RPC_CHANNEL_NAME_LENGTH), string] 
     LPCWSTR path,
   [in] DWORD flags
 );
</pre></div>
</dd></dl><p><b>binding: </b>An RPC binding handle as specified in
section <a href="1285c318-9f8c-4c6a-a963-7999557bf8d8" data-linktype="relative-path">2.2.21</a>.</p><p><b>path: </b>A pointer to a string that contains a
channel or publisher name to be removed.</p><p><b>flags: </b>A 32-bit unsigned integer that
indicates how the path parameter is to be interpreted. This MUST be set as
follows.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>EvtRpcChannelPath 0x00000000</td>
  <td>Path specifies a channel name.</td>
 </tr><tr>
  <td>EvtRpcPublisherName 0x00000001</td>
  <td>Path specifies a publisher name.</td>
 </tr></tbody></table>
</dd></dl><p><b>Return Values: </b>The method MUST return ERROR_SUCCESS
(0x00000000) on success; otherwise, it MUST return an implementation-specific
nonzero value as specified in <a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a>.</p><p>In response to this request from the client, the server
SHOULD first validate the <i>path</i> parameter.<a id="Appendix_A_Target_60"></a><a aria-label="Product behavior note 60" href="65f22d62-5f0f-4306-85c4-50fb9e77075b#Appendix_A_60" data-linktype="relative-path">&lt;60&gt;</a> The
server MUST interpret the <i>path</i> parameter as a channel name if the flags
parameter is equal to 0x00000000. The server SHOULD try to find if the
specified channel name has been already registered in its channel table (as
specified in section <a href="8f10cb24-8c8d-4dca-b5dc-ee28706c5b78" data-linktype="relative-path">3.1.1.5</a>).
If the flags value is 0x00000001, the server MUST interpret <i>path</i> as a
publisher name. The server SHOULD then check if the publisher has been
registered in its publisher table (as specified in section <a href="f10b0008-ffdd-4299-bda6-69842ced8ff9" data-linktype="relative-path">3.1.1.3</a>). The server
SHOULD fail the operation if the validation of <i>path</i> fails. The server
MAY return the error ERROR_INVALID_PARAMETER (0x00000057) to indicate such
failure.<a id="Appendix_A_Target_61"></a><a aria-label="Product behavior note 61" href="65f22d62-5f0f-4306-85c4-50fb9e77075b#Appendix_A_61" data-linktype="relative-path">&lt;61&gt;</a></p><p>Next, the server MUST verify that the caller has delete
access to the information and MUST fail the method with the error
ERROR_ACCESS_DENIED (0x00000005) if the caller does not have delete access. To
perform the access check, the server SHOULD first determine the identity of the
caller. Information determining the identity of the caller for the purpose of
performing an access check is specified in <a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a>
section <a href="../ms-rpce/326c9de1-4602-4d78-848d-8b4e11e6ed80" data-linktype="relative-path">3.2.3.4.2</a>.
Then, if the client specifies a channel, the server SHOULD read the channel&#39;s
access property (as specified in section <a href="f5ae9a61-6f5e-4751-965e-394349c7d950" data-linktype="relative-path">3.1.4.21</a>) as the security
descriptor string. Next, the server SHOULD be able to perform the write and
clear access check using the Access Check algorithm (as specified in <a href="../ms-dtyp/cca27429-5689-4a16-b2b4-9325d93e4ba2" data-linktype="relative-path">[MS-DTYP]</a>
section <a href="../ms-dtyp/4f1bbcbb-814a-4c70-a11e-2a5b8779a6f9" data-linktype="relative-path">2.5.3.2</a>).
If the access property is not present for the channel, the channel gets a
default SDDL, which is &#34;O:BAG:SYD:(A;;0xf0005;;;SY)(A;;0x5;;;BA)(A;;0x1;;;S-1-5-32-573)&#34;.</p><p>If the above checks succeed, the server MUST delete the
publisher entry from its publisher table or delete the channel from the channel
table. Operations like deleting entries from the table SHOULD always be
successful.</p><p>Any information in the channel table and publisher table
MUST not be removed until this method is called.</p><p>The server MUST return a value indicating success or failure
for this operation.</p></div>