Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2019-02-27 | Perl: added processing for IO:Handle-like object. | Alexander Borisov | 1 | -3/+109 | |
The application can return the body as an IO:Handle-like object without file descriptor. | |||||
2019-02-27 | Fixed processing of SERVER_NAME after 77aad2c142a0. | Valentin Bartenev | 11 | -167/+54 | |
Previously, the nxt_router_prepare_msg() function expected server host among other headers unmodified. It's not true anymore since normalization of the Host header has been introduced in 77aad2c142a0. The nxt_unit_split_host() function was removed. It didn't work correctly with IPv6 literals. Anyway, after 77aad2c142a0 the port splitting is done in router while Host header processing. | |||||
2019-02-27 | Controller: added "routes" configuration. | Valentin Bartenev | 1 | -0/+186 | |
2019-02-27 | Controller: added "pass" configuration option. | Valentin Bartenev | 1 | -0/+62 | |
2019-02-27 | Initial routing implementation. | Igor Sysoev | 5 | -40/+978 | |
2019-02-26 | Introduced nxt_memcpy_upcase(). | Igor Sysoev | 2 | -0/+15 | |
2019-02-26 | Introduced nxt_conf_array_qsort(). | Igor Sysoev | 2 | -0/+18 | |
2019-02-26 | Introduced nxt_conf_array_elements_count(). | Igor Sysoev | 2 | -0/+8 | |
2019-02-26 | Keepalive mode is disabled on HTTP header parsing errors. | Igor Sysoev | 1 | -0/+2 | |
2019-02-26 | Fixed violation of the strict aliasing rules in 5d0edd35c4ce. | Valentin Bartenev | 1 | -5/+6 | |
In order to reduce number of operations over rb-tree and process them in batches simultaneously, all the timers changes are temporary stored in array. While processing of these changes, the same memory is also used for storing pointers to postpone timers adding. As the same block of memory has been referenced by two different types of pointers (nxt_timer_change_t * and nxt_timer_t **), some compilers may reorder operations with these pointers and produce broken code. See ticket #221 on GitHub for a particular case. Now the same "nxt_timer_change_t" structure is used in both cases. Also, reverted the -fno-strict-aliasing flag, which has been introduced in ef76227ec159 as a workaround for this issue. | |||||
2019-02-25 | RPC error message size fixed. | Max Romanov | 1 | -1/+1 | |
In case of RPC error, special error message passed to handler. Field 'size' expected to be 0 in this case because in contains fake empty buffer. | |||||
2019-02-25 | Disabled useless code in nxt_router_listen_socket_error(). | Valentin Bartenev | 1 | -4/+8 | |
It doesn't do anything useful, among creating a JSON message and logging it to debug log. Besides that it causes segmentation fault if the RPC handler is triggered with an empty buffer due to exiting of the main process. | |||||
2019-02-23 | Removed surplus check for NUL in nxt_http_validate_host(). | Valentin Bartenev | 1 | -1/+0 | |
Such header fields are already rejected by HTTP parser. | |||||
2019-02-22 | Improvement and unification of version processing in build scripts. | Alexander Borisov | 3 | -6/+3 | |
This also eliminates expressions that incompatible with BSD make, thus fixing installation of Node.js module on FreeBSD (broken by dace60fc4926). | |||||
2019-02-22 | TLS certificates should be freed per listener. | Igor Sysoev | 1 | -6/+9 | |
This fixes memory leak if configuration uses more than one TLS cerificate. | |||||
2019-02-21 | Initializing incoming buffer queue in a proper place. | Sergey Kandaurov | 1 | -2/+2 | |
In case nxt_unit_tracking_read() failed, execution would jump to the error path, where it could try to release buffers from uninitialized yet incoming_buf queue. | |||||
2019-02-19 | Validation and normalization of request host. | Valentin Bartenev | 3 | -11/+112 | |
2019-02-18 | Ignoring HUP signal in main process. | Igor Sysoev | 1 | -0/+11 | |
2019-02-18 | Fixed memory leak on response body sending failure. | Igor Sysoev | 3 | -3/+4 | |
2019-02-18 | Rejecting requests with duplicate "Content-Length". | Valentin Bartenev | 1 | -5/+8 | |
2019-02-07 | Rejecting requests with invalid "Content-Length". | Valentin Bartenev | 1 | -3/+9 | |
2019-02-07 | Rejecting requests with invalid "Content-Length". | Valentin Bartenev | 1 | -3/+9 | |
2019-01-21 | Fixed processing Unix listening socket failures. | Igor Sysoev | 1 | -16/+13 | |
This is related to issue #198 on GitHub. | |||||
2019-01-18 | Testing correct value. | Igor Sysoev | 1 | -1/+1 | |
2019-01-18 | Testing correct value. | Igor Sysoev | 1 | -1/+1 | |
2019-02-07 | Version bump. | Valentin Bartenev | 1 | -2/+2 | |
2018-12-24 | Version bump. | Valentin Bartenev | 1 | -2/+2 | |
2018-12-20 | Python: fixed error reporting on initialization of applications. | Valentin Bartenev | 1 | -11/+10 | |
PyErr_Print() writes traceback to "sys.stderr", which is a file object that can buffer the output. If the process exits immediately, the buffer can be destroyed before flushing to the log. As a result, the user doesn't see the traceback. Now Py_Finalize() is also called in case of any errors during initialization. It finalizes the interpreter and flushes all data. | |||||
2018-12-20 | Python: cleanup of nxt_python_init(). | Valentin Bartenev | 1 | -10/+3 | |
- Removed surplus NULL assignments; - Added missing nxt_slow_path(); - Style cleanup. | |||||
2018-12-20 | Python: fixed a typo in path error message. | Artem Konev | 1 | -1/+1 | |
2018-12-19 | Python: replaced PyErr_PrintEx(1) with PyErr_Print(). | Valentin Bartenev | 1 | -4/+4 | |
These function calls are equivalent. No functional changes. | |||||
2018-12-19 | Node.js: removed value checking for headers. | Alexander Borisov | 1 | -8/+0 | |
2018-12-19 | Node.js: removed unused _implicitHeader() function. | Alexander Borisov | 1 | -5/+0 | |
2018-12-19 | Node.js: added check for libunit version at compile time. | Alexander Borisov | 2 | -6/+12 | |
2018-12-19 | libunit: added generation of version header file. | Alexander Borisov | 2 | -1/+3 | |
2018-12-19 | Node.js: checking for exception after running JS code from C++. | Alexander Borisov | 1 | -3/+20 | |
2018-12-19 | Node.js: checking uniqueness of HTTP headers for different case. | Alexander Borisov | 2 | -24/+62 | |
2018-12-19 | Node.js: calling write callback asynchronously. | Alexander Borisov | 1 | -1/+13 | |
2018-12-19 | Node.js: style fixes. | Alexander Borisov | 1 | -8/+10 | |
No functional changes. | |||||
2018-12-19 | Node.js: changed the unit-http socket constructor. | Alexander Borisov | 1 | -5/+10 | |
Third-party file descriptors are not supported. Socket "readable" and "writable" options are set true by default. | |||||
2018-12-19 | Node.js: napi_call_function() replaced with napi_make_callback(). | Alexander Borisov | 2 | -27/+63 | |
The sequence of napi_open_callback_scope(), napi_call_function(), and napi_close_callback_scope() functions calls executes the provided JS code and all functions enqueued by process.nextTick() and Promises during this execution. | |||||
2018-12-19 | Node.js: changed the 'data' event calling sequence for the request. | Alexander Borisov | 1 | -10/+30 | |
The problem is caused by Promises' inconsistency. The 'date' event could have been triggered before the user has started listening for it. To resolve the issue, we override the 'on' method of the request's emitter. | |||||
2018-12-19 | Node.js: buffering HTTP headers before writing the body. | Alexander Borisov | 1 | -10/+13 | |
2018-12-12 | Node.js: removed unused dependency. | Valentin Bartenev | 1 | -4/+1 | |
2018-11-27 | PHP: fixed "disable_functions" and "disable_classes" options. | Valentin Bartenev | 1 | -10/+87 | |
It turned out they need additional processing to work. This closes #183 issue on GitHub. | |||||
2018-11-22 | PHP: workaround for bug #71041. | Valentin Bartenev | 1 | -2/+6 | |
Since PHP 7, a zend_signal_startup() call is required if the interpreter was built with ZEND_SIGNALS defined; such a call was added in 3fd76e4ce70a. However, the zend_signal_startup() export is missing from the PHP library; as the result, dlopen() fails with the 'Undefined symbol "zend_signal_startup"' error while loading the PHP module. Meanwhile, if PHP is built without ZTS, the zend_signal_startup() call can be omitted; otherwise, the missing call causes segmentation fault. The PHP fix already was committed to upstream, but we still have to deal with numerous unpatched versions remaining at large. See the related PHP bug: https://bugs.php.net/bug.php?id=71041 | |||||
2018-11-21 | PHP: fixed compatibility with ZTS. | Valentin Bartenev | 1 | -6/+25 | |
This closes #184 issue on GitHub. | |||||
2018-11-15 | Version bump. | Valentin Bartenev | 1 | -2/+2 | |
2018-11-15 | Node.js: npm package readme cleanup. | Valentin Bartenev | 1 | -18/+2 | |
2018-11-15 | Node.js: res.write() must return a bool value. | Alexander Borisov | 1 | -1/+1 | |