summaryrefslogtreecommitdiff
path: root/main/streams/xp_socket.c
Commit message (Collapse)AuthorAgeFilesLines
* MFH: Prevent bindport from being used uninitializedSara Golemon2006-02-021-1/+1
|
* bump year and license versionfoobar2006-01-011-3/+3
|
* - Bumber up yearfoobar2005-08-031-1/+1
|
* ZTS fix.Sebastian Bergmann2005-06-141-1/+1
|
* Added bindto socket context option.Ilia Alshanetsky2005-06-141-13/+34
|
* Make new poll stuff work on win32 (and still be safe on unix)Wez Furlong2004-09-171-0/+3
|
* Fix for Bug #24189: possibly unsafe select(2) usage.Wez Furlong2004-09-171-45/+16
| | | | | | | | | | | | | | | | | | | | | | | | | We avoid the problem by using poll(2). On systems without poll(2) (older bsd-ish systems, and win32), we emulate poll(2) using select(2) and check for valid descriptors before attempting to access them via the descriptor sets. If an out-of-range descriptor is detected, an E_WARNING is raised suggesting that PHP should be recompiled with a larger FD_SETSIZE (and also with a suggested value). Most uses of select(2) in the source are to poll a single descriptor, so a couple of handy wrapper functions have been added to make this easier. A configure option --enable-fd-setsize has been added to both the unix and win32 builds; on unix we default to 16384 and on windows we default to 256. Windows FD_SETSIZE imposes a limit on the maximum number of descriptors that can be select()ed at once, whereas the unix FD_SETSIZE limit is based on the highest numbered descriptor; 256 should be plenty for PHP scripts under windows (the default OS setting is 64). The win32 specific parts are untested; will do that now.
* Using int when long should be used.Ilia Alshanetsky2004-08-221-1/+1
|
* Fix for #29256 from Dmitry, very slightly modifiedWez Furlong2004-08-101-2/+38
|
* zts fix...Wez Furlong2004-07-311-1/+1
|
* Misc sendto/recvfrom tweaks that have been pending here for a while...Wez Furlong2004-07-311-1/+14
|
* Make sure this is initialized...Wez Furlong2004-07-311-0/+2
|
* More wordsize fixesArd Biesheuvel2004-03-081-2/+2
|
* Fix a bug in the persistent socket liveness checks and feof(); they wereWez Furlong2004-02-041-3/+7
| | | | | | | | | | | | | | | | | | using the default socket timeout of 60 seconds before returning the socket to the calling script. The reason they were using that value is that the same code is used for feof(), so the fix is allowing the caller to indicate the timeout value for liveness checks. A possible remaining issue now is that 0 second timeout[1] for pfsockopen is possibly too short; it's impossible to specify a sane value for all possible uses, so maybe we need a stream context or an .ini option to control this, or maybe use the timeout value that was passed to pfsockopen(). # [1] by timeout, I mean the time that PHP will wait for data on a # persistent socket before deciding if a new connection should be made; # NOT the timeout while waiting for a new connection to be established.
* - A belated happy holidays and PHP 5Andi Gutmans2004-01-081-2/+2
|
* this can't be persistentWez Furlong2003-12-021-1/+2
|
* Removed unused variables.Ilia Alshanetsky2003-11-301-0/+2
|
* Add stream_socket_sendto and stream_socket_recvfrom which work very muchWez Furlong2003-11-291-1/+58
| | | | | like sendto() and recvfrom() syscalls.
* (sort of) MFB, feof fix for sockets.Wez Furlong2003-11-281-1/+7
|
* port "liveness" checks and a couple of other things from the 4.3 branch.Wez Furlong2003-11-271-8/+25
| | | | | | Liveness checks are used to validate persistent socket connects when they are re-used.
* Set the EOF indicator after each read attempt.Wez Furlong2003-10-081-3/+1
| | | | | This prevents it getting stuck in the on position.
* Merge selectable descriptor casting from PHP_4_3 branch.Wez Furlong2003-06-281-0/+1
|
* Win32 build fixes for opensslEdin Kadribasic2003-06-151-1/+1
|
* updating license information in the headers.James Cox2003-06-101-3/+3
|
* Fix warnings.Sebastian Bergmann2003-05-171-1/+3
|
* Add IPv6 support to stream_socket_client/server()Sara Golemon2003-04-051-2/+17
|
* avoid unsigned issues.Wez Furlong2003-03-181-2/+11
|
* 64bit fixesWez Furlong2003-03-151-2/+2
|
* Compiler warning fix.Ilia Alshanetsky2003-03-031-1/+1
|
* Don't shutdown() unix sockets.Wez Furlong2003-03-011-1/+16
| | | | | It causes the server end to close down/break.
* Tidy up stupid signed/unsigned issues with win32 by introducing a ↵Wez Furlong2003-02-281-3/+5
| | | | php_socket_t typedef.
* New user-space functions:Wez Furlong2003-02-281-29/+142
| | | | | | | | | | | . 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.
* Add a generic meta data api for streams.Wez Furlong2003-02-271-0/+6
|
* Fixup build for win32Wez Furlong2003-02-271-0/+5
|
* Another big commit (tm).Wez Furlong2003-02-271-0/+502
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.