unlang - delete attribute - !*

Arran Cudbard-Bell a.cudbardb at freeradius.org
Wed Oct 9 08:22:07 CEST 2013


On 9 Oct 2013, at 07:05, "Hachmer, Tobias" <Tobias.Hachmer at stadt-frankfurt.de> wrote:

> Hello list,
>  
> I want to delete one reply attribute from the reply list if the access-request is originating not from a special NAS-IP-Address.
>  
> Currently I have solved this by adding this unlang code in authorize section:
>  
>         if(!NAS-IP-Address == x.x.x.x) {
>                 update reply {
>                         Aruba-Admin-Role := ""
>                 }
>         }
>  
> The man page of unlang says:
> !*     Delete all occurances of the named attribute, no matter what the value.
>  
> I think this is the better way than just to clear the attribute value. But how can I use this, what’s the correct syntax?
>  
> I have tested the following without success:
>  
> Aruba-Admin-Role !* ""
> Aruba-Admin-Role !*
> !* Aruba-Admin-Role
>  

update reply {
	Aruba-Admin-Role !* ANY 
}

Will delete all.

update reply {
	Aruba-Admin-Role -= "%{reply:Aruba-Admin-Role}"
}

Will delete the first instance.

-Arran

Arran Cudbard-Bell <a.cudbardb at freeradius.org>
FreeRADIUS Development Team



More information about the Freeradius-Users mailing list