On 10/13/06, Les Brinkworth <lbrinkworth@qkon.com> wrote:
How does one define two instances of exec with different names that can be called from other sections?
Aaah, now it gets a bit more clear to me. You should take into account the comments at the beginning of the modules{} section. That would lead to something like:
Code snippet from Modules section of radiusd.conf...
exec doacctfoo {
wait = yes program = "handlebillingrequests.exe ACCR:%Z" input_pairs = request output_pairs = reply packet_type = Accounting-Request }
...This executes for an accounting request
If I then add the same code to the authorize section...
ah no, that won't work. you just put it into the modules{} too with analogous change:
exec dorequestfoo {
wait = yes program = "handlebillingrequests.exe AUTR:%Z" input_pairs = request output_pairs = reply packet_type = Access-Request }
...it results in the following when I run debug
radiusd.conf[1527] Unknown module rcode 'wait'. radiusd.conf[1513] Failed to parse authorize section.
Ok, that confuses freeradius way to much, as that is not the place to define module instances (see above), especially when another one (the unnamed one) already is present. But you can now put the named defined ones in the appropriate section e.g. authorize { ... dorequestfoo ... } accounting { ... doacctfoo ... } There might be other ways of doing it, (using the same module, but changing the called program, so it can cope with both tasks accordingly) but keeping it simple at first and following the recommendations in the comments looks preferable, at least until you get some working config. regards K. Hoercher