RE: IAS Extension DLL???

From: Rhett Gong [MSFT] (v-raygon_at_online.microsoft.com)
Date: 04/26/04


Date: Mon, 26 Apr 2004 08:07:01 GMT

Hi Rex,
IAS calls RadiusExtensionInit to initialize the Extension DLL. Then call RadiusExtensionProcess2 for each authentication
or accounting packet that IAS receives from the NAS. So in RadiusExtensionProcess2 we can modify RADIUS
packets before/after they are processed by the IAS server. From the sample code in our SDK, it replace the a
RADIUS attribute with a new one (check RadiusExtensionProcess2 function in "mapname.c").

>From your description, you would like to to get the ratNASIPaddress and the ratCallingStationId of the wireless
requester and over-write then with Windows 2003 Radius Proxy IP address and the Windows 2003 Radius Proxy
MAC address. The information you want is passed in the PRADIUS_EXTENSION_CONTROL_BLOCK when IAS call
RadiusExtensionProcess2 for your Extension DLL. If you want to deal the ratNASIPaddress and the
ratCallingStationId attribute, you need to do something like this:
"pAttr = RadiusFindFirstAttribute(pInAttrs, ratNASIPAddress);"
and then replace the pAttr with the value (Windows 2003 Radius Proxy IP address) as following line in sdk sample:
"dwResult = RadiusReplaceFirstAttribute(pInAttrs, &raNewName);".

Please note: SDK help provides more details on the types of RADIUS packets that can be modified and the stages
at which they can be modified.

Have a nice day!
Rhett Gong [MSFT]
Microsoft Online Partner Support

This posting is provided "AS IS" with no warranties, and confers no rights.
Please reply to newsgroups only. Thanks.