OUR SITES NetworkRADIUS FreeRADIUS

The detach Statement

Syntax
detach

The detach statement is used to separare a child request from a parent request. The detach statement can only be used inside of a subrequest section.

Once a child request is detached from the parent, the parent can continue execution independently of the child. However, once a child request is detached from the parent request, the child can no longer access any attributes in the parent.

Example
subrequest Disconnect-Request {
    &User-Name := &parent.request.User-Name
    &NAS-IP-Address := &parent.request.NAS-IP-Address
    &NAS-Port := &parent.request.NAS-Port
    &Acct-Session-Id := &parent.request.Acct-Session-Id

    detach
    radius
}

Child Lifetime

The lifetime of the child request is normally limited by the lifetime of the parent request. The default configuration has max_request_time = 30, so child requests will be cancelled 30 seconds after the parent request was received.

When it is necessary to have the child request execute for longer, the Request-Lifetime attribute can be set. This attribute sets the lifetime of the child request after it has been detached. This setting allows child requests to last longer than max_request_time seconds from when the parent request was received.

The Request-Lifetime attribute sets the lifetime in seconds. The minimum lifetime is five (5) seconds. The maximum lifetime is 3600 seconds. Only integer seconds can be set.

Example
subrequest Disconnect-Request {
    &User-Name := &parent.request.User-Name
    &NAS-IP-Address := &parent.request.NAS-IP-Address
    &NAS-Port := &parent.request.NAS-Port
    &Acct-Session-Id := &parent.request.Acct-Session-Id

    &control.Request-Lifetime := 60

    detach
    radius
}