summaryrefslogtreecommitdiffstats
path: root/tests/test-symtab.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix broken prefix-list handling in bgpdChris Hall2012-02-291-42/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some changes to symtab.c had broken the symbol reference handling for prefix-lists in plist.c This commit further "improves" the symbol table functions, to support current use rather better. One key change is that the symbol table supports the notion of a symbol which is "set", so has some value other than its name. In the case of prefix-lists, a prefix-list is "set" when there is at least one (valid) entry or a description has been set. Changes include: * small changes in bgpd/bgp_clist.c where symbol table function names have changed and other small differences. * similarly in bgpd/bgp_peer_index.c, but here also clarified ownership of the peer index entries, and ensured that the symbol table stuff does *not* free same. * in bgpd/bgp_route.c fixed the handling of references to prefix-lists. Newer symbol handling more clearly identifies when a symbol has some value "set". * in bgpd/bgp_vty.c similarly, when showing state of filtering the "*" against a prefix-list means it is "set". * in lib/plist.c -- adjust to newer symbol table stuff. Fix issues will add_hook and delete_hook. Changed lookup so that if plist is not set, then lookup will return not-found -- so works as before (!). * adjusted test for symbol stuff.
* vtysh partly restored. bgpd not crashing on over-size messages.Chris Hall2012-02-191-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NB: this is a partial interim version -- NOT for production. Reinstate vtysh. In bgpd: cope better with generating oversize messages. The "pipework" branch is no more. There is now "euro_ix" and "euro_ix_b", where 'b' stands for 'bleedin'. The "pipework" is currently in 'bleedin'. Version updated to: 0.99.18ex20b Major changes in this commit: * modified bgpd to avoid crashing if an oversize message is created. At present, any oversize messages are simply discarded. This may be a mistake... since it is possible that some routes that should have been withdrawn are not. TBA. The stream lib facilities have been overhauled to may this easier. * restoring vtysh. At present the vtysh is thought to work, except that it does not currently create integrated configuration files. For the time being, *only* the following compile: lib, bgpd, zebra, vtysh, tests All other daemons will fail to compile, and must be disabled.
* Updated the "symbol table" and added AVL treeChris Hall2011-08-261-45/+250
| | | | | | | | | | | | | | | | | Modified the symbol table so that the name of the symbol is now a property of its value -- which simplifies some of the semantics, because the name no longer has a separate existence (a name which refers to an empty or undefined value is now a matter for the value, not for the symbol table). It also allows for the symbol table to be used where the value and the name are almost indistinguishable. Introduced AVL tree to support large prefix lists, routemaps, etc. etc. Updated testsymtab and added testavl. Updated exiting use of the symbol table.
* Creation of pipework branchChris Hall2010-12-211-11/+12
|
* Test programs.paulo2009-11-251-0/+344
Enabled building of the test programs. Added tests for vectors and sybtabs.