<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi All,<div><br></div><div>A number of commits have been pushed to master branch to remove the attribute, vendor, type and flags fields from the VLAUE_PAIR struct.</div><div><br></div><div><img id="1d822eed-f908-4fd0-aff6-21d41f36224b" height="252" width="320" apple-width="yes" apple-height="yes" src="cid:1C25C173-DB0E-42B8-8B52-6558CBCA8CB5@home"></div><div><br></div><div>When VALUE_PAIRs are created, the attribute number and vendor are resolved to a DICT_ATTR, the DICT_ATTR is then used as the source of type information for the VALUE_PAIR. For attributes not found in the FreeRADIUS dictionary, instances of DICT_ATTR are dynamically allocated, then freed when the VALUE_PAIR is freed.</div><div><br></div><div>Alan has also rewritten the RADIUS protocol decoder to better support nested attributes, which should be fully supported before 3.0 is released.</div><div><br></div><div>Next week work will begin on integrating talloc. talloc is a hierachical memory allocator which can dramatically simplify memory management for trees of dynamically allocated objects. This is in preparation for adding request chaining* and nested TLVs.</div><div><br></div><div>As talloc is small (3K LoC)  we plan to bundle it with the server, and integrate it into the new build system in a similar way to jlibtool.</div><div><br></div><div>As always testing is appreciated.</div><div><br></div><div>-Arran</div><div><br></div><div>* Initially this will be for proxying between multiple virtual servers internally, but will make it easier to implement request trees, where a single incoming request spawns multiple child requests.</div></body></html>