From bce380cc524d58716e52a146e7b5503b6e825863 Mon Sep 17 00:00:00 2001 From: Jakub Jirutka Date: Sun, 26 Jan 2020 21:40:51 +0100 Subject: main/freeradius: fix segfault in process request_running() --- main/freeradius/fix-request_running-segfault.patch | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 main/freeradius/fix-request_running-segfault.patch (limited to 'main/freeradius/fix-request_running-segfault.patch') diff --git a/main/freeradius/fix-request_running-segfault.patch b/main/freeradius/fix-request_running-segfault.patch new file mode 100644 index 0000000000..d1ca890302 --- /dev/null +++ b/main/freeradius/fix-request_running-segfault.patch @@ -0,0 +1,23 @@ +From 30ffd2174ec0acd1c5b4b4988d522c24d80a1049 Mon Sep 17 00:00:00 2001 +From: "Alan T. DeKok" +Date: Wed, 20 Nov 2019 08:30:42 -0500 +Subject: [PATCH] home_server may be NULL if proxying fails + +--- + src/main/process.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/main/process.c b/src/main/process.c +index 78c6d8a9e5..c8b3af24e2 100644 +--- a/src/main/process.c ++++ b/src/main/process.c +@@ -1642,7 +1642,8 @@ static void request_running(REQUEST *request, int action) + * handler. + */ + if (request_proxy(request) < 0) { +- if (request->home_server && request->home_server->server) goto req_finished; ++ if (!request->home_server || ++ (request->home_server && request->home_server->server)) goto req_finished; + + (void) setup_post_proxy_fail(request); + process_proxy_reply(request, NULL); -- cgit v1.2.3