Poll of opinions for new keyword
Alan DeKok
aland at deployingradius.com
Thu Sep 7 18:49:49 CEST 2017
On Sep 7, 2017, at 10:36 AM, Matthew Newton <mcn at freeradius.org> wrote:
> So doing a subrequest {} block (or whatever it ends up being called) is
> essentially just a block which has its own attribute lists, so a space
> for local variables that won't mess up the main request. It runs in
> sequence with everything else, and at the end processing continues at
> the next instruction in the calling block.
Yes.
> But as soon as you call 'detach', you've forked. You can never return
> from this request to the parent, and the parent immediately starts to
> continue at the next instruction after the sub request.
Yes.
> The only issue I can think of, are there ever any cases where you want
> to detach (maybe once, maybe more times), but then later on update
> something in the parent?
Nope. Once it's detached, the parent can *go away*. So there's no way to update the parent, as it doesn't exist.
> If so, maybe you also need "wait" as well as detach. That sits in the
> parent, and waits for all subrequests to finish. At which point they
> could have updated the parent.
That's what "parallel" is for.
> update parent {
> request:foo = bar
> }
>
> Would also be nice, or "update parent.request".
The "update parent.request" syntax is already supported.
Alan DeKok.
More information about the Freeradius-Users
mailing list