Clarify decoding code
authorAlan T. DeKok <aland@freeradius.org>
Tue, 12 Feb 2013 18:47:06 +0000 (13:47 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Tue, 12 Feb 2013 18:47:06 +0000 (13:47 -0500)
src/lib/radius.c

index 5b68a24..75e36a5 100644 (file)
@@ -3900,11 +3900,14 @@ ssize_t rad_attr2vp(const RADIUS_PACKET *packet,
                                       data, length, pvp);
        }
 
-       /*
-        *      Extended attribute format gets their own handler.
-        */
        da = dict_attrbyvalue(data[0], 0);
-       if (da && da->flags.extended) {
+
+       if (!da) {
+               return rad_attr2vp_raw(packet, original, secret,
+                                      data, length, pvp);
+       }
+
+       if (da->flags.extended) {
                return rad_attr2vp_extended(packet, original, secret,
                                            data, length, pvp);
        }