Seqfault with multiple
JDL
JDL at ImagineNet.net
Wed Mar 25 06:52:42 CET 2009
tnt at kalik.net wrote:
>> Hello to Alan and the rest of the list. I wanted to report this to the
>> bug tracker but it appears to be down right now so I am sending it to
>> the list.
>>
>> I had a situation where I needed to remove all of the attributes from a
>> reply except for Service-Type to one specific client. Unlang seemed to
>> be perfect for this. It should be as simple as the following.
>>
>> if (Client-IP-Address == "192.168.10.20") {
>> update reply {
>> Framed-Protocol == ''
>> Framed-IP-Address == 0.0.0.0
>> Framed-IP-Netmask == 0.0.0.0
>> Idle-Timeout == 999
>> Session-Timeout == 999
>> Port-Limit == 999
>> Cisco-AVPair == ''
>> Service-Type := Authenticate-Only
>> }
>> }
>>
>>
>
> Read man unlang again. See what does == do. Perhaps you want:
>
> if (Client-IP-Address == "192.168.10.20") {
> update reply {
> Service-Type == Authenticate-Only
> }
> }
>
> Or you want to use -= on multiple attributes.
>
> Ivan Kalik
> Kalik Informatika ISP
>
Ivan,
Please read man unlang again, Neither of your examples are appropriate
for my purposes. "Service-Type == Authenticate-Only" would remove the
Service-Type attribute if its value is not Authenticate-Only. I do not
want to remove the Service-Type attribute at all. I want to set its
value to Authenticate-Only which is why I used the := operator.
The -= operator removes the attribute if the attribute AND its value
match the reply. Since the values can vary with different users and
groups in our systerm, this operator is also not appropriate.
The == operator removes the attribute if the attribute and its value DO
NOT match the reply. In my examples you will see that the values for
those attributes are unusual values which will probably never be set by
our user profiles. Since there is no operator or command in unlang to
remove an attribute regardless of value, this was the best alternative
that I could design.
According to what I have read, my configuration is correct, both in
function and in syntax. It just crashes the server :-O
Jim L.
More information about the Freeradius-Users
mailing list