<div class="content" name="FAX_EnumOutboundRules" uuid="90425d36-335f-4019-b424-c81f06fe70d6"><p>The <b>FAX_EnumOutboundRules (Opnum 59)</b> method is called
by the client to enumerate all the outbound <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_e3969a6a-4722-476e-9a36-bb63311ae950" data-linktype="relative-path">routing rules</a> that are
present on the specified fax server.</p><p>In response, the server MUST validate whether the client&#39;s
fax user account has access to enumerate the outbound routing rules.</p><p>On success, the server MUST use the <i>lpData</i> parameter
to return information about all its outbound routing rules. It MUST also return
the size of the returned information and the number of outbound routing rules
for which it successfully enumerated information.</p><p>The client SHOULD free lpData.</p><dl>
<dd>
<div><pre> error_status_t FAX_EnumOutboundRules(
   [in] handle_t hFaxHandle,
   [out, size_is(, *lpdwDataSize)] 
     LPBYTE* ppData,
   [out, ref] LPDWORD lpdwDataSize,
   [out, ref] LPDWORD lpdwNumRules
 );
</pre></div>
</dd></dl><p><b>hFaxHandle: </b>The RPC binding handle for this
call. The client SHOULD reuse the RPC binding handle used as an input <i>hBinding</i>
argument for the <b>FAX_ConnectFaxServer</b> (section <a href="5cbfd38d-7a14-4560-ad24-9ed78f19a3bb" data-linktype="relative-path">3.1.4.1.10</a>) or <b>FAX_ConnectionRefCount</b> (section
<a href="a92941ac-bd07-4a71-af85-c2c157c97cf9" data-linktype="relative-path">3.1.4.1.11</a>) method call
used to connect to the fax server.</p><p><b>ppData: </b>A pointer to a buffer containing an
array of <b>_RPC_FAX_OUTBOUND_ROUTING_RULEW</b> (section <a href="d9eb69e5-dc50-4392-8b2e-8d0f0a1df827" data-linktype="relative-path">2.2.42</a>) structures.</p><p><b>lpdwDataSize: </b>A pointer to a <b>DWORD</b> (<a href="../ms-dtyp/cca27429-5689-4a16-b2b4-9325d93e4ba2" data-linktype="relative-path">[MS-DTYP]</a>
section <a href="../ms-dtyp/262627d8-3418-4627-9218-4ffe110850b2" data-linktype="relative-path">2.2.9</a>)
in which to return the size, in bytes, of the <i>lpData</i> buffer.</p><p><b>lpdwNumRules: </b>A pointer to a <b>DWORD</b>
value indicating the number of rules retrieved.</p><p><b>Return Values: </b>This method MUST return
0x00000000 (ERROR_SUCCESS) for success; otherwise, it MUST return one of the
following error codes, one of the fax-specific errors that are defined in
section <a href="cbe6c4fb-4dda-4f6c-9701-0d490ba0d105" data-linktype="relative-path">2.2.52</a>, or one
of the other standard errors defined in <a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a>
section <a href="../ms-erref/18d8fbe8-a967-4f1c-ae50-99ca8e491d2d" data-linktype="relative-path">2.2</a>.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Return value/code</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>ERROR_ACCESS_DENIED 0x00000005</td>
  <td>Access is denied. The client&#39;s fax user account does not have the access rights (FAX_ACCESS_QUERY_CONFIG) required for this operation.</td>
 </tr><tr>
  <td>ERROR_INVALID_PARAMETER 0x00000057</td>
  <td>The fax server tried to return FAX_ERR_NOT_SUPPORTED_ON_THIS_SKU but the client fax API version (FAX_API_VERSION_0, described in section 3.1.4.1.10) does not support this error code.</td>
 </tr><tr>
  <td>FAX_ERR_NOT_SUPPORTED_ON_THIS_SKU 0x00001B63</td>
  <td>The fax client module&#39;s API version (described in section 3.1.4.1.10) is FAX_API_VERSION_1 or above, and the fax server is running on a version of the operating system that does not support the requested operation.&lt;94&gt;</td>
 </tr></tbody></table>
</dd></dl><p><b>Exceptions Thrown: </b>No exceptions are thrown
except those that are thrown by the underlying <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_8a7f6700-8311-45bc-af10-82e10accd331" data-linktype="relative-path">RPC</a> protocol, <a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a>.</p></div>