Commit Graph

1216 Commits

Author SHA1 Message Date
Valentin Bartenev ceeb301881 Go: specifying command line arguments to the executable.
This closes #110 issue on GitHub.
2018-06-06 16:53:35 +03:00
Igor Sysoev ff6ca2a82c Fixed keep-alive hanging after reconfiguration. 2018-05-30 18:46:05 +03:00
Igor Sysoev d3356f7ad2 Added version number to main process title. 2018-05-29 19:51:27 +03:00
Valentin Bartenev d7e6e2bd8c Configuration of environment variables for application processes. 2018-05-28 20:55:23 +03:00
Sergey Kandaurov 3befb08204 Fixed a dead store.
Found by Clang Static Analyzer.
2018-05-25 16:18:34 +03:00
Sergey Kandaurov a9ea218e7e Using getrandom() libc interface, SYS_getrandom fixes.
The interface is available since Glibc 2.25, and FreeBSD 12.0.
2018-05-24 20:35:47 +03:00
Valentin Bartenev 3e8dbfe5ff Added SERVER_SOFTWARE request meta-variable. 2018-05-21 16:14:24 +03:00
Max Romanov 07204789bc Eliminating possible NULL pointer dereference.
Found by Coverity (CID 276138).
2018-04-27 20:32:50 +03:00
Valentin Bartenev 10898568a3 Version bump. 2018-04-27 16:48:14 +03:00
Max Romanov 179819dbee Controller waits READY message from router.
This required to avoid racing condition when controller receive router
port before router receives controller port.
2018-04-26 16:44:20 +03:00
Valentin Bartenev 17160e9352 Python: added a missing slash in the path to "pyenv.cfg".
This closes #115 issue on GitHub.
2018-04-25 15:11:01 +03:00
Valentin Bartenev 749f7c0340 Support for PEP 405 virtual environments.
This closes #96 issue on GitHub.
2018-04-24 20:49:36 +03:00
Valentin Bartenev 5371891492 Fixed segfault when two modules have the same type and version.
The bug appeared in 217e48a3b091.
This closes #104 issue on GitHub.
2018-04-20 23:57:46 +03:00
Igor Sysoev 8ed36563d1 Fixed alerts about freeing non-freeable memory on connection close.
The nxt_conn_t object is allocated by nxt_zget() and should not be freed.
2018-04-20 19:46:36 +03:00
Igor Sysoev b95d5b8882 Prevention of freeing non-freeable memory pool block. 2018-04-20 19:46:36 +03:00
Max Romanov ad36c8ca8d Go: fixed request.Read() behaviour for EOF.
This closes #108 issue on GitHub.
2018-04-20 17:23:43 +03:00
Valentin Bartenev a20830ff55 Router: fixed race condition while access log reopening.
In order to reopen access log, the router process creates a memory pool
and allocates a buffer to send RPC message for the main process.

Previously, the memory pool was destroyed when RPC response handler was
called.  It appeared, that the buffer completion handler could be not
triggered by that time and still remained in a queue.

Now the memory pool is destroyed only after both events are happen.
2018-04-19 19:48:58 +03:00
Alexander Borisov da22c2ca96 Python: returning write() callable object from start_response().
According to PEP (3)333 the start_respose() function must return
a write() callable.

This closes #107 issue on GitHub.
2018-04-19 17:35:07 +03:00
Valentin Bartenev b06a0c95d0 Removed duplicating socket address parsing function.
This also fixes #101 issue on GitHub.  The function previously used to
parse IPv6 address of control socket was broken.  Now the working function
is used instead.
2018-04-18 17:28:22 +03:00
Valentin Bartenev 54ccb32333 Added missing cleanup when nxt_port_socket_write() failed. 2018-04-18 17:28:04 +03:00
Valentin Bartenev ab4f867996 Added missing checks if nxt_port_rpc_register_handler() failed.
This closes #97 issue on GitHub.
Thanks to 洪志道 (Hong Zhi Dao).
2018-04-17 21:13:43 +03:00
Valentin Bartenev 555141f798 Improved "unitd" command line help. 2018-04-13 20:07:02 +03:00
Valentin Bartenev 115949c50f Version bump. 2018-04-13 19:10:15 +03:00
Valentin Bartenev 946cfa32a8 Version bump. 2018-04-12 19:39:25 +03:00
Igor Sysoev d5a96ff000 Miscellaneous changes. 2018-04-12 17:11:35 +03:00
Igor Sysoev 8afa51415e Disabling timer when request header has been entirely read. 2018-04-12 17:11:34 +03:00
Igor Sysoev 8e9a950374 Fixed idle timeout, broken in b3e55c647741. 2018-04-12 17:11:33 +03:00
Valentin Bartenev c610b35649 Controller: added "/config" prefix for the configuration object. 2018-04-11 18:23:58 +03:00
Valentin Bartenev da61cfd98b Access log reopening. 2018-04-11 18:23:58 +03:00
Valentin Bartenev 204c394721 Initial access log support. 2018-04-11 18:23:33 +03:00
Igor Sysoev c7e575d5c6 Introducing connection state io_read_handler. 2018-04-11 17:33:18 +03:00
Igor Sysoev 0be4f1f693 Keepalive processing optimization. 2018-04-11 17:33:16 +03:00
Valentin Bartenev dc75c83950 Fixed pipelined request processing, broken by 9e16499b63f0. 2018-04-11 12:49:58 +03:00
Igor Sysoev 1fab645246 Added "408 Request Timeout" error response. 2018-04-10 19:38:48 +03:00
Igor Sysoev 73bdb5ec09 Refactored HTTP header parsing. 2018-04-10 19:38:45 +03:00
Igor Sysoev 0a44ac371a Splitting HTTP processing in more granulate connection states. 2018-04-10 19:30:45 +03:00
Valentin Bartenev 41317e37da HTTP parser: saving partial method.
This is useful for log purposes.
2018-04-10 16:51:22 +03:00
Valentin Bartenev 8d697e8004 HTTP parser: saving unsupported version.
This is useful for log purposes.
2018-04-10 16:51:22 +03:00
Valentin Bartenev b1b9c78362 HTTP parser: correct "target" for partial or invalid request line. 2018-04-10 16:51:22 +03:00
Valentin Bartenev eb51264710 Processing of partially parsed HTTP header.
This is useful for log purposes.
2018-04-09 19:16:19 +03:00
Valentin Bartenev 96927e7d0c Controller: fixed a memory leak when PUT operation failed.
Thanks to 洪志道 (Hong Zhi Dao).
2018-04-08 14:08:06 +03:00
Max Romanov 8934afee24 Go: Forced WriteHeader after application request processing.
Application should create response for every request.
If not, Unit package will do it.
2018-04-06 16:27:46 +03:00
Max Romanov 2f3b9d4583 Handling error return from application 'run()' function.
Server error response generated or connection closed.
2018-04-05 17:20:26 +03:00
Max Romanov d748f74f2b Stopping timed out application process. 2018-04-05 17:19:25 +03:00
Valentin Bartenev c0a423aa74 Fixed NXT_INT64_T_HEXLEN.
This closes #89 issue on GitHub.
Thanks to hongzhidao.
2018-04-05 15:54:08 +03:00
Valentin Bartenev d15b4ca906 Style. 2018-04-05 15:49:41 +03:00
Alexander Borisov 49bd3a21e0 Changed version processing for modules. 2018-04-04 18:53:39 +03:00
Valentin Bartenev 0665896a55 Style: capitalized letters in hexadecimal literals. 2018-04-04 18:13:05 +03:00
Alexander Borisov f2c0c18f8b Ruby: added 'enc/trans/transdb' module for converting encodings.
This closes #92 issue on GitHub.
2018-04-03 16:26:22 +03:00
Igor Sysoev fa04c05aa0 HTTP: using r->mem_pool retention counter for response buffers. 2018-04-03 16:28:26 +03:00