Diskussion zu "phpBB 3.3.4 erschienen"

Projekte der phpBB.de-Community und Feedback zu phpBB.de.
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Diskussion zu "phpBB 3.3.4 erschienen"

Beitrag von BNa »

Das "automatische Update" hat, trotz einiger Core-Änderungen, einwandfrei funktioniert.
Einen fetten Dank an das Team..
Benutzeravatar
Kirk
Supporter
Supporter
Beiträge: 7859
Registriert: 24.05.2010 08:31
Kontaktdaten:

Re: Diskussion zu "phpBB 3.3.4 erschienen"

Beitrag von Kirk »

Es gibt einen Bug in 3.3.4, wenn bei einem Webspace die "fsockopen" deaktiviert ist, kommt unter PHP 8 im ACP folgende Fehlermeldung:

Code: Alles auswählen

Fatal error: Uncaught Error: Call to undefined function phpbb\fsockopen() in /users/***/www/forum2/phpbb/file_downloader.php:45 Stack trace: #0 /users/***/www/forum2/phpbb/version_helper.php(384): phpbb\file_downloader->get('version.phpbb.c...', '/phpbb', 'versions.json', 80) #1 /users/***/www/forum2/phpbb/version_helper.php(354): phpbb\version_helper->get_versions(false, false) #2 /users/***/www/forum2/phpbb/version_helper.php(230): phpbb\version_helper->get_versions_matching_stability(false, false) #3 /users/***/www/forum2/includes/acp/acp_main.php(447): phpbb\version_helper->get_update_on_branch(false) #4 /users/***/www/forum2/includes/functions_module.php(676): acp_main->main('main', 'main') #5 /users/***/www/forum2/adm/index.php(81): p_master->load_active() #6 {main} thrown in /users/***/www/forum2/phpbb/file_downloader.php on line 45
Unter PHP 7.4.2 funktioniert alles.
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Diskussion zu "phpBB 3.3.4 erschienen"

Beitrag von BNa »

Dann hilft wohl (erstmal) nur ein Dirty-Fix in der file_downloader.php

Code: Alles auswählen

	public function get($host, $directory, $filename, $port = 80, $timeout = 6)
	{
		// Set default values for error variables
		$this->error_number = 0;
		$this->error_string = '';

        if(function_exists('fsockopen')) 
		{

		if ($socket = @fsockopen(($port == 443 ? 'ssl://' : '') . $host, $port, $this->error_number, $this->error_string, $timeout))
		{
			@fputs($socket, "GET $directory/$filename HTTP/1.0\r\n");
			@fputs($socket, "HOST: $host\r\n");
			@fputs($socket, "Connection: close\r\n\r\n");

			$timer_stop = time() + $timeout;
			stream_set_timeout($socket, $timeout);

			$file_info = '';
			$get_info = false;

			while (!@feof($socket))
			{
				if ($get_info)
				{
					$file_info .= @fread($socket, 1024);
				}
				else
				{
					$line = @fgets($socket, 1024);
					if ($line == "\r\n")
					{
						$get_info = true;
					}
					else if (stripos($line, '404 not found') !== false)
					{
						throw new \phpbb\exception\runtime_exception('FILE_NOT_FOUND', array($filename));
					}
				}

				$stream_meta_data = stream_get_meta_data($socket);

				if (!empty($stream_meta_data['timed_out']) || time() >= $timer_stop)
				{
					throw new \phpbb\exception\runtime_exception('FSOCK_TIMEOUT');
				}
			}
			@fclose($socket);
		}
		else
		{
			if ($this->error_string)
			{
				$this->error_string = utf8_convert_message($this->error_string);
				return false;
			}
			else
			{
				throw new \phpbb\exception\runtime_exception('FSOCK_DISABLED');
			}
		}

		return $file_info;
	}}
Oder alternativ cURL als Fallback benutzen?

https://stackoverflow.com/questions/593 ... n-and-curl
Benutzeravatar
Kirk
Supporter
Supporter
Beiträge: 7859
Registriert: 24.05.2010 08:31
Kontaktdaten:

Re: Diskussion zu "phpBB 3.3.4 erschienen"

Beitrag von Kirk »

Dein Fix hat geholfen, besten Dank. :)
Benutzeravatar
Crizzo
Administrator
Administrator
Beiträge: 11944
Registriert: 19.05.2005 21:45
Kontaktdaten:

Re: Diskussion zu "phpBB 3.3.4 erschienen"

Beitrag von Crizzo »

Gibt es da schon ein Ticket für?
Benutzeravatar
Kirk
Supporter
Supporter
Beiträge: 7859
Registriert: 24.05.2010 08:31
Kontaktdaten:

Re: Diskussion zu "phpBB 3.3.4 erschienen"

Beitrag von Kirk »

Hab gerade ein Ticket erstellt.
Gesperrt

Zurück zu „Community Talk“