From Henning Rogge <rogge@fgan.de>: parser refactoring
authorHannes Gredler <hannes@gredler.at>
Tue, 19 Feb 2008 21:55:49 +0000 (22:55 +0100)
committerHannes Gredler <hannes@gredler.at>
Tue, 19 Feb 2008 21:55:49 +0000 (22:55 +0100)
commitdd0c23313262a97d5ddc70f2e563c401e518a7cf
tree30cc6b4df80378369c2ee5d0076879c48b966c9e
parent314a2647c3d81494d9c7ed38e9e1bf42e800dd61
From Henning Rogge <rogge@fgan.de>: parser refactoring
refactored the parser of olsrd so that this is done by two new functions:

void olsr_preprocessor_add_function(preprocessor_function);
int olsr_preprocessor_remove_function(preprocessor_function);

The "preprocessor_function" has the type
char *preprocessor_function(char *packet, struct interface *, union olsr_ip_addr *, int *length);

all registered preprocessors are called before the package is decoded by olsrd.
This way the secure plugin (and other possible plugins) can check the
packages, modify them or discard them (by returning NULL)
lib/secure/README_SECURE
lib/secure/src/olsrd_secure.c
src/parser.c
src/parser.h