kshitijk4poor
98f7ec3cf4
refactor(proxy): derive the bind policy once and pin the refusal status
...
The bind address never changes for an app's lifetime, so create_app now
canonicalises it and computes the wildcard flag and allowed Host set once
instead of on every request. _WILDCARD_HOSTS duplicated what
ip_address().is_unspecified already answers (only "" needs a special case),
the Sec-Fetch-Site sets become named module constants, and fetch_site is a
required argument so no caller can silently skip that check.
The 403 message now says what is actually refused (browser requests and
foreign Host names) rather than implying every non-local client is.
The parametrized proxy test asserted 200-vs-"some 4xx" via a tuple
comparison; it now pins status == 200/403 and the exact upstream request
count, so a regression to a different status or a leaked forward fails.
2026-10-03 16:29:17 +05:30
..
2026-09-29 07:44:13 +00:00
2026-09-29 07:44:13 +00:00
2026-09-29 15:45:52 +05:30
2026-10-01 22:17:57 +05:30
2026-09-29 18:47:44 -05:00
2026-09-27 18:19:17 +05:30
2026-10-02 01:18:03 +05:30
2026-09-29 07:44:13 +00:00
2026-10-01 01:50:16 -05:00
2026-10-02 18:35:45 -05:00
2026-10-01 13:23:12 -07:00
2026-09-28 14:16:18 -07:00
2026-10-01 13:23:12 -07:00
2026-09-28 14:16:18 -07:00
2026-09-29 14:40:47 -05:00
2026-09-28 14:16:18 -07:00
2026-10-02 22:47:50 -04:00
2026-09-28 14:16:18 -07:00
2026-09-28 14:16:18 -07:00
2026-09-28 14:16:18 -07:00
2026-09-29 20:57:23 -05:00
2026-10-02 13:34:54 +05:30
2026-09-30 23:05:43 -05:00
2026-09-28 14:18:10 +00:00
2026-09-29 20:34:45 +05:30
2026-09-28 14:16:18 -07:00
2026-09-28 03:34:07 -07:00
2026-09-28 12:33:01 -07:00
2026-09-29 20:24:19 -04:00
2026-09-29 20:24:19 -04:00
2026-09-28 04:04:23 -07:00
2026-09-28 21:02:39 -04:00
2026-10-01 09:44:06 -04:00
2026-09-28 05:28:05 -07:00
2026-09-28 05:28:05 -07:00
2026-10-02 02:54:18 +05:30
2026-10-02 01:05:58 +05:30
2026-09-29 21:39:17 -05:00
2026-09-28 04:44:29 -07:00
2026-09-29 21:48:25 -05:00
2026-10-02 00:52:27 +05:30
2026-09-29 19:49:52 -05:00
2026-09-28 18:44:52 -04:00
2026-09-28 18:44:52 -04:00
2026-09-29 19:43:22 -05:00
2026-09-27 11:44:31 -07:00
2026-09-27 22:04:26 -07:00
2026-09-28 12:43:03 -07:00
2026-09-29 12:16:43 -04:00
2026-09-28 06:42:00 -07:00
2026-10-02 04:39:28 -07:00
2026-09-28 13:30:57 -07:00
2026-09-29 20:57:17 -05:00
2026-09-28 03:13:19 -07:00
2026-09-28 04:04:23 -07:00
2026-09-28 04:04:23 -07:00
2026-09-28 13:30:57 -07:00
2026-09-28 13:30:57 -07:00
2026-10-03 16:26:38 +05:30
2026-09-27 11:48:22 -07:00
2026-09-28 13:30:57 -07:00
2026-10-02 18:40:00 -05:00
2026-09-28 04:04:23 -07:00
2026-09-28 12:18:58 -07:00
2026-09-28 13:30:57 -07:00
2026-10-02 14:17:41 -07:00
2026-09-29 18:09:20 -05:00
2026-10-01 22:17:57 +05:30
2026-09-29 19:43:22 -05:00
2026-10-02 20:51:34 +00:00
2026-09-27 15:27:43 -05:00
2026-09-28 14:16:18 -07:00
2026-09-30 12:01:29 -05:00
2026-10-01 04:50:26 -05:00
2026-10-02 22:58:26 -05:00
2026-09-28 10:56:47 -05:00
2026-10-01 22:03:11 -07:00
2026-10-02 22:21:27 -05:00
2026-10-02 22:21:27 -05:00
2026-09-28 03:37:09 -07:00
2026-09-28 03:37:09 -07:00
2026-09-28 03:37:09 -07:00
2026-09-27 18:29:18 +05:30
2026-09-28 03:37:09 -07:00
2026-10-02 00:54:45 +05:30
2026-09-29 15:58:55 +05:30
2026-09-28 12:24:52 -05:00
2026-09-27 07:46:31 -05:00
2026-09-29 18:41:02 -05:00
2026-09-29 12:55:46 -07:00
2026-10-03 02:25:26 -07:00
2026-09-27 22:36:26 -04:00
2026-09-29 18:49:58 -05:00
2026-10-03 02:25:26 -07:00
2026-09-27 22:41:00 -04:00
2026-09-27 22:36:26 -04:00
2026-09-28 12:36:05 -05:00
2026-09-28 21:02:39 -04:00
2026-09-28 12:28:04 -05:00
2026-10-03 02:25:26 -07:00
2026-09-28 14:16:18 -07:00
2026-09-29 21:48:25 -05:00
2026-09-28 02:00:41 -07:00
2026-09-28 12:43:03 -07:00
2026-10-02 04:39:28 -07:00
2026-10-02 13:34:54 +05:30
2026-09-29 12:55:46 -07:00
2026-09-29 20:24:19 -04:00
2026-09-27 18:31:33 -05:00
2026-09-29 15:58:55 +05:30
2026-10-02 22:40:31 -05:00
2026-10-02 20:24:37 -05:00
2026-09-27 22:04:26 -07:00
2026-10-01 16:22:28 +05:30
2026-09-29 16:47:48 +05:30
2026-09-28 01:52:54 -07:00
2026-09-28 19:49:00 -04:00
2026-09-27 17:06:55 -07:00
2026-10-01 10:46:45 -07:00
2026-10-02 03:40:17 -07:00
2026-09-28 05:24:26 -07:00
2026-09-28 14:16:18 -07:00
2026-10-01 12:41:57 -07:00
2026-09-30 22:30:18 -05:00
2026-09-28 14:16:18 -07:00
2026-09-28 04:44:29 -07:00
2026-09-27 21:29:39 -07:00
2026-09-29 20:24:19 -04:00
2026-09-28 04:04:23 -07:00
2026-09-28 04:04:23 -07:00
2026-09-29 15:58:55 +05:30
2026-10-02 01:29:41 -07:00
2026-09-30 22:24:00 -05:00
2026-10-03 16:29:17 +05:30
2026-10-02 14:37:54 +05:30
2026-10-02 14:37:54 +05:30
2026-10-02 14:37:54 +05:30
2026-09-29 02:40:55 +05:30
2026-10-02 15:57:21 -04:00
2026-09-28 12:43:03 -07:00
2026-09-29 21:50:16 -05:00
2026-09-28 14:16:18 -07:00
2026-09-28 03:13:19 -07:00
2026-09-28 14:16:18 -07:00
2026-09-28 03:34:07 -07:00
2026-09-29 22:57:48 -04:00
2026-09-29 19:06:35 -05:00
2026-09-29 19:06:35 -05:00
2026-09-28 13:30:57 -07:00
2026-09-28 14:16:18 -07:00
2026-09-27 19:06:26 -05:00
2026-09-29 04:15:21 +05:30
2026-09-29 18:05:05 -05:00
2026-10-01 01:43:56 -05:00
2026-09-29 20:57:57 -05:00
2026-09-30 21:15:08 -07:00
2026-09-28 12:33:01 -07:00
2026-09-28 03:08:56 -07:00
2026-09-28 03:08:56 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-28 12:43:03 -07:00
2026-09-29 15:58:55 +05:30
2026-09-29 15:58:55 +05:30
2026-09-29 15:58:55 +05:30
2026-09-28 12:43:03 -07:00
2026-09-28 04:44:29 -07:00
2026-09-29 18:33:44 +05:30
2026-09-30 10:32:09 -05:00
2026-09-28 12:43:03 -07:00
2026-10-02 23:30:18 +05:30
2026-09-28 21:02:35 -04:00
2026-10-01 00:15:05 -05:00
2026-09-29 14:36:55 +05:30
2026-09-28 06:06:17 -07:00
2026-09-29 15:28:19 -05:00
2026-10-01 22:03:11 -07:00
2026-10-01 22:27:03 -07:00
2026-09-28 18:43:12 +05:30
2026-10-02 21:43:17 -05:00
2026-09-28 14:16:18 -07:00
2026-09-28 14:16:18 -07:00
2026-09-28 14:16:18 -07:00
2026-09-28 03:08:56 -07:00
2026-09-28 14:16:18 -07:00
2026-09-27 23:53:40 -07:00
2026-10-02 20:27:24 -05:00
2026-09-28 12:53:29 -05:00
2026-10-03 02:25:26 -07:00
2026-09-28 05:33:25 -07:00
2026-10-01 00:15:05 -05:00
2026-10-02 04:39:28 -07:00
2026-09-28 05:33:25 -07:00
2026-09-28 16:00:01 +05:30
2026-09-28 21:04:13 -04:00
2026-09-28 03:08:56 -07:00
2026-09-28 04:44:29 -07:00
2026-09-27 14:09:15 -05:00
2026-10-01 22:35:29 -07:00
2026-09-29 20:58:59 -05:00
2026-09-28 06:42:00 -07:00
2026-09-28 01:53:35 +05:30
2026-09-28 01:53:35 +05:30
2026-09-28 05:33:25 -07:00
2026-09-28 05:33:25 -07:00
2026-09-28 21:02:29 -04:00
2026-09-28 04:44:29 -07:00
2026-09-27 14:09:15 -05:00
2026-09-29 15:24:15 +05:30
2026-09-28 02:00:41 -07:00
2026-09-28 01:52:54 -07:00
2026-10-02 04:39:28 -07:00
2026-09-29 20:57:57 -05:00
2026-09-27 18:31:33 -05:00
2026-09-28 04:44:29 -07:00
2026-09-27 15:08:15 -05:00
2026-10-01 23:27:08 -07:00
2026-09-28 12:18:58 -07:00
2026-09-28 12:18:58 -07:00
2026-09-30 23:14:09 -05:00
2026-10-02 22:59:13 -05:00
2026-09-28 13:30:57 -07:00
2026-09-28 16:23:22 +05:30
2026-09-28 04:59:38 -07:00
2026-10-01 01:50:07 -05:00
2026-09-27 20:49:04 +05:30
2026-10-02 22:34:58 -05:00
2026-09-30 15:16:40 -05:00
2026-09-29 17:13:53 -05:00
2026-10-02 23:22:55 -05:00
2026-09-27 22:04:26 -07:00
2026-09-28 12:18:58 -07:00
2026-10-02 02:54:18 +05:30
2026-09-28 14:16:18 -07:00
2026-09-28 16:23:22 +05:30
2026-10-02 00:54:45 +05:30