Jim L. wrote:
...
>>>> Sending proxied request internally to virtual server.
> server ImagineNet_Detail {
> auth: No authenticate method (Auth-Type) configuration found for the

  Ugh.  The code that does the internal proxying doesn't check for
auth/acct differences.  Oops.

  Try the attached patch.  If it works, I'll commit it.

  Alan DeKok.
Index: src/main/event.c
===================================================================
RCS file: /source/radiusd/src/main/event.c,v
retrieving revision 1.100
diff -u -r1.100 event.c
--- src/main/event.c	20 Apr 2008 15:00:06 -0000	1.100
+++ src/main/event.c	2 May 2008 15:37:25 -0000
@@ -1176,6 +1176,7 @@
 static int proxy_to_virtual_server(REQUEST *request)
 {
 	REQUEST *fake;
+	RAD_REQUEST_FUNP fun;
 
 	if (!request->home_server || !request->home_server->server) return 0;
 
@@ -1193,6 +1194,17 @@
 	fake->packet->vps = paircopy(request->proxy->vps);
 	fake->server = request->home_server->server;
 
+	if (request->proxy->code == PW_AUTHENTICATION_REQUEST) {
+		fun = rad_authenticate;
+
+	} else if (request->proxy->code == PW_ACCOUNTING_REQUEST) {
+		fun = rad_accounting;
+
+	} else {
+		DEBUG2("Unknown packet type %d", request->proxy->code);
+		return 0;
+	}
+
 	DEBUG2(">>> Sending proxied request internally to virtual server.");
 	radius_handle_request(fake, rad_authenticate);
 	DEBUG2("<<< Received proxied response from internal virtual server.");
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to