Mage_Downloader - Version 1.9.2.0

Version Notes

1.9.2.0

Download this release

Release Info

Developer Magento Core Team
Extension Mage_Downloader
Version 1.9.2.0
Comparing to
See all releases


Code changes from version 1.9.1.1 to 1.9.2.0

Files changed (32) hide show
  1. downloader/Maged/.htaccess +2 -0
  2. downloader/Maged/Controller.php +21 -7
  3. downloader/Maged/Model/Connect.php +5 -2
  4. downloader/Maged/Model/Session.php +21 -1
  5. downloader/Maged/View.php +32 -0
  6. downloader/lib/.htaccess +2 -0
  7. downloader/lib/Mage/Connect/Command.php +1 -1
  8. downloader/lib/Mage/Connect/Command/Package.php +28 -7
  9. downloader/lib/Mage/Connect/Package/Extension.php +25 -1
  10. downloader/lib/Mage/Connect/Package/Maintainer.php +25 -1
  11. downloader/lib/Mage/Connect/Packager.php +2 -2
  12. downloader/lib/Mage/Connect/Repository.php +25 -1
  13. downloader/lib/Mage/Connect/Repository/Abstract.php +25 -1
  14. downloader/lib/Mage/Connect/Repository/Channel.php +25 -1
  15. downloader/lib/Mage/Connect/Repository/Channel/Abstract.php +25 -1
  16. downloader/lib/Mage/Connect/Repository/Channel/Commercial.php +25 -1
  17. downloader/lib/Mage/Connect/Repository/Channel/Community.php +25 -1
  18. downloader/lib/Mage/Connect/Repository/Channel/Core.php +25 -1
  19. downloader/lib/Mage/Connect/Repository/Local.php +25 -1
  20. downloader/lib/Mage/Connect/Rest/Builder.php +76 -0
  21. downloader/lib/Mage/Connect/Rest/Factory.php +41 -0
  22. downloader/lib/Mage/Connect/Singleconfig.php +1 -1
  23. downloader/lib/Mage/HTTP/Client/Curl.php +1 -1
  24. downloader/target.xml +41 -15
  25. downloader/template/connect/packages.phtml +3 -1
  26. downloader/template/connect/packages_prepare.phtml +2 -0
  27. downloader/template/login.phtml +1 -0
  28. downloader/template/messages.phtml +1 -1
  29. downloader/template/settings.phtml +1 -0
  30. index.php +1 -5
  31. mage +24 -0
  32. package.xml +5 -5
downloader/Maged/.htaccess ADDED
@@ -0,0 +1,2 @@
 
 
1
+ Order deny,allow
2
+ Deny from all
downloader/Maged/Controller.php CHANGED
@@ -320,6 +320,10 @@ final class Maged_Controller
320
  */
321
  public function connectPackagesPostAction()
322
  {
 
 
 
 
323
  $actions = isset($_POST['actions']) ? $_POST['actions'] : array();
324
  if (isset($_POST['ignore_local_modification'])) {
325
  $ignoreLocalModification = $_POST['ignore_local_modification'];
@@ -334,6 +338,10 @@ final class Maged_Controller
334
  */
335
  public function connectPreparePackagePostAction()
336
  {
 
 
 
 
337
  if (!$_POST) {
338
  echo "INVALID POST DATA";
339
  return;
@@ -355,6 +363,10 @@ final class Maged_Controller
355
  */
356
  public function connectInstallPackagePostAction()
357
  {
 
 
 
 
358
  if (!$_POST) {
359
  echo "INVALID POST DATA";
360
  return;
@@ -444,6 +456,11 @@ final class Maged_Controller
444
  */
445
  public function settingsPostAction()
446
  {
 
 
 
 
 
447
  if ($_POST) {
448
  $ftp = $this->getFtpPost($_POST);
449
 
@@ -775,7 +792,7 @@ final class Maged_Controller
775
  */
776
  protected function _addDomainPolicyHeader()
777
  {
778
- if (class_exists('Mage') && Mage::isInstalled()) {
779
  /** @var Mage_Core_Model_Domainpolicy $domainPolicy */
780
  $domainPolicy = Mage::getModel('core/domainpolicy');
781
  if ($domainPolicy) {
@@ -1016,8 +1033,8 @@ final class Maged_Controller
1016
  return array(
1017
  'major' => '1',
1018
  'minor' => '9',
1019
- 'revision' => '1',
1020
- 'patch' => '1',
1021
  'stability' => '',
1022
  'number' => '',
1023
  );
@@ -1122,10 +1139,7 @@ final class Maged_Controller
1122
  */
1123
  protected function _validateFormKey()
1124
  {
1125
- if (!($formKey = $_REQUEST['form_key']) || $formKey != $this->session()->getFormKey()) {
1126
- return false;
1127
- }
1128
- return true;
1129
  }
1130
 
1131
  /**
320
  */
321
  public function connectPackagesPostAction()
322
  {
323
+ if (!$this->_validateFormKey()) {
324
+ echo "INVALID POST DATA";
325
+ return;
326
+ }
327
  $actions = isset($_POST['actions']) ? $_POST['actions'] : array();
328
  if (isset($_POST['ignore_local_modification'])) {
329
  $ignoreLocalModification = $_POST['ignore_local_modification'];
338
  */
339
  public function connectPreparePackagePostAction()
340
  {
341
+ if (!$this->_validateFormKey()) {
342
+ echo "INVALID POST DATA";
343
+ return;
344
+ }
345
  if (!$_POST) {
346
  echo "INVALID POST DATA";
347
  return;
363
  */
364
  public function connectInstallPackagePostAction()
365
  {
366
+ if (!$this->_validateFormKey()) {
367
+ echo "INVALID POST DATA";
368
+ return;
369
+ }
370
  if (!$_POST) {
371
  echo "INVALID POST DATA";
372
  return;
456
  */
457
  public function settingsPostAction()
458
  {
459
+ if (!$this->_validateFormKey()) {
460
+ $this->session()->addMessage('error', "Unable to save settings");
461
+ $this->redirect($this->url('settings'));
462
+ return;
463
+ }
464
  if ($_POST) {
465
  $ftp = $this->getFtpPost($_POST);
466
 
792
  */
793
  protected function _addDomainPolicyHeader()
794
  {
795
+ if ($this->isInstalled()) {
796
  /** @var Mage_Core_Model_Domainpolicy $domainPolicy */
797
  $domainPolicy = Mage::getModel('core/domainpolicy');
798
  if ($domainPolicy) {
1033
  return array(
1034
  'major' => '1',
1035
  'minor' => '9',
1036
+ 'revision' => '2',
1037
+ 'patch' => '0',
1038
  'stability' => '',
1039
  'number' => '',
1040
  );
1139
  */
1140
  protected function _validateFormKey()
1141
  {
1142
+ return $this->session()->validateFormKey();
 
 
 
1143
  }
1144
 
1145
  /**
downloader/Maged/Model/Connect.php CHANGED
@@ -100,8 +100,11 @@ class Maged_Model_Connect extends Maged_Model
100
  {
101
  $match = array();
102
  if (!$this->checkExtensionKey($id, $match)) {
103
- echo('Invalid package identifier provided: '.$id);
104
- exit;
 
 
 
105
  }
106
 
107
  $channel = $match[1];
100
  {
101
  $match = array();
102
  if (!$this->checkExtensionKey($id, $match)) {
103
+ $errorMessage[] = sprintf('Invalid package identifier provided: %s', $id);
104
+ $packages = array(
105
+ 'errors' => array('error'=> $errorMessage)
106
+ );
107
+ return $packages;
108
  }
109
 
110
  $channel = $match[1];
downloader/Maged/Model/Session.php CHANGED
@@ -48,7 +48,7 @@ class Maged_Model_Session extends Maged_Model
48
  */
49
  public function start()
50
  {
51
- if (class_exists('Mage') && Mage::isInstalled()) {
52
  // initialize Magento Config
53
  Mage::app();
54
  $this->_session = Mage::getSingleton('admin/session');
@@ -103,6 +103,13 @@ class Maged_Model_Session extends Maged_Model
103
  }
104
 
105
  try {
 
 
 
 
 
 
 
106
  if ( (isset($_POST['username']) && empty($_POST['username']))
107
  || (isset($_POST['password']) && empty($_POST['password']))) {
108
  $this->addMessage('error', 'Invalid user name or password');
@@ -234,4 +241,17 @@ class Maged_Model_Session extends Maged_Model
234
  }
235
  return $this->get('_form_key');
236
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
237
  }
48
  */
49
  public function start()
50
  {
51
+ if ($this->controller()->isInstalled()) {
52
  // initialize Magento Config
53
  Mage::app();
54
  $this->_session = Mage::getSingleton('admin/session');
103
  }
104
 
105
  try {
106
+ if (isset($_POST['username']) && !$this->validateFormKey()) {
107
+ $this->controller()
108
+ ->redirect(
109
+ $this->controller()->url(),
110
+ true
111
+ );
112
+ }
113
  if ( (isset($_POST['username']) && empty($_POST['username']))
114
  || (isset($_POST['password']) && empty($_POST['password']))) {
115
  $this->addMessage('error', 'Invalid user name or password');
241
  }
242
  return $this->get('_form_key');
243
  }
244
+
245
+ /**
246
+ * Validate Form Key
247
+ *
248
+ * @return bool
249
+ */
250
+ public function validateFormKey()
251
+ {
252
+ if (!($formKey = $_REQUEST['form_key']) || $formKey != $this->getFormKey()) {
253
+ return false;
254
+ }
255
+ return true;
256
+ }
257
  }
downloader/Maged/View.php CHANGED
@@ -162,4 +162,36 @@ class Maged_View
162
  {
163
  return $this->controller()->getFormKey();
164
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
165
  }
162
  {
163
  return $this->controller()->getFormKey();
164
  }
165
+
166
+ /**
167
+ * Escape html entities
168
+ *
169
+ * @param mixed $data
170
+ * @param array $allowedTags
171
+ * @return mixed
172
+ */
173
+ public function escapeHtml($data, $allowedTags = null)
174
+ {
175
+ if (is_array($data)) {
176
+ $result = array();
177
+ foreach ($data as $item) {
178
+ $result[] = $this->escapeHtml($item);
179
+ }
180
+ } else {
181
+ // process single item
182
+ if (strlen($data)) {
183
+ if (is_array($allowedTags) and !empty($allowedTags)) {
184
+ $allowed = implode('|', $allowedTags);
185
+ $result = preg_replace('/<([\/\s\r\n]*)(' . $allowed . ')([\/\s\r\n]*)>/si', '##$1$2$3##', $data);
186
+ $result = htmlspecialchars($result, ENT_COMPAT, 'UTF-8', false);
187
+ $result = preg_replace('/##([\/\s\r\n]*)(' . $allowed . ')([\/\s\r\n]*)##/si', '<$1$2$3>', $result);
188
+ } else {
189
+ $result = htmlspecialchars($data, ENT_COMPAT, 'UTF-8', false);
190
+ }
191
+ } else {
192
+ $result = $data;
193
+ }
194
+ }
195
+ return $result;
196
+ }
197
  }
downloader/lib/.htaccess ADDED
@@ -0,0 +1,2 @@
 
 
1
+ Order deny,allow
2
+ Deny from all
downloader/lib/Mage/Connect/Command.php CHANGED
@@ -276,7 +276,7 @@ class Mage_Connect_Command
276
  public function rest()
277
  {
278
  if(is_null(self::$_rest)) {
279
- self::$_rest = new Mage_Connect_Rest(self::config()->protocol);
280
  }
281
  return self::$_rest;
282
  }
276
  public function rest()
277
  {
278
  if(is_null(self::$_rest)) {
279
+ self::$_rest = Mage_Connect_Rest_Builder::getAdapter(self::config()->protocol);
280
  }
281
  return self::$_rest;
282
  }
downloader/lib/Mage/Connect/Command/Package.php CHANGED
@@ -111,17 +111,17 @@ extends Mage_Connect_Command
111
  $config = $this->config();
112
  }
113
 
114
- $rest = new Mage_Connect_Rest($config->protocol);
115
  if(!empty($channelAuth)){
116
  $rest->getLoader()->setCredentials($channelAuth['username'], $channelAuth['password']);
117
  }
118
 
119
  $cache->checkChannel($channel, $config, $rest);
120
 
121
- $data = $packager->getDependenciesList($channel, $package, $cache, $config,
122
  $argVersionMax, $argVersionMin, true, false, $rest
123
  );
124
-
125
  $result = array();
126
  foreach ($data['result'] as $_package) {
127
  $_result['channel'] = $_package['channel'];
@@ -139,7 +139,14 @@ extends Mage_Connect_Command
139
  }
140
  }
141
 
142
- $this->ui()->output(array($command=> array('data'=>$result, 'title'=>"Package installation information for {$params[1]}: ")));
 
 
 
 
 
 
 
143
 
144
  } catch (Exception $e) {
145
  $this->doError($command, $e->getMessage());
@@ -175,8 +182,22 @@ extends Mage_Connect_Command
175
  $cache = $this->getSconfig();
176
  $config = $this->config();
177
  }
178
- $data = $packager->getDependenciesList($channel, $package, $cache, $config, $argVersionMax, $argVersionMin);
179
- $this->ui()->output(array($command=> array('data'=>$data['deps'], 'title'=>"Package deps for {$params[1]}: ")));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
180
 
181
  } catch (Exception $e) {
182
  $this->doError($command, $e->getMessage());
@@ -187,7 +208,7 @@ extends Mage_Connect_Command
187
  {
188
  $this->cleanupParams($params);
189
  try {
190
- if(count($params) < 1) {
191
  throw new Exception("Arguments should be: source.tgz [target.tgz]");
192
  }
193
  $sourceFile = $params[0];
111
  $config = $this->config();
112
  }
113
 
114
+ $rest = Mage_Connect_Rest_Builder::getAdapter($config->protocol);
115
  if(!empty($channelAuth)){
116
  $rest->getLoader()->setCredentials($channelAuth['username'], $channelAuth['password']);
117
  }
118
 
119
  $cache->checkChannel($channel, $config, $rest);
120
 
121
+ $data = $packager->getDependenciesList($channel, $package, $cache, $config,
122
  $argVersionMax, $argVersionMin, true, false, $rest
123
  );
124
+
125
  $result = array();
126
  foreach ($data['result'] as $_package) {
127
  $_result['channel'] = $_package['channel'];
139
  }
140
  }
141
 
142
+ $this->ui()->output(
143
+ array(
144
+ $command=> array(
145
+ 'data'=>$result,
146
+ 'title'=>"Package installation information for {$params[1]}: "
147
+ )
148
+ )
149
+ );
150
 
151
  } catch (Exception $e) {
152
  $this->doError($command, $e->getMessage());
182
  $cache = $this->getSconfig();
183
  $config = $this->config();
184
  }
185
+ $data = $packager->getDependenciesList(
186
+ $channel,
187
+ $package,
188
+ $cache,
189
+ $config,
190
+ $argVersionMax,
191
+ $argVersionMin
192
+ );
193
+ $this->ui()->output(
194
+ array(
195
+ $command=> array(
196
+ 'data'=>$data['deps'],
197
+ 'title'=>"Package deps for {$params[1]}: "
198
+ )
199
+ )
200
+ );
201
 
202
  } catch (Exception $e) {
203
  $this->doError($command, $e->getMessage());
208
  {
209
  $this->cleanupParams($params);
210
  try {
211
+ if (count($params) < 1) {
212
  throw new Exception("Arguments should be: source.tgz [target.tgz]");
213
  }
214
  $sourceFile = $params[0];
downloader/lib/Mage/Connect/Package/Extension.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Package/Maintainer.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Packager.php CHANGED
@@ -579,7 +579,7 @@ class Mage_Connect_Packager
579
  }
580
 
581
  if(!$restObj) {
582
- $restObj = new Mage_Connect_Rest($configObj->protocol);
583
  }
584
 
585
  $updates = array();
@@ -786,7 +786,7 @@ class Mage_Connect_Packager
786
  $chanName = $cache->chanName($chanName);
787
 
788
  if (!$rest) {
789
- $rest = new Mage_Connect_Rest($config->protocol);
790
  }
791
  $rest->setChannel($cache->chanUrl($chanName));
792
  $releases = $rest->getReleases($package);
579
  }
580
 
581
  if(!$restObj) {
582
+ $restObj = Mage_Connect_Rest_Builder::getAdapter($configObj->protocol);
583
  }
584
 
585
  $updates = array();
786
  $chanName = $cache->chanName($chanName);
787
 
788
  if (!$rest) {
789
+ $rest = Mage_Connect_Rest_Builder::getAdapter($config->protocol);
790
  }
791
  $rest->setChannel($cache->chanUrl($chanName));
792
  $releases = $rest->getReleases($package);
downloader/lib/Mage/Connect/Repository.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Repository/Abstract.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Repository/Channel.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Repository/Channel/Abstract.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Repository/Channel/Commercial.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Repository/Channel/Community.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Repository/Channel/Core.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Repository/Local.php CHANGED
@@ -1 +1,25 @@
1
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
downloader/lib/Mage/Connect/Rest/Builder.php ADDED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
26
+
27
+ /**
28
+ * Class for retrieve adapter to work with remote REST interface
29
+ *
30
+ * @category Mage
31
+ * @package Mage_Connect
32
+ * @author Magento Core Team <core@magentocommerce.com>
33
+ */
34
+ class Mage_Connect_Rest_Builder
35
+ {
36
+ /**
37
+ * Rest adapter factory
38
+ *
39
+ * @var Mage_Connect_Rest_Factory
40
+ */
41
+ protected static $_adapterFactory;
42
+
43
+ /**
44
+ * Retrieve adapter factory
45
+ *
46
+ * @return Mage_Connect_Rest_Factory
47
+ */
48
+ protected static function _getAdapterFactory()
49
+ {
50
+ if (self::$_adapterFactory === null) {
51
+ self::$_adapterFactory = new Mage_Connect_Rest_Factory();
52
+ }
53
+ return self::$_adapterFactory;
54
+ }
55
+
56
+ /**
57
+ * Define rest adapter factory
58
+ *
59
+ * @param Mage_Connect_Rest_Factory $adapterFactory
60
+ */
61
+ public static function setAdapterFactory(Mage_Connect_Rest_Factory $adapterFactory)
62
+ {
63
+ self::$_adapterFactory = $adapterFactory;
64
+ }
65
+
66
+ /**
67
+ * Retrieve rest adapter
68
+ *
69
+ * @param string $protocol
70
+ * @return Mage_Connect_Rest
71
+ */
72
+ public static function getAdapter($protocol = "https")
73
+ {
74
+ return self::_getAdapterFactory()->getAdapter($protocol);
75
+ }
76
+ }
downloader/lib/Mage/Connect/Rest/Factory.php ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magento.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magento.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Connect
23
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
26
+ /**
27
+ * Factory for rest adapter
28
+ */
29
+ class Mage_Connect_Rest_Factory
30
+ {
31
+ /**
32
+ * Create new adapter instance
33
+ *
34
+ * @param string $protocol
35
+ * @return Mage_Connect_Rest
36
+ */
37
+ public function getAdapter($protocol = "https")
38
+ {
39
+ return new Mage_Connect_Rest($protocol);
40
+ }
41
+ }
downloader/lib/Mage/Connect/Singleconfig.php CHANGED
@@ -274,7 +274,7 @@ class Mage_Connect_Singleconfig
274
 
275
  if ($uri && !$this->isChannel($uri)) {
276
  if (!isset($rest)) {
277
- $rest = new Mage_Connect_Rest($config->protocol);
278
  }
279
  $rest->setChannel($uri);
280
  $data = $rest->getChannelInfo();
274
 
275
  if ($uri && !$this->isChannel($uri)) {
276
  if (!isset($rest)) {
277
+ $rest = Mage_Connect_Rest_Builder::getAdapter($config->protocol);
278
  }
279
  $rest->setChannel($uri);
280
  $data = $rest->getChannelInfo();
downloader/lib/Mage/HTTP/Client/Curl.php CHANGED
@@ -374,7 +374,7 @@ implements Mage_HTTP_IClient
374
  $this->_ch = curl_init();
375
  $this->curlOption(CURLOPT_URL, $uriModified);
376
  $this->curlOption(CURLOPT_SSL_VERIFYPEER, false);
377
- $this->curlOption(CURLOPT_SSL_VERIFYHOST, 2);
378
  $this->getCurlMethodSettings($method, $params, $isAuthorizationRequired);
379
 
380
  if(count($this->_headers)) {
374
  $this->_ch = curl_init();
375
  $this->curlOption(CURLOPT_URL, $uriModified);
376
  $this->curlOption(CURLOPT_SSL_VERIFYPEER, false);
377
+ $this->curlOption(CURLOPT_SSL_CIPHER_LIST, 'TLSv1');
378
  $this->getCurlMethodSettings($method, $params, $isAuthorizationRequired);
379
 
380
  if(count($this->_headers)) {
downloader/target.xml CHANGED
@@ -1,15 +1,41 @@
1
- <?xml version="1.0"?>
2
- <targets>
3
- <target name="magelocal" label="Magento Local module file" uri="./app/code/local" />
4
- <target name="magecommunity" label="Magento Community module file" uri="./app/code/community" />
5
- <target name="magecore" label="Magento Core team module file" uri="./app/code/core" />
6
- <target name="magedesign" label="Magento User Interface (layouts, templates)" uri="./app/design" />
7
- <target name="mageetc" label="Magento Global Configuration" uri="./app/etc" />
8
- <target name="magelib" label="Magento PHP Library file" uri="./lib" />
9
- <target name="magelocale" label="Magento Locale language file" uri="./app/locale" />
10
- <target name="magemedia" label="Magento Media library" uri="./media" />
11
- <target name="mageskin" label="Magento Theme Skin (Images, CSS, JS)" uri="./skin" />
12
- <target name="mageweb" label="Magento Other web accessible file" uri="." />
13
- <target name="magetest" label="Magento PHPUnit test" uri="./tests" />
14
- <target name="mage" label="Magento other" uri="." />
15
- </targets>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Open Software License (OSL 3.0)
9
+ * that is bundled with this package in the file LICENSE.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/osl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magento.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magento.com for more information.
21
+ *
22
+ * @category Mage
23
+ * @package Mage_Downloader
24
+ * @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
25
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
26
+ */
27
+ -->
28
+ <targets>
29
+ <target name="magelocal" label="Magento Local module file" uri="./app/code/local" />
30
+ <target name="magecommunity" label="Magento Community module file" uri="./app/code/community" />
31
+ <target name="magecore" label="Magento Core team module file" uri="./app/code/core" />
32
+ <target name="magedesign" label="Magento User Interface (layouts, templates)" uri="./app/design" />
33
+ <target name="mageetc" label="Magento Global Configuration" uri="./app/etc" />
34
+ <target name="magelib" label="Magento PHP Library file" uri="./lib" />
35
+ <target name="magelocale" label="Magento Locale language file" uri="./app/locale" />
36
+ <target name="magemedia" label="Magento Media library" uri="./media" />
37
+ <target name="mageskin" label="Magento Theme Skin (Images, CSS, JS)" uri="./skin" />
38
+ <target name="mageweb" label="Magento Other web accessible file" uri="." />
39
+ <target name="magetest" label="Magento PHPUnit test" uri="./tests" />
40
+ <target name="mage" label="Magento other" uri="." />
41
+ </targets>
downloader/template/connect/packages.phtml CHANGED
@@ -85,7 +85,7 @@ Event.observe(window, 'load', changeAvailableArchiveStatus);
85
  function connectPrepare(form) {
86
  new Ajax.Request(form.action, {
87
  method:'post',
88
- parameters: {install_package_id: form.install_package_id.value},
89
  onCreate: function() {
90
  $('prepare_package_result').update(
91
  '<div class="loading-mask" id="loading_mask_loader">'+
@@ -122,6 +122,7 @@ function connectPrepare(form) {
122
  //-->
123
  </script>
124
  <form action="<?php echo $this->url('connectPreparePackagePost')?>" method="post" onsubmit="return connectPrepare(this)">
 
125
  <ul class="bare-list">
126
  <li>
127
  <span class="step-count">1</span> &nbsp; Search for modules via <a href="http://connect.magentocommerce.com/" target="Magento_Connect">Magento Connect</a>.
@@ -176,6 +177,7 @@ function connectPrepare(form) {
176
  <?php foreach ($packages as $channel=>$pkgs): ?>
177
 
178
  <form id="connect_packages_<?php echo $i ?>" class="connect-packages" action="<?php echo $this->url('connectPackagesPost')?>" method="post" target="connect_iframe">
 
179
  <div class="no-display">
180
  <input type="hidden" id="ignore_local_modification" name="ignore_local_modification" value=""/>
181
  <input type="hidden" name="form_id" value="connect_packages_<?php echo $i ?>"/>
85
  function connectPrepare(form) {
86
  new Ajax.Request(form.action, {
87
  method:'post',
88
+ parameters: {install_package_id: form.install_package_id.value, form_key: form.form_key.value},
89
  onCreate: function() {
90
  $('prepare_package_result').update(
91
  '<div class="loading-mask" id="loading_mask_loader">'+
122
  //-->
123
  </script>
124
  <form action="<?php echo $this->url('connectPreparePackagePost')?>" method="post" onsubmit="return connectPrepare(this)">
125
+ <input name="form_key" type="hidden" value="<?php echo $this->getFormKey() ?>" />
126
  <ul class="bare-list">
127
  <li>
128
  <span class="step-count">1</span> &nbsp; Search for modules via <a href="http://connect.magentocommerce.com/" target="Magento_Connect">Magento Connect</a>.
177
  <?php foreach ($packages as $channel=>$pkgs): ?>
178
 
179
  <form id="connect_packages_<?php echo $i ?>" class="connect-packages" action="<?php echo $this->url('connectPackagesPost')?>" method="post" target="connect_iframe">
180
+ <input name="form_key" type="hidden" value="<?php echo $this->getFormKey() ?>" />
181
  <div class="no-display">
182
  <input type="hidden" id="ignore_local_modification" name="ignore_local_modification" value=""/>
183
  <input type="hidden" name="form_id" value="connect_packages_<?php echo $i ?>"/>
downloader/template/connect/packages_prepare.phtml CHANGED
@@ -34,6 +34,8 @@ Extension dependencies
34
  <form action="<?php
35
  echo $this->url('connectInstallPackagePost')?>" method="post" target="connect_iframe" onsubmit="onSubmit(this)">
36
  <input type="hidden" name="install_package_id" value="<?php echo $this->get('package_id'); ?>">
 
 
37
  <table cellspacing="0" cellpadding="0" width="100%">
38
  <col width="150" />
39
  <col width="250" />
34
  <form action="<?php
35
  echo $this->url('connectInstallPackagePost')?>" method="post" target="connect_iframe" onsubmit="onSubmit(this)">
36
  <input type="hidden" name="install_package_id" value="<?php echo $this->get('package_id'); ?>">
37
+ <input name="form_key" type="hidden" value="<?php echo $this->getFormKey() ?>" />
38
+ <input type="hidden" name="install_package_id" value="<?php echo $this->escapeHtml($this->get('package_id')); ?>">
39
  <table cellspacing="0" cellpadding="0" width="100%">
40
  <col width="150" />
41
  <col width="250" />
downloader/template/login.phtml CHANGED
@@ -30,6 +30,7 @@
30
  <?php endif ?>
31
  <div style="width:300px; padding:20px; margin:90px auto !important; background:#f6f6f6;">
32
  <form method="post" action="#">
 
33
  <h2 class="page-head">Log In</h2>
34
  <p><small>Please re-enter your Magento Adminstration Credentials.<br/>Only administrators with full permissions will be able to log in.</small></p>
35
  <table class="form-list">
30
  <?php endif ?>
31
  <div style="width:300px; padding:20px; margin:90px auto !important; background:#f6f6f6;">
32
  <form method="post" action="#">
33
+ <input name="form_key" type="hidden" value="<?php echo $this->getFormKey() ?>" />
34
  <h2 class="page-head">Log In</h2>
35
  <p><small>Please re-enter your Magento Adminstration Credentials.<br/>Only administrators with full permissions will be able to log in.</small></p>
36
  <table class="form-list">
downloader/template/messages.phtml CHANGED
@@ -30,7 +30,7 @@
30
  <li>
31
  <ul class="<?php echo $type ?>-msg">
32
  <?php foreach ($msgs as $msg): ?>
33
- <li><?php echo $msg ?></li>
34
  <?php endforeach; ?>
35
  </ul>
36
  </li>
30
  <li>
31
  <ul class="<?php echo $type ?>-msg">
32
  <?php foreach ($msgs as $msg): ?>
33
+ <li><?php echo $this->escapeHtml($msg) ?></li>
34
  <?php endforeach; ?>
35
  </ul>
36
  </li>
downloader/template/settings.phtml CHANGED
@@ -50,6 +50,7 @@ function changeDeploymentType (element)
50
  <div class="settings-page">
51
  <h2 class="page-head">Settings</h2>
52
  <form action="<?php echo $this->url('settingsPost') ?>" method="post">
 
53
  <fieldset>
54
  <p>Magento Extensions are available in three different versions.</p>
55
  <ul class="disc">
50
  <div class="settings-page">
51
  <h2 class="page-head">Settings</h2>
52
  <form action="<?php echo $this->url('settingsPost') ?>" method="post">
53
+ <input name="form_key" type="hidden" value="<?php echo $this->getFormKey() ?>" />
54
  <fieldset>
55
  <p>Magento Extensions are available in three different versions.</p>
56
  <ul class="disc">
index.php CHANGED
@@ -34,11 +34,6 @@ Whoops, it looks like you have an invalid PHP version.</h3></div><p>Magento supp
34
  exit;
35
  }
36
 
37
- /**
38
- * Error reporting
39
- */
40
- error_reporting(E_ALL | E_STRICT);
41
-
42
  /**
43
  * Compilation includes configuration file
44
  */
@@ -66,6 +61,7 @@ if (file_exists($maintenanceFile)) {
66
  exit;
67
  }
68
 
 
69
  require_once $mageFilename;
70
 
71
  #Varien_Profiler::enable();
34
  exit;
35
  }
36
 
 
 
 
 
 
37
  /**
38
  * Compilation includes configuration file
39
  */
61
  exit;
62
  }
63
 
64
+ require MAGENTO_ROOT . '/app/bootstrap.php';
65
  require_once $mageFilename;
66
 
67
  #Varien_Profiler::enable();
mage CHANGED
@@ -1,4 +1,28 @@
1
  #!/bin/sh
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
 
3
  # REPLACE with your PHP5 binary path (example: /usr/local/php5/bin/php )
4
  #MAGE_PHP_BIN="php"
1
  #!/bin/sh
2
+ #
3
+ # Magento
4
+ #
5
+ # NOTICE OF LICENSE
6
+ #
7
+ # This source file is subject to the Open Software License (OSL 3.0)
8
+ # that is bundled with this package in the file LICENSE.txt.
9
+ # It is also available through the world-wide-web at this URL:
10
+ # http://opensource.org/licenses/osl-3.0.php
11
+ # If you did not receive a copy of the license and are unable to
12
+ # obtain it through the world-wide-web, please send an email
13
+ # to license@magento.com so we can send you a copy immediately.
14
+ #
15
+ # DISCLAIMER
16
+ #
17
+ # Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ # versions in the future. If you wish to customize Magento for your
19
+ # needs please refer to http://www.magento.com for more information.
20
+ #
21
+ # @category Mage
22
+ # @package Mage
23
+ # @copyright Copyright (c) 2006-2015 X.commerce, Inc. (http://www.magento.com)
24
+ # @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ #
26
 
27
  # REPLACE with your PHP5 binary path (example: /usr/local/php5/bin/php )
28
  #MAGE_PHP_BIN="php"
package.xml CHANGED
@@ -1,18 +1,18 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Mage_Downloader</name>
4
- <version>1.9.1.1</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Magento Downloader</summary>
10
  <description>Magento Downloader</description>
11
- <notes>1.9.1.1</notes>
12
  <authors><author><name>Magento Core Team</name><user>core</user><email>core@magentocommerce.com</email></author></authors>
13
- <date>2015-04-29</date>
14
- <time>12:01:50</time>
15
- <contents><target name="mage"><dir name="downloader"><dir name="js"><file name="prototype.js" hash="3766aeff5778b54f74f93670322ca0df"/></dir><dir name="Maged"><dir name="Connect"><file name="Frontend.php" hash="8a7558ec807fc41657dccba89cbebead"/></dir><file name="Connect.php" hash="97b7b02260e78d32e41135a9908e0147"/><file name="Controller.php" hash="8b6e2dce95f3ca7168bb5ad6e03ce6d7"/><file name="Exception.php" hash="0ff1e9926e900d7d627ef6c349997e0e"/><dir name="Model"><dir name="Config"><file name="Abstract.php" hash="361ac973543d1c90cb062fa1da192ff9"/><file name="Community.php" hash="cce0f54be4688e53ba397f2b135c7f18"/><file name="Interface.php" hash="ee07933da8a035aaa297e5daba88052e"/></dir><file name="Config.php" hash="324c5925ff47b58c20cb230b3a617288"/><dir name="Connect"><file name="Request.php" hash="f2df0d5bf7ff9ac689d1bea3fa55424f"/></dir><file name="Connect.php" hash="fd5a6f8a21b50b5e7c13144fad8be99d"/><file name="Dowloader.php" hash="3f8e4664e1a4f7f5281bb2ab2d984b39"/><file name="Session.php" hash="d983e7e06c4644d1bddff6f83826cdf6"/></dir><file name="Model.php" hash="49a1a8edb4cd00e8fa5bd07cc7c79ab0"/><file name="View.php" hash="b2c896aaf159c41f02631f26ebcee02a"/></dir><dir name="skin"><file name="boxes.css" hash="b3cfed6d508acbfc0ab4a7d78d8f32a7"/><file name="ie7boxes.css" hash="580970c0c4d81421101f5cb2a46664ad"/><file name="ieboxes.css" hash="9fd7303ac61979bb38768696ee28fe84"/><dir name="images"><file name="Magento_Connect.jpg" hash="20e1378c09506fdc5723abc0115d5f57"/><file name="ajax-loader-tr.gif" hash="1ae32bc8232ff2527c627e5b38eb319a"/><file name="btn_bg.gif" hash="37c51a4d48a92da9648dcd3ca011039f"/><file name="header_bg.gif" hash="8440b04c5cb6b1451bb886bfbef260a5"/><file name="logo.gif" hash="5eb089ecea67d82311d7c91898460104"/><file name="nav_bg.gif" hash="1cb1366f03a9efad6b17e4483aef20cf"/><file name="nav_separator.gif" hash="492011a7de2de84a9c7837bfd879ab95"/></dir><dir name="install"><file name="boxes.css" hash="d35399f0f8871ca6587751b7a99d2b04"/><file name="clears.css" hash="e44d8763d217583dd060862a928a56c5"/><file name="ie7minus.css" hash="48fb0b04af516d31fa2b4c96b880cccf"/><file name="iestyles.css" hash="6fce8557bb5b6933bfb4287bcc38da8a"/><dir name="images"><file name="error_msg_icon.gif" hash="e4f28607f075a105e53fa3113d84bd26"/><file name="footer_bg.gif" hash="d59784af16fd95ea82226e5708a89232"/><file name="footer_container_bg.gif" hash="d468e3943943cbbf711586e69d40ca42"/><file name="footer_info_separator.gif" hash="7da64eefaf4da3855ab6ee76dbced0c2"/><file name="footer_informational_bg.gif" hash="72d37f4b2ea747bf8969c2654ad1d1e0"/><file name="footer_left.gif" hash="2b15a54bea9409a75c142d14a62f0149"/><file name="footer_legality_bg.gif" hash="4eb1602e3369dccd901ffe98ea0fd4b3"/><file name="footer_right.gif" hash="a45eaf35c8797d299bd4d9b936528e8f"/><file name="header_bg.gif" hash="795c6de754d0d49717ed08d5cd8168c8"/><file name="header_nav_bg.gif" hash="80c6a18686eb0243e06d6176506a2502"/><file name="header_top_bg.jpg" hash="143f524392ee62fcc8183f5930d7258b"/><file name="header_top_container_bg.jpg" hash="294c18f3f6b838bba06ae41dd3c3d638"/><file name="logo.gif" hash="073a947a39b967af678455a5c7f66e90"/><file name="main_bg.gif" hash="cf18ba9f7c7e6b058b439cde1a897e9c"/><file name="main_container_bg.gif" hash="a8f5717873dc6cf8f6bd22924b5838fe"/><file name="note_msg_icon.gif" hash="e774ee481a2820789c1a77112377c4e0"/><file name="success_msg_icon.gif" hash="834dfafd5f8b44c4b24a4c00add56fcf"/><file name="validation_advice_bg.gif" hash="b85432906de8985a8b14eeb2dc652d3c"/></dir><file name="reset.css" hash="52fff087ff38e23bea649f54a6809d71"/></dir></dir><dir name="template"><dir name="connect"><file name="iframe.phtml" hash="7fbe2c71b65efac5f76fe2455e1ebf9a"/><file name="packages.phtml" hash="52838bec69252b9d45e70c196840423f"/><file name="packages_prepare.phtml" hash="d5f10339411dfe18a54ed5f5841e857f"/></dir><file name="exception.phtml" hash="c0007d313041aabac221dcd74de1d420"/><file name="footer.phtml" hash="7fa6d0ad5639f61fefd368a17d16eed5"/><file name="header.phtml" hash="ec5f9050c75182150ae54828489ce476"/><file name="index.phtml" hash="5e47a18353c1eb343a2cb3cf1727940b"/><dir name="install"><file name="download.phtml" hash="64a4143c41d84f076f8aae1c6ba87912"/><file name="footer.phtml" hash="141fef1b4d96d407c70410941818a080"/><file name="header.phtml" hash="172b75bac60935cf2ca9e51e957c347b"/><file name="writable.phtml" hash="5812e08157e2ca7bac48074963903d77"/></dir><file name="login.phtml" hash="9d0704246caf610f7cbff5f05a937d27"/><file name="messages.phtml" hash="641af661cc76f5fae63b26dd627730ed"/><file name="noroute.phtml" hash="8bce46afecced268c72d65b0c54fc3a3"/><file name="settings.phtml" hash="c367c4f6b2bdcdb12c3c45042fa4b8a0"/><file name="writable.phtml" hash="d6ce8ad6ab532e06834aabd45dfe646d"/><file name=".htaccess" hash="72617d60821288133a367f70bf39ad93"/></dir><file name="index.php" hash="89acb8846a129b0beed770d025776b31"/><dir name="lib"><dir name="Mage"><dir name="Archive"><file name="Abstract.php" hash="de4e571664fc07c3d9549f0fd267673c"/><file name="Bz.php" hash="2505695d644c59adc33e22a0e4b4026b"/><file name="Gz.php" hash="b1a8f824762096e9481c4cf867236e0f"/><dir name="Helper"><dir name="File"><file name="Bz.php" hash="4a7b8462adb092801fb5ac07c0b5bdc0"/><file name="Gz.php" hash="7f02f08015915d25220d065994ddc5d4"/></dir><file name="File.php" hash="83b65b9f0ac67451501a9c9637f5079b"/></dir><file name="Interface.php" hash="082498bdccf0768d5dd074493a570ebb"/><file name="Tar.php" hash="406100d23840bf7688fddc1a5f81984a"/></dir><file name="Archive.php" hash="e7329725aac0b37eefaa9e010cadea57"/><dir name="Autoload"><file name="Simple.php" hash="04fa4a1f39245e8290e02d089c4a9c56"/></dir><dir name="Backup"><file name="Abstract.php" hash="6dc4a21835d04a2b517d5c3fb097fa32"/><dir name="Archive"><file name="Tar.php" hash="b0ea407733eb0eddf2335eb04b6d4efd"/></dir><file name="Db.php" hash="82085d5187d2f98b3bba9843e13e9e73"/><dir name="Exception"><file name="CantLoadSnapshot.php" hash="5999c355894c14f1e2362f45a6ba057a"/><file name="FtpConnectionFailed.php" hash="7a1fa7df65b14879e06f416358e4bfe8"/><file name="FtpValidationFailed.php" hash="69af18f3940a28573735e51c09582906"/><file name="NotEnoughFreeSpace.php" hash="85aa48d06cbf0bbbff797dda79be5031"/><file name="NotEnoughPermissions.php" hash="66b048e085f4e22ff92165cf27eb154a"/></dir><file name="Exception.php" hash="faffb5273a8d7b3bc1ac23500b3738ed"/><dir name="Filesystem"><file name="Helper.php" hash="2324b69bdf203096fca3405d8560bb48"/><dir name="Iterator"><file name="File.php" hash="30cf1633496618f74849bc2374f031c8"/><file name="Filter.php" hash="1fe29804508aa85589ba1a8578f492a8"/></dir><dir name="Rollback"><file name="Abstract.php" hash="f9282d34c12a6030942554a80882bb4a"/><file name="Fs.php" hash="179ac7ecd47d54e9a5324d8c6dc27194"/><file name="Ftp.php" hash="e099af8415c2e445530de6483b725abb"/></dir></dir><file name="Filesystem.php" hash="7db5e5dc7ac0703bb4944092d19b8153"/><file name="Interface.php" hash="649acb82500c3aa25d789ede57b6d824"/><file name="Media.php" hash="d23badc8294f743242e831a1ee08a235"/><file name="Nomedia.php" hash="f67824816890655d383cc2f6bde37cfd"/><file name="Snapshot.php" hash="c8a1ca0ecd577783cc685560a929953a"/></dir><file name="Backup.php" hash="cb1bdf9d812811d0cf5478fb74d651d6"/><dir name="Connect"><file name="Backup.php" hash="70c2a863d51219f054fb1289feb239c0"/><dir name="Channel"><file name="Generator.php" hash="8779c3d0bd0349fb084ba014aeebef08"/><file name="Parser.php" hash="710308a0983877f5397324ccde29ec64"/><file name="VO.php" hash="d5e083cac4674e60f3576c7f9245079e"/></dir><dir name="Command"><file name="Channels.php" hash="64a28e0922b180efae0b1505eb3a23c8"/><file name="Channels_Header.php" hash="c8801d31616e14fd17544d8ad91d8c71"/><file name="Config.php" hash="4fd2e06c0548e321486d5704ef9c41d2"/><file name="Config_Header.php" hash="be5819b085c2c25406169cc69db91efc"/><file name="Install.php" hash="4f79b65aa8dd112e097d868aa35b0f78"/><file name="Install_Header.php" hash="b26353e14b18ca24135a8b3152eed832"/><file name="Package.php" hash="3d73acb986b1153ebe133b461ba49539"/><file name="Package_Header.php" hash="9b4918737a25f3adf3ccad4dbe363ff1"/><file name="Registry.php" hash="e9899f5d8c6726d68f728f9797ae974d"/><file name="Registry_Header.php" hash="da47c27cf81858c28827bd7fcf05ba54"/><file name="Remote.php" hash="191e75a206dc9b85788ad74a5b563b42"/><file name="Remote_Header.php" hash="d9b41a55a61c5c1e52abaff7a53fcc67"/></dir><file name="Command.php" hash="667c1d90bf742689f54b3eaec55f3201"/><file name="Config.php" hash="df2e9dab448890c60d2ed51c70b0d6a2"/><file name="Converter.php" hash="a133fb8a9a1bb27f562daa734fb9f660"/><dir name="Frontend"><file name="CLI.php" hash="70db827324e9e516ab4b0ae6ced74ced"/></dir><file name="Frontend.php" hash="fc8fd61535fc8f0c905c3ebfc511f6f4"/><file name="Ftp.php" hash="71b9dd4031601c44037d317f57c8e9f1"/><dir name="Loader"><file name="Ftp.php" hash="50a51101331004d4c06d9249acb46c60"/></dir><file name="Loader.php" hash="995b53964b3c477fa32621b3f7abb16b"/><dir name="Package"><file name="Extension.php" hash="68b329da9893e34099c7d8ad5cb9c940"/><file name="Hotfix.php" hash="ae834feb24bf36fc188afc11736681f1"/><file name="Maintainer.php" hash="68b329da9893e34099c7d8ad5cb9c940"/><file name="Reader.php" hash="c15f774cde56becedbdb3d363fac388c"/><file name="Target.php" hash="0e839847991ddaef741ae56daa936a6e"/><file name="VO.php" hash="cfbb4316314a742856bbe76e5d752512"/><file name="Writer.php" hash="ce48e48bb29afb25b5a08d79df6eccb6"/></dir><file name="Package.php" hash="622828a8f43950878715ab437cbe8e2e"/><file name="Packager.php" hash="f7ed127be1bfb765b546687fb78bd409"/><dir name="Repository"><file name="Abstract.php" hash="68b329da9893e34099c7d8ad5cb9c940"/><dir name="Channel"><file name="Abstract.php" hash="68b329da9893e34099c7d8ad5cb9c940"/><file name="Commercial.php" hash="68b329da9893e34099c7d8ad5cb9c940"/><file name="Community.php" hash="68b329da9893e34099c7d8ad5cb9c940"/><file name="Core.php" hash="68b329da9893e34099c7d8ad5cb9c940"/></dir><file name="Channel.php" hash="68b329da9893e34099c7d8ad5cb9c940"/><file name="Local.php" hash="68b329da9893e34099c7d8ad5cb9c940"/></dir><file name="Repository.php" hash="68b329da9893e34099c7d8ad5cb9c940"/><file name="Rest.php" hash="90011f7a6c06a9d7a61203de6129ae98"/><file name="Singleconfig.php" hash="820f637fbf566b2002ebc88d30cdc800"/><dir name="Structures"><file name="Graph.php" hash="1b983ae8aa539bb4ff21129b48cccffb"/><file name="Node.php" hash="80f04d92471471b1a04c8f719313fd26"/></dir><file name="Validator.php" hash="8ac3681718ddff1f19293aee13f2345c"/></dir><dir name="DB"><file name="Exception.php" hash="9b86c22405d6004bb564caba5a2cd73d"/><file name="Mysqli.php" hash="3faca89f2023931bfcdcdb68c26eceaf"/></dir><file name="Exception.php" hash="805aacf8a34617469ea42f29ef697193"/><dir name="HTTP"><dir name="Client"><file name="Curl.php" hash="9e9d662f1a1ad09630b2e203e8f99d34"/><file name="Socket.php" hash="094870f3dc66d9fda62d92bd7726bc30"/></dir><file name="Client.php" hash="3eddb16ab615e17240bc0f5a0f7525ed"/><file name="IClient.php" hash="e2fef2961c4e19ea6d0a32905a3f0cc9"/></dir><dir name="System"><file name="Args.php" hash="aa6e78d765e598733ea5b023ccc5fe28"/><file name="Dirs.php" hash="ce1c44b90a2f51cd027c022a2a71ddc9"/><file name="Ftp.php" hash="4c225af1a252f919284086261ab8fe62"/></dir><dir name="Xml"><file name="Generator.php" hash="7a00666dea843e96f828b721d7ea0968"/><file name="Parser.php" hash="7054f38ca1b3f84f9b0bbc58aa4798e2"/></dir></dir></dir><file name="config.ini" hash="a52ba98e71ab19de387b3af1a04c6102"/><file name=".htaccess" hash="520cc012c84739584526b8a9ff098e23"/><file name="mage.php" hash="89ca4e3123b2cf45fe6da97622ec0556"/><file name="favicon.ico" hash="88733ee53676a47fc354a61c32516e82"/><file name="target.xml" hash="50d1653dcdd94bcc01899c9dacaceeb1"/></dir><dir name="."><file name=".htaccess" hash="7d69e28ca7c422e6de19ff51bb23dab1"/><file name="index.php" hash="56684a3f5d49adef987ec09a49fc6cca"/><file name="mage" hash="091c45355c62a9189cff45c09328037c"/></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Mage_Downloader</name>
4
+ <version>1.9.2.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Magento Downloader</summary>
10
  <description>Magento Downloader</description>
11
+ <notes>1.9.2.0</notes>
12
  <authors><author><name>Magento Core Team</name><user>core</user><email>core@magentocommerce.com</email></author></authors>
13
+ <date>2015-06-26</date>
14
+ <time>13:49:10</time>
15
+ <contents><target name="mage"><dir name="downloader"><dir name="js"><file name="prototype.js" hash="3766aeff5778b54f74f93670322ca0df"/></dir><dir name="Maged"><dir name="Connect"><file name="Frontend.php" hash="8a7558ec807fc41657dccba89cbebead"/></dir><file name="Connect.php" hash="97b7b02260e78d32e41135a9908e0147"/><file name="Controller.php" hash="28eca39cd3942e0f352e39d2db1646db"/><file name="Exception.php" hash="0ff1e9926e900d7d627ef6c349997e0e"/><dir name="Model"><dir name="Config"><file name="Abstract.php" hash="361ac973543d1c90cb062fa1da192ff9"/><file name="Community.php" hash="cce0f54be4688e53ba397f2b135c7f18"/><file name="Interface.php" hash="ee07933da8a035aaa297e5daba88052e"/></dir><file name="Config.php" hash="324c5925ff47b58c20cb230b3a617288"/><dir name="Connect"><file name="Request.php" hash="f2df0d5bf7ff9ac689d1bea3fa55424f"/></dir><file name="Connect.php" hash="fa89f5464a7308dd03dcc488c90582d4"/><file name="Dowloader.php" hash="3f8e4664e1a4f7f5281bb2ab2d984b39"/><file name="Session.php" hash="e0bd5b49ff22e30b225b5122b4d310c4"/></dir><file name="Model.php" hash="49a1a8edb4cd00e8fa5bd07cc7c79ab0"/><file name="View.php" hash="33ed2ddfe0058b9ed6409de1ccf1a8aa"/><file name=".htaccess" hash="72617d60821288133a367f70bf39ad93"/></dir><dir name="skin"><file name="boxes.css" hash="b3cfed6d508acbfc0ab4a7d78d8f32a7"/><file name="ie7boxes.css" hash="580970c0c4d81421101f5cb2a46664ad"/><file name="ieboxes.css" hash="9fd7303ac61979bb38768696ee28fe84"/><dir name="images"><file name="Magento_Connect.jpg" hash="20e1378c09506fdc5723abc0115d5f57"/><file name="ajax-loader-tr.gif" hash="1ae32bc8232ff2527c627e5b38eb319a"/><file name="btn_bg.gif" hash="37c51a4d48a92da9648dcd3ca011039f"/><file name="header_bg.gif" hash="8440b04c5cb6b1451bb886bfbef260a5"/><file name="logo.gif" hash="5eb089ecea67d82311d7c91898460104"/><file name="nav_bg.gif" hash="1cb1366f03a9efad6b17e4483aef20cf"/><file name="nav_separator.gif" hash="492011a7de2de84a9c7837bfd879ab95"/></dir><dir name="install"><file name="boxes.css" hash="d35399f0f8871ca6587751b7a99d2b04"/><file name="clears.css" hash="e44d8763d217583dd060862a928a56c5"/><file name="ie7minus.css" hash="48fb0b04af516d31fa2b4c96b880cccf"/><file name="iestyles.css" hash="6fce8557bb5b6933bfb4287bcc38da8a"/><dir name="images"><file name="error_msg_icon.gif" hash="e4f28607f075a105e53fa3113d84bd26"/><file name="footer_bg.gif" hash="d59784af16fd95ea82226e5708a89232"/><file name="footer_container_bg.gif" hash="d468e3943943cbbf711586e69d40ca42"/><file name="footer_info_separator.gif" hash="7da64eefaf4da3855ab6ee76dbced0c2"/><file name="footer_informational_bg.gif" hash="72d37f4b2ea747bf8969c2654ad1d1e0"/><file name="footer_left.gif" hash="2b15a54bea9409a75c142d14a62f0149"/><file name="footer_legality_bg.gif" hash="4eb1602e3369dccd901ffe98ea0fd4b3"/><file name="footer_right.gif" hash="a45eaf35c8797d299bd4d9b936528e8f"/><file name="header_bg.gif" hash="795c6de754d0d49717ed08d5cd8168c8"/><file name="header_nav_bg.gif" hash="80c6a18686eb0243e06d6176506a2502"/><file name="header_top_bg.jpg" hash="143f524392ee62fcc8183f5930d7258b"/><file name="header_top_container_bg.jpg" hash="294c18f3f6b838bba06ae41dd3c3d638"/><file name="logo.gif" hash="073a947a39b967af678455a5c7f66e90"/><file name="main_bg.gif" hash="cf18ba9f7c7e6b058b439cde1a897e9c"/><file name="main_container_bg.gif" hash="a8f5717873dc6cf8f6bd22924b5838fe"/><file name="note_msg_icon.gif" hash="e774ee481a2820789c1a77112377c4e0"/><file name="success_msg_icon.gif" hash="834dfafd5f8b44c4b24a4c00add56fcf"/><file name="validation_advice_bg.gif" hash="b85432906de8985a8b14eeb2dc652d3c"/></dir><file name="reset.css" hash="52fff087ff38e23bea649f54a6809d71"/></dir></dir><dir name="template"><dir name="connect"><file name="iframe.phtml" hash="7fbe2c71b65efac5f76fe2455e1ebf9a"/><file name="packages.phtml" hash="21e8ebe1a156287506873d5d40599cb9"/><file name="packages_prepare.phtml" hash="169d73db8fd8c37653886c885bd3d4b8"/></dir><file name="exception.phtml" hash="c0007d313041aabac221dcd74de1d420"/><file name="footer.phtml" hash="7fa6d0ad5639f61fefd368a17d16eed5"/><file name="header.phtml" hash="ec5f9050c75182150ae54828489ce476"/><file name="index.phtml" hash="5e47a18353c1eb343a2cb3cf1727940b"/><dir name="install"><file name="download.phtml" hash="64a4143c41d84f076f8aae1c6ba87912"/><file name="footer.phtml" hash="141fef1b4d96d407c70410941818a080"/><file name="header.phtml" hash="172b75bac60935cf2ca9e51e957c347b"/><file name="writable.phtml" hash="5812e08157e2ca7bac48074963903d77"/></dir><file name="login.phtml" hash="40c871d2ce69de5f730ae97857987ccb"/><file name="messages.phtml" hash="9dbb5e33c2a5e340018348698d017e69"/><file name="noroute.phtml" hash="8bce46afecced268c72d65b0c54fc3a3"/><file name="settings.phtml" hash="ab0de740adc1914be29304b430a249e7"/><file name="writable.phtml" hash="d6ce8ad6ab532e06834aabd45dfe646d"/><file name=".htaccess" hash="72617d60821288133a367f70bf39ad93"/></dir><file name="index.php" hash="89acb8846a129b0beed770d025776b31"/><dir name="lib"><dir name="Mage"><dir name="Archive"><file name="Abstract.php" hash="de4e571664fc07c3d9549f0fd267673c"/><file name="Bz.php" hash="2505695d644c59adc33e22a0e4b4026b"/><file name="Gz.php" hash="b1a8f824762096e9481c4cf867236e0f"/><dir name="Helper"><dir name="File"><file name="Bz.php" hash="4a7b8462adb092801fb5ac07c0b5bdc0"/><file name="Gz.php" hash="7f02f08015915d25220d065994ddc5d4"/></dir><file name="File.php" hash="83b65b9f0ac67451501a9c9637f5079b"/></dir><file name="Interface.php" hash="082498bdccf0768d5dd074493a570ebb"/><file name="Tar.php" hash="406100d23840bf7688fddc1a5f81984a"/></dir><file name="Archive.php" hash="e7329725aac0b37eefaa9e010cadea57"/><dir name="Autoload"><file name="Simple.php" hash="04fa4a1f39245e8290e02d089c4a9c56"/></dir><dir name="Backup"><file name="Abstract.php" hash="6dc4a21835d04a2b517d5c3fb097fa32"/><dir name="Archive"><file name="Tar.php" hash="b0ea407733eb0eddf2335eb04b6d4efd"/></dir><file name="Db.php" hash="82085d5187d2f98b3bba9843e13e9e73"/><dir name="Exception"><file name="CantLoadSnapshot.php" hash="5999c355894c14f1e2362f45a6ba057a"/><file name="FtpConnectionFailed.php" hash="7a1fa7df65b14879e06f416358e4bfe8"/><file name="FtpValidationFailed.php" hash="69af18f3940a28573735e51c09582906"/><file name="NotEnoughFreeSpace.php" hash="85aa48d06cbf0bbbff797dda79be5031"/><file name="NotEnoughPermissions.php" hash="66b048e085f4e22ff92165cf27eb154a"/></dir><file name="Exception.php" hash="faffb5273a8d7b3bc1ac23500b3738ed"/><dir name="Filesystem"><file name="Helper.php" hash="2324b69bdf203096fca3405d8560bb48"/><dir name="Iterator"><file name="File.php" hash="30cf1633496618f74849bc2374f031c8"/><file name="Filter.php" hash="1fe29804508aa85589ba1a8578f492a8"/></dir><dir name="Rollback"><file name="Abstract.php" hash="f9282d34c12a6030942554a80882bb4a"/><file name="Fs.php" hash="179ac7ecd47d54e9a5324d8c6dc27194"/><file name="Ftp.php" hash="e099af8415c2e445530de6483b725abb"/></dir></dir><file name="Filesystem.php" hash="7db5e5dc7ac0703bb4944092d19b8153"/><file name="Interface.php" hash="649acb82500c3aa25d789ede57b6d824"/><file name="Media.php" hash="d23badc8294f743242e831a1ee08a235"/><file name="Nomedia.php" hash="f67824816890655d383cc2f6bde37cfd"/><file name="Snapshot.php" hash="c8a1ca0ecd577783cc685560a929953a"/></dir><file name="Backup.php" hash="cb1bdf9d812811d0cf5478fb74d651d6"/><dir name="Connect"><file name="Backup.php" hash="70c2a863d51219f054fb1289feb239c0"/><dir name="Channel"><file name="Generator.php" hash="8779c3d0bd0349fb084ba014aeebef08"/><file name="Parser.php" hash="710308a0983877f5397324ccde29ec64"/><file name="VO.php" hash="d5e083cac4674e60f3576c7f9245079e"/></dir><dir name="Command"><file name="Channels.php" hash="64a28e0922b180efae0b1505eb3a23c8"/><file name="Channels_Header.php" hash="c8801d31616e14fd17544d8ad91d8c71"/><file name="Config.php" hash="4fd2e06c0548e321486d5704ef9c41d2"/><file name="Config_Header.php" hash="be5819b085c2c25406169cc69db91efc"/><file name="Install.php" hash="4f79b65aa8dd112e097d868aa35b0f78"/><file name="Install_Header.php" hash="b26353e14b18ca24135a8b3152eed832"/><file name="Package.php" hash="4855247a50fc6c41d02b7472b6bc09c2"/><file name="Package_Header.php" hash="9b4918737a25f3adf3ccad4dbe363ff1"/><file name="Registry.php" hash="e9899f5d8c6726d68f728f9797ae974d"/><file name="Registry_Header.php" hash="da47c27cf81858c28827bd7fcf05ba54"/><file name="Remote.php" hash="191e75a206dc9b85788ad74a5b563b42"/><file name="Remote_Header.php" hash="d9b41a55a61c5c1e52abaff7a53fcc67"/></dir><file name="Command.php" hash="fbd6e4393e10eda05df7c70ab227a180"/><file name="Config.php" hash="df2e9dab448890c60d2ed51c70b0d6a2"/><file name="Converter.php" hash="a133fb8a9a1bb27f562daa734fb9f660"/><dir name="Frontend"><file name="CLI.php" hash="70db827324e9e516ab4b0ae6ced74ced"/></dir><file name="Frontend.php" hash="fc8fd61535fc8f0c905c3ebfc511f6f4"/><file name="Ftp.php" hash="71b9dd4031601c44037d317f57c8e9f1"/><dir name="Loader"><file name="Ftp.php" hash="50a51101331004d4c06d9249acb46c60"/></dir><file name="Loader.php" hash="995b53964b3c477fa32621b3f7abb16b"/><dir name="Package"><file name="Extension.php" hash="710308a0983877f5397324ccde29ec64"/><file name="Hotfix.php" hash="ae834feb24bf36fc188afc11736681f1"/><file name="Maintainer.php" hash="710308a0983877f5397324ccde29ec64"/><file name="Reader.php" hash="c15f774cde56becedbdb3d363fac388c"/><file name="Target.php" hash="0e839847991ddaef741ae56daa936a6e"/><file name="VO.php" hash="cfbb4316314a742856bbe76e5d752512"/><file name="Writer.php" hash="ce48e48bb29afb25b5a08d79df6eccb6"/></dir><file name="Package.php" hash="622828a8f43950878715ab437cbe8e2e"/><file name="Packager.php" hash="c3630b38bd63bf2b254fef84a78b5c5b"/><dir name="Repository"><file name="Abstract.php" hash="710308a0983877f5397324ccde29ec64"/><dir name="Channel"><file name="Abstract.php" hash="710308a0983877f5397324ccde29ec64"/><file name="Commercial.php" hash="710308a0983877f5397324ccde29ec64"/><file name="Community.php" hash="710308a0983877f5397324ccde29ec64"/><file name="Core.php" hash="710308a0983877f5397324ccde29ec64"/></dir><file name="Channel.php" hash="710308a0983877f5397324ccde29ec64"/><file name="Local.php" hash="710308a0983877f5397324ccde29ec64"/></dir><file name="Repository.php" hash="710308a0983877f5397324ccde29ec64"/><dir name="Rest"><file name="Builder.php" hash="b49e93eab58754bb71d1f03da2af5c7b"/><file name="Factory.php" hash="6fccc584a96ce654a29cee74a000e1e2"/></dir><file name="Rest.php" hash="90011f7a6c06a9d7a61203de6129ae98"/><file name="Singleconfig.php" hash="d0cac97ec62c9f491fe3a9134d6a4dda"/><dir name="Structures"><file name="Graph.php" hash="1b983ae8aa539bb4ff21129b48cccffb"/><file name="Node.php" hash="80f04d92471471b1a04c8f719313fd26"/></dir><file name="Validator.php" hash="8ac3681718ddff1f19293aee13f2345c"/></dir><dir name="DB"><file name="Exception.php" hash="9b86c22405d6004bb564caba5a2cd73d"/><file name="Mysqli.php" hash="3faca89f2023931bfcdcdb68c26eceaf"/></dir><file name="Exception.php" hash="805aacf8a34617469ea42f29ef697193"/><dir name="HTTP"><dir name="Client"><file name="Curl.php" hash="ad6c5ab3c7081ee838d7ea238ca04613"/><file name="Socket.php" hash="094870f3dc66d9fda62d92bd7726bc30"/></dir><file name="Client.php" hash="3eddb16ab615e17240bc0f5a0f7525ed"/><file name="IClient.php" hash="e2fef2961c4e19ea6d0a32905a3f0cc9"/></dir><dir name="System"><file name="Args.php" hash="aa6e78d765e598733ea5b023ccc5fe28"/><file name="Dirs.php" hash="ce1c44b90a2f51cd027c022a2a71ddc9"/><file name="Ftp.php" hash="4c225af1a252f919284086261ab8fe62"/></dir><dir name="Xml"><file name="Generator.php" hash="7a00666dea843e96f828b721d7ea0968"/><file name="Parser.php" hash="7054f38ca1b3f84f9b0bbc58aa4798e2"/></dir></dir><file name=".htaccess" hash="72617d60821288133a367f70bf39ad93"/></dir><file name="config.ini" hash="a52ba98e71ab19de387b3af1a04c6102"/><file name=".htaccess" hash="520cc012c84739584526b8a9ff098e23"/><file name="mage.php" hash="89ca4e3123b2cf45fe6da97622ec0556"/><file name="favicon.ico" hash="88733ee53676a47fc354a61c32516e82"/><file name="target.xml" hash="ccdd39d43af10334cd9dd931c1f132d0"/></dir><dir name="."><file name=".htaccess" hash="7d69e28ca7c422e6de19ff51bb23dab1"/><file name="index.php" hash="129a8fa2110e9c2a39d45835b25a4aae"/><file name="mage" hash="04b6e584190bb7384b0740e07cd2c4f0"/></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
18
  </package>