Sat, 03 Jun 2023 17:10:04 +0200 mod_http: Use RFC 7239 Forwarded header to find original client IP
Kim Alvefur <zash@zash.se> [Sat, 03 Jun 2023 17:10:04 +0200] rev 13130
mod_http: Use RFC 7239 Forwarded header to find original client IP Prefer over X-Forwarded-* since it has an actual specification. Main practical difference is that Forwarded may carry more properties than only the IP address since it is a structured header. Since we parse it into an array, it is easier to do the logical thing and iterate backwards trough proxies until an untrusted one is encountered. Compare the handling of X-Forwarded-For. The 'secure' field now accounts for the full chain of proxies, which must be secure all the way to be considered secure.
Sat, 03 Jun 2023 17:10:12 +0200 mod_http: Handle bracketed IP address format from RFC 7239
Kim Alvefur <zash@zash.se> [Sat, 03 Jun 2023 17:10:12 +0200] rev 13129
mod_http: Handle bracketed IP address format from RFC 7239 There are hints that this format might be used in X-Forwarded-For as well, so best handle it everywhere. Strips both brackets and optional port number.
Sat, 03 Jun 2023 16:15:52 +0200 util.http: Implement parser for RFC 7239 Forwarded header
Kim Alvefur <zash@zash.se> [Sat, 03 Jun 2023 16:15:52 +0200] rev 13128
util.http: Implement parser for RFC 7239 Forwarded header Standardized and structured replacement for the X-Forwarded-For, X-Forwarded-Proto set of headers. Notably, this allows per-hop protocol information, unlike X-Forwarded-Proto which is always a single value for some reason.
Thu, 01 Jun 2023 14:33:57 +0200 util.set: Remove duplicate __freeze metamethod
Kim Alvefur <zash@zash.se> [Thu, 01 Jun 2023 14:33:57 +0200] rev 13127
util.set: Remove duplicate __freeze metamethod Backs out 895a82c5d8d4 beacuse __freeze already added in a96a2fbcc6c0
Wed, 31 May 2023 14:20:45 +0200 Merge 0.12->trunk
Kim Alvefur <zash@zash.se> [Wed, 31 May 2023 14:20:45 +0200] rev 13126
Merge 0.12->trunk
Wed, 31 May 2023 14:08:19 +0200 util.prosodyctl.check: Fix error where hostname can't be turned into A label 0.12
Kim Alvefur <zash@zash.se> [Wed, 31 May 2023 14:08:19 +0200] rev 13125
util.prosodyctl.check: Fix error where hostname can't be turned into A label Where gethostname or tohostname returns an invalid name, e.g. containing underscores or something, to_ascii would reject this and return nil, which triggers an error in the dns lookup. Reported by prova2 in the chat, for whom tohostname returned a long name containing underscores.
Wed, 31 May 2023 01:14:59 +0200 util.startup: Record current version in a metric
Kim Alvefur <zash@zash.se> [Wed, 31 May 2023 01:14:59 +0200] rev 13124
util.startup: Record current version in a metric Useful to have this info available when juggling metrics, e.g. to see if things changed between versions.
Wed, 31 May 2023 01:07:27 +0200 util.startup: Remove componentmanager backwards compatibility
Kim Alvefur <zash@zash.se> [Wed, 31 May 2023 01:07:27 +0200] rev 13123
util.startup: Remove componentmanager backwards compatibility Module was removed in 0.8.0 in c52b06de9b27
Mon, 29 May 2023 01:42:31 +0200 net.http.server: Return request ID in header to aid debugging
Kim Alvefur <zash@zash.se> [Mon, 29 May 2023 01:42:31 +0200] rev 13122
net.http.server: Return request ID in header to aid debugging Eases locating the request in logs
Sun, 28 May 2023 22:33:45 +0200 mod_admin_shell: Show internal URL where different from external
Kim Alvefur <zash@zash.se> [Sun, 28 May 2023 22:33:45 +0200] rev 13121
mod_admin_shell: Show internal URL where different from external
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 tip