summaryrefslogtreecommitdiff
path: root/ext/sockets/sendrecvmsg.c
Commit message (Collapse)AuthorAgeFilesLines
* year++Xinchen Hui2018-01-021-1/+1
|
* Update copyright headers to 2017Sammy Kaye Powers2017-01-041-1/+1
|
* Fixed compilation warningsDmitry Stogov2016-06-231-2/+2
|
* Added ZEND_ATTRIBUTE_FORMAT to some middind functions.Dmitry Stogov2016-06-211-3/+3
| | | | | "%p" replaced by ZEND_LONG_FMT to avoid compilation warnings. Fixed most incorrect use cases of format specifiers.
* Merge branch 'PHP-5.6' into PHP-7.0Lior Kaplan2016-01-011-1/+1
|\ | | | | | | | | * PHP-5.6: Happy new year (Update copyright to 2016)
| * Happy new year (Update copyright to 2016)Lior Kaplan2016-01-011-1/+1
| |
| * bump yearXinchen Hui2015-01-151-1/+1
| |
* | Cleanup resource handling APIsXinchen Hui2015-02-021-4/+8
| |
* | bump yearXinchen Hui2015-01-151-1/+1
| |
* | first shot remove TSRMLS_* thingsAnatol Belski2014-12-131-17/+17
| |
* | s/PHP 5/PHP 7/Johannes Schlüter2014-09-191-1/+1
| |
* | fixed several long vs zend_long castsAnatol Belski2014-08-261-2/+2
| |
* | master renames phase 3Anatol Belski2014-08-251-1/+1
| |
* | master renames phase 1Anatol Belski2014-08-251-26/+26
| |
* | fixes to %pd format usageAnatol Belski2014-08-241-1/+1
| |
* | ported ext/socketsAnatol Belski2014-08-191-11/+11
| |
* | basic macro replacements, all at onceAnatol Belski2014-08-191-18/+18
| |
* | Merge branch 'master' into phpngDmitry Stogov2014-06-181-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master: (41 commits) Update copyright year to 2014 Update copyright year to 2014 Update copyright year to 2014 Update copyright year to 2014 Update copyright year to 2014 Update copyright year to 2014 Update copyright year to 2014 NEWS Fix Request #67453 Allow to unserialize empty data. Update copyright year to 2014 Update copyright year for re2c generated files Update copyright year to 2014 Update copyright year for re2c files as well Fix patch for bug #67436 fix failed test Fix test on modern distro where old unsecure algo are disabled in openssl config. Testing recent algo should be enough to check this function. Added tests for bug 67436 Fixed wrong XFAIL test - already fixed Fix typo in Bug #67406 NEWS entry Fix typo in Bug #67406 NEWS entry ... Conflicts: Zend/zend_compile.c ext/session/session.c ext/standard/array.c ext/standard/http_fopen_wrapper.c tests/classes/bug63462.phpt
| * Update copyright year to 2014Lior Kaplan2014-06-181-1/+1
| |
| * Fix bug #64506: fix build with --disable-ipv6Gustavo Lopes2013-05-081-7/+9
| |
* | Use reference counting instead of zval duplicationDmitry Stogov2014-06-051-1/+1
| |
* | Z_TYPE_PP > Z_TYPE_PPierre Joye2014-05-171-1/+1
| |
* | Refactoring socket (only compilable now)Xinchen Hui2014-05-171-14/+15
| |
* | Fix bug #64506: fix build with --disable-ipv6Gustavo Lopes2013-05-081-7/+9
|/
* Fix bug and hopefully build on WinSDK 6.1Gustavo Lopes2013-02-031-1/+5
| | | | | | | | | | | | | | | | | | | | | | | There build was failing on rmtools on the sockets extension for two reasons: 1. IPV6_TCLASS and IPV6_RECVTCLASS not being defined. These are probably recent additions to SDK. Windows 7 doesn't event seem to have complete support for IPV6_TCLASS, not accepting in WSASendMsg(). The parts that needed this constant were not guarded by #ifdefs. They are now. 2. The constants EWOULDBLOCK and EINPROGRESS not being defined. These were only defined in php_network.h, outside of the extension, and not all source files included this header. Nevertheless, a macro defined in php_sockets.h needed these constants. When this macro was used in files that did not include php_network.h, the compilation would fail. Surprisingly, the build did not fail when using the 7.1 Windows SDK (more likely, the CRT headers used in VC10), as somehow errno.h was being included through some other standard header. This would make the constant EWOULDBLOCK defined; however, it would be defined to the wrong value. In the winsock context, WSAEWOULDBLOCK should be used instead. Because we have difficulty using Windows-only constants in the code, we (re)define EWOULDBLOCK to WSAEWOULDBLOCK. This has the obvious disavantage we may miss problems like this again in the future.
* send/recvmsg() support for WindowsGustavo Lopes2013-02-021-3/+51
|
* Revert "Payload of HOPLIMIT/TCLASS are 8-bit"Gustavo Lopes2013-02-021-6/+4
| | | | | | | | | | This reverts commit 61a5ec7381ba5388a52926779fe3f58af0caea83. I checked Linux and OpenBSD and both use integers to write the IPV6_TCLASS messages and they don't force any endianness. This is despite RFC 3542 explicitly saying the first byte of cmsg_data will have the result. In any case, it doesn't make any difference in little-endian archs.
* Payload of HOPLIMIT/TCLASS are 8-bitGustavo Lopes2013-02-021-4/+6
|
* Build fixes; accept names for if_indexGustavo Lopes2013-02-021-6/+4
|
* Refactoring: move stuff to new conversions.cGustavo Lopes2013-02-021-1459/+2
|
* Support sticky IPV6_PKTINFOGustavo Lopes2013-02-021-2/+88
|
* Rename some functions for consistencyGustavo Lopes2013-02-021-2/+2
|
* Destroy ancillary registry on shutdownGustavo Lopes2013-02-021-0/+9
|
* Check return of fstat()Gustavo Lopes2013-02-021-1/+6
|
* Fix build on Mac OS XGustavo Lopes2013-02-021-3/+24
| | | | By deactivating unsupported features on this OS.
* Add test for CMSG_CREDENTIALS messageGustavo Lopes2013-02-021-21/+39
|
* Added support for AF_UNIX messagesGustavo Lopes2013-02-021-57/+363
| | | | | | | | | Added constants: SCM_RIGHTS, SCM_CREDENTIALS and SO_PASSCRED. The function socket_cmsg_space() was modified to support message types with variable size. Its new signature is: int socket_cmsg_space(int $level, int $type, int $n) where $n is the number of repetable elements that the message is composed of.
* Added missing return statementsGustavo Lopes2013-02-021-0/+2
|
* Support for IPV6_HOPLIMIT and IPV6_TCLASSGustavo Lopes2013-02-021-5/+38
|
* Fix bug in from_zval_write_control_array()Gustavo Lopes2013-02-021-1/+1
|
* Fix bug converting zval sockaddrGustavo Lopes2013-02-021-0/+2
| | | | The bug ocurred when the family was not specified but was instead guessed.
* Wrap recvmsg() and sendmsg()Gustavo Lopes2013-02-021-0/+1377
This introduces two new functions: int socket_recvmsg(resource $socket, array &$msghdr, int $flags) int socket_sendmsg(resource $socket, array $msghdr, int $flags) The arrays representing struct msghdr follow the native counterpart closely: structs are mapped to arrays, fields to array elements whose key is the name of the field without the prefix (e.g. "name" instead of "msg_name") and array are mapped to sequential numeric PHP arrays. Right now the only type of ancillary data supported is fot the level/type pair IPPROTO_IPV6/IPV6_PKTINFO. I also refactored out the name resolution functions and made sockets_strerror() a global function.