<div class="content"><p> </p><p>The <b>FAX_AccessCheck (Opnum 25)</b> method is called when
the client needs to check whether the client&#39;s fax user account has certain
access permissions on the server.</p><p>In response, the server MUST validate the access rights
specified by the client against the actual specific access rights of the
client&#39;s fax user account. On success, the server SHOULD return the access
rights specified by the client that are granted to the client&#39;s fax user
account.</p><dl>
<dd>
<div><pre> error_status_t FAX_AccessCheck(
   [in] handle_t hBinding,
   [in] DWORD AccessMask,
   [out, ref] BOOL* pfAccess,
   [in, out, unique] LPDWORD lpdwRights
 );
</pre></div>
</dd></dl><p><b>hBinding: </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 <span><a href="5cbfd38d-7a14-4560-ad24-9ed78f19a3bb" data-linktype="relative-path">3.1.4.1.10</a></span>)
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>AccessMask: </b>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>)
variable that MUST contain a set of bit flags that define the fax access
permissions specified by the client to be validated against the access
permissions of the client&#39;s fax user account. This parameter can be any bitwise
OR combination of fax-specific access rights, standard access rights, and
fax-generic access rights. For a list of standard access rights, see <span><a href="https://go.microsoft.com/fwlink/?LinkId=90120" data-linktype="external">[MSDN-SAR]</a></span>.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Fax-generic access rights</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>FAX_GENERIC_EXECUTE</p>
  <p>0x00000001</p>
  </td>
  <td>
  <p>Identical to the FAX_ACCESS_SUBMIT access right.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_GENERIC_READ</p>
  <p>0x000002A8</p>
  </td>
  <td>
  <p>Includes the read-only rights that are granted by the
  following specific access rights:</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_QUERY_JOBS</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_QUERY_CONFIG</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_QUERY_IN_ARCHIVE</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_QUERY_OUT_ARCHIVE</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_GENERIC_WRITE</p>
  <p>0x00000550</p>
  </td>
  <td>
  <p>Includes the management rights that are granted by the
  following specific access rights:</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_MANAGE_JOBS</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_MANAGE_CONFIG</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_MANAGE_IN_ARCHIVE</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_MANAGE_OUT_ARCHIVE</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_GENERIC_ALL</p>
  <p>0x000007FF</p>
  </td>
  <td>
  <p>Includes all the following specific fax permissions:</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_SUBMIT</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_SUBMIT_NORMAL</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_SUBMIT_HIGH</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_QUERY_JOBS</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_MANAGE_JOBS</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_QUERY_CONFIG</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_MANAGE_CONFIG</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_QUERY_IN_ARCHIVE</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_MANAGE_IN_ARCHIVE</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_QUERY_OUT_ARCHIVE</p>
  <p><span>§<span>  
  </span></span>FAX_ACCESS_MANAGE_OUT_ARCHIVE</p>
  </td>
 </tr></tbody></table>
</dd></dl><p> </p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Fax-specific access rights</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>FAX_ACCESS_SUBMIT</p>
  <p>0x00000001</p>
  </td>
  <td>
  <p>Grants permission to send a low-priority fax
  transmission to one or more recipients.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_SUBMIT_NORMAL</p>
  <p>0x00000002</p>
  </td>
  <td>
  <p>Grants permission to send a normal-priority fax
  transmission to one or more recipients.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_SUBMIT_HIGH</p>
  <p>0x00000004</p>
  </td>
  <td>
  <p>Grants permission to send a high-priority fax
  transmission to one or more recipients.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_QUERY_JOBS</p>
  <p>0x00000008</p>
  </td>
  <td>
  <p>Grants permission to view all the incoming and
  outgoing faxes in the Incoming and Outbox <span><a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_c1a6400d-703b-4f9a-a74c-40f1487978d9" data-linktype="relative-path">queues</a></span>, including
  those that belong to other users. By default, without this permission,
  non-administrator users can view their own outgoing messages in the Outbox
  queue but cannot view the Incoming queue. Also, non-administrator users cannot
  view incoming or outgoing faxes that belong to other users.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_MANAGE_JOBS</p>
  <p>0x00000010</p>
  </td>
  <td>
  <p>Grants permission to manage all the incoming and
  outgoing faxes in the Incoming and Outbox queues, including those that belong
  to other users. By default, without this permission, non-administrator users
  can manage their own outgoing messages in the Outgoing queue (defined in
  section <span><a href="bd422bcf-7ce8-4576-addb-89345ea84f9f" data-linktype="relative-path">3.1.1</a></span>) but cannot
  manage the Incoming queue. Also, non-administrator users cannot manage
  incoming or outgoing faxes that belong to other users.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_QUERY_CONFIG</p>
  <p>0x00000020</p>
  </td>
  <td>
  <p>Grants permission to view the properties of the Fax
  Service. By default, non-administrator users do not have this permission.
  Without this permission, users cannot view any of the tree nodes, except for
  the cover page node in the Fax Service Manager.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_MANAGE_CONFIG </p>
  <p>0x00000040</p>
  </td>
  <td>
  <p>Grants permission to modify the properties of the fax
  service. By default, non-administrator users do not have this permission.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_QUERY_IN_ARCHIVE </p>
  <p>0x00000080</p>
  </td>
  <td>
  <p>Grants permission to view all successfully received
  messages in the Inbox <span><a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_9394bf31-7db9-433c-8d3d-ee6a37bf0848" data-linktype="relative-path">archive</a></span>. By
  default, without this permission, non-administrator users cannot view
  archived incoming faxes.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_MANAGE_IN_ARCHIVE</p>
  <p>0x00000100</p>
  </td>
  <td>
  <p>Grants permission to manage all successfully received
  messages in the Inbox archive. By default, without this permission,
  non-administrator users cannot manage archived incoming faxes.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_QUERY_OUT_ARCHIVE</p>
  <p>0x00000200</p>
  </td>
  <td>
  <p>Grants permission to view all successfully sent
  messages in the Sent Items archive, including those belonging to other users.
  By default, without this permission, non-administrator users can view
  archives of their own sent messages but cannot view archives that belong to
  other users.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ACCESS_MANAGE_OUT_ARCHIVE</p>
  <p>0x00000400</p>
  </td>
  <td>
  <p>Grants permission to manage all successfully sent
  messages in the Sent Items archive, including those that belong to other
  users. By default, without this permission, non-administrator users can
  manage archives of their own sent messages but cannot manage archives that
  belong to other users.</p>
  </td>
 </tr></tbody></table>
</dd></dl><p> </p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Standard access rights</p>
   </th>
   <th>
   <p>Descriptiion</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>DELETE</p>
  <p>0x00010000</p>
  </td>
  <td>
  <p>Delete access.</p>
  </td>
 </tr><tr>
  <td>
  <p>READ_CONTROL</p>
  <p>0x00020000</p>
  </td>
  <td>
  <p>Read access to the owner, group, and discretionary
  access control list (ACL) of the security descriptor.</p>
  </td>
 </tr><tr>
  <td>
  <p>WRITE_DAC</p>
  <p>0x00040000</p>
  </td>
  <td>
  <p>Write access to the ACL.</p>
  </td>
 </tr><tr>
  <td>
  <p>WRITE_OWNER</p>
  <p>0x00080000</p>
  </td>
  <td>
  <p>Write access to the owner.</p>
  </td>
 </tr><tr>
  <td>
  <p>SYNCHRONIZE</p>
  <p>0x00100000</p>
  </td>
  <td>
  <p>Allow use of the object for synchronization. </p>
  </td>
 </tr></tbody></table>
</dd></dl><p> </p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Miscellaneous access rights</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>MAXIMUM_ALLOWED</p>
  <p>0x02000000</p>
  </td>
  <td>
  <p>Maximum allowed access rights for this server.</p>
  </td>
 </tr></tbody></table>
</dd></dl><p><b>pfAccess: </b>A pointer to a <b>BOOL</b>
([MS-DTYP] section <span><a href="../ms-dtyp/9d81be47-232e-42cf-8f0d-7a3b29bf2eb2" data-linktype="relative-path">2.2.3</a></span>)
to receive the access check return value. This value MUST be TRUE if the
client&#39;s fax user account has all of the fax access rights specified by the <i>AccessMask</i>
parameter; otherwise, this value MUST be FALSE. If the value submitted by the
client for the <i>AccessMask</i> is zero, the value pointed to by the <i>pfAccess</i>
parameter SHOULD be FALSE on return.</p><p><b>lpdwRights: </b>A pointer to a <b>DWORD</b> value
to receive the fax access rights that this caller is verified to have of those
requested in the <i>AccessMask</i> parameter. This value MUST be a <b>DWORD</b>
bitwise OR combination of fax-specific access rights, standard access rights,
and/or fax-generic access rights limited to those specified by the client in
the <i>AccessMask</i>. In order for the client to be verified for the maxiumum
allowed rights, the caller MUST set the <i>AccessMask</i> to 0x02000000
(MAXIMUM_ALLOWED) and the server SHOULD set this output value to the actual
rights that this caller is verified to have.</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 <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 user does not have a valid fax
  user account on the server.<a id="Appendix_A_Target_65"></a><a aria-label="Product behavior note 65" href="056171e7-80bc-45ff-8107-66ba3abb2023#Appendix_A_65" data-linktype="relative-path">&lt;65&gt;</a></p>
  </td>
 </tr><tr>
  <td>
  <p>ERROR_INVALID_PARAMETER</p>
  <p>0x00000057</p>
  </td>
  <td>
  <p>The parameter is incorrect. The <i>pfAccess</i>
  argument is NULL,<a id="Appendix_A_Target_66"></a><a aria-label="Product behavior note 66" href="056171e7-80bc-45ff-8107-66ba3abb2023#Appendix_A_66" data-linktype="relative-path">&lt;66&gt;</a> or the access mask specified
  by the <i>AccessMask</i> argument contains invalid fax-specific access
  rights.</p>
  </td>
 </tr></tbody></table>
</dd></dl><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>