<div class="content"><p> </p><p>The <b>FAX_GetConfigOption (Opnum 104)</b> is called by the
client to retrieve a configuration setting at the server using an RPC_REQUEST
packet.</p><p>Protocol version FAX_API_VERSION_0 (0x00000000),
FAX_API_VERSION_1 (0x00010000), and FAX_API_VERSION_2 (0x00020000) fax servers
SHOULD NOT implement this call. The fax client MUST NOT call this method if the
protocol version reported by the server is FAX_API_VERSION_0 (0x00000000),
FAX_API_VERSION_1 (0x00010000), or FAX_API_VERSION_2 (0x00020000). For more
information, see <b>FAX_ConnectFaxServer</b> (section <span><a href="5cbfd38d-7a14-4560-ad24-9ed78f19a3bb" data-linktype="relative-path">3.1.4.1.10</a></span>).</p><p>In response, the server MUST validate that the client&#39;s fax
user account has access as follows. Use of this method does NOT require
FAX_ACCESS_QUERY_CONFIG access rights. A calling user with any access control
entry (ACE) on the server can use this method.</p><p>On success, the appropriate config option MUST be passed out
by the server.</p><dl>
<dd>
<div><pre> error_status_t FAX_GetConfigOption(
   [in] handle_t hFaxHandle,
   [in] FAX_ENUM_CONFIG_OPTION option,
   [out] LPDWORD lpdwValue
 );
</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> or <b>FAX_ConnectionRefCount</b> (section
<span><a href="a92941ac-bd07-4a71-af85-c2c157c97cf9" data-linktype="relative-path">3.1.4.1.11</a></span>)
method call used to connect to the fax server.</p><p><b>option: </b>Identifies the configuration option to
be returned. This parameter MUST be a value from the <b>FAX_ENUM_CONFIG_OPTION</b> (section
<span><a href="8efa3634-68aa-452e-87db-7c40304489b0" data-linktype="relative-path">2.2.3</a></span>)
enumeration.</p><p><b>lpdwValue: </b>A pointer to a <b>DWORD</b> (<span><a href="../ms-dtyp/cca27429-5689-4a16-b2b4-9325d93e4ba2" data-linktype="relative-path">[MS-DTYP]</a></span>
section <span><a href="../ms-dtyp/262627d8-3418-4627-9218-4ffe110850b2" data-linktype="relative-path">2.2.9</a></span>)
that holds the value of the configuration option upon return. The value&#39;s type
depends on the configuration option that was asked for using the <i>option</i>
parameter.</p><dl>
<dd>
<p>If <i>option</i> was set to
FAX_CONFIG_OPTION_ALLOW_PERSONAL_CP, <i>lpdwValue</i> contains a <b>BOOL</b>
that MUST take one of the following values.</p>
</dd>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value/code</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>TRUE</p>
  <p>0x00000001</p>
  </td>
  <td>
  <p>The server allows personal cover page templates.</p>
  </td>
 </tr><tr>
  <td>
  <p>FALSE</p>
  <p>0x00000000</p>
  </td>
  <td>
  <p>The server allows only server-side cover page
  templates.</p>
  </td>
 </tr></tbody></table>
</dd>
<dd>
<p>If <i>option</i> was set to
FAX_CONFIG_OPTION_QUEUE_STATE, <i>lpdwValue</i> is a <b>DWORD</b> value that
MUST specify state information about the <span><a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_0c5e7185-40c3-4e58-a8ac-7626ed078235" data-linktype="relative-path">fax queue</a></span> defined in
section <span><a href="bd422bcf-7ce8-4576-addb-89345ea84f9f" data-linktype="relative-path">3.1.1</a></span>. If this
value is zero, both the incoming and outgoing <span><a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_c1a6400d-703b-4f9a-a74c-40f1487978d9" data-linktype="relative-path">queues</a></span> are
unblocked. Otherwise, this value MUST be a combination of one or more of the
following flags.</p>
</dd>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value/code</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>FAX_INCOMING_BLOCKED</p>
  <p>0x00000001</p>
  </td>
  <td>
  <p>The incoming faxes queue is blocked. The fax server
  does not answer any new incoming faxes.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_OUTBOX_BLOCKED</p>
  <p>0x00000002</p>
  </td>
  <td>
  <p>The outbox queue is blocked. The fax server does not accept
  submission of new faxes. If the outbox is not paused, faxes in the queue are
  being processed.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_OUTBOX_PAUSED</p>
  <p>0x00000004</p>
  </td>
  <td>
  <p>The outbox queue is paused. The fax server will not
  start sending outgoing faxes from the queue. Fax transmissions in progress
  are not affected. If the outbox is not blocked, the fax server still accepts
  submission of new faxes to the queue.</p>
  </td>
 </tr></tbody></table>
</dd>
<dd>
<p>If <i>option</i> was set to
FAX_CONFIG_OPTION_ALLOWED_RECEIPTS, <i>lpdwValue</i> contains a <b>DWORD</b>
that MUST be a bitwise combination of one or more of the flags that are
specified in <b>FAX_ENUM_DELIVERY_REPORT_TYPES</b> (section <span><a href="7a03bb5e-3ba7-45ec-b869-31350298e9b9" data-linktype="relative-path">2.2.76</a></span>).</p>
</dd>
<dd>
<p>If <i>option</i> was set to
FAX_CONFIG_OPTION_INCOMING_FAXES_PUBLIC, <i>lpdwValue</i> contains a <b>BOOL</b>
that MUST take one of the following values.</p>
</dd>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value/code</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>TRUE</p>
  <p>0x00000001</p>
  </td>
  <td>
  <p>All incoming faxes can be viewed by all fax users.</p>
  </td>
 </tr><tr>
  <td>
  <p>FALSE</p>
  <p>0x00000000</p>
  </td>
  <td>
  <p>Incoming faxes can be viewed only by recipients.</p>
  </td>
 </tr></tbody></table>
</dd></dl><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 <span><a href="cbe6c4fb-4dda-4f6c-9701-0d490ba0d105" data-linktype="relative-path">2.2.52</a></span>, or one of
the other standard errors defined in <span><a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a></span>
section <span><a href="../ms-erref/18d8fbe8-a967-4f1c-ae50-99ca8e491d2d" data-linktype="relative-path">2.2</a></span>.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Return value/code</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>ERROR_ACCESS_DENIED</p>
  <p>0x00000005</p>
  </td>
  <td>
  <p>Access is denied. The client&#39;s fax user account does
  not have any of the permissions covered by ALL_FAX_USER_ACCESS_RIGHTS.</p>
  </td>
 </tr><tr>
  <td>
  <p>ERROR_INVALID_PARAMETER</p>
  <p>0x00000057</p>
  </td>
  <td>
  <p>This error is returned when any of the following
  conditions are met:</p>
  <p><span>§<span>  
  </span></span>The <i>lpdwValue</i> parameter is set to a <b>NULL</b> pointer
  value.<a id="Appendix_A_Target_103"></a><a aria-label="Product behavior note 103" href="056171e7-80bc-45ff-8107-66ba3abb2023#Appendix_A_103" data-linktype="relative-path">&lt;103&gt;</a></p>
  <p><span>§<span>  
  </span></span>The configuration option specified by the <i>option</i>
  parameter is not one of the following values: FAX_CONFIG_OPTION_ALLOW_PERSONAL_CP,
  FAX_CONFIG_OPTION_QUEUE_STATE, FAX_CONFIG_OPTION_ALLOW_RECEIPTS or
  FAX_CONFIG_OPTION_INCOMING_FAXES_PUBLIC.</p>
  </td>
 </tr></tbody></table>
</dd></dl><p>Use of this method does not require FAX_ACCESS_QUERY_CONFIG
access rights. A calling user with any ACE on the server can use this method.</p><p><b>Exceptions Thrown: </b>No exceptions are thrown
except those that are thrown by the underlying <span><a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_8a7f6700-8311-45bc-af10-82e10accd331" data-linktype="relative-path">RPC</a></span> protocol, <span><a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a></span>.</p></div>