3.1.4.2.22 FaxObs_EnumGlobalRoutingInfo (Opnum 20)

The FaxObs_EnumGlobalRoutingInfo (Opnum 20) method is called by the client to enumerate global routing information.

The server MUST validate that the client's fax user account has the access to enumerate the global routing information. On success, the server MUST enumerate and return information about all its fax routing methods in RoutingInfoBuffer.

The client SHOULD free the returned buffer.

 error_status_t FaxObs_EnumGlobalRoutingInfo(
   [in] handle_t hBinding,
   [in, out, unique, size_is(,*RoutingInfoBufferSize)] 
     LPBYTE* RoutingInfoBuffer,
   [in, out] LPDWORD RoutingInfoBufferSize,
   [out] LPDWORD MethodsReturned
 );

hBinding: The RPC binding handle for this call. The client SHOULD reuse the RPC binding handle used as an input hBinding argument for the FaxObs_ConnectionRefCount (section 3.1.4.2.2) method call used to connect to the fax server.

RoutingInfoBuffer: A pointer to the address of the returned buffer containing an array of _FAX_GLOBAL_ROUTING_INFOW (section 2.2.33) structures. Each structure contains information about one fax routing method, as it pertains to the entire fax server.

RoutingInfoBufferSize: A variable to return the size, in bytes, of the routing information buffer.

MethodsReturned: A pointer to a DWORD ([MS-DTYP] section 2.2.9) variable to receive the number of _FAX_GLOBAL_ROUTING_INFOW structures that the method returns in the RoutingInfoBuffer parameter. This number SHOULD equal the total number of fax routing methods installed on the fax server.

Return Values: 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 2.2.52, or one of the other standard errors defined in [MS-ERREF] section 2.2.

Return value/code

Description

ERROR_INVALID_FUNCTION

0x00000001

There are no routing methods currently configured on the fax server.

ERROR_ACCESS_DENIED

0x00000005

Access is denied. The client's fax user account does not have the FAX_CONFIG_QUERY access rights.

ERROR_NOT_ENOUGH_MEMORY

0x00000008

The fax server cannot allocate sufficient memory to hold the array of _FAX_GLOBAL_ROUTING_INFOW structures to be returned to the client.

ERROR_INVALID_PARAMETER

0x00000057

The parameter is incorrect. One or more of the following parameters are set to NULL pointer values: RoutingInfoBuffer, RoutingInfoBufferSize, and MethodsReturned. <208>

Exceptions Thrown: No exceptions are thrown except those that are thrown by the underlying RPC protocol, [MS-RPCE].