WiMAX style continuation field used by other vendor

Benjamin Thompson b.thompson at latera.ru
Mon Apr 26 22:03:56 CEST 2021


On Mon, 26 Apr 2021 at 22:50, Alan DeKok <aland at deployingradius.com> wrote:

> On Apr 26, 2021, at 2:46 PM, Benjamin Thompson <b.thompson at latera.ru>
> wrote:
> > If I understood the code correctly, the "flags.wimax = dv->flags;" line
> > 1067 of dict.c should cause the attribute to be encoded as a WiMax
> > attribute in radius.c at line 1498:
> >
> > if (vp->da->flags.wimax) {
> >    return rad_vp2wimax(packet, original, secret, pvp, ptr, room);
> > }
>
>   See also
>
>         /*
>          *      WiMAX craziness
>          */
>         if ((vendor == VENDORPEC_WIMAX) && dv->flags) {
>                 rcode = data2vp_wimax(ctx, packet, original, secret,
> vendor,
>                                       data, attrlen, packetlen, pvp);
>                 return rcode;
>         }
>
>  And it would be _very_ good to add tests in src/test/unit/wimax.txt
>
>   And it turns out that this came up before.  See src/lib/dict.c:
>
>                 /*
>                  *      <sigh> Alvarion, being *again* a horribly
>                  *      broken vendor, has re-used the WiMAX format in
>                  *      their proprietary vendor space.  This re-use
>                  *      means that there are *multiple* conflicting
>                  *      Alvarion dictionaries.
>                  */
>
>   "git annotate" says I added that comment in 2011.  So It's perhaps
> understandable that I've completely forgotten that particular kind of
> breakage.
>
>   I've pushed the dictionary, some code fixes, and some tests.
>
>
Many thanks Alan


More information about the Freeradius-Users mailing list