History log of /PHP-8.2/ext/opcache/shared_alloc_win32.c (Results 1 – 25 of 75)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 9a42d2b8 04-Jul-2021 Christoph M. Becker

Merge branch 'PHP-8.0'

* PHP-8.0:
Fix build


# d86c25d8 04-Jul-2021 Christoph M. Becker

Fix build

`accel_system_id` gas been renamed to `zend_system_id`.

# b0913413 04-Jul-2021 Christoph M. Becker

Merge branch 'PHP-8.0'

* PHP-8.0:
Avoid OOB reads in create_name_with_username()


# 948b83d7 04-Jul-2021 Christoph M. Becker

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Avoid OOB reads in create_name_with_username()


# b1840737 10-May-2021 Christoph M. Becker

Avoid OOB reads in create_name_with_username()

`accel_uname_id` and `zend_system_id` are MD5 buffers which are not
NUL terminated. Thus, we must not pass them to `snprintf()`.

Avoid OOB reads in create_name_with_username()

`accel_uname_id` and `zend_system_id` are MD5 buffers which are not
NUL terminated. Thus, we must not pass them to `snprintf()`.

Closes GH-6968.

show more ...

# aff36587 29-Jun-2021 Patrick Allaert

Fixed some spaces used instead of tabs

# 01b3fc03 06-May-2021 KsaR

Update http->https in license (#6945)

1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https.
2. Update few license 3.0 to 3.01 as

Update http->https in license (#6945)

1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https.
2. Update few license 3.0 to 3.01 as 3.0 states "php 5.1.1, 4.1.1, and earlier".
3. In some license comments is "at through the world-wide-web" while most is without "at", so deleted.
4. fixed indentation in some files before |

show more ...

# 9f7c6a82 05-Mar-2021 Christoph M. Becker

Merge branch 'PHP-8.0'

* PHP-8.0:
Print error code if CreateMutex() fails


# 1c16749e 05-Mar-2021 Christoph M. Becker

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Print error code if CreateMutex() fails


# e0e167e5 02-Mar-2021 Christoph M. Becker

Print error code if CreateMutex() fails

This issue came up recently in a bug report[1]; without the error code,
users can barely guess why the function failed.

[1] <https://bugs

Print error code if CreateMutex() fails

This issue came up recently in a bug report[1]; without the error code,
users can barely guess why the function failed.

[1] <https://bugs.php.net/80812>

Closes GH-6745.

show more ...

# b1a30d8a 28-Nov-2020 Christoph M. Becker

Fix typos in comments

# 12306728 16-Jul-2020 Sammy Kaye Powers

Add system ID entropy API

The `zend_system_id` is a (true global) system ID that fingerprints a process state. When extensions add engine hooks during MINIT/startup, entropy is added the sys

Add system ID entropy API

The `zend_system_id` is a (true global) system ID that fingerprints a process state. When extensions add engine hooks during MINIT/startup, entropy is added the system ID for each hook. This allows extensions to identify that changes have been made to the engine since the last PHP process restart.

Closes GH-5871

show more ...

# 88a3bdd1 29-Jul-2020 Christoph M. Becker

Merge branch 'PHP-7.4'

* PHP-7.4:
Fix #73060: php failed with error after temp folder cleaned up


# 2bcc4198 29-Jul-2020 Christoph M. Becker

Fix #73060: php failed with error after temp folder cleaned up

Instead of storing the mapping base address and the address of
`execute_ex()` in a separate file in the temporary folder, w

Fix #73060: php failed with error after temp folder cleaned up

Instead of storing the mapping base address and the address of
`execute_ex()` in a separate file in the temporary folder, we store
them right at the beginning of the memory mapping.

show more ...

# da0f3279 29-Jul-2020 Christoph M. Becker

Merge branch 'PHP-7.4'

* PHP-7.4:
Revert "Merge branch 'PHP-7.3' into PHP-7.4"


# 826b90a5 29-Jul-2020 Christoph M. Becker

Revert "Merge branch 'PHP-7.3' into PHP-7.4"

This reverts commit e1f6ab3388f509782857557ee1e40a66b2bb6455, reversing
changes made to e0ebe56ebfc80bae3875b23eca4cbe0803f41e79.

Th

Revert "Merge branch 'PHP-7.3' into PHP-7.4"

This reverts commit e1f6ab3388f509782857557ee1e40a66b2bb6455, reversing
changes made to e0ebe56ebfc80bae3875b23eca4cbe0803f41e79.

There are obviously issues with running tests in parallel, maybe
related to the cache ID. This needs to be investigated. Revert for
now.

show more ...

# fc3439a7 29-Jul-2020 Christoph M. Becker

Merge branch 'PHP-7.4'

* PHP-7.4:
Fix #73060: php failed with error after temp folder cleaned up


# e1f6ab33 29-Jul-2020 Christoph M. Becker

Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
Fix #73060: php failed with error after temp folder cleaned up


# 9a744c66 28-Jul-2020 Christoph M. Becker

Fix #73060: php failed with error after temp folder cleaned up

Instead of storing the mapping base address and the address of
`execute_ex()` in a separate file in the temporary folder, w

Fix #73060: php failed with error after temp folder cleaned up

Instead of storing the mapping base address and the address of
`execute_ex()` in a separate file in the temporary folder, we store
them right at the beginning of the memory mapping.

show more ...

# e57b2b94 30-Dec-2019 Christoph M. Becker

Merge branch 'PHP-7.4'

* PHP-7.4:
Fix #79040: Warning Opcode handlers are unusable due to ASLR


# 94063619 30-Dec-2019 Christoph M. Becker

Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
Fix #79040: Warning Opcode handlers are unusable due to ASLR


# 0cecf83b 30-Dec-2019 Christoph M. Becker

Fix #79040: Warning Opcode handlers are unusable due to ASLR

We must not use the same shared memory OPcache instance for different
SAPIs, since their memory layout is different. To avoi

Fix #79040: Warning Opcode handlers are unusable due to ASLR

We must not use the same shared memory OPcache instance for different
SAPIs, since their memory layout is different. To avoid this, we add
the SAPI name (truncated to at most 20 characters) to the names of the
memory base file, the mutex and the file mapping.

show more ...

Revision tags: php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12
# 39d04f15 12-Nov-2019 Christoph M. Becker

Fix ASLR related invalid opline handler issues

Opcache stores `opline->handler`s in shared memory. These pointers are
invalid, if the main PHP DLL is loaded at another base address due

Fix ASLR related invalid opline handler issues

Opcache stores `opline->handler`s in shared memory. These pointers are
invalid, if the main PHP DLL is loaded at another base address due to
ASLR. We therefore store the address of `execute_ex` in the mmap base
file, and check on startup whether it matches its current address. If
not, we fall back on the file cache if enabled, and bail out otherwise.

This still does not address cases where the opline handler is located
inside of another DLL (e.g. for some profilers, debuggers), but there
seems to be no general solution for now.

(cherry picked from commit 8ba10b8fbc020dc225d3b19d8f088f1351a3e304)

show more ...

Revision tags: php-7.4.0RC6, php-7.3.12RC1, php-7.2.25RC1, php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4, php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3, php-7.2.23, php-7.3.10, php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1, php-7.4.0RC1, php-7.1.32, php-7.2.22, php-7.3.9, php-7.4.0beta4, php-7.2.22RC1, php-7.3.9RC1, php-7.4.0beta2, php-7.1.31, php-7.2.21, php-7.3.8, php-7.4.0beta1
# 54401001 17-Jul-2019 Christoph M. Becker

Merge branch 'PHP-7.4'

* PHP-7.4:
Allow multiple cache instances per user/host on Windows


# e2ed7e67 16-Jul-2019 Christoph M. Becker

Allow multiple cache instances per user/host on Windows

Formerly, there was at most a single OPcache instance per user and the
so called system ID (which is determined from the PHP versi

Allow multiple cache instances per user/host on Windows

Formerly, there was at most a single OPcache instance per user and the
so called system ID (which is determined from the PHP version).
Sometimes multiple OPcaches might be desired, though, particularly for
unrelated CLI scripts, which may even be necessary (e.g. for our test
suite in parallel mode).

We therefore introduce a new INI directive `opcache.cache_id` which
allows to configure independent OPcache instances for the same user.

We also use `GetUserNameW()` instead of `php_win32_get_username()`,
because the latter retrieves the user name encoded in the
`default_charset`, which can obviously yield different results for
different charsets, leading to OPcache "incompatibilities". Slightly
worse, some characters may not even be encodeable in the
`default_charset` and would be replaced by question marks, which could
result in different users sharing the same OPcache.

We also refactor, and re-use existing APIs to avoid duplicated code.

show more ...

123