RadiusExtensionProcessEx Callback Function

The RadiusExtensionProcessEx function is an application-defined function and is called by Internet Authentication Service (IAS) for each authentication or accounting packet that IAS receives from the network access server (NAS). This function is similar to RadiusExtensionProcess. However, RadiusExtensionProcessEx enables the Extension DLL to append attributes to the authentication response.

DWORD WINAPI RadiusExtensionProcessEx(
  [in]                 const RADIUS_ATTRIBUTE* pInAttrs,
  [out]                PRADIUS_ATTRIBUTE* pOutAttrs,
  [out]                PRADIUS_ACTION pfAction
);

Parameters

  • pInAttrs
    Pointer to an array of attributes from the request. The array is terminated by an attribute with dwAttrType set to ratMinimum. These attributes should be treated as read-only; they should not be modified by RadiusExtensionProcessEx. Also, these attributes should not be referenced in any way after RadiusExtensionProcessEx returns.

  • pOutAttrs
    Pointer to an array of attributes provided by the IAS Authorization or Extension DLL. The array is terminated by an attribute with dwAttrType set to ratMinimum. IAS adds these attributes to the authentication response.

    The IAS Authorization or Extension DLL allocates the memory for the array of attributes. IAS calls RadiusExtensionFreeAttributes to free the memory occupied by the array of attributes.

  • pfAction
    Pointer to a value of type RADIUS_ACTION, initially set to raContinue. This parameter specifies the action that IAS should take in response to an Access-Request.

Return Value

If the function succeeds, the return value is NO_ERROR.

If the function fails, the return value should be an appropriate error code from Winerror.h.

Remarks

If the return value is anything other than NO_ERROR, IAS discards the request.

IAS supports multiple Extension DLLs. IAS calls RadiusExtensionProcessEx for each of the DLLs listed in the registry. For more information see Setting Up the Extension and Authorization DLLs.

IAS calls RadiusExtensionFreeAttributes to free the memory occupied by the array of attributes returned by RadiusExtensionProcessEx. For this reason, if you implement RadiusExtensionProcessEx, you must also implement RadiusExtensionFreeAttributes.

Requirements

Server

Requires Windows Server 2008, Windows Server 2003, or Windows 2000 Server.

Header

Declared in Authif.h.

See Also

About Internet Authentication Service
Internet Authentication Service Reference
Internet Authentication Service Functions
RADIUS_ACTION
RADIUS_ATTRIBUTE
RADIUS_ATTRIBUTE_TYPE
RadiusExtensionProcess

Send comments about this topic to Microsoft

Build date: 10/1/2007