| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
(else they won't be usable from C++ extensions)
|
|
|
|
|
| |
# Should the LICENSE and Zend/LICENSE dates be updated too?
|
|
|
|
|
|
| |
(they #define strtoul to something that will break compilation,
and it successfully breaks the win32 IPv6 headers)
|
| |
|
|
|
|
|
|
| |
The ws2tcpip.h header links to IPv6 functions dynamically
and the generated binary will run on win98 and later.
|
| |
|
|
|
|
|
| |
like sendto() and recvfrom() syscalls.
|
| |
|
| |
|
|
|
|
| |
php_socket_t typedef.
|
|
|
|
|
|
|
|
|
|
|
| |
. stream_socket_client() - similar to fsockopen(), but more powerful.
. stream_socket_server() - Creates a server socket.
. stream_socket_accept() - Accept a client connection.
. stream_socket_get_name() - Get local or remote name of socket.
Tidy up some leaks and debug printfs.
Move more streams functions into streamsfuncs.c and streamsfuncs.h.
|
|
|
|
|
| |
# ext/ftp doesn't use streams yet so it needs to include them.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Main Changes:
- Implement a socket transport layer for use by all code that needs to open
some kind of "special" socket for network or IPC.
- Extensions can register (and override) transports.
- Implement ftruncate() on streams via the ioctl-alike option interface.
- Implement mmap() on streams via the ioctl-alike option interface.
- Implement generic crypto API via the ioctl-alike option interface.
(currently only supports OpenSSL, but could support other SSL toolkits,
and other crypto transport protocols).
Impact:
- tcp sockets can be overloaded by the openssl capable sockets at runtime,
removing the link-time requirement for ssl:// and https:// sockets and
streams.
- checking stream types using PHP_STREAM_IS_SOCKET is deprecated, since
there are now a range of possible socket-type streams.
Working towards:
- socket servers using the new transport layer
- mmap support under win32
- Cleaner code.
# I will be updating the win32 build to add the new files shortly
# after this commit.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
(php_socket_strerror) win32 compatible strerror replacement.
Add an E_NOTICE when a socket write fails.
|
| |
|
|
|
|
|
| |
Move timeout setting code.
|
|
|
|
|
|
| |
Juggle some includes/definitions.
Tidy up streams use in ext/standard/file.c
|
|
|
|
|
|
|
|
|
|
|
|
| |
Eliminate similar code from network.c.
Implement fgets equivalent at the streams level, which can detect
the mac, dos and unix line endings and handle them appropriately.
The default behaviour is unix (and dos) line endings.
An ini option to control this behaviour will follow.
# Don't forget to make clean!
# I've done some testing but would appreciate feedback from
# people with scripts/extensions that seek around a lot.
|
| |
|
|
|
|
|
| |
Ugly but needed for f.e.: debians ftpd-ssl
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
php_stream_set_option which can be used in a similar way as ioctl()
to set options for streams.
Current options include buffering and blocking support.
o Buffer control is support for stdio based streams.
o Blocking/non-blocking is supported for stdio and socket based streams.
|
|
|
|
|
|
|
|
| |
integer to allow subsecond timeouts.
This supports the previous behavior of fsockopen()
Fixes bug #16261
|
|
|
|
|
| |
Bug #18436
|
|
|
|
|
|
|
|
|
| |
on win32
Also fixed error handling on unix (micropatch)
Closes Bug #14740
|
| |
|
|
|
|
|
|
| |
# Should be the last "broad" commit for a while
# Don't forget to make clean ; make
|
|
|
|
|
|
| |
leaking streams should be easier.
# I hate these big commits
|
| |
|
|
|
|
|
|
| |
# Could be applied to 4.2 branch, but I don't have a working copy, and
# I don't think it's amazingly critical.
|
|
|
|
|
|
|
| |
Someone still needs to add the streams.c file to the MSVC
project/workspace though (there are so many that I don't really know
what I am doing :-).
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
in ftp.c to make sure connect() and bind() is called with size argument
which is exactly the size of the relevant sockaddr_xx structure
|
|
|
|
|
|
| |
attempt times out, it goes on to the next. Unless each timeout would be
<5s. Added php_any_addr() that fills out the any address for IPv6 and IPv4.
|
|
|
|
|
|
| |
php_sockaddr_storage to php_network.h and added check for struct
sockaddr_storage
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
and rename to php_connect_nonb().
Use php_connect_nonb() instead of connect() in php_hostconnect() -> timeouts
should now work in php_hostconnect().
sock streams abstraction now uses php_sockbuf as the "abstract" pointer.
|
| |
|
|
|
|
|
|
|
| |
- Make the various $HTTP_*_VARS[] arrays be defined always,
even if they're empty
- Fix Win32 build and warnings
|