forked from GNUsocial/gnu-social
allowed_nickname blocks top level url router names
This commit is contained in:
parent
12eec0fea2
commit
15d0055c6f
@ -118,7 +118,7 @@ class User extends Memcached_DataObject
|
||||
{
|
||||
// XXX: should already be validated for size, content, etc.
|
||||
|
||||
$blacklist = array();
|
||||
$blacklist = common_config('nickname', 'blacklist');
|
||||
|
||||
//all directory and file names should be blacklisted
|
||||
$d = dir(INSTALLDIR);
|
||||
@ -126,8 +126,15 @@ class User extends Memcached_DataObject
|
||||
$blacklist[]=$entry;
|
||||
}
|
||||
$d->close();
|
||||
$merged = array_merge($blacklist, common_config('nickname', 'blacklist'));
|
||||
return !in_array($nickname, $merged);
|
||||
|
||||
//all top level names in the router should be blacklisted
|
||||
$router = Router::get();
|
||||
foreach(array_keys($router->m->getPaths()) as $path){
|
||||
if(preg_match('/^\/(.*?)[\/\?]/',$path,$matches)){
|
||||
$blacklist[]=$matches[1];
|
||||
}
|
||||
}
|
||||
return !in_array($nickname, $blacklist);
|
||||
}
|
||||
|
||||
function getCurrentNotice($dt=null)
|
||||
|
Loading…
Reference in New Issue
Block a user