David Carlier
7eb972c456
Fix Solaris builds of ext/sockets
...
We enable the proper ancillary data handling layout and API.
Closes GH-7859.
2022-03-10 14:48:08 +01:00
Christoph M. Becker
0832d4ab91
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix GH-7978: sockets extension compilation errors
2022-01-21 23:59:48 +01:00
Christoph M. Becker
943d6f642a
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix GH-7978: sockets extension compilation errors
2022-01-21 23:59:26 +01:00
David Carlier
07aaa34cd4
Fix GH-7978: sockets extension compilation errors
...
We fix the `ucred` detection when custom `CFLAGS` are in use.
Closes GH-7981.
2022-01-21 23:56:56 +01:00
Christoph M. Becker
e1a238333c
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix ext/sockets build on Haiku
2022-01-04 14:13:27 +01:00
Christoph M. Becker
623b21220b
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix ext/sockets build on Haiku
2022-01-04 14:12:56 +01:00
David Carlier
09165ace37
Fix ext/sockets build on Haiku
...
The `SOCK_RDM` datagram option is unsupported on Haiku; instead `ifreq`
has direct access to `ifr_index`.
Closes GH-7849.
2022-01-04 14:10:50 +01:00
Christoph M. Becker
3c3257b0d3
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Avoid void* arithmetic in sockets/multicast.c on NetBSD
2021-12-23 16:22:11 +01:00
Christoph M. Becker
9d2dc1e9a9
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Avoid void* arithmetic in sockets/multicast.c on NetBSD
2021-12-23 16:21:28 +01:00
David Carlier
3f0bb67361
Avoid void* arithmetic in sockets/multicast.c on NetBSD
...
On NetBSD, ifconf.ifc_buf member, unlike most of platforms, is a void
pointer.
We also fix the cpuinfo declarations with empty parameter lists.
Closes GH-7819.
2021-12-23 16:17:30 +01:00
Joe Watkins
0b5d371a9c
Merge branch 'PHP-8.1'
...
* PHP-8.1:
socket cmsg credential test fixes, "backporting" from the FreeBSD PR.
2021-12-21 07:28:19 +01:00
Joe Watkins
938a81cf01
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
socket cmsg credential test fixes, "backporting" from the FreeBSD PR.
2021-12-21 07:28:09 +01:00
David Carlier
80b02275bb
socket cmsg credential test fixes, "backporting" from the FreeBSD PR.
2021-12-21 07:27:59 +01:00
Joe Watkins
fae4344ee0
Merge branch 'PHP-8.1'
...
* PHP-8.1:
socket: ancillary credentials build fix for non linux systems.
2021-12-21 07:26:46 +01:00
Joe Watkins
00113b95b2
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
socket: ancillary credentials build fix for non linux systems.
2021-12-21 07:25:55 +01:00
David Carlier
51647eb23e
socket: ancillary credentials build fix for non linux systems.
...
for systems using SO_PASSCRED sockopt flag but not using ucred struct.
2021-12-21 07:25:43 +01:00
David Carlier
3414ae6c0c
sockets: add SO_INCOMING_CPU constant
...
get/set the cpu attached to a socket, no special treatment needed,
it is simply an integer.
Closes GH-7753.
2021-12-20 14:58:09 +01:00
Dmitry Stogov
90b7bde615
Use more compact representation for packed arrays.
...
- for packed arrays we store just an array of zvals without keys.
- the elements of packed array are accessible throuf as ht->arPacked[i]
instead of ht->arData[i]
- in addition to general ZEND_HASH_FOREACH_* macros, we introduced similar
familied for packed (ZEND_HASH_PACKED_FORECH_*) and real hashes
(ZEND_HASH_MAP_FOREACH_*)
- introduced an additional family of macros to access elements of array
(packed or real hashes) ZEND_ARRAY_ELEMET_SIZE, ZEND_ARRAY_ELEMET_EX,
ZEND_ARRAY_ELEMET, ZEND_ARRAY_NEXT_ELEMENT, ZEND_ARRAY_PREV_ELEMENT
- zend_hash_minmax() prototype was changed to compare only values
Because of smaller data set, this patch may show performance improvement
on some apps and benchmarks that use packed arrays. (~1% on PHP-Parser)
TODO:
- sapi/phpdbg needs special support for packed arrays (WATCH_ON_BUCKET).
- zend_hash_sort_ex() may require converting packed arrays to hash.
2021-11-03 15:18:26 +03:00
Nikita Popov
bce040ddf2
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Set opline before calling undef op helper
Add more specific array return type hints for various extensions - part 6 (#7474 )
2021-10-07 14:40:48 +02:00
Máté Kocsis
d9e5e63032
Add more specific array return type hints for various extensions - part 6 ( #7474 )
2021-10-07 14:29:29 +02:00
Nikita Popov
d032b85762
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Use ephemeral port in test
2021-10-05 16:01:00 +02:00
Nikita Popov
e91a751e3d
Use ephemeral port in test
2021-10-05 16:00:50 +02:00
Kamil Tekiela
c3dda473cc
Fix 'can not' in test data and in code comments
2021-10-05 09:51:58 +01:00
Nikita Popov
bc19186c7f
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Use ephemeral ports in socket test
2021-09-20 10:20:10 +02:00
Nikita Popov
624848f118
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Use ephemeral ports in socket test
2021-09-20 10:20:03 +02:00
Nikita Popov
07f6c61c8e
Use ephemeral ports in socket test
2021-09-20 10:19:48 +02:00
Máté Kocsis
a1a8e9032c
Remove unnecessary PHP_FUNCTION() declarations ( #7472 )
2021-09-07 10:04:00 +02:00
Nikita Popov
768265cd22
Fix some more CLEAN sections
2021-09-06 17:03:35 +02:00
Nikita Popov
2ab4482d34
Fix some broken or unnecessary CLEAN sections
2021-09-03 10:52:30 +02:00
Nikita Popov
e539cb9ca0
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Fix port clash in socket tests
2021-08-12 12:02:37 +02:00
Nikita Popov
77c1c42c66
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix port clash in socket tests
2021-08-12 12:02:27 +02:00
Nikita Popov
78cbe56e68
Fix port clash in socket tests
...
Use ephemeral port instead.
2021-08-12 12:02:05 +02:00
Joe Watkins
570d9b63e9
Not serializable flag permeation
2021-07-20 12:28:35 +02:00
David Carlier
4c873df7d5
sockets enabling SO_MARK socket option which is relatively similar
...
to FreeBSD's SO_USER_COOKIE giving a socket an identifier for packet filter,
giving a specific route table.
2021-07-16 12:18:24 +02:00
Patrick Allaert
ac18dd0dc7
Prefer EXPECT over EXPECTF
2021-06-29 17:13:02 +02:00
Patrick Allaert
aff365871a
Fixed some spaces used instead of tabs
2021-06-29 11:30:26 +02:00
David CARLIER
c4a005bb2d
exposing few macOS socket options to give hints how to handle data,
2021-06-22 09:43:56 -05:00
Nikita Popov
892421c9a8
Make some zend_test dependencies explicit
...
Rather than checking that specific functions exist.
2021-06-14 15:40:34 +02:00
Nikita Popov
6600ad6067
Add some missing EXTENSIONS sections to misc tests
2021-06-14 14:52:44 +02:00
David CARLIER
ff23a34757
define SO_ACCEPTFILTER separately where supported ( #7146 )
2021-06-14 07:24:55 +02:00
Nikita Popov
7485978339
Migrate SKIPIF -> EXTENSIONS ( #7138 )
...
This is an automated migration of most SKIPIF extension_loaded checks.
2021-06-11 11:57:42 +02:00
David Carlier
fc147ed8db
sockets exposing TC_DEFER_ACCEPT to optimise tcp exchanges.
2021-06-09 06:54:02 +02:00
David Carlier
95a9e558b6
Pull #6989 FreeBSD defines SO_ACCEPTFILTER
2021-05-31 11:40:20 +02:00
Nikita Popov
7bc8f2c83f
Skip unsupported socket option test on FreeBSD
2021-05-19 09:48:22 +02:00
Nikita Popov
b9fbbcc867
Use different error condition in socket test
...
The previously used error does not occur on FreeBSD and instead
causes the operation to time out.
Also clean up the test a bit. And make sure it actually tests
something -- the point is that socket_last_error() should be 0
after socket_clear_error(). It's kind of pointless if the test
uses a wildcard for the final result instead.
2021-05-19 09:48:17 +02:00
Nikita Popov
79c9028ca6
Relax error message expectation in socket test
2021-05-18 19:34:34 +02:00
Nikita Popov
4baf340c39
Merge branch 'PHP-8.0'
...
* PHP-8.0:
Remove getservbyname() variation tests
Use SOL_TCP instead of getprotobyname() in tests
2021-05-07 14:56:13 +02:00
Nikita Popov
0413cf3c20
Use SOL_TCP instead of getprotobyname() in tests
...
This is more idiomatic anyway, and works on msan, which misses
interceptors for getprotobyname().
2021-05-07 14:55:18 +02:00
Remi Collet
f9547f2b47
get rid of inet_aton and inet_ntoa use inet_ntop iand inet_pton where available standardize buffer size
2021-05-06 13:39:58 +02:00
KsaR
01b3fc03c3
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 |
2021-05-06 12:16:35 +02:00