From: Florian Date: Fri, 1 Aug 2014 13:55:16 +0000 (+0200) Subject: SpecialRunJobs: Use Config instead of global X-Git-Tag: 1.31.0-rc.0~14265 X-Git-Url: https://git.cyclocoop.org/%7B%24www_url%7Dadmin/compta/exercices/journal.php?a=commitdiff_plain;h=6aceb345b52c3622170a67a22335a8c9494d2c02;p=lhc%2Fweb%2Fwiklou.git SpecialRunJobs: Use Config instead of global Remove use of global and use Config object submitted as a new second paremeter to SpecialRunJobs::getQuerySignature. Bug: 69187 Change-Id: Idfd48e36275651c8ee1d926355fc32a7ba84883a --- diff --git a/includes/MediaWiki.php b/includes/MediaWiki.php index da4af2fd99..0424633a93 100644 --- a/includes/MediaWiki.php +++ b/includes/MediaWiki.php @@ -682,7 +682,8 @@ class MediaWiki { $query = array( 'title' => 'Special:RunJobs', 'tasks' => 'jobs', 'maxjobs' => $n, 'sigexpiry' => time() + 5 ); - $query['signature'] = SpecialRunJobs::getQuerySignature( $query ); + $query['signature'] = SpecialRunJobs::getQuerySignature( + $query, $this->config->get( 'SecretKey' ) ); $errno = $errstr = null; $info = wfParseUrl( $this->config->get( 'Server' ) ); diff --git a/includes/specials/SpecialRunJobs.php b/includes/specials/SpecialRunJobs.php index 54f224acec..d4a06eb5ca 100644 --- a/includes/specials/SpecialRunJobs.php +++ b/includes/specials/SpecialRunJobs.php @@ -61,7 +61,7 @@ class SpecialRunJobs extends UnlistedSpecialPage { $squery = $params; unset( $squery['signature'] ); - $cSig = self::getQuerySignature( $squery ); // correct signature + $cSig = self::getQuerySignature( $squery, $this->getConfig()->get( 'SecretKey' ) ); // correct signature $rSig = $params['signature']; // provided signature $verified = is_string( $rSig ) && hash_equals( $cSig, $rSig ); @@ -102,12 +102,11 @@ class SpecialRunJobs extends UnlistedSpecialPage { /** * @param array $query + * @param string $secretKey * @return string */ - public static function getQuerySignature( array $query ) { - global $wgSecretKey; - + public static function getQuerySignature( array $query, $secretKey ) { ksort( $query ); // stable order - return hash_hmac( 'sha1', wfArrayToCgi( $query ), $wgSecretKey ); + return hash_hmac( 'sha1', wfArrayToCgi( $query ), $secretKey ); } }