aboutsummaryrefslogtreecommitdiff
path: root/engine/lib/pam.php
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2012-12-14 14:21:32 -0200
committerSilvio Rhatto <rhatto@riseup.net>2012-12-14 14:21:32 -0200
commitf9ca24a9407f294a9bb7305180f9f8e740ab6ec9 (patch)
tree4c9a263b7fd770151e40940d6ddaa89d27e5053d /engine/lib/pam.php
parente15f0fce6940ee999cf5d6405ad1b16d00c38e4b (diff)
parent3ed289b03fa3d851fd7fffbc0441ebc9b5e98310 (diff)
downloadelgg-f9ca24a9407f294a9bb7305180f9f8e740ab6ec9.tar.gz
elgg-f9ca24a9407f294a9bb7305180f9f8e740ab6ec9.tar.bz2
Merge branch 'master' of git://gitorious.org/lorea/elgg into saravea
Diffstat (limited to 'engine/lib/pam.php')
-rw-r--r--engine/lib/pam.php7
1 files changed, 5 insertions, 2 deletions
diff --git a/engine/lib/pam.php b/engine/lib/pam.php
index 4f9f44278..1c9c3bfe1 100644
--- a/engine/lib/pam.php
+++ b/engine/lib/pam.php
@@ -30,7 +30,9 @@ $_PAM_HANDLERS = array();
* failure, return false or throw an exception. Returning nothing indicates that
* the handler wants to be skipped.
*
- * @param string $handler The handler function in the format
+ * Note, $handler must be string callback (not an array/Closure).
+ *
+ * @param string $handler Callable global handler function in the format ()
* pam_handler($credentials = NULL);
* @param string $importance The importance - "sufficient" (default) or "required"
* @param string $policy The policy type, default is "user"
@@ -45,7 +47,8 @@ function register_pam_handler($handler, $importance = "sufficient", $policy = "u
$_PAM_HANDLERS[$policy] = array();
}
- if (is_callable($handler)) {
+ // @todo remove requirement that $handle be a global function
+ if (is_string($handler) && is_callable($handler, true)) {
$_PAM_HANDLERS[$policy][$handler] = new stdClass;
$_PAM_HANDLERS[$policy][$handler]->handler = $handler;