History log of /php-src/ext/sockets/sockets_arginfo.h (Results 1 – 25 of 53)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 33ba1a4a 09-Nov-2024 David Carlier

ext/sockets: adding IPPROTO_ICMP* constants for socket creations.

Is to create socket for Internet Control Message Protocol context.
Due to their nature, they are meant to be used via

ext/sockets: adding IPPROTO_ICMP* constants for socket creations.

Is to create socket for Internet Control Message Protocol context.
Due to their nature, they are meant to be used via
raw sockets rather than TCP/UDP.

close GH-16737

show more ...


# 5dd05756 04-Sep-2024 DanielEScherzer

Generated arginfo header files: combine preprocessor conditional blocks (#15736)

When functions' or class methods' availability is based on some preprocessor
condition, the generated arg

Generated arginfo header files: combine preprocessor conditional blocks (#15736)

When functions' or class methods' availability is based on some preprocessor
condition, the generated arginfo header files wrap the declarations in the
preprocessor `#if` conditional blocks, one per declaration, even if they are in
the same conditional block based on comments in the stub file. Instead of
having multiple conditional blocks one after the other with the same condition,
combine them into a single conditional block.

show more ...


# 53cb8967 03-Sep-2024 DanielEScherzer

Generated arginfo header files: remove empty zend_function_entry arrays (#15705)

When a class (or enum) has no methods, rather than using an array that only
contains `ZEND_FE_END`, use `

Generated arginfo header files: remove empty zend_function_entry arrays (#15705)

When a class (or enum) has no methods, rather than using an array that only
contains `ZEND_FE_END`, use `NULL` for the functions. The implementation of
class registration for internal classes, `do_register_internal_class()` in
zend_API.c, already skips classes where the functions are `NULL`. By removing
these unneeded arrays, we can reduce the size of the header files, while also
removing an unneeded call to zend_register_functions() for each internal class
with no extra methods.

show more ...


# 8d12f666 24-Aug-2024 Máté Kocsis

Fix registration of internal readonly child classes (#15459)

Currently, internal classes are registered with the following code:

INIT_CLASS_ENTRY(ce, "InternalClass", class_Internal

Fix registration of internal readonly child classes (#15459)

Currently, internal classes are registered with the following code:

INIT_CLASS_ENTRY(ce, "InternalClass", class_InternalClass_methods);
class_entry = zend_register_internal_class_ex(&ce, NULL);
class_entry->ce_flags |= ...;

This has worked well so far, except if InternalClass is readonly. It is because some inheritance checks are run by zend_register_internal_class_ex before ZEND_ACC_READONLY_CLASS is added to ce_flags.

The issue is fixed by adding a zend_register_internal_class_with_flags() zend API function that stubs can use from now on. This function makes sure to add the flags before running any checks. Since the new API is not available in lower PHP versions, gen_stub.php has to keep support for the existing API for PHP 8.3 and below.

show more ...


# d713e361 18-Aug-2024 David Carlier

ext/sockets: adding SO_BINDTOIFINDEX.

similar to SO_BINDTODEVICE but works with interface ids instead.

close GH-15479


# d052d612 10-Aug-2024 David Carlier

ext/sockets: adding SOCK_CLOEXEC/SOCK_NONBLOCK options.

targetted for socket_create_pair/socket_create, they re not considered
as socket type but to be ORed with these (to avoid socketpa

ext/sockets: adding SOCK_CLOEXEC/SOCK_NONBLOCK options.

targetted for socket_create_pair/socket_create, they re not considered
as socket type but to be ORed with these (to avoid socketpair2/socket2
likely), set O_CLOEXEC/O_NONBLOCK respectively on the file descriptors.

close GH-15322

show more ...


# 1d198c66 10-Aug-2024 David Carlier

ext/sockets: controlling ephemeral port ranges on *BSD.

whether ephemeral ports are onto the privileged low port ranges
or a range more fit for restricted scenarios.

cl

ext/sockets: controlling ephemeral port ranges on *BSD.

whether ephemeral ports are onto the privileged low port ranges
or a range more fit for restricted scenarios.

close GH-15335

show more ...


# a63fd2a9 19-Jul-2024 Calvin Buckley

Gate SOCK_DCCP behind its own ifdef (#15031)

AIX 7.1 has SOCK_CONN_DGRAM, but not SOCK_DCCP; the previous change
conflated the availability between the two definitions. Add an
additi

Gate SOCK_DCCP behind its own ifdef (#15031)

AIX 7.1 has SOCK_CONN_DGRAM, but not SOCK_DCCP; the previous change
conflated the availability between the two definitions. Add an
additional #ifdef for this.

show more ...


# 9672cd94 18-Jun-2024 David Carlier

ext/sockets: Adding macOS SO_LINGER_SEC constant.

macOS SO_LINGER, unlike other platforms, functions in term of ticks,
SO_LINGER_SEC is provided to be in line with other platforms.

ext/sockets: Adding macOS SO_LINGER_SEC constant.

macOS SO_LINGER, unlike other platforms, functions in term of ticks,
SO_LINGER_SEC is provided to be in line with other platforms.

close GH-14599

show more ...


# a82d8647 10-Jun-2024 Peter Kokot

Replace WIN32 conditions with _WIN32 or PHP_WIN32 (#14462)

* Replace WIN32 conditions with _WIN32 or PHP_WIN32

WIN32 is defined by the SDK and not defined all the time on Windows by

Replace WIN32 conditions with _WIN32 or PHP_WIN32 (#14462)

* Replace WIN32 conditions with _WIN32 or PHP_WIN32

WIN32 is defined by the SDK and not defined all the time on Windows by
compilers or the environment. _WIN32 is defined as 1 when the
compilation target is 32-bit ARM, 64-bit ARM, x86, or x64. Otherwise,
undefined.

This syncs these usages one step further.

Upstream libgd has replaced WIN32 with _WIN32 via
https://github.com/libgd/libgd/commit/c60d9fe577ae8dad88e26344c4ceaa90da86e2f6

PHP_WIN32 is added to ext/sockets/sockets.stub.php as done in other
*.stub.php files at this point.

* Use PHP_WIN32 in ext/random

* Use PHP_WIN32 in ext/sockets

* Use _WIN32 in xxhash.h as done upstream

See https://github.com/Cyan4973/xxHash/pull/931

* Update end comment with PHP_WIN32

show more ...


# 2d66562e 28-May-2024 Peter Kokot

Sync HAVE_IPV6 and HAVE_GETADDRINFO in #if/ifdef/defined (#14341)

Follow up of GH-5526 (-Wundef)


# b147a22b 28-Apr-2024 David Carlier

ext/sockets: adding SO_NOSIGPIPE constant.

it s the macOs way to disable the SIGPIPE signal emission, same
as doing `signal(SIGPIPE, SIG_IGN)` but on the socket level.

Close GH

ext/sockets: adding SO_NOSIGPIPE constant.

it s the macOs way to disable the SIGPIPE signal emission, same
as doing `signal(SIGPIPE, SIG_IGN)` but on the socket level.

Close GH-14065

show more ...


# 0e16e29b 31-Mar-2024 David Carlier

ext/sockets: socket_create_listen update.

going from 128 to system's SOMAXCONN by default to be able to increase
the queue of connections to be handled.
Also, for Haiku SOMAXCONN is

ext/sockets: socket_create_listen update.

going from 128 to system's SOMAXCONN by default to be able to increase
the queue of connections to be handled.
Also, for Haiku SOMAXCONN is only 32.

Close GH-13854

show more ...


# 645af9fb 07-Apr-2024 David Carlier

ext/sockets: adding solaris/illumos SO_EXCLBIND constant.

when set to "true", neutralises the effect of SO_REUSEADDR/SO_REUSEPORT
making the socket binding exclusive.

Close GH-1

ext/sockets: adding solaris/illumos SO_EXCLBIND constant.

when set to "true", neutralises the effect of SO_REUSEADDR/SO_REUSEPORT
making the socket binding exclusive.

Close GH-13912

show more ...


# b82024b1 26-Mar-2024 David Carlier

ext/sockets: adding Linux's TCP_SYNCNT constant.

Useful to control how many SYN packets the client will send to the
server before giving up establishing a connection if the server does

ext/sockets: adding Linux's TCP_SYNCNT constant.

Useful to control how many SYN packets the client will send to the
server before giving up establishing a connection if the server does
not respond (usually 5 or 6 by default).

Close GH-13816

show more ...


# 4c467e6e 16-Mar-2024 David Carlier

ext/sockets: adding few constants for NetBSD.

SOCK_CONN_DGRAM (and its alias SOCK_DCCP) for connection orientated
datagram.

Close GH-13728


# 23844538 26-Feb-2024 Peter Kokot

Use preprocessor to check for AI_V4MAPPED, AI_ALL and AI_IDN (#13513)

The preprocessor macros defined in some header can be checked, using
Autoconf's AC_COMPILE_IFELSE, or with simpler A

Use preprocessor to check for AI_V4MAPPED, AI_ALL and AI_IDN (#13513)

The preprocessor macros defined in some header can be checked, using
Autoconf's AC_COMPILE_IFELSE, or with simpler AC_CHECK_DECL(S), or even
better and simpler directly in the C code.

show more ...


# f2e199e8 25-Feb-2024 Máté Kocsis

Implement "support doc comments for internal classes and functions" (#13266)

Fixes #13130


# e630aacf 21-Feb-2024 Jorg Adam Sowa

Remove HAVE_INET_PTON (#13410)


# 10957e49 18-Feb-2024 Máté Kocsis

Do not generate frameless info items when func info generation is disabled

While here, I fixed newlines around arginfo and function entry generation. Previously, newlines were repeated.


# b02f95ad 26-Dec-2023 David Carlier

ext/sockets: adding windows SO_EXCLUSIVEADDRUSE constant.

Close GH-13030


# 7b4b40f0 22-Apr-2023 David Carlier

ext/sockets: addig Linux's IP_BIND_ADDRESS_NO_PORT.

Delay ephemeral port number attribution at connect time rather
than at bind's one.

Close GH-11119.


# 6c532df7 08-Apr-2023 David CARLIER

ext/sockets adding FreeBSD's SO_REUSEPORT_LB constant.

SO_REUSEPORT_LB is, in fact, closer to the classical Linux's SO_REUSEPORT.

Close GH-11038


# fbaa2eb0 27-Feb-2023 David CARLIER

ext/sockets: add TCP_REPAIR to silently close a connection.

Closes GH-10724.


# 19a7281e 11-Feb-2023 David Carlier

sockets add SO_RERROR/SO_ZEROIZE/SO_SPLICE net/openbsd's constants.

Closes GH-10563.


123