Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2021-11-02 | Tests: added pyOpenSSL module check were necessary. | Andrei Zeliankou | 2 | -0/+4 | |
2021-11-02 | Tests: removed unused imports. | Andrei Zeliankou | 11 | -12/+0 | |
2021-11-02 | Improved logging of app module load errors. | Valentin Bartenev | 1 | -5/+22 | |
2021-10-28 | Tests: added tests for TLS session tickets. | Andrei Zeliankou | 1 | -0/+195 | |
2021-10-28 | Tests: added tests for TLS sessions. | Andrei Zeliankou | 1 | -0/+129 | |
2021-10-28 | Moving request limit control to libunit. | Max Romanov | 24 | -248/+273 | |
Introducting application graceful stop. For now only used when application process reach request limit value. This closes #585 issue on GitHub. | |||||
2021-10-28 | Python: creating and reusing asgi_add_reader() wrapper. | Max Romanov | 1 | -62/+21 | |
2021-10-28 | Adding explicit app reference to nxt_router_app_port_release(). | Max Romanov | 1 | -11/+8 | |
port->app field is not thread safe and should be used in main thread only. To release port after request processing, application reference should be obtained from corresponding request descriptor. | |||||
2021-10-27 | Fixed memleaks if PID checks fail in nxt_port_incoming_port_mmap(). | Valentin Bartenev | 1 | -11/+12 | |
Memory allocated for "mem" and "mmap_handler" leaked in that case. Also removed one dead assigment of "hdr" pointer. | |||||
2021-10-26 | Fixed a potential descriptor leak if mmap() failed. | Valentin Bartenev | 1 | -0/+1 | |
2021-10-26 | Custom implementation of Base64 decoding function. | Valentin Bartenev | 9 | -82/+209 | |
Compared to the previous implementation based on OpenSSL, the new implementation has these advantages: 1. Strict and reliable detection of invalid strings, including strings with less than 4 bytes of garbage at the end; 2. Allows to use Base64 strings without '=' padding. | |||||
2021-10-21 | Packages: removed support for EOL'ed Debian/Ubuntu distros. | Andrei Belov | 3 | -102/+3 | |
While here, default debhelper compat level bumped to 11 (this is the version installed out of the box on Ubuntu 18.04 "bionic" which is the oldest one from supported distros). | |||||
2021-10-21 | Packages: added Ubuntu 21.10 "impish" support. | Andrei Belov | 7 | -3/+193 | |
2021-10-19 | Packages: fixed dependency tracking for Go and Java modules on RHEL7. | Andrei Belov | 1 | -2/+2 | |
2021-10-18 | Tests: style. | Andrei Zeliankou | 51 | -74/+19 | |
2021-10-12 | Removed unused declarations. | Zhidao HONG | 1 | -4/+0 | |
Declarations became unused after 6976d36be926. No functional changes. | |||||
2021-10-09 | Configuration: automatic migration to the new "share" behavior. | Zhidao HONG | 8 | -46/+174 | |
2021-10-08 | Merged with the default branch. | Artem Konev | 3 | -0/+269 | |
2021-10-08 | Fixed invalid call sequence in nxt_tls_ticket_key_callback(). | Artem Konev | 1 | -5/+13 | |
The bug has been introduced in 0bca988e9541. | |||||
2021-10-05 | Tests: added tests for variables in "chroot". | Andrei Zeliankou | 1 | -0/+116 | |
2021-10-05 | Tests: added tests for variables in "share". | Andrei Zeliankou | 1 | -0/+80 | |
2021-10-05 | Tests: added tests for "share" option with arrays. | Andrei Zeliankou | 1 | -0/+73 | |
2021-10-04 | Static: removed surplus assignment. | Valentin Bartenev | 1 | -1/+0 | |
It's not needed after 69d823e5710a. Found by Clang Static Analyzer. | |||||
2021-10-04 | Static: fixed possible descriptor leak introduced in a946d8cd7f8c. | Valentin Bartenev | 1 | -0/+1 | |
2021-10-01 | Static: multiple paths in the "share" option. | Zhidao HONG | 3 | -72/+202 | |
2021-09-30 | Static: variables in the "share" option. | Zhidao HONG | 9 | -90/+135 | |
This commit supports variable in the "share" option, the finding path to file serve is the value from "share". An example: { "share": "/www/data/static$uri" } | |||||
2021-09-28 | Static: variables in the "chroot" option. | Zhidao HONG | 6 | -95/+275 | |
2021-09-21 | Regenerated Dockerfiles. | Konstantin Pavlov | 5 | -10/+10 | |
2021-09-21 | Docker: bumped versions. | Konstantin Pavlov | 1 | -5/+5 | |
Minimal image now uses Debian 11 "Bullseye" as a base. Language versions are bumped to: - Go 1.17 - Node 16 - Perl 5.34 - Ruby 3.0 | |||||
2021-09-20 | Fixed WebSocket connection hang issue after listener reconfigure. | Max Romanov | 3 | -29/+39 | |
Because the configuration values were read from the listener's configuration, an established WebSocket connection was unable to work properly (i. e. stuck) if the listener was removed. The correct source of configuration values is the request config joint. This is related to issue #581 on GitHub. | |||||
2021-09-14 | Fixing build with glibc 2.34. | Max Romanov | 3 | -11/+10 | |
Explicitly using the sysconf() call to obtain the minimum thread stack size instead of the PTHREAD_STACK_MIN macro. This closes #576 PR on GitHub. | |||||
2021-09-07 | Router: refactored variable pass. | Zhidao HONG | 6 | -54/+81 | |
Since the "pass" option supports both strings and variables, a generic nxt_var_t structure can be used in the configuration phase, and the "name" field in actions is redundant. No functional changes. | |||||
2021-09-06 | Var: keeping raw variable string for debug. | Zhidao HONG | 1 | -75/+71 | |
2021-08-25 | TLS: refactored nxt_tls_ticket_key_callback(). | Valentin Bartenev | 2 | -74/+51 | |
Deduplicated code and improved style. No functional changes. | |||||
2021-08-24 | Version bump. | Valentin Bartenev | 2 | -2/+31 | |
2021-08-20 | Fixed a typo in changes.xml. | Artem Konev | 1 | -1/+1 | |
2021-08-19 | Unit 1.25.0 release. | Valentin Bartenev | 1 | -0/+1 | |
2021-08-19 | Generated Dockerfiles for Unit 1.25.0.1.25.0 | Valentin Bartenev | 8 | -8/+8 | |
2021-08-19 | Added version 1.25.0 CHANGES. | Valentin Bartenev | 2 | -2/+42 | |
2021-08-19 | Reordered changes for 1.25.0 by significance (subjective). | Valentin Bartenev | 1 | -16/+15 | |
2021-08-19 | Edited changes.xml for the 1.25.0 release. | Artem Konev | 1 | -6/+6 | |
2021-08-17 | Added TLS session tickets support. | Andrey Suvorov | 6 | -0/+442 | |
2021-08-17 | Packages: added Debian 11 "bullseye" support. | Andrei Belov | 2 | -1/+13 | |
2021-08-12 | Introduced the generic API nxt_buf_dummy_completion(). | Zhidao HONG | 2 | -11/+9 | |
No functional changes. | |||||
2021-08-12 | Log: renamed related variables "log" as "_log" to prevent conflicts. | Zhidao HONG | 1 | -11/+11 | |
2021-08-12 | Java: upgrading third-party components. | Max Romanov | 3 | -13/+13 | |
2021-08-12 | Tests: client IP address replacement. | Oisin Canty | 2 | -0/+133 | |
2021-08-12 | Router: client IP address replacement. | Oisin Canty | 7 | -11/+288 | |
This commit introduces the replacement of the client address based on the value of a specified HTTP header. This is intended for use when Unit is placed behind a reverse proxy like nginx or a CDN. You must specify the source addresses of the trusted proxies. This can be accomplished with any valid IP pattern supported by Unit's match block: ["10.0.0.1", "10.4.0.0/16", "!192.168.1.1"] The feature is configured per listener. The client address replacement functionality only operates when there is a source IP match and the specified header is present. Typically this would be an 'X-Forwarded-For' header. { "listeners": { "127.0.0.1:8080": { "client_ip": { "header": "X-Forwarded-For", "source": [ "10.0.0.0/8" ] }, "pass": "applications/my_app" }, } } If a request occurs and Unit receives a header like below: "X-Forwarded-For: 84.123.23.23" By default, Unit trusts the last rightmost IP in the header, so REMOTE_ADDR will be set to 84.123.23.23 if the connection originated from 10.0.0.0/8. If Unit runs behind consecutive reverse proxies and receives a header similar to the following: "X-Forwarded-For: 84.123.23.23, 10.0.0.254" You will need to enable "recursive" checking, which walks the header from last address to first and chooses the first non-trusted address it finds. { "listeners": { "127.0.0.1:8080": { "client_ip": { "header": "X-Forwarded-For", "source": [ "10.0.0.0/8" ] "recursive": true, }, "pass": "applications/my_app" }, } } If a connection from 10.0.0.0/8 occurs, the chain is walked. Here, 10.0.0.254 is also a trusted address so the client address will be replaced with 84.123.23.23. If all IP addresses in the header are trusted, the client address is set to the first address in the header: If 10.0.0.0/8 is trusted and "X-Forwarded-For: 10.0.0.3, 10.0.0.2, 10.0.0.1", the client address will be replaced with 10.0.0.3. | |||||
2021-08-12 | Introduced nxt_sockaddr_parse_optport() for addresses w/o ports. | Oisin Canty | 3 | -64/+114 | |
2021-08-11 | Tests: initialising log params before first _print_log(). | Max Romanov | 1 | -2/+3 | |