Fix redirurl collection so after login the user can be redirected correctly
ipfw is not referenced here.
Move all functions from index.php for captiveportal.inc
Handle PORTAL_REDIRURL variable
Ticket #836 Ticket #1194 and http://forum.pfsense.org/index.php/topic,32175.msg166263.html#msg166263 suggest that now that CP actions are quite fast its better to send the logout data before actually disconnecting the client.
Ticket #1128. Ooops pass the right parameter to unlock.
Nuke trailing carriage returns
Make the CP locking more granular and make use correctly of exclusive/shared locks where appripriate. This speeds up CP login process.
Ticket #868. Add Connection: close to the header to be proxy friendly. See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html for reference.
Separate this control structure from the one before it, change the order, and rename the function.
Add an option for allowing clients to pass through the captive portal a limited number of times before requiring login.
Restore this code so the redirect after logging into the captive portal will work again. Ticket #918
Do not overwrite the redirurl parameter already taken care of.
Remove ORIGINAL_PORTAL_IP option. Never did get it working correctly.
Fixes #821. Force usage of configured redirurl when one has been configured.
clarify text
Pull in RADIUS reply messages for logout page.
Provide a default error message on error pages if there is none provided by other means.
Add forgotten newlines.
Do not overwrite previous rules.
Free ipfw ruleno so it can be reused. Propperly delete passthrough mac entries that are not used.
Use correct array to iterate.
Use REQUEST to hanle both POST/GET.
Make the logout page configurable like the other pages. The only difference is that this page/code will be treated as a .php page so it may contain internal php CP variables referenced.
Provide an error message to the call.
Some configurations want to be able to ask users about replacing their existing mac during auto mac passthrough logins if they change equipment. Allow this in the backend by requiring the user to need posting a replacemacpassthru field with the post. Also add the possibility to send back with a portal_reply_page generated page the username and password posted.
Add the username to the auto added mac passthrough entry. Add an option to services->captiveportal page to activate/deactivate the auto-saving of username with the auto added mac passthrough.
Do comparions as meant not assignment. Pointy-hat: Myself
Use url_redirection even on successful login case if present. Add a redir functionality to portal_reply_page to keep the code centralized.
Actually use the radius WISPr(4) attribute 'url_redirection' when present.
Actually use the radius WISPr(4) attribute 'url_redirection' if present.
Do not allow nonstop redirects to self
Move get_include_contents function to pfsense-utils.inc
Allow php code to be included in the primary captive portal page. Add new ORIGINAL_PORTAL_IP post item which will be experimenting with a master mutli voucher setup.
Add a global declaration.
Improve/correct the passthrumac rules when this option is enabled.
Ticket #565. Correct deleting passthru mac entries. revert back to always allow a passthru mac as with allowed ips. Remove the check during login for passthru mac entries they will never make it to the login page.
fix up text
Warn the user when we cannot get the MAC address on pass through auto add case. Also when a user does a logout through clicking the logout form exit after showing sending info on logout successful.
Use tables of ipfw for passthrough mac entries. This makes it scale way better than previously. Fix multiple entries on adding mac through entries automatically after login for the same user. The changes allow even pass through mac to be controlled from the Status->Captiveportal. Use serialize/unserialize on some files that keep temporary information to speed up calculations. Really allow mac passthrough to follow radius rules or time out rules when present.
Add a new option which allows the admin user to configure CP so that it automatically enters an MAC passthru entry. The MAC is taken from login details and has to be removed manually. Also do improvements on rules handling and pipes. Add some optmizations. Teach the GUI/backend on ip/mac passthrough to configure a bw limit for this entries.
Rework includes/require. This saves about 4 megabytes.Simplify get_memory(). Tested on mips/i386
fix typos
fix typo
Make the username comparison for CP case insensitive. Feature-imported-from: m0n0
No need to rewrite the captiveportal database when there is concurrent login! Small optimization.
Teach captiveportal code to use the mac in tables functionality. Change the default ruleset to reflect this.
Fix multiple radius server handling.
Add pfSense_BUILDER_BINARIES: and pfSense_MODULE: additions
Add my copyright.
Port voucher login ability on CaptivePortal from M0n0Wall.
Various locking fixes are done with the import and this means that as of now pfSense has a better performin/behaving CP than m0n0wall.
Make CP multi-interface capable.
Remove dubious/forgotten unlocking that is uneccesary.
Fix lock leaking on portal_allow function.
The other half of CP locks conversion to new locking functions.
Modify captive portal to use centralized user management. The user manager hasbeen modified to include an account expiration option to support this service.
Return after redirecting.
Ensure we unlock captive portal before redirecting.
Remove duplicate function portal_mac_fixed()
changes from Dimitri Rodis
Remove bogus warning.
Duh. $type is a variable.
Log an error when we reach maximum capacity to system logs
Log an error to system logs when $type is not set.
Revert $type commit. This is being set by the called function per Jonathon.
Silence Eclipse warnings
Do not use blank variable $type. Use the same variable $cpdb[$i][2] that is being used in the other calls.
Move helper function to correct area
Fix $VARIABLES$
Instead of simply bailing leaving the client with a blank screen, output that an error occured and write out to the system log more verbose information for what the problem is. If in the case of a missing mac address, suggest that the user may want to disable mac filtering if they do not need this functionality.
Redirect back to index.php?foo. Safari does not like otherwise and breaks the image on captive portal page.
Remove #!/usr/local/bin/php
Remove debugging helpers
Fix captive portal redirects now that we are using LightHTTPD
Correct carp bringup sequence
Sync w/1.2b10
Reset back to pfSense state
Sync with m0n0wall 1.2b10
Correctly check for allowed ip's
Do not loop through array if its empty
use the correct field for clientip
Swap images
Import m0n0wall 1.2b7's captive portal code WITH user manager.
And the crowd goes wild.
Restore 1.2b5's captive portal. 1.2b7 + radius == boom.
Restore 1.2b6's captive portal.
You've -> You have (breaks Komodos syntax highlighting for some reason)
Sync with Pascal's latest
Sync with Pascal's latest versin
Add local user manager code imported from Pascal Suter's m0n0wall developers group message.
Add T. Howell-Cintron expanded radius attributes patch.
Synchornize with m0n0wall 1.2b3. These files have not really beenmodified too much so a straight copy works. 9 files remain to bepatched by hand.
Add captive portal logging.
Patch-submitted-to-m0n0wall-list-by: Matt Juszczak <matt_AT_atopia.net>
Initial revision