[Olsr-users] olsrd-0.5.3 released

Bernd Petrovitsch (spam-protected)
Thu Aug 2 23:41:58 CEST 2007

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  ----
Ignacio García Pérez <(spam-protected)> found a serious bug in the dot-draw
plugin and identified it's source.

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 <(spam-protected)> for reporting this.

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

Linux/IA64 and Linux/HPPA also need "-fPIC".

- 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
- 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
- Getting the possibility to compile (and test?) on the various *BSDs.


[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

More information about the Olsr-users mailing list