From (spam-protected) Thu Aug 2 23:41:58 2007 From: (spam-protected) (Bernd Petrovitsch) Date: Thu, 02 Aug 2007 23:41:58 +0200 Subject: [Olsr-announce] olsrd-0.5.3 released Message-ID: <1186090918.4184.42.camel@gimli.at.home> Hi all! I just released olsrd-0.5.2. A .tar.gz and a .tar.bz2 can be found for now on http://bernd.petrovitsch.priv.at/olsr-ng/ until they find their way to http://www.olsr.org/ (which is usually surprisingly short;:-). To quote from the changelog: ---- snip ---- URGENT BUG FIX Ignacio García Pérez found a serious bug in the dot-draw plugin and identified it's source. BUG FIX The bmf plugin wanted to kill a not-started thread and this causes a segmentation violation. This happens if the old plugin interface support is not compiled in and one uses - or more asccurate: wants to use - the bmf plugin which uses that ATM. Thanks to Cédric Krier for reporting this. DEPENDENCIES FIXED The dependencies (*.d files) are now properly generated and used. And they also dependen on the Makefile in the current directory and the Makefile.inc so that changes there also lead to new compilation. Remember: We support "ccache" so install it to save lot of meaningless recompiles if nothing (as seen by the real C compiler, i.e. after the C preprocessor) has changed. BUILD FIX Linux/IA64 and Linux/HPPA also need "-fPIC". CLEANUPS - olsr_switch does no longer generate warnings - olsr_switch is also built with "build_all" and cleaned with "uberclean" - More "const" all over the place. - More "static" for local functions and variables. - Killed an unnecessary "static" variable. ---- snip ---- The "cleanup" stuff at the end means: - using "const" for parameters as far as possible - making locally-only used functions and variables "static" - avoiding duplicated code (if only to reduce the binaries size) - killing unnecessary "static" variables and other similar cruft - killing warnings and before and after adding more warnings to let the compiler check more as I encounter them and the are usually quite trivial. Short term[0] ToDos on the list: - converting the remaining plugins interface - using netlink sockets (on Linux). I have some code to replace the ioctl()s to build a patch for Sven-Olas patch to avoid any suspicion about GPL code going in[1]. - I'm thinking of replacing the "olsr_u32_t v4;" with "struct in_addr v4;" in the "union olsr_ip_addr" in src/olsr_type.h since it seems more natural to me (und v6 is already that). Especially since that field is in network byte order AFAICS anyways. This goes somewhat hand in hand with replacing COPY_IP() and COMP_IP() (from src/olsr_protocol.h) - both being a memcpy() and memcmp(), respectively - with type-safe assignments. All but a few uses are in IPv4- and IPv6-specific anyways ATM. Alas, this will need some work on all external patches and plugins too. - Fix the logging and debug message mess replacing "olsr_debug" and "OLSR_PRINTF" when it is done. I have some old proposal/draft lying around which wants to be really implemented. - Getting the possibility to compile (and test?) on the various *BSDs. Bernd [0]: For what ever that means in a few weeks .... [1]: Not that I personally have a problem with GPL code. But in a BSD licensed source, it doesn't seem to be fair IMHO ..... -- Firmix Software GmbH http://www.firmix.at/ mobil: +43 664 4416156 fax: +43 1 7890849-55 Embedded Linux Development and Services