<div class="content" name="FAX_GetConfigOption" uuid="25b48bde-9929-4abb-ab97-058034ed4392"><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 <a href="5cbfd38d-7a14-4560-ad24-9ed78f19a3bb" data-linktype="relative-path">3.1.4.1.10</a>).</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
<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>option: </b>Identifies the configuration option to
be returned. This parameter MUST be a value from the <b>FAX_ENUM_CONFIG_OPTION</b> (section
<a href="8efa3634-68aa-452e-87db-7c40304489b0" data-linktype="relative-path">2.2.3</a>) enumeration.</p><p><b>lpdwValue: </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>)
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>TRUE 0x00000001</td>
  <td>The server allows personal cover page templates.</td>
 </tr><tr>
  <td>FALSE 0x00000000</td>
  <td>The server allows only server-side cover page templates.</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 <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_0c5e7185-40c3-4e58-a8ac-7626ed078235" data-linktype="relative-path">fax queue</a> defined in
section <a href="bd422bcf-7ce8-4576-addb-89345ea84f9f" data-linktype="relative-path">3.1.1</a>. If this
value is zero, both the incoming and outgoing <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_c1a6400d-703b-4f9a-a74c-40f1487978d9" data-linktype="relative-path">queues</a> 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>FAX_INCOMING_BLOCKED 0x00000001</td>
  <td>The incoming faxes queue is blocked. The fax server does not answer any new incoming faxes.</td>
 </tr><tr>
  <td>FAX_OUTBOX_BLOCKED 0x00000002</td>
  <td>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.</td>
 </tr><tr>
  <td>FAX_OUTBOX_PAUSED 0x00000004</td>
  <td>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.</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 <a href="7a03bb5e-3ba7-45ec-b869-31350298e9b9" data-linktype="relative-path">2.2.76</a>).</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>TRUE 0x00000001</td>
  <td>All incoming faxes can be viewed by all fax users.</td>
 </tr><tr>
  <td>FALSE 0x00000000</td>
  <td>Incoming faxes can be viewed only by recipients.</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 <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 any of the permissions covered by ALL_FAX_USER_ACCESS_RIGHTS.</td>
 </tr><tr>
  <td>ERROR_INVALID_PARAMETER 0x00000057</td>
  <td>This error is returned when any of the following conditions are met: § The lpdwValue parameter is set to a NULL pointer value.&lt;103&gt; § The configuration option specified by the option 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.</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 <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>