pf::radius - Module that deals with everything RADIUS related
The pf::radius module contains the functions necessary for answering RADIUS queries. RADIUS is the network access component known as AAA used in 802.1x, MAC authentication, etc. This module acts as a proxy between our FreeRADIUS perl module's SOAP requests (packetfence.pm) and PacketFence core modules.
All the behavior contained here can be overridden in lib/pf/radius/custom.pm.
Returns an arrayref (tuple) with element 0 being a response code for Radius and second element an hash meant to fill the Radius reply (RAD_REPLY). The arrayref is to workaround a quirk in SOAP::Lite and have everything in result()
See http://search.cpan.org/~byrne/SOAP-Lite/lib/SOAP/Lite.pm#IN/OUT,_OUT_PARAMETERS_AND_AUTOBINDING
Update the location log based on the accounting information
Takes FreeRADIUS' RAD_REQUEST hash and process it to return AP-MAC Network Device IP Source-IP
Is this request of any interest?
returns 0 for no, 1 for yes
Is this wireless request of any interest?
returns 0 for no, 1 for yes
Pass all the info you can
returns 0 for no, 1 for yes
All of the parameters from the authorize method call are passed just in case someone who override this sub need it. However, connection_type is passed instead of nas_port_type and eap_type and the switch object instead of switch_ip.
Returns the same structure as authorize(), see it's POD doc for details.
Determines if switch is supported by current connection type.
If this returns true we will call _rewriteAccessAccept() and overwrite the Access-Accept attributes by it's return value.
This is meant to be overridden in pf::radius::custom.
Allows to rewrite the Access-Accept RADIUS atributes arbitrarily.
Return type should match pf::radius::authorize()'s return type. See its documentation for details.
This is meant to be overridden in pf::radius::custom.
Takes care of handling the flow for the RADIUS floating devices when receiving an Accept-Request
Takes care of handling the flow for the RADIUS floating devices when receiving an accounting stop
Inverse inc. <info@inverse.ca>
Copyright (C) 2005-2015 Inverse inc.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Hey! The above document had some coding errors, which are explained below:
Expected '=item *'
Expected '=item *'