dependency upgrades
All composer dependencies have been updated
This commit is contained in:
parent
2aee481ff9
commit
ab0a890215
|
@ -6,6 +6,7 @@
|
|||
"license": "GPL v2",
|
||||
"require": {
|
||||
"php": ">=5.6",
|
||||
"ext-json": "*",
|
||||
"splitbrain/php-archive": "~1.0",
|
||||
"phpseclib/phpseclib": "~2.0",
|
||||
"paragonie/random_compat": "^2.0",
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "d5c15248668d2dd749de47b106049b77",
|
||||
"content-hash": "0bc9b3664395537d94aa155b32251ae8",
|
||||
"packages": [
|
||||
{
|
||||
"name": "aziraphale/email-address-validator",
|
||||
|
@ -89,16 +89,16 @@
|
|||
},
|
||||
{
|
||||
"name": "marcusschwarz/lesserphp",
|
||||
"version": "v0.5.2",
|
||||
"version": "v0.5.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/MarcusSchwarz/lesserphp.git",
|
||||
"reference": "b02ee973ee1fff3237f7feaf44885596fb5ee323"
|
||||
"reference": "3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/MarcusSchwarz/lesserphp/zipball/b02ee973ee1fff3237f7feaf44885596fb5ee323",
|
||||
"reference": "b02ee973ee1fff3237f7feaf44885596fb5ee323",
|
||||
"url": "https://api.github.com/repos/MarcusSchwarz/lesserphp/zipball/3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e",
|
||||
"reference": "3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require-dev": {
|
||||
|
@ -137,7 +137,7 @@
|
|||
],
|
||||
"description": "lesserphp is a compiler for LESS written in PHP based on leafo's lessphp.",
|
||||
"homepage": "http://leafo.net/lessphp/",
|
||||
"time": "2018-05-28T12:54:01+00:00"
|
||||
"time": "2020-01-19T19:18:49+00:00"
|
||||
},
|
||||
{
|
||||
"name": "openpsa/universalfeedcreator",
|
||||
|
@ -241,16 +241,16 @@
|
|||
},
|
||||
{
|
||||
"name": "phpseclib/phpseclib",
|
||||
"version": "2.0.23",
|
||||
"version": "2.0.27",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpseclib/phpseclib.git",
|
||||
"reference": "c78eb5058d5bb1a183133c36d4ba5b6675dfa099"
|
||||
"reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/c78eb5058d5bb1a183133c36d4ba5b6675dfa099",
|
||||
"reference": "c78eb5058d5bb1a183133c36d4ba5b6675dfa099",
|
||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc",
|
||||
"reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -329,20 +329,34 @@
|
|||
"x.509",
|
||||
"x509"
|
||||
],
|
||||
"time": "2019-09-17T03:41:22+00:00"
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/terrafrost",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://www.patreon.com/phpseclib",
|
||||
"type": "patreon"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-04-04T23:17:33+00:00"
|
||||
},
|
||||
{
|
||||
"name": "simplepie/simplepie",
|
||||
"version": "1.5.3",
|
||||
"version": "1.5.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/simplepie/simplepie.git",
|
||||
"reference": "173663382a9346acd53df60c7ffb20689c9cf1f6"
|
||||
"reference": "ae49e2201b6da9c808e5dac437aca356a11831b4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/simplepie/simplepie/zipball/173663382a9346acd53df60c7ffb20689c9cf1f6",
|
||||
"reference": "173663382a9346acd53df60c7ffb20689c9cf1f6",
|
||||
"url": "https://api.github.com/repos/simplepie/simplepie/zipball/ae49e2201b6da9c808e5dac437aca356a11831b4",
|
||||
"reference": "ae49e2201b6da9c808e5dac437aca356a11831b4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -378,8 +392,8 @@
|
|||
"role": "Creator, alumnus developer"
|
||||
},
|
||||
{
|
||||
"name": "Geoffrey Sneddon",
|
||||
"homepage": "http://gsnedders.com/",
|
||||
"name": "Sam Sneddon",
|
||||
"homepage": "https://gsnedders.com/",
|
||||
"role": "Alumnus developer"
|
||||
},
|
||||
{
|
||||
|
@ -396,7 +410,7 @@
|
|||
"feeds",
|
||||
"rss"
|
||||
],
|
||||
"time": "2019-09-22T23:21:30+00:00"
|
||||
"time": "2020-05-01T12:23:14+00:00"
|
||||
},
|
||||
{
|
||||
"name": "splitbrain/php-archive",
|
||||
|
@ -454,16 +468,16 @@
|
|||
},
|
||||
{
|
||||
"name": "splitbrain/php-cli",
|
||||
"version": "1.1.5",
|
||||
"version": "1.1.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/splitbrain/php-cli.git",
|
||||
"reference": "e982d40d074ab9f2669c3c0a2e40559b098cd894"
|
||||
"reference": "b7be3726872547253dd0bd61098fa9f634c33555"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/splitbrain/php-cli/zipball/e982d40d074ab9f2669c3c0a2e40559b098cd894",
|
||||
"reference": "e982d40d074ab9f2669c3c0a2e40559b098cd894",
|
||||
"url": "https://api.github.com/repos/splitbrain/php-cli/zipball/b7be3726872547253dd0bd61098fa9f634c33555",
|
||||
"reference": "b7be3726872547253dd0bd61098fa9f634c33555",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -501,7 +515,7 @@
|
|||
"optparse",
|
||||
"terminal"
|
||||
],
|
||||
"time": "2018-09-29T07:51:34+00:00"
|
||||
"time": "2019-10-16T07:31:14+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [],
|
||||
|
@ -511,10 +525,12 @@
|
|||
"prefer-stable": true,
|
||||
"prefer-lowest": false,
|
||||
"platform": {
|
||||
"php": ">=5.6"
|
||||
"php": ">=5.6",
|
||||
"ext-json": "*"
|
||||
},
|
||||
"platform-dev": [],
|
||||
"platform-overrides": {
|
||||
"php": "5.6"
|
||||
}
|
||||
},
|
||||
"plugin-api-version": "1.1.0"
|
||||
}
|
||||
|
|
|
@ -13,6 +13,9 @@ class ComposerAutoloaderInita19a915ee98347a0c787119619d2ff9b
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \Composer\Autoload\ClassLoader
|
||||
*/
|
||||
public static function getLoader()
|
||||
{
|
||||
if (null !== self::$loader) {
|
||||
|
|
|
@ -86,23 +86,23 @@
|
|||
},
|
||||
{
|
||||
"name": "marcusschwarz/lesserphp",
|
||||
"version": "v0.5.2",
|
||||
"version_normalized": "0.5.2.0",
|
||||
"version": "v0.5.4",
|
||||
"version_normalized": "0.5.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/MarcusSchwarz/lesserphp.git",
|
||||
"reference": "b02ee973ee1fff3237f7feaf44885596fb5ee323"
|
||||
"reference": "3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/MarcusSchwarz/lesserphp/zipball/b02ee973ee1fff3237f7feaf44885596fb5ee323",
|
||||
"reference": "b02ee973ee1fff3237f7feaf44885596fb5ee323",
|
||||
"url": "https://api.github.com/repos/MarcusSchwarz/lesserphp/zipball/3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e",
|
||||
"reference": "3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~4.3"
|
||||
},
|
||||
"time": "2018-05-28T12:54:01+00:00",
|
||||
"time": "2020-01-19T19:18:49+00:00",
|
||||
"bin": [
|
||||
"plessc"
|
||||
],
|
||||
|
@ -244,17 +244,17 @@
|
|||
},
|
||||
{
|
||||
"name": "phpseclib/phpseclib",
|
||||
"version": "2.0.23",
|
||||
"version_normalized": "2.0.23.0",
|
||||
"version": "2.0.27",
|
||||
"version_normalized": "2.0.27.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpseclib/phpseclib.git",
|
||||
"reference": "c78eb5058d5bb1a183133c36d4ba5b6675dfa099"
|
||||
"reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/c78eb5058d5bb1a183133c36d4ba5b6675dfa099",
|
||||
"reference": "c78eb5058d5bb1a183133c36d4ba5b6675dfa099",
|
||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc",
|
||||
"reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -272,7 +272,7 @@
|
|||
"ext-mcrypt": "Install the Mcrypt extension in order to speed up a few other cryptographic operations.",
|
||||
"ext-openssl": "Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations."
|
||||
},
|
||||
"time": "2019-09-17T03:41:22+00:00",
|
||||
"time": "2020-04-04T23:17:33+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
|
@ -334,21 +334,35 @@
|
|||
"twofish",
|
||||
"x.509",
|
||||
"x509"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/terrafrost",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://www.patreon.com/phpseclib",
|
||||
"type": "patreon"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib",
|
||||
"type": "tidelift"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "simplepie/simplepie",
|
||||
"version": "1.5.3",
|
||||
"version_normalized": "1.5.3.0",
|
||||
"version": "1.5.5",
|
||||
"version_normalized": "1.5.5.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/simplepie/simplepie.git",
|
||||
"reference": "173663382a9346acd53df60c7ffb20689c9cf1f6"
|
||||
"reference": "ae49e2201b6da9c808e5dac437aca356a11831b4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/simplepie/simplepie/zipball/173663382a9346acd53df60c7ffb20689c9cf1f6",
|
||||
"reference": "173663382a9346acd53df60c7ffb20689c9cf1f6",
|
||||
"url": "https://api.github.com/repos/simplepie/simplepie/zipball/ae49e2201b6da9c808e5dac437aca356a11831b4",
|
||||
"reference": "ae49e2201b6da9c808e5dac437aca356a11831b4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -367,7 +381,7 @@
|
|||
"ext-mbstring": "",
|
||||
"mf2/mf2": "Microformat module that allows for parsing HTML for microformats"
|
||||
},
|
||||
"time": "2019-09-22T23:21:30+00:00",
|
||||
"time": "2020-05-01T12:23:14+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
|
@ -386,8 +400,8 @@
|
|||
"role": "Creator, alumnus developer"
|
||||
},
|
||||
{
|
||||
"name": "Geoffrey Sneddon",
|
||||
"homepage": "http://gsnedders.com/",
|
||||
"name": "Sam Sneddon",
|
||||
"homepage": "https://gsnedders.com/",
|
||||
"role": "Alumnus developer"
|
||||
},
|
||||
{
|
||||
|
@ -463,17 +477,17 @@
|
|||
},
|
||||
{
|
||||
"name": "splitbrain/php-cli",
|
||||
"version": "1.1.5",
|
||||
"version_normalized": "1.1.5.0",
|
||||
"version": "1.1.6",
|
||||
"version_normalized": "1.1.6.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/splitbrain/php-cli.git",
|
||||
"reference": "e982d40d074ab9f2669c3c0a2e40559b098cd894"
|
||||
"reference": "b7be3726872547253dd0bd61098fa9f634c33555"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/splitbrain/php-cli/zipball/e982d40d074ab9f2669c3c0a2e40559b098cd894",
|
||||
"reference": "e982d40d074ab9f2669c3c0a2e40559b098cd894",
|
||||
"url": "https://api.github.com/repos/splitbrain/php-cli/zipball/b7be3726872547253dd0bd61098fa9f634c33555",
|
||||
"reference": "b7be3726872547253dd0bd61098fa9f634c33555",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -485,7 +499,7 @@
|
|||
"suggest": {
|
||||
"psr/log": "Allows you to make the CLI available as PSR-3 logger"
|
||||
},
|
||||
"time": "2018-09-29T07:51:34+00:00",
|
||||
"time": "2019-10-16T07:31:14+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
|
|
|
@ -1,10 +1,15 @@
|
|||
# lesserphp v0.5.1
|
||||
# lesserphp v0.5.4
|
||||
|
||||
Originally written by Leaf Corcoran, obviously abandoned circa 2014
|
||||
https://github.com/leafo/lessphp
|
||||
|
||||
Last version provided by Leaf was 0.5.0
|
||||
|
||||
### v.0.5.4
|
||||
* 2020-01-19: added 7.4 support to travis and removed antique php versions (@phy25)
|
||||
* 2020-01-19: fixed wrong array access in lib_luma
|
||||
* 2020-01-19: removed HHVM profile from travis. HHVM support is now broken anyway
|
||||
|
||||
### v.0.5.1
|
||||
* 2016-09-30: renaming it to lesserphp for easier distinction
|
||||
* 2016-09-30: applying some pull requests of the origin repository
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[![Build Status](https://travis-ci.org/MarcusSchwarz/lessphp.svg?branch=0.5.1)](https://travis-ci.org/MarcusSchwarz/lessphp)
|
||||
[![Build Status](https://travis-ci.org/MarcusSchwarz/lesserphp.svg)](https://travis-ci.org/MarcusSchwarz/lesserphp)
|
||||
|
||||
# lesserphp v0.5.1
|
||||
# lesserphp v0.5.4
|
||||
### <http://github.com/MarcusSchwarz/lesserphp>
|
||||
|
||||
`lesserphp` is a compiler for LESS written in PHP. It is based on lessphp bei leafo.
|
||||
|
|
|
@ -668,7 +668,7 @@ class lessc {
|
|||
|
||||
// check for a rest
|
||||
$last = end($args);
|
||||
if ($last[0] == "rest") {
|
||||
if ($last !== false && $last[0] === "rest") {
|
||||
$rest = array_slice($orderedValues, count($args) - 1);
|
||||
$this->set($last[1], $this->reduce(array("list", " ", $rest)));
|
||||
}
|
||||
|
@ -1349,7 +1349,7 @@ class lessc {
|
|||
|
||||
protected function lib_luma($color) {
|
||||
$color = $this->coerceColor($color);
|
||||
return (0.2126 * $color[0] / 255) + (0.7152 * $color[1] / 255) + (0.0722 * $color[2] / 255);
|
||||
return (0.2126 * $color[1] / 255) + (0.7152 * $color[2] / 255) + (0.0722 * $color[3] / 255);
|
||||
}
|
||||
|
||||
|
||||
|
@ -2052,7 +2052,7 @@ class lessc {
|
|||
$this->pushEnv();
|
||||
$parser = new lessc_parser($this, __METHOD__);
|
||||
foreach ($args as $name => $strValue) {
|
||||
if ($name{0} != '@') $name = '@'.$name;
|
||||
if ($name[0] != '@') $name = '@'.$name;
|
||||
$parser->count = 0;
|
||||
$parser->buffer = (string)$strValue;
|
||||
if (!$parser->propertyValue($value)) {
|
||||
|
|
|
@ -4,4 +4,5 @@ phpseclib ongoing development is made possible by [Tidelift](https://tidelift.co
|
|||
|
||||
## Backers
|
||||
|
||||
- Zane Hooper
|
||||
- Zane Hooper
|
||||
- [Setasign](https://www.setasign.com/)
|
|
@ -15,7 +15,6 @@ arithmetic library, fully PKCS#1 (v2.1) compliant RSA, DES, 3DES, RC4, Rijndael,
|
|||
AES, Blowfish, Twofish, SSH-1, SSH-2, SFTP, and X.509
|
||||
|
||||
* [Browse Git](https://github.com/phpseclib/phpseclib)
|
||||
* [Code Coverage Report](https://coverage.phpseclib.org/2.0/latest/)
|
||||
|
||||
## Documentation
|
||||
|
||||
|
@ -45,7 +44,7 @@ AES, Blowfish, Twofish, SSH-1, SSH-2, SFTP, and X.509
|
|||
* Composer compatible (PSR-0 autoloading)
|
||||
* Install using Composer: `composer require phpseclib/phpseclib:~1.0`
|
||||
* Install using PEAR: See [phpseclib PEAR Channel Documentation](http://phpseclib.sourceforge.net/pear.htm)
|
||||
* [Download 1.0.17 as ZIP](http://sourceforge.net/projects/phpseclib/files/phpseclib1.0.17.zip/download)
|
||||
* [Download 1.0.18 as ZIP](http://sourceforge.net/projects/phpseclib/files/phpseclib1.0.18.zip/download)
|
||||
|
||||
## Security contact information
|
||||
|
||||
|
|
|
@ -2762,7 +2762,7 @@ class RSA
|
|||
// if $m is larger than two million terrabytes and you're using sha1, PKCS#1 suggests a "Label too long" error
|
||||
// be output.
|
||||
|
||||
$emLen = ($emBits + 1) >> 3; // ie. ceil($emBits / 8);
|
||||
$emLen = ($emBits + 7) >> 3; // ie. ceil($emBits / 8);
|
||||
$sLen = $this->sLen !== null ? $this->sLen : $this->hLen;
|
||||
|
||||
$mHash = $this->hash->hash($m);
|
||||
|
@ -2840,7 +2840,7 @@ class RSA
|
|||
|
||||
// RSA verification
|
||||
|
||||
$modBits = 8 * $this->k;
|
||||
$modBits = strlen($this->modulus->toBits());
|
||||
|
||||
$s2 = $this->_os2ip($s);
|
||||
$m2 = $this->_rsavp1($s2);
|
||||
|
@ -2848,7 +2848,7 @@ class RSA
|
|||
user_error('Invalid signature');
|
||||
return false;
|
||||
}
|
||||
$em = $this->_i2osp($m2, $modBits >> 3);
|
||||
$em = $this->_i2osp($m2, $this->k);
|
||||
if ($em === false) {
|
||||
user_error('Invalid signature');
|
||||
return false;
|
||||
|
|
|
@ -97,7 +97,10 @@ class Random
|
|||
$fp = @fopen('/dev/urandom', 'rb');
|
||||
}
|
||||
if ($fp !== true && $fp !== false) { // surprisingly faster than !is_bool() or is_resource()
|
||||
return fread($fp, $length);
|
||||
$temp = fread($fp, $length);
|
||||
if (strlen($temp) == $length) {
|
||||
return $temp;
|
||||
}
|
||||
}
|
||||
// method 3. pretty much does the same thing as method 2 per the following url:
|
||||
// https://github.com/php/php-src/blob/7014a0eb6d1611151a286c0ff4f2238f92c120d6/ext/mcrypt/mcrypt.c#L1391
|
||||
|
|
|
@ -493,6 +493,10 @@ class ASN1
|
|||
*/
|
||||
function asn1map($decoded, $mapping, $special = array())
|
||||
{
|
||||
if (!is_array($decoded)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (isset($mapping['explicit']) && is_array($decoded['content'])) {
|
||||
$decoded = $decoded['content'][0];
|
||||
}
|
||||
|
|
|
@ -2179,7 +2179,11 @@ class X509
|
|||
}
|
||||
|
||||
while (!feof($fsock)) {
|
||||
$data.= fread($fsock, 1024);
|
||||
$temp = fread($fsock, 1024);
|
||||
if ($temp === false) {
|
||||
return false;
|
||||
}
|
||||
$data.= $temp;
|
||||
}
|
||||
|
||||
break;
|
||||
|
|
|
@ -397,6 +397,9 @@ class SFTP extends SSH2
|
|||
if (!defined('NET_SFTP_QUEUE_SIZE')) {
|
||||
define('NET_SFTP_QUEUE_SIZE', 32);
|
||||
}
|
||||
if (!defined('NET_SFTP_UPLOAD_QUEUE_SIZE')) {
|
||||
define('NET_SFTP_UPLOAD_QUEUE_SIZE', 1024);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -409,9 +412,7 @@ class SFTP extends SSH2
|
|||
*/
|
||||
function login($username)
|
||||
{
|
||||
$args = func_get_args();
|
||||
$this->auth[] = $args;
|
||||
if (!call_user_func_array(array(&$this, '_login'), $args)) {
|
||||
if (!call_user_func_array('parent::login', func_get_args())) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -1775,9 +1776,6 @@ class SFTP extends SSH2
|
|||
}
|
||||
|
||||
$dir = $this->_realpath($dir);
|
||||
// by not providing any permissions, hopefully the server will use the logged in users umask - their
|
||||
// default permissions.
|
||||
$attr = $mode == -1 ? "\0\0\0\0" : pack('N2', NET_SFTP_ATTR_PERMISSIONS, $mode & 07777);
|
||||
|
||||
if ($recursive) {
|
||||
$dirs = explode('/', preg_replace('#/(?=/)|/$#', '', $dir));
|
||||
|
@ -1788,12 +1786,12 @@ class SFTP extends SSH2
|
|||
for ($i = 0; $i < count($dirs); $i++) {
|
||||
$temp = array_slice($dirs, 0, $i + 1);
|
||||
$temp = implode('/', $temp);
|
||||
$result = $this->_mkdir_helper($temp, $attr);
|
||||
$result = $this->_mkdir_helper($temp, $mode);
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
return $this->_mkdir_helper($dir, $attr);
|
||||
return $this->_mkdir_helper($dir, $mode);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1803,9 +1801,10 @@ class SFTP extends SSH2
|
|||
* @return bool
|
||||
* @access private
|
||||
*/
|
||||
function _mkdir_helper($dir, $attr)
|
||||
function _mkdir_helper($dir, $mode)
|
||||
{
|
||||
if (!$this->_send_sftp_packet(NET_SFTP_MKDIR, pack('Na*a*', strlen($dir), $dir, $attr))) {
|
||||
// send SSH_FXP_MKDIR without any attributes (that's what the \0\0\0\0 is doing)
|
||||
if (!$this->_send_sftp_packet(NET_SFTP_MKDIR, pack('Na*a*', strlen($dir), $dir, "\0\0\0\0"))) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -1824,6 +1823,10 @@ class SFTP extends SSH2
|
|||
return false;
|
||||
}
|
||||
|
||||
if ($mode !== -1) {
|
||||
$this->chmod($mode, $dir);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -2018,7 +2021,7 @@ class SFTP extends SSH2
|
|||
$sftp_packet_size = 4096; // PuTTY uses 4096
|
||||
// make the SFTP packet be exactly 4096 bytes by including the bytes in the NET_SFTP_WRITE packets "header"
|
||||
$sftp_packet_size-= strlen($handle) + 25;
|
||||
$i = 0;
|
||||
$i = $j = 0;
|
||||
while ($dataCallback || ($size === 0 || $sent < $size)) {
|
||||
if ($dataCallback) {
|
||||
$temp = call_user_func($dataCallback, $sftp_packet_size);
|
||||
|
@ -2034,7 +2037,7 @@ class SFTP extends SSH2
|
|||
|
||||
$subtemp = $offset + $sent;
|
||||
$packet = pack('Na*N3a*', strlen($handle), $handle, $subtemp / 4294967296, $subtemp, strlen($temp), $temp);
|
||||
if (!$this->_send_sftp_packet(NET_SFTP_WRITE, $packet)) {
|
||||
if (!$this->_send_sftp_packet(NET_SFTP_WRITE, $packet, $j)) {
|
||||
if ($mode & self::SOURCE_LOCAL_FILE) {
|
||||
fclose($fp);
|
||||
}
|
||||
|
@ -2046,8 +2049,9 @@ class SFTP extends SSH2
|
|||
}
|
||||
|
||||
$i++;
|
||||
$j++;
|
||||
|
||||
if ($i == NET_SFTP_QUEUE_SIZE) {
|
||||
if ($i == NET_SFTP_UPLOAD_QUEUE_SIZE) {
|
||||
if (!$this->_read_put_responses($i)) {
|
||||
$i = 0;
|
||||
break;
|
||||
|
|
|
@ -1124,6 +1124,9 @@ class SSH1
|
|||
|
||||
while ($length > 0) {
|
||||
$temp = fread($this->fsock, $length);
|
||||
if (strlen($temp) != $length) {
|
||||
return false;
|
||||
}
|
||||
$raw.= $temp;
|
||||
$length-= strlen($temp);
|
||||
}
|
||||
|
|
|
@ -592,6 +592,20 @@ class SSH2
|
|||
*/
|
||||
var $window_size = 0x7FFFFFFF;
|
||||
|
||||
/**
|
||||
* What we resize the window to
|
||||
*
|
||||
* When PuTTY resizes the window it doesn't add an additional 0x7FFFFFFF bytes - it adds 0x40000000 bytes.
|
||||
* Some SFTP clients (GoAnywhere) don't support adding 0x7FFFFFFF to the window size after the fact so
|
||||
* we'll just do what PuTTY does
|
||||
*
|
||||
* @var int
|
||||
* @see self::_send_channel_packet()
|
||||
* @see self::exec()
|
||||
* @access private
|
||||
*/
|
||||
var $window_resize = 0x40000000;
|
||||
|
||||
/**
|
||||
* Window size, server to client
|
||||
*
|
||||
|
@ -1204,6 +1218,9 @@ class SSH2
|
|||
if (strlen($temp) == 255) {
|
||||
continue;
|
||||
}
|
||||
if ($temp === false) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$line.= "$temp\n";
|
||||
|
||||
|
@ -1527,8 +1544,8 @@ class SSH2
|
|||
if ($kex_algorithm === 'curve25519-sha256@libssh.org') {
|
||||
$x = Random::string(32);
|
||||
$eBytes = sodium_crypto_box_publickey_from_secretkey($x);
|
||||
$clientKexInitMessage = NET_SSH2_MSG_KEX_ECDH_INIT;
|
||||
$serverKexReplyMessage = NET_SSH2_MSG_KEX_ECDH_REPLY;
|
||||
$clientKexInitMessage = 'NET_SSH2_MSG_KEX_ECDH_INIT';
|
||||
$serverKexReplyMessage = 'NET_SSH2_MSG_KEX_ECDH_REPLY';
|
||||
$kexHash = new Hash('sha256');
|
||||
} else {
|
||||
if (strpos($kex_algorithm, 'diffie-hellman-group-exchange') === 0) {
|
||||
|
@ -1546,6 +1563,7 @@ class SSH2
|
|||
if (!$this->_send_binary_packet($packet)) {
|
||||
return false;
|
||||
}
|
||||
$this->_updateLogHistory('UNKNOWN (34)', 'NET_SSH2_MSG_KEXDH_GEX_REQUEST');
|
||||
|
||||
$response = $this->_get_binary_packet();
|
||||
if ($response === false) {
|
||||
|
@ -1558,6 +1576,7 @@ class SSH2
|
|||
user_error('Expected SSH_MSG_KEX_DH_GEX_GROUP');
|
||||
return false;
|
||||
}
|
||||
$this->_updateLogHistory('NET_SSH2_MSG_KEXDH_REPLY', 'NET_SSH2_MSG_KEXDH_GEX_GROUP');
|
||||
|
||||
if (strlen($response) < 4) {
|
||||
return false;
|
||||
|
@ -1582,8 +1601,8 @@ class SSH2
|
|||
$gBytes
|
||||
);
|
||||
|
||||
$clientKexInitMessage = NET_SSH2_MSG_KEXDH_GEX_INIT;
|
||||
$serverKexReplyMessage = NET_SSH2_MSG_KEXDH_GEX_REPLY;
|
||||
$clientKexInitMessage = 'NET_SSH2_MSG_KEXDH_GEX_INIT';
|
||||
$serverKexReplyMessage = 'NET_SSH2_MSG_KEXDH_GEX_REPLY';
|
||||
} else {
|
||||
switch ($kex_algorithm) {
|
||||
// see http://tools.ietf.org/html/rfc2409#section-6.2 and
|
||||
|
@ -1610,8 +1629,8 @@ class SSH2
|
|||
// the generator field element is 2 (decimal) and the hash function is sha1.
|
||||
$g = new BigInteger(2);
|
||||
$prime = new BigInteger($prime, 16);
|
||||
$clientKexInitMessage = NET_SSH2_MSG_KEXDH_INIT;
|
||||
$serverKexReplyMessage = NET_SSH2_MSG_KEXDH_REPLY;
|
||||
$clientKexInitMessage = 'NET_SSH2_MSG_KEXDH_INIT';
|
||||
$serverKexReplyMessage = 'NET_SSH2_MSG_KEXDH_REPLY';
|
||||
}
|
||||
|
||||
switch ($kex_algorithm) {
|
||||
|
@ -1639,13 +1658,20 @@ class SSH2
|
|||
|
||||
$eBytes = $e->toBytes(true);
|
||||
}
|
||||
$data = pack('CNa*', $clientKexInitMessage, strlen($eBytes), $eBytes);
|
||||
$data = pack('CNa*', constant($clientKexInitMessage), strlen($eBytes), $eBytes);
|
||||
|
||||
if (!$this->_send_binary_packet($data)) {
|
||||
$this->bitmap = 0;
|
||||
user_error('Connection closed by server');
|
||||
return false;
|
||||
}
|
||||
switch ($clientKexInitMessage) {
|
||||
case 'NET_SSH2_MSG_KEX_ECDH_INIT':
|
||||
$this->_updateLogHistory('NET_SSH2_MSG_KEXDH_INIT', 'NET_SSH2_MSG_KEX_ECDH_INIT');
|
||||
break;
|
||||
case 'NET_SSH2_MSG_KEXDH_GEX_INIT':
|
||||
$this->_updateLogHistory('UNKNOWN (32)', 'NET_SSH2_MSG_KEXDH_GEX_INIT');
|
||||
}
|
||||
|
||||
$response = $this->_get_binary_packet();
|
||||
if ($response === false) {
|
||||
|
@ -1658,10 +1684,17 @@ class SSH2
|
|||
}
|
||||
extract(unpack('Ctype', $this->_string_shift($response, 1)));
|
||||
|
||||
if ($type != $serverKexReplyMessage) {
|
||||
user_error('Expected SSH_MSG_KEXDH_REPLY');
|
||||
if ($type != constant($serverKexReplyMessage)) {
|
||||
user_error("Expected $serverKexReplyMessage");
|
||||
return false;
|
||||
}
|
||||
switch ($serverKexReplyMessage) {
|
||||
case 'NET_SSH2_MSG_KEX_ECDH_REPLY':
|
||||
$this->_updateLogHistory('NET_SSH2_MSG_KEXDH_REPLY', 'NET_SSH2_MSG_KEX_ECDH_REPLY');
|
||||
break;
|
||||
case 'NET_SSH2_MSG_KEXDH_GEX_REPLY':
|
||||
$this->_updateLogHistory('UNKNOWN (33)', 'NET_SSH2_MSG_KEXDH_GEX_REPLY');
|
||||
}
|
||||
|
||||
if (strlen($response) < 4) {
|
||||
return false;
|
||||
|
@ -1699,7 +1732,14 @@ class SSH2
|
|||
return false;
|
||||
}
|
||||
$key = new BigInteger(sodium_crypto_scalarmult($x, $fBytes), 256);
|
||||
sodium_memzero($x);
|
||||
// sodium_compat doesn't emulate sodium_memzero
|
||||
// also, with v1 of libsodium API the extension identifies itself as
|
||||
// libsodium whereas v2 of the libsodium API (what PHP 7.2+ includes)
|
||||
// identifies itself as sodium. sodium_compat uses the v1 API to
|
||||
// emulate the v2 API if it's the v1 API that's available
|
||||
if (extension_loaded('sodium') || extension_loaded('libsodium')) {
|
||||
sodium_memzero($x);
|
||||
}
|
||||
} else {
|
||||
$f = new BigInteger($fBytes, -256);
|
||||
$key = $f->modPow($x, $prime);
|
||||
|
@ -2082,6 +2122,15 @@ class SSH2
|
|||
{
|
||||
$args = func_get_args();
|
||||
$this->auth[] = $args;
|
||||
|
||||
// try logging with 'none' as an authentication method first since that's what
|
||||
// PuTTY does
|
||||
if ($this->_login($username)) {
|
||||
return true;
|
||||
}
|
||||
if (count($args) == 1) {
|
||||
return false;
|
||||
}
|
||||
return call_user_func_array(array(&$this, '_login'), $args);
|
||||
}
|
||||
|
||||
|
@ -2277,9 +2326,7 @@ class SSH2
|
|||
|
||||
switch ($type) {
|
||||
case NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ: // in theory, the password can be changed
|
||||
if (defined('NET_SSH2_LOGGING')) {
|
||||
$this->message_number_log[count($this->message_number_log) - 1] = 'NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ';
|
||||
}
|
||||
$this->_updateLogHistory('UNKNOWN (60)', 'NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ');
|
||||
if (strlen($response) < 4) {
|
||||
return false;
|
||||
}
|
||||
|
@ -2430,12 +2477,8 @@ class SSH2
|
|||
// see http://tools.ietf.org/html/rfc4256#section-3.2
|
||||
if (strlen($this->last_interactive_response)) {
|
||||
$this->last_interactive_response = '';
|
||||
} elseif (defined('NET_SSH2_LOGGING')) {
|
||||
$this->message_number_log[count($this->message_number_log) - 1] = str_replace(
|
||||
'UNKNOWN',
|
||||
'NET_SSH2_MSG_USERAUTH_INFO_REQUEST',
|
||||
$this->message_number_log[count($this->message_number_log) - 1]
|
||||
);
|
||||
} else {
|
||||
$this->_updateLogHistory('UNKNOWN (60)', 'NET_SSH2_MSG_USERAUTH_INFO_REQUEST');
|
||||
}
|
||||
|
||||
if (!count($responses) && $num_prompts) {
|
||||
|
@ -2458,13 +2501,7 @@ class SSH2
|
|||
return false;
|
||||
}
|
||||
|
||||
if (defined('NET_SSH2_LOGGING') && NET_SSH2_LOGGING == self::LOG_COMPLEX) {
|
||||
$this->message_number_log[count($this->message_number_log) - 1] = str_replace(
|
||||
'UNKNOWN',
|
||||
'NET_SSH2_MSG_USERAUTH_INFO_RESPONSE',
|
||||
$this->message_number_log[count($this->message_number_log) - 1]
|
||||
);
|
||||
}
|
||||
$this->_updateLogHistory('UNKNOWN (61)', 'NET_SSH2_MSG_USERAUTH_INFO_RESPONSE');
|
||||
|
||||
/*
|
||||
After receiving the response, the server MUST send either an
|
||||
|
@ -2591,13 +2628,7 @@ class SSH2
|
|||
case NET_SSH2_MSG_USERAUTH_PK_OK:
|
||||
// we'll just take it on faith that the public key blob and the public key algorithm name are as
|
||||
// they should be
|
||||
if (defined('NET_SSH2_LOGGING') && NET_SSH2_LOGGING == self::LOG_COMPLEX) {
|
||||
$this->message_number_log[count($this->message_number_log) - 1] = str_replace(
|
||||
'UNKNOWN',
|
||||
'NET_SSH2_MSG_USERAUTH_PK_OK',
|
||||
$this->message_number_log[count($this->message_number_log) - 1]
|
||||
);
|
||||
}
|
||||
$this->_updateLogHistory('UNKNOWN (60)', 'NET_SSH2_MSG_USERAUTH_PK_OK');
|
||||
}
|
||||
|
||||
$packet = $part1 . chr(1) . $part2;
|
||||
|
@ -3695,11 +3726,13 @@ class SSH2
|
|||
|
||||
// resize the window, if appropriate
|
||||
if ($this->window_size_server_to_client[$channel] < 0) {
|
||||
$packet = pack('CNN', NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST, $this->server_channels[$channel], $this->window_size);
|
||||
// PuTTY does something more analogous to the following:
|
||||
//if ($this->window_size_server_to_client[$channel] < 0x3FFFFFFF) {
|
||||
$packet = pack('CNN', NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST, $this->server_channels[$channel], $this->window_resize);
|
||||
if (!$this->_send_binary_packet($packet)) {
|
||||
return false;
|
||||
}
|
||||
$this->window_size_server_to_client[$channel]+= $this->window_size;
|
||||
$this->window_size_server_to_client[$channel]+= $this->window_resize;
|
||||
}
|
||||
|
||||
switch ($type) {
|
||||
|
@ -4450,7 +4483,7 @@ class SSH2
|
|||
* @return array
|
||||
* @access public
|
||||
*/
|
||||
public function getServerAlgorithms()
|
||||
function getServerAlgorithms()
|
||||
{
|
||||
$this->_connect();
|
||||
|
||||
|
@ -4582,10 +4615,7 @@ class SSH2
|
|||
switch ($algo) {
|
||||
case 'arcfour128':
|
||||
case 'arcfour256':
|
||||
if ($engine == Base::ENGINE_INTERNAL) {
|
||||
$algos = array_diff($algos, array($algo));
|
||||
$ciphers[] = $algo;
|
||||
} else {
|
||||
if ($engine != Base::ENGINE_INTERNAL) {
|
||||
continue 2;
|
||||
}
|
||||
}
|
||||
|
@ -5040,4 +5070,22 @@ class SSH2
|
|||
$this->windowColumns = $columns;
|
||||
$this->windowRows = $rows;
|
||||
}
|
||||
|
||||
/**
|
||||
* Update packet types in log history
|
||||
*
|
||||
* @param string $old
|
||||
* @param string $new
|
||||
* @access private
|
||||
*/
|
||||
function _updateLogHistory($old, $new)
|
||||
{
|
||||
if (defined('NET_SSH2_LOGGING') && NET_SSH2_LOGGING == self::LOG_COMPLEX) {
|
||||
$this->message_number_log[count($this->message_number_log) - 1] = str_replace(
|
||||
$old,
|
||||
$new,
|
||||
$this->message_number_log[count($this->message_number_log) - 1]
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -160,7 +160,12 @@ class Agent
|
|||
return array();
|
||||
}
|
||||
|
||||
$length = current(unpack('N', fread($this->fsock, 4)));
|
||||
$temp = fread($this->fsock, 4);
|
||||
if (strlen($temp) != 4) {
|
||||
user_error('Connection closed while requesting identities');
|
||||
return array();
|
||||
}
|
||||
$length = current(unpack('N', $temp));
|
||||
$type = ord(fread($this->fsock, 1));
|
||||
if ($type != self::SSH_AGENT_IDENTITIES_ANSWER) {
|
||||
user_error('Unable to request identities');
|
||||
|
@ -168,14 +173,38 @@ class Agent
|
|||
}
|
||||
|
||||
$identities = array();
|
||||
$keyCount = current(unpack('N', fread($this->fsock, 4)));
|
||||
$temp = fread($this->fsock, 4);
|
||||
if (strlen($temp) != 4) {
|
||||
user_error('Connection closed while requesting identities');
|
||||
return array();
|
||||
}
|
||||
$keyCount = current(unpack('N', $temp));
|
||||
for ($i = 0; $i < $keyCount; $i++) {
|
||||
$length = current(unpack('N', fread($this->fsock, 4)));
|
||||
$temp = fread($this->fsock, 4);
|
||||
if (strlen($temp) != 4) {
|
||||
user_error('Connection closed while requesting identities');
|
||||
return array();
|
||||
}
|
||||
$length = current(unpack('N', $temp));
|
||||
$key_blob = fread($this->fsock, $length);
|
||||
if (strlen($key_blob) != $length) {
|
||||
user_error('Connection closed while requesting identities');
|
||||
return array();
|
||||
}
|
||||
$key_str = 'ssh-rsa ' . base64_encode($key_blob);
|
||||
$length = current(unpack('N', fread($this->fsock, 4)));
|
||||
$temp = fread($this->fsock, 4);
|
||||
if (strlen($temp) != 4) {
|
||||
user_error('Connection closed while requesting identities');
|
||||
return array();
|
||||
}
|
||||
$length = current(unpack('N', $temp));
|
||||
if ($length) {
|
||||
$key_str.= ' ' . fread($this->fsock, $length);
|
||||
$temp = fread($this->fsock, $length);
|
||||
if (strlen($temp) != $length) {
|
||||
user_error('Connection closed while requesting identities');
|
||||
return array();
|
||||
}
|
||||
$key_str.= ' ' . $temp;
|
||||
}
|
||||
$length = current(unpack('N', substr($key_blob, 0, 4)));
|
||||
$key_type = substr($key_blob, 4, $length);
|
||||
|
@ -297,14 +326,24 @@ class Agent
|
|||
|
||||
if (strlen($this->socket_buffer) != fwrite($this->fsock, $this->socket_buffer)) {
|
||||
user_error('Connection closed attempting to forward data to SSH agent');
|
||||
return false;
|
||||
}
|
||||
|
||||
$this->socket_buffer = '';
|
||||
$this->expected_bytes = 0;
|
||||
|
||||
$agent_reply_bytes = current(unpack('N', fread($this->fsock, 4)));
|
||||
$temp = fread($this->fsock, 4);
|
||||
if (strlen($temp) != 4) {
|
||||
user_error('Connection closed while reading data response');
|
||||
return false;
|
||||
}
|
||||
$agent_reply_bytes = current(unpack('N', $temp));
|
||||
|
||||
$agent_reply_data = fread($this->fsock, $agent_reply_bytes);
|
||||
if (strlen($agent_reply_data) != $agent_reply_bytes) {
|
||||
user_error('Connection closed while reading data response');
|
||||
return false;
|
||||
}
|
||||
$agent_reply_data = current(unpack('a*', $agent_reply_data));
|
||||
|
||||
return pack('Na*', $agent_reply_bytes, $agent_reply_data);
|
||||
|
|
|
@ -188,15 +188,26 @@ class Identity
|
|||
$packet = pack('Na*', strlen($packet), $packet);
|
||||
if (strlen($packet) != fputs($this->fsock, $packet)) {
|
||||
user_error('Connection closed during signing');
|
||||
return false;
|
||||
}
|
||||
|
||||
$length = current(unpack('N', fread($this->fsock, 4)));
|
||||
$temp = fread($this->fsock, 4);
|
||||
if (strlen($temp) != 4) {
|
||||
user_error('Connection closed during signing');
|
||||
return false;
|
||||
}
|
||||
$length = current(unpack('N', $temp));
|
||||
$type = ord(fread($this->fsock, 1));
|
||||
if ($type != Agent::SSH_AGENT_SIGN_RESPONSE) {
|
||||
user_error('Unable to retrieve signature');
|
||||
return false;
|
||||
}
|
||||
|
||||
$signature_blob = fread($this->fsock, $length - 1);
|
||||
if (strlen($signature_blob) != $length - 1) {
|
||||
user_error('Connection closed during signing');
|
||||
return false;
|
||||
}
|
||||
$length = current(unpack('N', $this->_string_shift($signature_blob, 4)));
|
||||
if ($length != strlen($signature_blob)) {
|
||||
user_error('Malformed signature blob');
|
||||
|
|
|
@ -0,0 +1,134 @@
|
|||
## 1.5.5 (May 1, 2020)
|
||||
|
||||
* Ensure that feeds retrieved with `force_feed` do not share the same cache as those retrieved without. [#643](https://github.com/simplepie/simplepie/pull/643)
|
||||
* Removed references to removed PHP directives and some PHP < 5.6 checks. [#645](https://github.com/simplepie/simplepie/pull/645)
|
||||
* Corrected incorrect alumni name. [#638](https://github.com/simplepie/simplepie/pull/638)
|
||||
|
||||
## 1.5.4 (December 17, 2019)
|
||||
|
||||
* PHP 5.6 or newer is now required. [#625](https://github.com/simplepie/simplepie/pull/625)
|
||||
* Fixed invalid docblock parameter types [#633](https://github.com/simplepie/simplepie/pull/633)
|
||||
* Added support for German short forms for weekdays and months. [#632](https://github.com/simplepie/simplepie/pull/632)
|
||||
* PHP 7.4 support: Fixed instances of accessing array offset on null type values. [#628](https://github.com/simplepie/simplepie/pull/628)
|
||||
* Return an effective feed URL when asking for non-permanent `subscribe_url`. [#627](https://github.com/simplepie/simplepie/pull/627)
|
||||
|
||||
## 1.5.3 (September 22, 2019)
|
||||
|
||||
* Replaced `pow()` call with `**` operator (micro performance optimization). [#622](https://github.com/simplepie/simplepie/pull/622)
|
||||
* Match links containing `feed` in the Locator class. [#621](https://github.com/simplepie/simplepie/pull/621)
|
||||
* PHP 7.4 support: Ensure the proper argument order for `implode()` calls. [#617](https://github.com/simplepie/simplepie/pull/617)
|
||||
* Added support for Russian dates. [#607](https://github.com/simplepie/simplepie/pull/607)
|
||||
* Preemptively changed `is_writeable()` calls to `is_writable()` in case the former is deprecated in PHP. [#604](https://github.com/simplepie/simplepie/pull/604)
|
||||
|
||||
## 1.5.2 (August 2, 2018)
|
||||
|
||||
* Added support for PHPUnit 6. [#565](https://github.com/simplepie/simplepie/pull/565)
|
||||
* Added PHP module requirements to Composer. [#590](https://github.com/simplepie/simplepie/pull/590)
|
||||
* Added support for Redis password and database. [#589](https://github.com/simplepie/simplepie/pull/589)
|
||||
* Changed the spelling of `writeable` to `writable` within inline documentation. [#586](https://github.com/simplepie/simplepie/pull/586)
|
||||
* Fixed various issues in the test suite and Travis. [#576](https://github.com/simplepie/simplepie/pull/576)
|
||||
* Removed ambiguous tests failing on `usort()` in PHP 7. [#578](https://github.com/simplepie/simplepie/pull/578)
|
||||
* Simplified logic for some function returns. [#573](https://github.com/simplepie/simplepie/pull/573)
|
||||
* Fixed inline documentation for return value types for accuracy. [#570](https://github.com/simplepie/simplepie/pull/570)
|
||||
* Fixed Travis to run `composer install`. [#567](https://github.com/simplepie/simplepie/pull/567)
|
||||
* Removed unnecessary `else`s when a value has already been returned. [#566](https://github.com/simplepie/simplepie/pull/566)
|
||||
* Fixed a bug where URL fragments are included when `SimplePie_File` normalizes URLs when really old versions of cURL are used. [#564](https://github.com/simplepie/simplepie/pull/564)
|
||||
* Updated `SimplePie_Locator` to respect cURL options specified. [#561](https://github.com/simplepie/simplepie/pull/561)
|
||||
|
||||
## 1.5.1 (November 17, 2017)
|
||||
|
||||
* Fixed photos so they are not added if the URL is empty. [#530](https://github.com/simplepie/simplepie/pull/530)
|
||||
* Fixed issues with retrieving feeds from behind a proxy. [#512](https://github.com/simplepie/simplepie/pull/512)/[#548](https://github.com/simplepie/simplepie/pull/548)
|
||||
* Updated favicon URL in `get_favicon()`. [#525](https://github.com/simplepie/simplepie/pull/525)
|
||||
* Fixed inline documentation typo. [#540](https://github.com/simplepie/simplepie/pull/540)
|
||||
* Removed extra closing `<a>` tag. [#537](https://github.com/simplepie/simplepie/pull/537)
|
||||
* Removed and updated feed URLs in the demo. [#535](https://github.com/simplepie/simplepie/pull/535)
|
||||
* Improvements to microformat feed parsing. [#533](https://github.com/simplepie/simplepie/pull/533)
|
||||
* Switched from regex to xpath for microformats discovery. [#536](https://github.com/simplepie/simplepie/pull/536)
|
||||
* Update the registry if the Sanitize class has been changed. [#532](https://github.com/simplepie/simplepie/pull/532)
|
||||
* Changed the sanitization type for author and category back to text from HTML. [#531](https://github.com/simplepie/simplepie/pull/531)
|
||||
|
||||
## 1.5 (April 17, 2017)
|
||||
|
||||
* Introduced `SimplePie_Category->get_type()` for retrieving category type. [#492](https://github.com/simplepie/simplepie/pull/492)
|
||||
* Added `$enable_exceptions` to the class property declarations for `SimplePie` class. [#504](https://github.com/simplepie/simplepie/pull/504)
|
||||
* Titles are now parsed for ATOM10 enclosure links. [#507](https://github.com/simplepie/simplepie/pull/507)
|
||||
* `$item->get_id()` can now be forced to return the supplied ID instead of generating a new one. [#509](https://github.com/simplepie/simplepie/pull/509)
|
||||
|
||||
## 1.4.3 (November 26, 2016)
|
||||
|
||||
* Removed support for PHP 5.2. [#469](https://github.com/simplepie/simplepie/pull/469)
|
||||
* Added support for the PHP `UConverter` class. [#485](https://github.com/simplepie/simplepie/pull/485)
|
||||
* PHP 7.1 Support: Fixed PHP error when trying to use a non-numeric value in `round()`. [#458](https://github.com/simplepie/simplepie/pull/458)
|
||||
* PHP 7 Support: Fixed deprecated message for old style constructors. [#489](https://github.com/simplepie/simplepie/pull/489)
|
||||
* Fixed the error message shown when a feed has an empty body. [#487](https://github.com/simplepie/simplepie/pull/487)
|
||||
* Added an error message when the XML or PCRE PHP extensions are missing. [#468](https://github.com/simplepie/simplepie/pull/468)
|
||||
* Check the result of sanitize before returning in `get_content()` and `get_description()`. [#494](https://github.com/simplepie/simplepie/pull/494)
|
||||
* Use `saveHTML()` to fix issues with non UTF-8 characters. [#470](https://github.com/simplepie/simplepie/pull/470)
|
||||
* Stop passing compressed data through `trim()`. [#455](https://github.com/simplepie/simplepie/pull/455)
|
||||
* Refactored the UTF-8 conversion error message. [#467](https://github.com/simplepie/simplepie/pull/467)
|
||||
* Updated the readme file. [#486](https://github.com/simplepie/simplepie/pull/486)
|
||||
* Added command line support for compayibility test. [#481](https://github.com/simplepie/simplepie/pull/481)
|
||||
* Added PHP 7.1 to the testing matrix. [#462](https://github.com/simplepie/simplepie/pull/462)
|
||||
* Use the latest HHVM version in testing (3.15.2). [#480](https://github.com/simplepie/simplepie/pull/480)
|
||||
* Added PHPUnit as a `dev-dependency` in Composer. [#463](https://github.com/simplepie/simplepie/pull/463)
|
||||
* Added `mf2/mf2` as a suggestion in Composer for use with microformats. [#491](https://github.com/simplepie/simplepie/pull/491)
|
||||
* Fixed misspelled occurrences of "separated". [#459](https://github.com/simplepie/simplepie/pull/459)
|
||||
* Improvements to the compatibility test and error messages. [#488](https://github.com/simplepie/simplepie/pull/488)
|
||||
|
||||
## 1.4.2 (June 14, 2016)
|
||||
|
||||
* Fixed a bug with IRI parsing.
|
||||
* More cleanly separates discovery of microformats and parsing when php-mf2 is not present.
|
||||
|
||||
## 1.4.1 (June 2, 2016)
|
||||
|
||||
* Fixed inconsistent hash results in `SimplePie_Item->get_id()`.
|
||||
* Leading and trailing whitespace is now trimmed from XML feed content to prevent errors. [#445](https://github.com/simplepie/simplepie/pull/445)
|
||||
* Improved support for microformat feeds.
|
||||
|
||||
## 1.4.0 (April 25, 2016)
|
||||
|
||||
* Dropped support for PHP 5.2. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Serialized data is now used for hashing in `SimplePie_Item->get_id()`. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added support for PHP 5.5 and 5.6. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added the `add_attributes()` method to `SimplePie`. [#394](https://github.com/simplepie/simplepie/pull/394)
|
||||
* Added the `force_cache_fallback()` method to `SimplePie` to allow an expired cache to be used when a feed is unavailable. [#389](https://github.com/simplepie/simplepie/pull/389)
|
||||
* Added Memcached. [#386](https://github.com/simplepie/simplepie/pull/386)
|
||||
* Added `set_curl_options()` method to `SimplePie` to allow custom options. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added Redis Caching. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added the CEST timezone. [#380](https://github.com/simplepie/simplepie/pull/380)
|
||||
* Added support for HTTP 301 Moved Permanently. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added support for `application/x-rss+xml` in `SimplePie_Locator`. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added photo de-duping in microformats. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added decoding for special characters in MAYBE_HTML. [#400](https://github.com/simplepie/simplepie/pull/400)
|
||||
* Added `SimplePie_Exception` for internally reporting errors. Also, use this to show an error when trying to load the class instead of causing a failure. [#241](https://github.com/simplepie/simplepie/pull/241)
|
||||
* Added sanitization of the `</html>` and `</body>` tags. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added support for media thumbnails through `SimplePie_Item->get_thumbnail()`. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added the `feed_url` to a returned error message. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Added cache purging after a specified period of time when using MySQL cache. [#329](https://github.com/simplepie/simplepie/pull/329)
|
||||
* Added backwards compatibility for removed `subscribe_*()` and `enable_xml_dump()` methods. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Re-added the deprecated `get/set_favicon()` methods for backwards compatibility.
|
||||
* Charsets are now compared without case sensitivity to avoid duplicates. [#352](https://github.com/simplepie/simplepie/pull/352)
|
||||
* Fixed encoding of ampersands in `SimplePie->subscribe_url()`. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* The feed URL is now updated based on the URL returned by cURL. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Explicitly use UTF-8 in `SimplePie_Misc->get_element()` and `Simple_ie_Misc->element_implode()`. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Improved support, feed and authorship discovery, and parsing for microformats. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* `rss:pubDate` is now used over `atom:updated` when determining the posting date. [#288](https://github.com/simplepie/simplepie/pull/288)
|
||||
* Simplified the use of `mtime()` and `touch()`. [#403](https://github.com/simplepie/simplepie/pull/403)
|
||||
* All items are now forced to have a timestamp. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Fixed typo in the date parser that incorrectly identified September as month 8. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Fixed backwards compatibility with cache subclasses. [#243](https://github.com/simplepie/simplepie/pull/243)
|
||||
* Fixed a bug where the updated date was not fetched correctly. [#239](https://github.com/simplepie/simplepie/pull/239)
|
||||
* Fixed the datatype for `items.data` to be more appropriate in when using MySQL cache. [#302](https://github.com/simplepie/simplepie/pull/302)
|
||||
* Fixed cURL not failing when the server returns an error. [#425](https://github.com/simplepie/simplepie/pull/425)
|
||||
* Fixed an error caused when trying to instantiate a `SimplePie_File` object with a bad URI. [#272](https://github.com/simplepie/simplepie/pull/272)
|
||||
* Fixed a PHP notice that occurs when a date starts with `(`. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Fixed uninitialized string offeset PHP notices. [#353](https://github.com/simplepie/simplepie/pull/353)
|
||||
* Fixed call to non-existent property in Memcache. [#311](https://github.com/simplepie/simplepie/pull/311)
|
||||
* Fixed a bug where MySQL statements were not being passed thorugh `prepare()`. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Fixed an instance where an error message in `SimplePie` was not being triggered correctly. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Fixed a bug with Russian feeds. [#348](https://github.com/simplepie/simplepie/pull/348)
|
||||
* Fixed an issue with memory leaks. [#287](https://github.com/simplepie/simplepie/pull/287)
|
||||
* Fixed use of `DOMElement` as array. [#315](https://github.com/simplepie/simplepie/pull/315)
|
||||
* Improved the error message when a feed cannot be found. [#348](https://github.com/simplepie/simplepie/pull/348)
|
|
@ -1,4 +1,4 @@
|
|||
Copyright (c) 2004-2007, Ryan Parman and Geoffrey Sneddon.
|
||||
Copyright (c) 2004-2007, Ryan Parman and Sam Sneddon.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
|
|
@ -11,9 +11,7 @@ compatibility and standards compliance][what_is].
|
|||
|
||||
Requirements
|
||||
------------
|
||||
* PHP 5.3.0+ (5.3.6+ recommended since SimplePie 1.4.2)
|
||||
* Support for PHP 5.2 stopped in branch `one-dot-three`
|
||||
* Support for PHP 4 stopped in branch `one-dot-two`
|
||||
* PHP 5.6+ (Required since SimplePie 1.5.3)
|
||||
* libxml2 (certain 2.7.x releases are too buggy for words, and will crash)
|
||||
* One of iconv, mbstring or intl extensions
|
||||
* cURL or fsockopen()
|
||||
|
@ -89,14 +87,14 @@ Authors and contributors
|
|||
### Alumni
|
||||
* [Ryan McCue][] (developer, support)
|
||||
* [Ryan Parman][] (Creator, developer, evangelism, support)
|
||||
* [Geoffrey Sneddon][] (Lead developer)
|
||||
* [Sam Sneddon][] (Lead developer)
|
||||
* [Michael Shipley][] (Submitter of patches, support)
|
||||
* [Steve Minutillo][] (Submitter of patches)
|
||||
|
||||
[Malcolm Blaney]: https://unicyclic.com/mal
|
||||
[Ryan McCue]: http://ryanmccue.info
|
||||
[Ryan Parman]: http://ryanparman.com
|
||||
[Geoffrey Sneddon]: http://gsnedders.com
|
||||
[Sam Sneddon]: https://gsnedders.com
|
||||
[Michael Shipley]: http://michaelpshipley.com
|
||||
[Steve Minutillo]: http://minutillo.com/steve/
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -12,8 +12,8 @@
|
|||
"role": "Creator, alumnus developer"
|
||||
},
|
||||
{
|
||||
"name": "Geoffrey Sneddon",
|
||||
"homepage": "http://gsnedders.com/",
|
||||
"name": "Sam Sneddon",
|
||||
"homepage": "https://gsnedders.com/",
|
||||
"role": "Alumnus developer"
|
||||
},
|
||||
{
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2017, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2017, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,10 +33,10 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @version 1.5.3
|
||||
* @copyright 2004-2017 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @version 1.5.5
|
||||
* @copyright 2004-2017 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
@ -50,7 +50,7 @@ define('SIMPLEPIE_NAME', 'SimplePie');
|
|||
/**
|
||||
* SimplePie Version
|
||||
*/
|
||||
define('SIMPLEPIE_VERSION', '1.5.3');
|
||||
define('SIMPLEPIE_VERSION', '1.5.5');
|
||||
|
||||
/**
|
||||
* SimplePie Build
|
||||
|
@ -665,9 +665,9 @@ class SimplePie
|
|||
*/
|
||||
public function __construct()
|
||||
{
|
||||
if (version_compare(PHP_VERSION, '5.3', '<'))
|
||||
if (version_compare(PHP_VERSION, '5.6', '<'))
|
||||
{
|
||||
trigger_error('Please upgrade to PHP 5.3 or newer.');
|
||||
trigger_error('Please upgrade to PHP 5.6 or newer.');
|
||||
die();
|
||||
}
|
||||
|
||||
|
@ -706,7 +706,7 @@ class SimplePie
|
|||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
if ((version_compare(PHP_VERSION, '5.3', '<') || !gc_enabled()) && !ini_get('zend.ze1_compatibility_mode'))
|
||||
if (!gc_enabled())
|
||||
{
|
||||
if (!empty($this->data['items']))
|
||||
{
|
||||
|
@ -1251,8 +1251,8 @@ class SimplePie
|
|||
/**
|
||||
* Set the handler to enable the display of cached images.
|
||||
*
|
||||
* @param str $page Web-accessible path to the handler_image.php file.
|
||||
* @param str $qs The query string that the value should be passed to.
|
||||
* @param string $page Web-accessible path to the handler_image.php file.
|
||||
* @param string $qs The query string that the value should be passed to.
|
||||
*/
|
||||
public function set_image_handler($page = false, $qs = 'i')
|
||||
{
|
||||
|
@ -1373,7 +1373,8 @@ class SimplePie
|
|||
// Decide whether to enable caching
|
||||
if ($this->cache && $parsed_feed_url['scheme'] !== '')
|
||||
{
|
||||
$cache = $this->registry->call('Cache', 'get_handler', array($this->cache_location, call_user_func($this->cache_name_function, $this->feed_url), 'spc'));
|
||||
$url = $this->feed_url . ($this->force_feed ? '#force_feed' : '');
|
||||
$cache = $this->registry->call('Cache', 'get_handler', array($this->cache_location, call_user_func($this->cache_name_function, $url), 'spc'));
|
||||
}
|
||||
|
||||
// Fetch the data via SimplePie_File into $this->raw_data
|
||||
|
@ -1712,8 +1713,8 @@ class SimplePie
|
|||
}
|
||||
$cache = $this->registry->call('Cache', 'get_handler', array($this->cache_location, call_user_func($this->cache_name_function, $file->url), 'spc'));
|
||||
}
|
||||
$this->feed_url = $file->url;
|
||||
}
|
||||
$this->feed_url = $file->url;
|
||||
$locate = null;
|
||||
}
|
||||
|
||||
|
@ -1911,7 +1912,8 @@ class SimplePie
|
|||
*
|
||||
* When the 'permanent' mode is disabled (default),
|
||||
* may or may not be different from the URL passed to {@see set_feed_url()},
|
||||
* depending on whether auto-discovery was used.
|
||||
* depending on whether auto-discovery was used, and whether there were
|
||||
* any redirects along the way.
|
||||
*
|
||||
* @since Preview Release (previously called `get_feed_url()` since SimplePie 0.8.)
|
||||
* @todo Support <itunes:new-feed-url>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
@ -109,7 +109,7 @@ class SimplePie_File
|
|||
curl_setopt($fp, CURLOPT_REFERER, $url);
|
||||
curl_setopt($fp, CURLOPT_USERAGENT, $useragent);
|
||||
curl_setopt($fp, CURLOPT_HTTPHEADER, $headers2);
|
||||
if (!ini_get('open_basedir') && !ini_get('safe_mode') && version_compare(SimplePie_Misc::get_curl_version(), '7.15.2', '>='))
|
||||
if (!ini_get('open_basedir') && version_compare(SimplePie_Misc::get_curl_version(), '7.15.2', '>='))
|
||||
{
|
||||
curl_setopt($fp, CURLOPT_FOLLOWLOCATION, 1);
|
||||
curl_setopt($fp, CURLOPT_MAXREDIRS, $redirects);
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
@ -46,10 +46,10 @@
|
|||
*
|
||||
* @package SimplePie
|
||||
* @subpackage HTTP
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Steve Minutillo
|
||||
* @author Ryan McCue
|
||||
* @copyright 2007-2012 Geoffrey Sneddon, Steve Minutillo, Ryan McCue
|
||||
* @copyright 2007-2012 Sam Sneddon, Steve Minutillo, Ryan McCue
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php
|
||||
*/
|
||||
class SimplePie_IRI
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
@ -121,7 +121,7 @@ class SimplePie_Item
|
|||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
if ((version_compare(PHP_VERSION, '5.3', '<') || !gc_enabled()) && !ini_get('zend.ze1_compatibility_mode'))
|
||||
if (!gc_enabled())
|
||||
{
|
||||
unset($this->feed);
|
||||
}
|
||||
|
@ -958,7 +958,7 @@ class SimplePie_Item
|
|||
public function get_link($key = 0, $rel = 'alternate')
|
||||
{
|
||||
$links = $this->get_links($rel);
|
||||
if ($links[$key] !== null)
|
||||
if ($links && $links[$key] !== null)
|
||||
{
|
||||
return $links[$key];
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
@ -53,7 +53,7 @@
|
|||
* @author Alexander Merz <alexander.merz@web.de>
|
||||
* @author elfrink at introweb dot nl
|
||||
* @author Josh Peck <jmp at joshpeck dot org>
|
||||
* @author Geoffrey Sneddon <geoffers@gmail.com>
|
||||
* @author Sam Sneddon <geoffers@gmail.com>
|
||||
*/
|
||||
class SimplePie_Net_IPv6
|
||||
{
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
@ -98,12 +98,20 @@ class SimplePie_Parse_Date
|
|||
'dimanche' => 7,
|
||||
// German
|
||||
'montag' => 1,
|
||||
'mo' => 1,
|
||||
'dienstag' => 2,
|
||||
'di' => 2,
|
||||
'mittwoch' => 3,
|
||||
'mi' => 3,
|
||||
'donnerstag' => 4,
|
||||
'do' => 4,
|
||||
'freitag' => 5,
|
||||
'fr' => 5,
|
||||
'samstag' => 6,
|
||||
'sa' => 6,
|
||||
'sonnabend' => 6,
|
||||
// AFAIK no short form for sonnabend
|
||||
'so' => 7,
|
||||
'sonntag' => 7,
|
||||
// Italian
|
||||
'lunedì' => 1,
|
||||
|
@ -215,17 +223,28 @@ class SimplePie_Parse_Date
|
|||
'décembre' => 12,
|
||||
// German
|
||||
'januar' => 1,
|
||||
'jan' => 1,
|
||||
'februar' => 2,
|
||||
'feb' => 2,
|
||||
'märz' => 3,
|
||||
'mär' => 3,
|
||||
'april' => 4,
|
||||
'mai' => 5,
|
||||
'apr' => 4,
|
||||
'mai' => 5, // no short form for may
|
||||
'juni' => 6,
|
||||
'jun' => 6,
|
||||
'juli' => 7,
|
||||
'jul' => 7,
|
||||
'august' => 8,
|
||||
'aug' => 8,
|
||||
'september' => 9,
|
||||
'sep' => 9,
|
||||
'oktober' => 10,
|
||||
'okt' => 10,
|
||||
'november' => 11,
|
||||
'nov' => 11,
|
||||
'dezember' => 12,
|
||||
'dez' => 12,
|
||||
// Italian
|
||||
'gennaio' => 1,
|
||||
'febbraio' => 2,
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
@ -365,14 +365,7 @@ class SimplePie_Sanitize
|
|||
// Get content node
|
||||
$div = $document->getElementsByTagName('body')->item(0)->firstChild;
|
||||
// Finally, convert to a HTML string
|
||||
if (version_compare(PHP_VERSION, '5.3.6', '>='))
|
||||
{
|
||||
$data = trim($document->saveHTML($div));
|
||||
}
|
||||
else
|
||||
{
|
||||
$data = trim($document->saveXML($div));
|
||||
}
|
||||
$data = trim($document->saveHTML($div));
|
||||
|
||||
if ($this->remove_div)
|
||||
{
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* A PHP-Based RSS and Atom Feed Framework.
|
||||
* Takes the hard work out of managing a complete RSS/Atom solution.
|
||||
*
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
|
||||
* Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
|
@ -33,9 +33,9 @@
|
|||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @package SimplePie
|
||||
* @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
|
||||
* @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
|
||||
* @author Ryan Parman
|
||||
* @author Geoffrey Sneddon
|
||||
* @author Sam Sneddon
|
||||
* @author Ryan McCue
|
||||
* @link http://simplepie.org/ SimplePie
|
||||
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
|
||||
|
|
|
@ -10,7 +10,7 @@ It takes care of
|
|||
- **colored output**
|
||||
- **optional PSR3 compatibility**
|
||||
|
||||
It is lightweight and has **no 3rd party dependencies**.
|
||||
It is lightweight and has **no 3rd party dependencies**. Note: this is for non-interactive scripts only. It has no readline or similar support.
|
||||
|
||||
[![Build Status](https://travis-ci.org/splitbrain/php-cli.svg)](https://travis-ci.org/splitbrain/php-cli)
|
||||
|
||||
|
@ -155,4 +155,4 @@ Messages from `warning` level onwards are printed to `STDERR` all below are prin
|
|||
|
||||
The default log level of your script can be set by overwriting the `$logdefault` member.
|
||||
|
||||
See `example/logging.php` for an example.
|
||||
See `example/logging.php` for an example.
|
||||
|
|
|
@ -21,7 +21,7 @@ abstract class CLI
|
|||
|
||||
/** @var array PSR-3 compatible loglevels and their prefix, color, output channel */
|
||||
protected $loglevel = array(
|
||||
'debug' => array('', Colors::C_LIGHTGRAY, STDOUT),
|
||||
'debug' => array('', Colors::C_RESET, STDOUT),
|
||||
'info' => array('ℹ ', Colors::C_CYAN, STDOUT),
|
||||
'notice' => array('☛ ', Colors::C_CYAN, STDOUT),
|
||||
'success' => array('✓ ', Colors::C_GREEN, STDOUT),
|
||||
|
@ -108,7 +108,7 @@ abstract class CLI
|
|||
{
|
||||
$this->options->registerOption(
|
||||
'help',
|
||||
'Display this help screen and exit immeadiately.',
|
||||
'Display this help screen and exit immediately.',
|
||||
'h'
|
||||
);
|
||||
$this->options->registerOption(
|
||||
|
|
|
@ -58,6 +58,14 @@ class Options
|
|||
|
||||
$this->options = array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the bin value
|
||||
*/
|
||||
public function getBin()
|
||||
{
|
||||
return $this->bin;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the help text for the tool itself
|
||||
|
|
|
@ -273,7 +273,12 @@ class TableFormatter
|
|||
if (function_exists('mb_substr')) {
|
||||
return mb_substr($string, $start, $length);
|
||||
} else {
|
||||
return substr($string, $start, $length);
|
||||
// mb_substr() treats $length differently than substr()
|
||||
if ($length) {
|
||||
return substr($string, $start, $length);
|
||||
} else {
|
||||
return substr($string, $start);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue