3.3.4.6 RasRpcGetInstalledProtocolsEx (Opnum 14)

The RasRpcGetInstalledProtocolsEx method retrieves the protocol information on the RRAS server. The list of protocols is defined in the following return value section.

 DWORD RasRpcGetInstalledProtocolsEx(
   [in] handle_t h,
   [in] BOOL fRouter,
   [in] BOOL fRasCli,
   [in] BOOL fRasSrv
 );

h: An RPC binding handle as specified in [C706] section 2.

fRouter: If set to TRUE, protocols enabled for Demand Dial are retrieved. If set to FALSE, protocols enabled for Demand Dial are not retrieved.

fRasCli: This flag is not used and MUST be set to FALSE.

fRasSrv: If set to TRUE, retrieves the protocol enabled for RRAS incoming connections. If set to FALSE, protocol for RRAS incoming connections are not retrieved.

Return Values: Specifies the return status as explained in section 2.2.1.2.218 for the retcode field.

The return value can be one of the error codes that follow. All other error values MUST be treated the same by the RRASM client.

Return value

Description

0x00000000

There is no protocol installed on the RRAS server or there is some error when RRAS server retrieves the information.

0x00000001 to 0x0000000F

Specifies the protocols enabled on the RRAS server. This value SHOULD be a combination of one or more of the following flags:

NP_Nbf (0x00000001): NetBEUI protocol is enabled.<344>

NP_Ipx (0x00000002): IPX protocol is enabled.<345>

NP_Ip (0x00000004): TCP/IPv4 protocol is enabled.

NP_Ipv6 (0x00000008): TCP/IPv6 protocol is enabled.<346>

Exceptions Thrown: This method throws an exception with the exception code RPC_S_ACCESS_DENIED (0x00000005) if the client is not an administrator on the RRASM server, with access permission to perform the operation.<347>

The opnum field value for this method is 14.

When processing this call, the RRASM server SHOULD do the following:

  • Validate as specified in section 3.3.4 whether this method was called by a client that is an administrator of the RRASM server.

  • Call the abstract interface Invoke RASRPC method specifying the operation and the parameters to enable RRAS server to perform the required management task.

  • If all validation is successful, return the installed protocol information as provided by the RRAS server.