1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-09-14 10:02:07 +02:00

Compare commits

..

71 Commits

Author SHA1 Message Date
Joas Schilling
0d349a82ca Merge pull request #3700 from Nicofuma/ticket/13823
[ticket/13823] Change diff options while packaging to not ignore all whitespaces
2015-06-10 22:22:52 +02:00
Tristan Darricau
cdf580ee37 [ticket/13823] Change diff options while packaging to not ignore all whitespaces
Removed:
    -w, --ignore-all-space       Ignore white space when comparing lines.

Added:
    -Z, --ignore-trailing-space  Ignore white space at line end.
    -b, --ignore-space-change    Ignore changes in the amount of white space.

PHPBB3-13823
2015-06-10 14:15:10 +02:00
Marc Alexander
88d16b47a4 Merge pull request #3697 from Elsensee/ticket/13833-30x
[ticket/13833] Prevent flooding if type=submit doesn't exist
2015-06-08 17:52:31 +02:00
Oliver Schramm
2c6369c5d9 [ticket/13833] Prevent flooding if type=submit doesn't exist
PHPBB3-13833
2015-06-08 17:01:52 +02:00
Andreas Fischer
fedd0ae7f3 Merge pull request #3639 from marc1706/ticket/13875
[ticket/13875] Ignore cache, ext, and store folder in lint test

* marc1706/ticket/13875:
  [ticket/13875] Ignore cache, ext, and store folder in lint test
2015-05-29 22:31:41 +02:00
Marc Alexander
ba205a6bce [ticket/13875] Ignore cache, ext, and store folder in lint test
PHPBB3-13875
2015-05-28 13:35:32 +02:00
Andreas Fischer
52aafb4dea Merge branch 'prep-release-3.0.14' into 3.0.x
* prep-release-3.0.14:
  [prep-release-3.0.14] Add security relevant changes to CHANGELOG.html.
  [prep-release-3.0.14] Bump version numbers for 3.0.14 release.

Conflicts:
	build/build.xml
	phpBB/includes/constants.php
	phpBB/install/database_update.php
	phpBB/install/schemas/schema_data.sql
2015-05-03 16:41:58 +02:00
Andreas Fischer
11242dd07d [prep-release-3.0.14] Add security relevant changes to CHANGELOG.html. 2015-05-03 16:22:28 +02:00
Andreas Fischer
5382552fc8 [prep-release-3.0.14] Bump version numbers for 3.0.14 release. 2015-05-03 14:40:50 +02:00
Tristan Darricau
9c320ccdce Merge pull request #3575 from marc1706/ticket/13792
[ticket/13792] Use hhvm instead of manually installing nightlys for now
2015-05-02 11:45:05 +02:00
Marc Alexander
7f820ee962 [ticket/13792] Use hhvm instead of manually installing nightlys for now
Nightly builds are currently not supported because packages for precise
no longer exist and travis is still running on it.

PHPBB3-13792
2015-05-01 15:45:40 +02:00
Andreas Fischer
2fb7ef2668 Merge branch 'prep-release-3.0.14' into 3.0.x
* prep-release-3.0.14:
  [ticket/security-180] Add tests for redirecting to main URL
  [ticket/security-180] Always fail when redirecting to an insecure URL
  [ticket/security-180] Make sure that redirect goes to full URL plus slash
  [ticket/security-180] Check if redirect URL contains board URL
2015-04-28 21:55:15 +02:00
Andreas Fischer
1a3350619f Merge remote-tracking branch 'phpbb-security/ticket/security-180' into prep-release-3.0.14
* phpbb-security/ticket/security-180:
  [ticket/security-180] Add tests for redirecting to main URL
  [ticket/security-180] Always fail when redirecting to an insecure URL
  [ticket/security-180] Make sure that redirect goes to full URL plus slash
  [ticket/security-180] Check if redirect URL contains board URL
2015-04-28 21:54:50 +02:00
Andreas Fischer
6d8df7332c [3.0.x] Increment version number to 3.0.15-dev. 2015-04-28 20:40:20 +02:00
Andreas Fischer
d833f29069 [3.0.x] Add changelog for 3.0.14 release. 2015-04-28 18:57:03 +02:00
Andreas Fischer
ce74a0bd6c [3.0.x] Bump version numbers for 3.0.14-RC1 release. 2015-04-27 23:22:44 +02:00
Andreas Fischer
cd6c0427fb [3.0.x] Bumping version numbers to final for 3.0.14 releases. 2015-04-27 23:13:56 +02:00
Andreas Fischer
4d63032024 Merge pull request #3549 from bantu/ticket/13765
[ticket/13765] Verify SERVER_PROTOCOL has the expected format before using it.

* bantu/ticket/13765:
  [ticket/13765] Verify SERVER_PROTOCOL has the expected format before using it.
2015-04-25 18:10:45 +02:00
Joas Schilling
463c62df18 [ticket/13765] Verify SERVER_PROTOCOL has the expected format before using it.
PHPBB3-13765
2015-04-25 17:22:10 +02:00
Marc Alexander
18fc621d73 [ticket/security-180] Add tests for redirecting to main URL
SECURITY-180
2015-04-23 15:27:30 +02:00
Joas Schilling
ee658bfe7b [ticket/security-180] Always fail when redirecting to an insecure URL
SECURITY-180
2015-04-11 17:08:28 +02:00
Marc Alexander
bca1b96b2e [ticket/security-180] Make sure that redirect goes to full URL plus slash
SECURITY-180
2015-04-11 16:41:20 +02:00
Marc Alexander
eed355b798 [ticket/security-180] Check if redirect URL contains board URL
SECURITY-180
2015-04-10 18:10:32 +02:00
Joas Schilling
35d2467c94 Merge pull request #3512 from bantu/ticket/13738
[ticket/13738] Use new branch names in sami-all.conf.php.
2015-04-03 18:41:41 +02:00
Andreas Fischer
d6d9ff51b2 [ticket/13738] Use new branch names in sami-all.conf.php.
PHPBB3-13738
2015-04-02 12:30:39 +02:00
Nicofuma
b9db47e3f5 Merge pull request #3359 from marc1706/ticket/13568
[ticket/13568] Validate imagick path as readable absolute path

closes #3359
2015-03-29 19:41:13 +02:00
Andreas Fischer
1efbb5b3bb Merge pull request #3493 from prototech/ticket/13555
[ticket/13555] Render poll options separately when previewing.

* prototech/ticket/13555:
  [ticket/13555] Render poll options separately when previewing.
2015-03-26 11:15:36 +01:00
Oliver Schramm
84d77d6cd5 Merge pull request #3505 from Nicofuma/ticket/13723
[ticket/13723] Add Elsensee to authors list
2015-03-25 21:44:09 +01:00
Nicofuma
44540b6112 [ticket/13723] Add Elsensee to authors list
PHPBB3-13723
2015-03-25 21:31:50 +01:00
JoshyPHP
1df97c205d [ticket/13555] Render poll options separately when previewing.
This prevents an option from being split into two when a line break is present
inside of it.

PHPBB3-13555
2015-03-19 15:32:31 -07:00
Joas Schilling
62973faf4b Merge pull request #3443 from naderman/ticket/13617
[ticket/13617] Enforce column size limit for session_forum_id
2015-02-27 22:43:32 +01:00
Nils Adermann
6f3f6282d1 [ticket/13617] Enforce column size limit for session_forum_id
PHPBB3-13617
2015-02-25 16:20:50 +01:00
Andreas Fischer
3db7ac0aad Merge pull request #3422 from VSEphpbb/ticket/13634-3.0.x
[ticket/13634] Update branch names on README

* VSEphpbb/ticket/13634-3.0.x:
  [ticket/13634] Update links to travis build icons
  [ticket/13634] Update branch names on README
2015-02-19 19:27:14 +01:00
Matt Friedman
bbf4bcc986 [ticket/13634] Update links to travis build icons
PHPBB3-13634
2015-02-18 08:42:14 -08:00
Matt Friedman
03f9c69e60 [ticket/13634] Update branch names on README
PHPBB3-13634
2015-02-18 08:37:36 -08:00
Marc Alexander
877774a296 Merge pull request #3393 from bantu/ticket/13599
[ticket/13599] Remove Travis CI PHP 5.2 environment. No longer supported.
2015-02-13 12:02:25 +01:00
Andreas Fischer
0a775e0433 [ticket/13599] Remove Travis CI PHP 5.2 environment. No longer supported.
PHPBB3-13599
2015-02-12 22:12:32 +01:00
Marc Alexander
7c5d872344 [ticket/13568] Also check if absolute_path_writable is writable
PHPBB3-13568
2015-02-06 10:15:36 +01:00
Andreas Fischer
2787e799e1 Merge pull request #3365 from marc1706/ticket/13348-olympus
[ticket/13348] Use close method to free query result handle

* marc1706/ticket/13348-olympus:
  [ticket/13348] Remove unnecessary global $cache
  [ticket/13348] Use close method to free query result handle
2015-02-03 20:36:27 +01:00
Marc Alexander
4e06ab16f0 [ticket/13348] Remove unnecessary global $cache
$cache is not used in the method get_item().

PHPBB3-13348
2015-02-03 18:24:16 +01:00
Marc Alexander
1f2cb69c8a [ticket/13348] Use close method to free query result handle
PHPBB3-13348
2015-02-03 18:23:13 +01:00
Marc Alexander
a3be531020 [ticket/13568] Use correct data provider on windows
PHPBB3-13568
2015-02-03 16:34:41 +01:00
Andreas Fischer
e86b7ce562 Merge pull request #3363 from Nicofuma/ticket/13572
[ticket/13572] Update composer to version 1.0.0-alpha9

* Nicofuma/ticket/13572:
  [ticket/13572] Update composer to version 1.0.0-alpha9
2015-02-03 10:30:02 +01:00
Nicofuma
f4f983c0f6 [ticket/13572] Update composer to version 1.0.0-alpha9
PHPBB3-13572
2015-02-03 10:25:39 +01:00
Marc Alexander
ffe0e46e82 [ticket/13568] Add imagick tests for windows
PHPBB3-13568
2015-02-02 20:39:58 +01:00
Marc Alexander
d50cec998c [ticket/13568] Correctly check rpath and rwpath validation options
PHPBB3-13568
2015-02-02 18:44:48 +01:00
Marc Alexander
b53fd867be [ticket/13568] Add more test cases for imagick path
PHPBB3-13568
2015-02-02 18:33:53 +01:00
Marc Alexander
a93df0e511 [ticket/13568] Use more descriptive validation names and merge with path block
PHPBB3-13568
2015-02-02 18:30:05 +01:00
Marc Alexander
99574cf5e5 [ticket/13568] Add functional test for imagick path setting
PHPBB3-13568
2015-02-02 16:11:00 +01:00
Marc Alexander
19421fcdef [ticket/13568] Validate imagick path as readable absolute path
PHPBB3-13568
2015-02-02 15:59:52 +01:00
Andreas Fischer
7273591560 Merge branch 'prep-release-3.0.13' into develop-olympus
* prep-release-3.0.13:
  [prep-release-3.0.13] Correct changelog link to 3.0.13 changes.
  [prep-release-3.0.13] Also update version in references to files.
  [prep-release-3.0.13] Add changelog for 3.0.13-PL1 release.
  [prep-release-3.0.13] Get rid of roman numbers in CHANGELOG.html.
  [prep-release-3.0.13] Bump version numbers for 3.0.13-PL1 release.

Conflicts:
	build/build.xml
	phpBB/includes/constants.php
	phpBB/install/database_update.php
	phpBB/install/schemas/schema_data.sql
2015-01-30 13:40:44 +01:00
Andreas Fischer
5f237a0426 [prep-release-3.0.13] Correct changelog link to 3.0.13 changes. 2015-01-30 01:32:34 +01:00
Andreas Fischer
1e94b0ae71 [prep-release-3.0.13] Also update version in references to files. 2015-01-29 23:32:05 +01:00
Andreas Fischer
5fea945b5b [prep-release-3.0.13] Add changelog for 3.0.13-PL1 release. 2015-01-29 23:27:12 +01:00
Andreas Fischer
208923563e [prep-release-3.0.13] Get rid of roman numbers in CHANGELOG.html. 2015-01-29 23:16:34 +01:00
Andreas Fischer
40e676ad03 [prep-release-3.0.13] Bump version numbers for 3.0.13-PL1 release. 2015-01-29 18:17:29 +01:00
Dhruv
cc210b1842 Merge remote-tracking branch 'upstream/prep-release-3.0.13' into develop-olympus 2015-01-29 11:51:33 +05:30
Dhruv Goel
36f8fb2b37 Merge pull request #3347 from bantu/ticket/13554
[ticket/13554] Show feature release upgrades in blue rather than red.
2015-01-29 11:47:37 +05:30
Andreas Fischer
6f5524de26 Merge branch 'prep-release-3.0.13' into develop-olympus
* prep-release-3.0.13:
  [ticket/13549] Do not exit when ORIG_PATH_INFO just contains SCRIPT_NAME.
2015-01-29 00:08:23 +01:00
Andreas Fischer
872caf805c Merge pull request #3348 from bantu/ticket/13549
[ticket/13549] Do not exit when ORIG_PATH_INFO just contains SCRIPT_NAME...

* bantu/ticket/13549:
  [ticket/13549] Do not exit when ORIG_PATH_INFO just contains SCRIPT_NAME.
2015-01-29 00:06:00 +01:00
Andreas Fischer
f48cc8bbe9 Merge branch 'prep-release-3.0.13' into develop-olympus
* prep-release-3.0.13:
  [ticket/12933] Handle case when * is last character of word
2015-01-29 00:03:16 +01:00
Andreas Fischer
8da3a6f117 Merge pull request #3349 from bantu/ticket/12933
[ticket/12933] Handle case when * is last character of word

* bantu/ticket/12933:
  [ticket/12933] Handle case when * is last character of word
2015-01-29 00:03:05 +01:00
Marc Alexander
7495055907 [ticket/13549] Do not exit when ORIG_PATH_INFO just contains SCRIPT_NAME.
The ORIG_PATH_INFO on IIS also contains the script name. Only use that
for killing the script after removing the script name from ORIG_PATH_INFO.

PHPBB3-13549
2015-01-28 22:07:16 +01:00
Dhruv
5eb0d422c8 [ticket/12933] Handle case when * is last character of word
PHPBB3-12933
2015-01-28 21:59:58 +01:00
Andreas Fischer
dff1ea6b85 [ticket/13554] Show feature release upgrades in blue rather than red.
PHPBB3-13554
2015-01-28 21:59:03 +01:00
Andreas Fischer
9d72463824 Merge pull request #3343 from marc1706/ticket/13414
[ticket/13414] Set Content-Length header only if status is not 304

* marc1706/ticket/13414:
  [ticket/13414] Set Content-Length header only if status is not 304
2015-01-28 19:48:42 +01:00
Marc Alexander
a9fa20bb91 [ticket/13414] Set Content-Length header only if status is not 304
PHPBB3-13414
2015-01-28 15:50:48 +01:00
Nils Adermann
ebd5aace3f Merge branch 'prep-release-3.0.13' into develop-olympus
* prep-release-3.0.13:
  [prep-release-3.0.13] Bump version numbers for 3.0.13 release
  [prep-release-3.0.13] Highlight security relevant changes

Conflicts:
	build/build.xml
	phpBB/includes/constants.php
	phpBB/install/database_update.php
	phpBB/install/schemas/schema_data.sql
2015-01-26 18:57:06 +01:00
Andreas Fischer
4c11ea97d5 Merge pull request #3339 from nickvergessen/ticket/12089
[ticket/12089] Add assert message on HTTP status code check

* nickvergessen/ticket/12089:
  [ticket/12089] Add assert message on HTTP status code check
2015-01-26 02:47:36 +01:00
Joas Schilling
ed2d080551 [ticket/12089] Add assert message on HTTP status code check
PHPBB3-12089
2015-01-25 23:06:56 +01:00
Andreas Fischer
14585fcb4f [develop-olympus] Increment version number to 3.0.14-dev. 2015-01-21 15:15:30 +01:00
40 changed files with 259 additions and 171 deletions

View File

@@ -1,6 +1,5 @@
language: php
php:
- 5.2
- 5.3.3
- 5.3
- 5.4
@@ -17,15 +16,14 @@ before_script:
- sh -c "if [ '$DB' = 'mariadb' ]; then travis/setup-mariadb.sh; fi"
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.3' -a '$DB' = 'mysql' ]; then mysql -e 'SET GLOBAL storage_engine=MyISAM;'; fi"
- sh -c "if [ '$DB' = 'mysql' -o '$DB' = 'mariadb' ]; then mysql -e 'create database IF NOT EXISTS phpbb_tests;'; fi"
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.2' ]; then travis/install-phpunit-5-2.sh; fi"
- cd phpBB
- sh -c "if [ '$TRAVIS_PHP_VERSION' != '5.2' ]; then php ../composer.phar install --dev --no-interaction --prefer-source; fi"
- php ../composer.phar install --dev --no-interaction --prefer-source
- cd ..
- sh -c "if [ `php -r "echo (int) version_compare(PHP_VERSION, '5.3.19', '>=');"` = "1" ]; then travis/setup-webserver.sh; fi"
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.3.3' -a '$DB' = 'mysql' ]; then sudo apt-get update; sudo apt-get install -y parallel libimage-exiftool-perl; fi"
script:
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.2' ]; then php -d include_path='.:phpunit' phpunit/phpunit.php --configuration travis/phpunit-$DB-5-2-travis.xml; else phpBB/vendor/bin/phpunit --configuration travis/phpunit-$DB-travis.xml; fi"
- phpBB/vendor/bin/phpunit --configuration travis/phpunit-$DB-travis.xml
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.3.3' -a '$DB' = 'mysql' -a '$TRAVIS_PULL_REQUEST' != 'false' ]; then git-tools/commit-msg-hook-range.sh origin/$TRAVIS_BRANCH..FETCH_HEAD; fi"
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.3.3' -a '$DB' = 'mysql' ]; then find . -type f -not -path './phpBB/vendor/*' -iregex '.*\.\(gif\|jpg\|jpeg\|png\)$' | parallel --gnu --keep-order 'phpBB/develop/strip_icc_profiles.sh {}' || exit 1; fi"

View File

@@ -19,9 +19,9 @@ Find support and lots more on [phpBB.com](http://www.phpbb.com)! Discuss the dev
We have unit and functional tests in order to prevent regressions. You can view the bamboo continuous integration [here](http://bamboo.phpbb.com) or check our travis build below:
* develop [![Build Status](https://secure.travis-ci.org/phpbb/phpbb.png?branch=develop)](http://travis-ci.org/phpbb/phpbb)
* develop-ascraeus [![Build Status](https://secure.travis-ci.org/phpbb/phpbb.png?branch=develop-ascraeus)](http://travis-ci.org/phpbb/phpbb)
* develop-olympus [![Build Status](https://secure.travis-ci.org/phpbb/phpbb.png?branch=develop-olympus)](http://travis-ci.org/phpbb/phpbb)
* [![Build Status](https://secure.travis-ci.org/phpbb/phpbb.png?branch=master)](http://travis-ci.org/phpbb/phpbb) **master** - Latest development version
* [![Build Status](https://secure.travis-ci.org/phpbb/phpbb.png?branch=3.1.x)](http://travis-ci.org/phpbb/phpbb) **3.1.x** - Development of version 3.1.x
* [![Build Status](https://secure.travis-ci.org/phpbb/phpbb.png?branch=3.0.x)](http://travis-ci.org/phpbb/phpbb) **3.0.x** - Development of version 3.0.x
## LICENSE

View File

@@ -2,9 +2,9 @@
<project name="phpBB" description="The phpBB forum software" default="all" basedir="../">
<!-- a few settings for the build -->
<property name="newversion" value="3.0.13" />
<property name="prevversion" value="3.0.13-RC1" />
<property name="olderversions" value="3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6, 3.0.7, 3.0.7-PL1, 3.0.8, 3.0.9, 3.0.10, 3.0.11, 3.0.12" />
<property name="newversion" value="3.0.15-dev" />
<property name="prevversion" value="3.0.14" />
<property name="olderversions" value="3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6, 3.0.7, 3.0.7-PL1, 3.0.8, 3.0.9, 3.0.10, 3.0.11, 3.0.12, 3.0.13, 3.0.13-PL1" />
<!-- no configuration should be needed beyond this point -->
<property name="oldversions" value="${olderversions}, ${prevversion}" />
@@ -105,7 +105,7 @@
<property name="dir" value="build/old_versions/release-${version}" />
</phingcall>
<exec dir="build/old_versions" command="LC_ALL=C diff -crNEBwd release-${version} release-${newversion} >
<exec dir="build/old_versions" command="LC_ALL=C diff -crNEBZbd release-${version} release-${newversion} >
../new_version/patches/phpBB-${version}_to_${newversion}.patch" escape="false" />
</target>
@@ -132,13 +132,13 @@
<target name="package" depends="clean,prepare,prepare-new-version,old-version-diffs">
<exec dir="build" command="php -f package.php '${versions}' > logs/package.log" escape="false" />
<exec dir="build" escape="false"
command="diff -crNEBwd old_versions/release-${prevversion}/language new_version/phpBB3/language >
command="LC_ALL=C diff -crNEBZbd old_versions/release-${prevversion}/language new_version/phpBB3/language >
save/phpbb-${prevversion}_to_${newversion}_language.patch" />
<exec dir="build" escape="false"
command="diff -crNEBwd old_versions/release-${prevversion}/styles/prosilver new_version/phpBB3/styles/prosilver >
command="LC_ALL=C diff -crNEBZbd old_versions/release-${prevversion}/styles/prosilver new_version/phpBB3/styles/prosilver >
save/phpbb-${prevversion}_to_${newversion}_prosilver.patch" />
<exec dir="build" escape="false"
command="diff -crNEBwd old_versions/release-${prevversion}/styles/subsilver2 new_version/phpBB3/styles/subsilver2 >
command="LC_ALL=C diff -crNEBZbd old_versions/release-${prevversion}/styles/subsilver2 new_version/phpBB3/styles/subsilver2 >
save/phpbb-${prevversion}_to_${newversion}_subsilver2.patch" />
<exec dir="build" escape="false"

View File

@@ -18,11 +18,11 @@ class build_package
// -r - compare recursive
// -N - Treat missing files as empty
// -E - Ignore tab expansions
// not used: -b - Ignore space changes.
// -w - Ignore all whitespace
// -Z - Ignore white space at line end.
// -b - Ignore changes in the amount of white space.
// -B - Ignore blank lines
// -d - Try to find smaller set of changes
var $diff_options = '-crNEBwd';
var $diff_options = '-crNEBZbd';
var $diff_options_long = '-x images -crNEB'; // -x fonts -x imageset //imageset not used here, because it includes the imageset.cfg file. ;)
var $verbose = false;

View File

@@ -18,13 +18,13 @@ $config['versions'] = Sami\Version\GitVersionCollection::create(__DIR__ . '/../'
This would be nice, but currently causes various problems that need
debugging.
->addFromTags('release-3.0.*')
->add('develop-olympus', '3.0-next (olympus)')
->add('3.0.x', '3.0-next (olympus)')
->addFromTags('release-3.1.*')
->add('develop-ascraeus', '3.1-next (ascraeus)')
->add('develop')
->add('3.1.x', '3.1-next (ascraeus)')
->add('master')
*/
->add('develop-olympus')
->add('develop-ascraeus')
->add('3.0.x')
->add('3.1.x')
;
return new Sami\Sami($iterator, $config);

Binary file not shown.

View File

@@ -524,6 +524,9 @@ function validate_config_vars($config_vars, &$cfg_array, &$error)
$cfg_array[$config_name] = trim($destination);
// Absolute file path
case 'absolute_path':
case 'absolute_path_writable':
// Path being relative (still prefixed by phpbb_root_path), but with the ability to escape the root dir...
case 'path':
case 'wpath':
@@ -542,20 +545,22 @@ function validate_config_vars($config_vars, &$cfg_array, &$error)
break;
}
if (!file_exists($phpbb_root_path . $cfg_array[$config_name]))
$path = in_array($config_definition['validate'], array('wpath', 'path', 'rpath', 'rwpath')) ? $phpbb_root_path . $cfg_array[$config_name] : $cfg_array[$config_name];
if (!file_exists($path))
{
$error[] = sprintf($user->lang['DIRECTORY_DOES_NOT_EXIST'], $cfg_array[$config_name]);
}
if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !is_dir($phpbb_root_path . $cfg_array[$config_name]))
if (file_exists($path) && !is_dir($path))
{
$error[] = sprintf($user->lang['DIRECTORY_NOT_DIR'], $cfg_array[$config_name]);
}
// Check if the path is writable
if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath')
if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath' || $config_definition['validate'] === 'absolute_path_writable')
{
if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !phpbb_is_writable($phpbb_root_path . $cfg_array[$config_name]))
if (file_exists($path) && !phpbb_is_writable($path))
{
$error[] = sprintf($user->lang['DIRECTORY_NOT_WRITABLE'], $cfg_array[$config_name]);
}

View File

@@ -19,7 +19,7 @@
<!-- ENDIF -->
<!-- IF NEXT_FEATURE_VERSION -->
<div class="errorbox">
<div class="errorbox notice">
<p>{UPGRADE_INSTRUCTIONS}</p>
</div>
<!-- ENDIF -->

View File

@@ -24,9 +24,10 @@ phpBB Lead Developer: naderman (Nils Adermann)
phpBB Developers: bantu (Andreas Fischer)
dhruv.goel92 (Dhruv Goel)
Elsensee (Oliver Schramm)
marc1706 (Marc Alexander)
nickvergessen (Joas Schilling)
nicofuma (Tristan Darricau)
Nicofuma (Tristan Darricau)
prototech (Cesar Gallegos)
Contributions by: leviatan21 (Gabriel Vazquez)

View File

@@ -52,7 +52,9 @@
<ol>
<li><a href="#changelog">Changelog</a>
<ol style="list-style-type: lower-roman;">
<ul>
<li><a href="#v3013-PL1">Changes since 3.0.13-PL1</a></li>
<li><a href="#v3013">Changes since 3.0.13</a></li>
<li><a href="#v3012">Changes since 3.0.12</a></li>
<li><a href="#v3011">Changes since 3.0.11</a></li>
<li><a href="#v3010">Changes since 3.0.10</a></li>
@@ -75,7 +77,7 @@
<li><a href="#v30rc3">Changes since RC-3</a></li>
<li><a href="#v30rc2">Changes since RC-2</a></li>
<li><a href="#v30rc1">Changes since RC-1</a></li>
</ol>
</ul>
</li>
<li><a href="#disclaimer">Copyright and disclaimer</a></li>
</ol>
@@ -94,7 +96,45 @@
<div class="content">
<a name="v3012"></a><h3>1.i. Changes since 3.0.12</h3>
<a name="v3013-PL1"></a><h3>Changes since 3.0.13-PL1</h3>
<h4>Security</h4>
<ul>
<li>[SECURITY-180] - An insufficient check allowed users of the Google Chrome browser to be redirected to external domains (e.g. on login)</li>
</ul>
<h4>Bug</h4>
<ul>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13348">PHPBB3-13348</a>] - sql_freeresult() should be called in feed base class</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13414">PHPBB3-13414</a>] - download/file.php sends Content-Length header even when issuing 304 Not Modified</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13555">PHPBB3-13555</a>] - Poll options preview rendered incorrectly by &lt;br /&gt; collision</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13568">PHPBB3-13568</a>] - Imagick path validated as relative path although ACP asks for absolute path</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13617">PHPBB3-13617</a>] - Bot session continuation with invalid f= query parameter causes SQL error</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13738">PHPBB3-13738</a>] - Sami still refers to develop-* branches</li>
</ul>
<h4>Improvement</h4>
<ul>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-12089">PHPBB3-12089</a>] - Make HTTP status code assertion failure messages more informative</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13765">PHPBB3-13765</a>] - Verify that SERVER_PROTOCOL has the expected format</li>
</ul>
<h4>Task</h4>
<ul>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11539">PHPBB3-11539</a>] - Add unit tests for several functions in functions.php</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13572">PHPBB3-13572</a>] - Upgrade composer to 1.0.0-alpha9</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13599">PHPBB3-13599</a>] - Remove PHP 5.2 Travis environment</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13634">PHPBB3-13634</a>] - Update README to show new branch names</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13723">PHPBB3-13723</a>] - Update docs/AUTHORS for 3.0.14-RC1 / 3.1.4-RC1</li>
</ul>
<a name="v3013"></a><h3>Changes since 3.0.13</h3>
<h4>Bug</h4>
<ul>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-12933">PHPBB3-12933</a>] - The search operator for partial matches does not work</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13549">PHPBB3-13549</a>] - Compare ORIG_PATH_INFO with SCRIPT_NAME for checking trailing paths</li>
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13554">PHPBB3-13554</a>] - Advertisement of feature release in red indicates a problem</li>
</ul>
<a name="v3012"></a><h3>Changes since 3.0.12</h3>
<h4>Security</h4>
<ul>
@@ -230,7 +270,7 @@
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13324">PHPBB3-13324</a>] - Composer no longer downloads sami/sami and fabpot/goutte</li>
</ul>
<a name="v3011"></a><h3>1.ii. Changes since 3.0.11</h3>
<a name="v3011"></a><h3>Changes since 3.0.11</h3>
<h4>Bug</h4>
<ul>
@@ -385,7 +425,7 @@
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11753">PHPBB3-11753</a>] - Upgrade mysql_upgrader.php schema data.</li>
</ul>
<a name="v3010"></a><h3>1.iii. Changes since 3.0.10</h3>
<a name="v3010"></a><h3>Changes since 3.0.10</h3>
<h4>Bug</h4>
<ul>
@@ -510,7 +550,7 @@
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-10909">PHPBB3-10909</a>] - Update Travis Test Configuration: Travis no longer supports PHP 5.3.2</li>
</ul>
<a name="v309"></a><h3>1.iv. Changes since 3.0.9</h3>
<a name="v309"></a><h3>Changes since 3.0.9</h3>
<h4>Bug</h4>
<ul>
@@ -646,7 +686,7 @@
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-10480">PHPBB3-10480</a>] - Automate changelog building</li>
</ul>
<a name="v308"></a><h3>1.v. Changes since 3.0.8</h3>
<a name="v308"></a><h3>Changes since 3.0.8</h3>
<h4> Bug
</h4>
@@ -1014,7 +1054,7 @@
</ul>
<a name="v307-PL1"></a><h3>1.vi. Changes since 3.0.7-PL1</h3>
<a name="v307-PL1"></a><h3>Changes since 3.0.7-PL1</h3>
<h4> Security
</h4>
<ul>
@@ -1472,13 +1512,13 @@
</ul>
<a name="v307"></a><h3>1.vii. Changes since 3.0.7</h3>
<a name="v307"></a><h3>Changes since 3.0.7</h3>
<ul>
<li>[Sec] Do not expose forum content of forums with ACL entries but no actual permission in ATOM Feeds. (Bug #58595)</li>
</ul>
<a name="v306"></a><h3>1.viii. Changes since 3.0.6</h3>
<a name="v306"></a><h3>Changes since 3.0.6</h3>
<ul>
<li>[Fix] Allow ban reason and length to be selected and copied in ACP and subsilver2 MCP. (Bug #51095)</li>
@@ -1582,7 +1622,7 @@
</ul>
<a name="v305"></a><h3>1.ix. Changes since 3.0.5</h3>
<a name="v305"></a><h3>Changes since 3.0.5</h3>
<ul>
<li>[Fix] Allow whitespaces in avatar gallery names. (Bug #44955)</li>
@@ -1804,7 +1844,7 @@
<li>[Feature] Send anonymous statistical information to phpBB on installation and update (optional).</li>
</ul>
<a name="v304"></a><h3>1.x. Changes since 3.0.4</h3>
<a name="v304"></a><h3>Changes since 3.0.4</h3>
<ul>
<li>[Fix] Delete user entry from ban list table upon user deletion (Bug #40015 - Patch by TerraFrost)</li>
@@ -1893,7 +1933,7 @@
<li>[Sec] Only use forum id supplied for posting if global announcement detected. (Reported by nickvergessen)</li>
</ul>
<a name="v303"></a><h3>1.xi. Changes since 3.0.3</h3>
<a name="v303"></a><h3>Changes since 3.0.3</h3>
<ul>
<li>[Fix] Allow mixed-case template directories to be inherited (Bug #36725)</li>
@@ -1925,7 +1965,7 @@
<li>[Sec] Ask for forum password if post within passworded forum quoted in private message. (Reported by nickvergessen)</li>
</ul>
<a name="v302"></a><h3>1.xii. Changes since 3.0.2</h3>
<a name="v302"></a><h3>Changes since 3.0.2</h3>
<ul>
<li>[Fix] Correctly set topic starter if first post in topic removed (Bug #30575 - Patch by blueray2048)</li>
@@ -2024,7 +2064,7 @@
<li>[Sec Precaution] Stricter validation of the HTTP_HOST header (Thanks to Techie-Micheal et al for pointing out possible issues in derived code)</li>
</ul>
<a name="v301"></a><h3>1.xiii. Changes since 3.0.1</h3>
<a name="v301"></a><h3>Changes since 3.0.1</h3>
<ul>
<li>[Fix] Ability to set permissions on non-mysql dbms (Bug #24955)</li>
@@ -2072,7 +2112,7 @@
<li>[Sec] Only allow urls gone through redirect() being used within login_box(). (thanks nookieman)</li>
</ul>
<a name="v300"></a><h3>1.xiv Changes since 3.0.0</h3>
<a name="v300"></a><h3>Changes since 3.0.0</h3>
<ul>
<li>[Change] Validate birthdays (Bug #15004)</li>
@@ -2143,7 +2183,7 @@
<li>[Fix] Find and display colliding usernames correctly when converting from one database to another (Bug #23925)</li>
</ul>
<a name="v30rc8"></a><h3>1.xv. Changes since 3.0.RC8</h3>
<a name="v30rc8"></a><h3>Changes since 3.0.RC8</h3>
<ul>
<li>[Fix] Cleaned usernames contain only single spaces, so &quot;a_name&quot; and &quot;a__name&quot; are treated as the same name (Bug #15634)</li>
@@ -2152,7 +2192,7 @@
<li>[Fix] Call garbage_collection() within database updater to correctly close connections (affects Oracle for example)</li>
</ul>
<a name="v30rc7"></a><h3>1.xvi. Changes since 3.0.RC7</h3>
<a name="v30rc7"></a><h3>Changes since 3.0.RC7</h3>
<ul>
<li>[Fix] Fixed MSSQL related bug in the update system</li>
@@ -2187,7 +2227,7 @@
<li>[Fix] No duplication of active topics (Bug #15474)</li>
</ul>
<a name="v30rc6"></a><h3>1.xvii. Changes since 3.0.RC6</h3>
<a name="v30rc6"></a><h3>Changes since 3.0.RC6</h3>
<ul>
<li>[Fix] Submitting language changes using acp_language (Bug #14736)</li>
@@ -2197,7 +2237,7 @@
<li>[Fix] Able to request new password (Bug #14743)</li>
</ul>
<a name="v30rc5"></a><h3>1.xviii. Changes since 3.0.RC5</h3>
<a name="v30rc5"></a><h3>Changes since 3.0.RC5</h3>
<ul>
<li>[Feature] Removing constant PHPBB_EMBEDDED in favor of using an exit_handler(); the constant was meant to achive this more or less.</li>
@@ -2260,7 +2300,7 @@
<li>[Sec] New password hashing mechanism for storing passwords (#i42)</li>
</ul>
<a name="v30rc4"></a><h3>1.xix. Changes since 3.0.RC4</h3>
<a name="v30rc4"></a><h3>Changes since 3.0.RC4</h3>
<ul>
<li>[Fix] MySQL, PostgreSQL and SQLite related database fixes (Bug #13862)</li>
@@ -2311,7 +2351,7 @@
<li>[Fix] odbc_autocommit causing existing result sets to be dropped (Bug #14182)</li>
</ul>
<a name="v30rc3"></a><h3>1.xx. Changes since 3.0.RC3</h3>
<a name="v30rc3"></a><h3>Changes since 3.0.RC3</h3>
<ul>
<li>[Fix] Fixing some subsilver2 and prosilver style issues</li>
@@ -2420,7 +2460,7 @@
</ul>
<a name="v30rc2"></a><h3>1.xxi. Changes since 3.0.RC2</h3>
<a name="v30rc2"></a><h3>Changes since 3.0.RC2</h3>
<ul>
<li>[Fix] Re-allow searching within the memberlist</li>
@@ -2466,7 +2506,7 @@
</ul>
<a name="v30rc1"></a><h3>1.xxii. Changes since 3.0.RC1</h3>
<a name="v30rc1"></a><h3>Changes since 3.0.RC1</h3>
<ul>
<li>[Fix] (X)HTML issues within the templates (Bug #11255, #11255)</li>

View File

@@ -276,7 +276,7 @@
<p>This package is meant for those wanting to only replace the files that were changed between a previous version and the latest version.</p>
<p>This package contains a number of archives, each contains the files changed from a given release to the latest version. You should select the appropriate archive for your current version, e.g. if you currently have <strong>3.0.12</strong> you should select the appropriate <code>phpBB-3.0.13-files.zip/tar.bz2</code> file.</p>
<p>This package contains a number of archives, each contains the files changed from a given release to the latest version. You should select the appropriate archive for your current version, e.g. if you currently have <strong>3.0.13</strong> you should select the appropriate <code>phpBB-3.0.14-files.zip/tar.bz2</code> file.</p>
<p>The directory structure has been preserved, enabling you (if you wish) to simply upload the uncompressed contents of the archive to the appropriate location on your server, i.e. simply overwrite the existing files with the new versions. Do not forget that if you have installed any modifications (MODs) these files will overwrite the originals, possibly destroying them in the process. You will need to re-add MODs to any affected file before uploading.</p>
@@ -288,7 +288,7 @@
<p>The patch file is one solution for those with many Modifications (MODs) or other changes and do not want to re-add them back to all the changed files. To use this you will need command line access to a standard UNIX type <strong>patch</strong> application. If you do not have access to such an application, but still want to use this update approach, we strongly recommend the <a href="#update_auto">Automatic update package</a> explained below. It is also the recommended update method.</p>
<p>A number of patch files are provided to allow you to update from previous stable releases. Select the correct patch, e.g. if your current version is <strong>3.0.12</strong>, you need the <code>phpBB-3.0.13-patch.zip/tar.bz2</code> file. Place the correct patch in the parent directory containing the phpBB core files (i.e. index.php, viewforum.php, etc.). With this done you should run the following command: <code>patch -cl -d [PHPBB DIRECTORY] -p1 &lt; [PATCH NAME]</code> (where PHPBB DIRECTORY is the directory name your phpBB Installation resides in, for example phpBB, and where PATCH NAME is the relevant filename of the selected patch file). This should complete quickly, hopefully without any HUNK FAILED comments.</p>
<p>A number of patch files are provided to allow you to update from previous stable releases. Select the correct patch, e.g. if your current version is <strong>3.0.13</strong>, you need the <code>phpBB-3.0.14-patch.zip/tar.bz2</code> file. Place the correct patch in the parent directory containing the phpBB core files (i.e. index.php, viewforum.php, etc.). With this done you should run the following command: <code>patch -cl -d [PHPBB DIRECTORY] -p1 &lt; [PATCH NAME]</code> (where PHPBB DIRECTORY is the directory name your phpBB Installation resides in, for example phpBB, and where PATCH NAME is the relevant filename of the selected patch file). This should complete quickly, hopefully without any HUNK FAILED comments.</p>
<p>If you do get failures, you should look at using the <a href="#update_files">Changed Files</a> package to replace the files which failed to patch. Please note that you will need to manually re-add any MODs to these particular files. Alternatively, if you know how, you can examine the .rej files to determine what failed where and make manual adjustments to the relevant source.</p>
@@ -298,7 +298,7 @@
<p>This update method is the recommended method for updating. This package detects changed files automatically and merges in changes if needed.</p>
<p>The automatic update package will update the board from a given version to the latest version. A number of automatic update files are available, and you should choose the one that corresponds to the version of the board that you are currently running. For example, if your current version is <strong>3.0.12</strong>, you need the <code>phpBB-3.0.12_to_3.0.13.zip/tar.bz2</code> file.</p>
<p>The automatic update package will update the board from a given version to the latest version. A number of automatic update files are available, and you should choose the one that corresponds to the version of the board that you are currently running. For example, if your current version is <strong>3.0.13</strong>, you need the <code>phpBB-3.0.13_to_3.0.14.zip/tar.bz2</code> file.</p>
<p>To perform the update, either follow the instructions from the <strong>Administration Control Panel-&gt;System</strong> Tab - this should point out that you are running an outdated version and will guide you through the update - or follow the instructions listed below.</p>

View File

@@ -509,16 +509,18 @@ function send_file_to_browser($attachment, $upload_dir, $category)
}
}
if ($size)
{
header("Content-Length: $size");
}
// Close the db connection before sending the file
$db->sql_close();
if (!set_modified_headers($attachment['filetime'], $user->browser))
{
// Send Content-Length only if set_modified_headers() does not send
// status 304 - Not Modified
if ($size)
{
header("Content-Length: $size");
}
// Try to deliver in chunks
@set_time_limit(0);

View File

@@ -464,6 +464,9 @@ class phpbb_feed_base
*/
var $separator_stats = "\xE2\x80\x94"; // &mdash;
/** @var mixed Query result handle */
var $result;
/**
* Constructor
*/
@@ -617,10 +620,9 @@ class phpbb_feed_base
function get_item()
{
global $db, $cache;
static $result;
global $db;
if (!isset($result))
if (!isset($this->result))
{
if (!$this->get_sql())
{
@@ -629,10 +631,10 @@ class phpbb_feed_base
// Query database
$sql = $db->sql_build_query('SELECT', $this->sql);
$result = $db->sql_query_limit($sql, $this->num_items);
$this->result = $db->sql_query_limit($sql, $this->num_items);
}
return $db->sql_fetchrow($result);
return $db->sql_fetchrow($this->result);
}
function user_viewprofile($row)

View File

@@ -127,7 +127,7 @@ class acp_attachments
'img_create_thumbnail' => array('lang' => 'CREATE_THUMBNAIL', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'img_max_thumb_width' => array('lang' => 'MAX_THUMB_WIDTH', 'validate' => 'int', 'type' => 'text:7:15', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),
'img_min_thumb_filesize' => array('lang' => 'MIN_THUMB_FILESIZE', 'validate' => 'int', 'type' => 'text:7:15', 'explain' => true, 'append' => ' ' . $user->lang['BYTES']),
'img_imagick' => array('lang' => 'IMAGICK_PATH', 'validate' => 'path', 'type' => 'text:20:200', 'explain' => true, 'append' => '&nbsp;&nbsp;<span>[ <a href="' . $this->u_action . '&amp;action=imgmagick">' . $user->lang['SEARCH_IMAGICK'] . '</a> ]</span>'),
'img_imagick' => array('lang' => 'IMAGICK_PATH', 'validate' => 'absolute_path', 'type' => 'text:20:200', 'explain' => true, 'append' => '&nbsp;&nbsp;<span>[ <a href="' . $this->u_action . '&amp;action=imgmagick">' . $user->lang['SEARCH_IMAGICK'] . '</a> ]</span>'),
'img_max' => array('lang' => 'MAX_IMAGE_SIZE', 'validate' => 'int', 'type' => 'dimension:3:4', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),
'img_link' => array('lang' => 'IMAGE_LINK_SIZE', 'validate' => 'int', 'type' => 'dimension:3:4', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),
)

View File

@@ -25,7 +25,7 @@ if (!defined('IN_PHPBB'))
*/
// phpBB Version
define('PHPBB_VERSION', '3.0.13');
define('PHPBB_VERSION', '3.0.15-dev');
// QA-related
// define('PHPBB_QA', 1);

View File

@@ -2492,7 +2492,7 @@ function redirect($url, $return = false, $disable_cd_check = false)
// Attention: only able to redirect within the same domain if $disable_cd_check is false (yourdomain.com -> www.yourdomain.com will not work)
if (!$disable_cd_check && $url_parts['host'] !== $user->host)
{
$url = generate_board_url();
trigger_error('Tried to redirect to potentially insecure url.', E_USER_ERROR);
}
}
else if ($url[0] == '/')
@@ -2579,6 +2579,12 @@ function redirect($url, $return = false, $disable_cd_check = false)
}
}
// Make sure we don't redirect to external URLs
if (!$disable_cd_check && strpos($url, generate_board_url(true) . '/') !== 0)
{
trigger_error('Tried to redirect to potentially insecure url.', E_USER_ERROR);
}
// Make sure no linebreaks are there... to prevent http response splitting for PHP < 4.4.2
if (strpos(urldecode($url), "\n") !== false || strpos(urldecode($url), "\r") !== false || strpos($url, ';') !== false)
{
@@ -2782,7 +2788,7 @@ function send_status_line($code, $message)
}
else
{
if (!empty($_SERVER['SERVER_PROTOCOL']))
if (!empty($_SERVER['SERVER_PROTOCOL']) && is_string($_SERVER['SERVER_PROTOCOL']) && preg_match('#^HTTP/[0-9]\.[0-9]$#', $_SERVER['SERVER_PROTOCOL']))
{
$version = $_SERVER['SERVER_PROTOCOL'];
}

View File

@@ -204,7 +204,7 @@ class fulltext_native extends search_backend
$this->search_query = $keywords;
$exact_words = array();
preg_match_all('#([^\\s+\\-|*()]+)(?:$|[\\s+\\-|()])#u', $keywords, $exact_words);
preg_match_all('#([^\\s+\\-|()]+)(?:$|[\\s+\\-|()])#u', $keywords, $exact_words);
$exact_words = $exact_words[1];
$common_ids = $words = array();

View File

@@ -121,6 +121,8 @@ class session
$script_path .= (substr($script_path, -1, 1) == '/') ? '' : '/';
$root_script_path .= (substr($root_script_path, -1, 1) == '/') ? '' : '/';
$forum_id = (isset($_REQUEST['f']) && $_REQUEST['f'] > 0 && $_REQUEST['f'] < 16777215) ? (int) $_REQUEST['f'] : 0;
$page_array += array(
'page_name' => $page_name,
'page_dir' => $page_dir,
@@ -130,7 +132,7 @@ class session
'root_script_path' => str_replace(' ', '%20', htmlspecialchars($root_script_path)),
'page' => $page,
'forum' => (isset($_REQUEST['f']) && $_REQUEST['f'] > 0) ? (int) $_REQUEST['f'] : 0,
'forum' => $forum_id,
);
return $page_array;

View File

@@ -105,7 +105,7 @@ function deregister_globals()
function phpbb_has_trailing_path($phpEx)
{
// Check if path_info is being used
if (!empty($_SERVER['PATH_INFO']) || !empty($_SERVER['ORIG_PATH_INFO']))
if (!empty($_SERVER['PATH_INFO']) || (!empty($_SERVER['ORIG_PATH_INFO']) && $_SERVER['SCRIPT_NAME'] != $_SERVER['ORIG_PATH_INFO']))
{
return true;
}
@@ -130,7 +130,7 @@ if (phpbb_has_trailing_path($phpEx))
{
$prefix = 'Status:';
}
else if (!empty($_SERVER['SERVER_PROTOCOL']))
else if (!empty($_SERVER['SERVER_PROTOCOL']) && is_string($_SERVER['SERVER_PROTOCOL']) && preg_match('#^HTTP/[0-9]\.[0-9]$#', $_SERVER['SERVER_PROTOCOL']))
{
$prefix = $_SERVER['SERVER_PROTOCOL'];
}

View File

@@ -57,7 +57,6 @@ function compose_pm($id, $mode, $action, $user_folders = array())
$address_list = array();
}
$submit = (isset($_POST['post'])) ? true : false;
$preview = (isset($_POST['preview'])) ? true : false;
$save = (isset($_POST['save'])) ? true : false;
$load = (isset($_POST['load'])) ? true : false;
@@ -71,6 +70,7 @@ function compose_pm($id, $mode, $action, $user_folders = array())
$refresh = isset($_POST['add_file']) || isset($_POST['delete_file']) || $save || $load
|| $remove_u || $remove_g || $add_to || $add_bcc;
$submit = isset($_POST['post']) && !$refresh && !$preview;
$action = ($delete && !$preview && !$refresh && $submit) ? 'delete' : $action;
$select_single = ($config['allow_mass_pm'] && $auth->acl_get('u_masspm')) ? false : true;

View File

@@ -32,7 +32,7 @@ unset($dbpasswd);
$convertor_data = array(
'forum_name' => 'phpBB 2.0.x',
'version' => '1.0.3',
'phpbb_version' => '3.0.13',
'phpbb_version' => '3.0.14',
'author' => '<a href="https://www.phpbb.com/">phpBB Group</a>',
'dbms' => $dbms,
'dbhost' => $dbhost,

View File

@@ -8,7 +8,7 @@
*
*/
define('UPDATES_TO_VERSION', '3.0.13');
define('UPDATES_TO_VERSION', '3.0.15-dev');
// Enter any version to update from to test updates. The version within the db will not be updated.
define('DEBUG_FROM_VERSION', false);
@@ -949,7 +949,7 @@ function database_update_info()
// this column was removed from the database updater
// after 3.0.9-RC3 was released. It might still exist
// in 3.0.9-RCX installations and has to be dropped in
// 3.0.14 after the db_tools class is capable of properly
// 3.0.15 after the db_tools class is capable of properly
// removing a primary key.
// 'attempt_id' => array('UINT', NULL, 'auto_increment'),
'attempt_ip' => array('VCHAR:40', ''),
@@ -1014,9 +1014,13 @@ function database_update_info()
// No changes from 3.0.12 to 3.0.13-RC1
'3.0.12' => array(),
// No changes from 3.0.13-RC1 to 3.0.13
'3.0.13-RC1' => array(),
'3.0.13-RC1' => array(),
// No changes from 3.0.13 to 3.0.13-PL1
'3.0.13' => array(),
// No changes from 3.0.13-PL1 to 3.0.14-RC1
'3.0.13-PL1' => array(),
/** @todo DROP LOGIN_ATTEMPT_TABLE.attempt_id in 3.0.14-RC1 */
/** @todo DROP LOGIN_ATTEMPT_TABLE.attempt_id in 3.0.15-RC1 */
);
}
@@ -2266,6 +2270,14 @@ function change_database_data(&$no_updates, $version)
// No changes from 3.0.13-RC1 to 3.0.13
case '3.0.13-RC1':
break;
// No changes from 3.0.13 to 3.0.13-PL1
case '3.0.13':
break;
// No changes from 3.0.13-PL1 to 3.0.14-RC1
case '3.0.13-PL1':
break;
}
}

View File

@@ -246,7 +246,7 @@ INSERT INTO phpbb_config (config_name, config_value) VALUES ('topics_per_page',
INSERT INTO phpbb_config (config_name, config_value) VALUES ('tpl_allow_php', '0');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('upload_icons_path', 'images/upload_icons');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('upload_path', 'files');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('version', '3.0.13');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('version', '3.0.15-dev');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('warnings_expire_days', '90');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('warnings_gc', '14400');

View File

@@ -32,7 +32,6 @@ $forum_id = request_var('f', 0);
$draft_id = request_var('d', 0);
$lastclick = request_var('lastclick', 0);
$submit = (isset($_POST['post'])) ? true : false;
$preview = (isset($_POST['preview'])) ? true : false;
$save = (isset($_POST['save'])) ? true : false;
$load = (isset($_POST['load'])) ? true : false;
@@ -40,6 +39,7 @@ $delete = (isset($_POST['delete'])) ? true : false;
$cancel = (isset($_POST['cancel']) && !isset($_POST['save'])) ? true : false;
$refresh = (isset($_POST['add_file']) || isset($_POST['delete_file']) || isset($_POST['full_editor']) || isset($_POST['cancel_unglobalise']) || $save || $load) ? true : false;
$submit = isset($_POST['post']) && !$refresh && !$preview;
$mode = ($delete && !$preview && !$refresh && $submit) ? 'delete' : request_var('mode', '');
$error = $post_data = array();
@@ -1222,9 +1222,13 @@ if (!sizeof($error) && $preview)
'L_MAX_VOTES' => ($post_data['poll_max_options'] == 1) ? $user->lang['MAX_OPTION_SELECT'] : sprintf($user->lang['MAX_OPTIONS_SELECT'], $post_data['poll_max_options']))
);
$parse_poll->message = implode("\n", $post_data['poll_options']);
$parse_poll->format_display($post_data['enable_bbcode'], $post_data['enable_urls'], $post_data['enable_smilies']);
$preview_poll_options = explode('<br />', $parse_poll->message);
$preview_poll_options = array();
foreach ($post_data['poll_options'] as $poll_option)
{
$parse_poll->message = $poll_option;
$parse_poll->format_display($post_data['enable_bbcode'], $post_data['enable_urls'], $post_data['enable_smilies']);
$preview_poll_options[] = $parse_poll->message;
}
unset($parse_poll);
foreach ($preview_poll_options as $key => $option)

View File

@@ -19,7 +19,7 @@
# General Information about this style
name = prosilver
copyright = &copy; phpBB Group, 2007
version = 3.0.13
version = 3.0.14
# Images
img_site_logo = site_logo.gif*52*139

View File

@@ -19,4 +19,4 @@
# General Information about this style
name = prosilver
copyright = © phpBB Group, 2007
version = 3.0.13
version = 3.0.14

View File

@@ -19,7 +19,7 @@
# General Information about this template
name = prosilver
copyright = &copy; phpBB Group, 2007
version = 3.0.13
version = 3.0.14
# Defining a different template bitfield
template_bitfield = lNg=

View File

@@ -21,7 +21,7 @@
# General Information about this theme
name = prosilver
copyright = &copy; phpBB Group, 2007
version = 3.0.13
version = 3.0.14
# Some configuration options

View File

@@ -19,7 +19,7 @@
# General Information about this style
name = subsilver2
copyright = &copy; phpBB Group, 2003
version = 3.0.13
version = 3.0.14
# Images
img_site_logo = site_logo.gif*94*170

View File

@@ -19,4 +19,4 @@
# General Information about this style
name = subsilver2
copyright = © 2005 phpBB Group
version = 3.0.13
version = 3.0.14

View File

@@ -19,7 +19,7 @@
# General Information about this template
name = subsilver2
copyright = &copy; phpBB Group, 2003
version = 3.0.13
version = 3.0.14
# Template inheritance
# See http://blog.phpbb.com/2008/07/31/templating-just-got-easier/

View File

@@ -21,7 +21,7 @@
# General Information about this theme
name = subsilver2
copyright = &copy; phpBB Group, 2003
version = 3.0.13
version = 3.0.14
# Some configuration options

View File

@@ -0,0 +1,78 @@
<?php
/**
*
* This file is part of the phpBB Forum Software package.
*
* @copyright (c) phpBB Limited <https://www.phpbb.com>
* @license GNU General Public License, version 2 (GPL-2.0)
*
* For full copyright and license information, please see
* the docs/CREDITS.txt file.
*
*/
/**
* @group functional
*/
class phpbb_functional_acp_attachments_test extends phpbb_functional_test_case
{
public function data_imagick_path_linux()
{
return array(
array('/usr/bin', 'Configuration updated successfully'),
array('/usr/foobar', 'The entered path “/usr/foobar” does not exist.'),
array('/usr/bin/which', 'The entered path “/usr/bin/which” is not a directory.'),
);
}
/**
* @dataProvider data_imagick_path_linux
*/
public function test_imagick_path_linux($imagick_path, $expected)
{
if (strtolower(substr(PHP_OS, 0, 5)) !== 'linux')
{
$this->markTestSkipped('Unable to test linux specific paths on other OS.');
}
$this->login();
$this->admin_login();
$crawler = self::request('GET', 'adm/index.php?i=attachments&mode=attach&sid=' . $this->sid);
$form = $crawler->selectButton('Submit')->form(array('config[img_imagick]' => $imagick_path));
$crawler = self::submit($form);
$this->assertContains($expected, $crawler->filter('#main')->text());
}
public function data_imagick_path_windows()
{
return array(
array('C:\Windows', 'Configuration updated successfully'),
array('C:\Windows\foobar1', 'The entered path “C:\Windows\foobar1” does not exist.'),
array('C:\Windows\explorer.exe', 'The entered path “C:\Windows\explorer.exe” is not a directory.'),
);
}
/**
* @dataProvider data_imagick_path_windows
*/
public function test_imagick_path_windows($imagick_path, $expected)
{
if (strtolower(substr(PHP_OS, 0, 3)) !== 'win')
{
$this->markTestSkipped('Unable to test windows specific paths on other OS.');
}
$this->login();
$this->admin_login();
$crawler = self::request('GET', 'adm/index.php?i=attachments&mode=attach&sid=' . $this->sid);
$form = $crawler->selectButton('Submit')->form(array('config[img_imagick]' => $imagick_path));
$crawler = self::submit($form);
$this->assertContains($expected, $crawler->filter('#main')->text());
}
}

View File

@@ -40,6 +40,8 @@ class phpbb_lint_test extends phpbb_test_case
dirname(__FILE__) . '/../build/new_version',
dirname(__FILE__) . '/../build/old_versions',
dirname(__FILE__) . '/../phpBB/cache',
dirname(__FILE__) . '/../phpBB/ext',
dirname(__FILE__) . '/../phpBB/store',
// PHP Fatal error: Cannot declare class Container because the name is already in use in /var/www/projects/phpbb3/tests/../phpBB/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services1-1.php on line 20
// https://gist.github.com/e003913ffd493da63cbc
dirname(__FILE__) . '/../phpBB/vendor',

View File

@@ -18,12 +18,17 @@ class phpbb_security_redirect_test extends phpbb_security_test_base
{
// array(Input -> redirect(), expected triggered error (else false), expected returned result url (else false))
return array(
array('data://x', false, 'http://localhost/phpBB'),
array('data://x', 'Tried to redirect to potentially insecure url.', false),
array('bad://localhost/phpBB/index.php', 'Tried to redirect to potentially insecure url.', false),
array('http://www.otherdomain.com/somescript.php', false, 'http://localhost/phpBB'),
array('http://www.otherdomain.com/somescript.php', 'Tried to redirect to potentially insecure url.', false),
array("http://localhost/phpBB/memberlist.php\n\rConnection: close", 'Tried to redirect to potentially insecure url.', false),
array('javascript:test', false, 'http://localhost/phpBB/../javascript:test'),
array('http://localhost/phpBB/index.php;url=', 'Tried to redirect to potentially insecure url.', false),
array('https://foobar.com\@http://localhost/phpBB', 'Tried to redirect to potentially insecure url.', false),
array('https://foobar.com\@localhost/troll/http://localhost/', 'Tried to redirect to potentially insecure url.', false),
array('http://localhost.foobar.com\@localhost/troll/http://localhost/', 'Tried to redirect to potentially insecure url.', false),
array('http://localhost/phpBB', false, 'http://localhost/phpBB'),
array('http://localhost/phpBB/', false, 'http://localhost/phpBB/'),
);
}

View File

@@ -36,19 +36,24 @@ class phpbb_security_trailing_path_test extends phpbb_test_case
array(true, '', '', '/phpBB/index.php/?foo/a'),
array(true, '', '', '/projects/php.bb/phpBB/index.php/?a=5'),
array(false, '', '', '/projects/php.bb/phpBB/index.php?/a=5'),
array(false, '', '/phpBB/index.php', '/phpBB/index.php', '/phpBB/index.php'),
array(true, '', '/phpBB/index.php', '/phpBB/index.php'),
array(true, '', '/phpBB/index.php/', '/phpBB/index.php/', '/phpBB/index.php'),
array(true, '', '/phpBB/index.php/', '/phpBB/index.php/'),
);
}
/**
* @dataProvider data_has_trailing_path
*/
public function test_has_trailing_path($expected, $path_info, $orig_path_info, $request_uri)
public function test_has_trailing_path($expected, $path_info, $orig_path_info, $request_uri, $script_name = '')
{
global $phpEx;
$_SERVER['PATH_INFO'] = $path_info;
$_SERVER['ORIG_PATH_INFO'] = $orig_path_info;
$_SERVER['REQUEST_URI'] = $request_uri;
$_SERVER['SCRIPT_NAME'] = $script_name;
$this->assertSame($expected, phpbb_has_trailing_path($phpEx));
}

View File

@@ -601,7 +601,7 @@ class phpbb_functional_test_case extends phpbb_test_case
*/
static public function assert_response_status_code($status_code = 200)
{
self::assertEquals($status_code, self::$client->getResponse()->getStatus());
self::assertEquals($status_code, self::$client->getResponse()->getStatus(), 'HTTP status code does not match');
}
/**

View File

@@ -1,22 +0,0 @@
#!/bin/sh
#
# @copyright (c) 2015 phpBB Group
# @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
#
# $1 - URL to .tar.gz
download() {
wget -q -O - "$1" | tar xzvf - --strip-components 1
}
mkdir phpunit
cd phpunit
download https://github.com/sebastianbergmann/phpunit/archive/3.6.12.tar.gz
download https://github.com/sebastianbergmann/php-file-iterator/archive/1.3.1.tar.gz
download https://github.com/sebastianbergmann/php-code-coverage/archive/1.1.3.tar.gz
download https://github.com/sebastianbergmann/php-token-stream/archive/1.1.3.tar.gz
download https://github.com/sebastianbergmann/php-text-template/archive/1.1.2.tar.gz
download https://github.com/sebastianbergmann/php-timer/archive/1.0.2.tar.gz
download https://github.com/sebastianbergmann/phpunit-mock-objects/archive/1.1.1.tar.gz
download https://github.com/sebastianbergmann/dbunit/archive/1.1.2.tar.gz
cd ..

View File

@@ -1,44 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="true"
backupStaticAttributes="true"
colors="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false"
syntaxCheck="true"
strict="true"
verbose="true"
bootstrap="../tests/bootstrap.php">
<testsuites>
<testsuite name="phpBB Test Suite">
<directory suffix="_test.php">../tests/</directory>
<exclude>tests/functional</exclude>
<exclude>tests/lint_test.php</exclude>
</testsuite>
<testsuite name="phpBB Lint Test">
<file>tests/lint_test.php</file>
</testsuite>
<testsuite name="phpBB Functional Tests">
<directory suffix="_test.php" phpVersion="5.3.19" phpVersionOperator=">=">../tests/functional</directory>
</testsuite>
</testsuites>
<groups>
<exclude>
<group>slow</group>
</exclude>
</groups>
<php>
<server name="PHPBB_TEST_DBMS" value="mysqli" />
<server name="PHPBB_TEST_DBHOST" value="0.0.0.0" />
<server name="PHPBB_TEST_DBPORT" value="3306" />
<server name="PHPBB_TEST_DBNAME" value="phpbb_tests" />
<server name="PHPBB_TEST_DBUSER" value="root" />
<server name="PHPBB_TEST_DBPASSWD" value="" />
<server name="PHPBB_TEST_TABLE_PREFIX" value="phpbb_"/>
<server name="PHPBB_FUNCTIONAL_URL" value="http://localhost/" />
</php>
</phpunit>

View File

@@ -6,12 +6,6 @@
set -e
set -x
if [ "$TRAVIS_PHP_VERSION" = 'hhvm' ]
then
# Add PPA providing dependencies for recent HHVM on Ubuntu 12.04.
sudo add-apt-repository -y ppa:mapnik/boost
fi
sudo apt-get update
sudo apt-get install -y nginx realpath
@@ -25,11 +19,9 @@ APP_SOCK=$(realpath "$DIR")/php-app.sock
if [ "$TRAVIS_PHP_VERSION" = 'hhvm' ]
then
# Upgrade to a recent stable version of HHVM
sudo apt-get -o Dpkg::Options::="--force-confnew" install -y hhvm-nightly
HHVM_LOG=$(realpath "$DIR")/hhvm.log
sudo service hhvm stop
sudo hhvm \
--mode daemon \
--user "$USER" \