summaryrefslogtreecommitdiffstats
path: root/ospfd/ospf_apiserver.c
Commit message (Collapse)AuthorAgeFilesLines
* Changed gcc options to -std=c99 and -O2, and tighted warnings.Chris Hall2011-09-021-1/+7
| | | | Some small changes to accomodate same.
* Merge with main Quagga source as of 29-Jul-2011.ex17Chris Hall2011-08-121-11/+7
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create euro_ix branch. Update version to: 0.99.18ex17 Of particular note: * includes support for GTSM: neighbor ... ttl-security hops X no neighbor ... ttl-security hops X where X is 1-254. For usual case of immediately connected peer, X == 1. Cannot set ttl-security while ebgp-multihop is set, and vice-versa. If underlying O/S does not support GTSM, then will set ttl as per ebgp-multihop. In passing, have fixed various bugs in the main Quagga branch. * initial support for draft-ietf-idr-optional-transitive Does not yet support "neighbor-complete" flag. * main Quagga now uses TCP_CORK and permanent non-blocking Do not beleive TCP_CORK to be necessary for euro_ix code... which has a different buffering strategy. The euro_ix code already runs sockets permanently non-blocking. * various fixes to attribute intern/unintern Trying to remove memory leaks. Nobody seems convinced that this has been perfected, yet. * fixes for ospfd and ospf6d issues. Up to date with master branch up to: commit 538cb284864c17de66152a5236db4cd80e3e7639 Merge: 036a6e6 8ced4e8 Author: Paul Jakma <paul@quagga.net> Date: Fri Jul 29 18:21:50 2011 +0100
| * ospf: Fix OSPF API and ospf-te LSA refreshers to match recent API changePaul Jakma2011-04-131-2/+2
| | | | | | | | | | | | | | * ospf_apiserver.{c,h}: (ospf_apiserver_lsa_refresher) refreshers must now return the refreshed LSA. * ospf_te.{c,h}: (ospf_mpls_te_lsa_refresh) ditto * ospf_api.c: trivial compiler warning fix
* | Bring "ex" version up to date with 0.99.18ex14Chris Hall2011-03-291-30/+34
|/ | | | | | | | Release: 0.99.18ex14 Also fixes issue with unknown attributes -- does not release them prematurely. Contains the "bgpd: New show commands for improved view and address family support", which is post 0.99.18. (But not RFC 5082 GTSM.)
* [cleanup] Convert XMALLOC/memset to XCALLOCStephen Hemminger2009-06-121-2/+1
| | | | Simple conversion of XMALLOC/memset to XCALLOC
* [ospfd] Allow ospf_lsa_unlock to NULL out callers' LSA pointers upon freePaul Jakma2006-07-261-2/+2
| | | | | | | | | | | | | | | | 2006-07-26 Paul Jakma <paul.jakma@sun.com> * ospf_lsa.{c,h}: (ospf_lsa_unlock) Change to take a double pointer to the LSA to be 'unlocked', so that, if the LSA is freed, the callers pointer to the LSA can be NULLed out, allowing any further use of that pointer to provoke a crash sooner rather than later. * ospf_*.c: (general) Adjust callers of ospf_lsa_unlock to match previous. Try annotate 'locking' somewhat to show which 'locks' are protecting what LSA reference, if not obvious. * ospf_opaque.c: (ospf_opaque_lsa_install) Trivial: remove useless goto, replace with return. * ospf_packet.c: (ospf_make_ls_ack) Trivial: merge two list loops, the dual-loop predated the delete-safe list-loop macro.
* 2005-11-03 Paul Jakma <paul.jakma@sun.com>paul2005-11-031-1/+1
| | | | | | | * ospf_apiserver.c: (apiserver_sync_callback) stray semi-colon * ospf_packet.c: include checksum.h, remove the in_cksum extern * prototypes. * ospf_te.h: Add braces, quell warning.
* 2005-10-23 Paul Jakma <paul.jakma@sun.com>paul2005-10-231-2/+4
| | | | | | * ospf_apiserver.c: (ospf_apiserver_term) This function should not have side-effects (eg segv) if no apiserver instances are active, ie be robust.
* 2005-10-11 Paul Jakma <paul.jakma@sun.com>paul2005-10-111-19/+19
| | | | | | | | | * ospf_api.c: sign warnings. * ospf_apiserver.c: sign warning and convert all the struct in_addr initialisations so as not to make assumptions about how this struct is organised, initialise the s_addr member explicitely. * ospf_packet.c: Add const qualifier to auth_key.
* * ospf_apiserver.c: Fix obvious error in notifying clients about ISMhasso2005-06-071-1/+1
| | | | | | | changes - oi->ifp->status doesn't give to us info about ISM, oi->state does. [backport candidate]
* 2005-05-06 Paul Jakma <paul.jakma@sun.com>paul2005-05-061-6/+6
| | | | | | | | | | | | | | | | | | | | | | | * (general) extern and static qualifiers added. unspecified arguments in definitions fixed, typically they should be 'void'. function casts added for callbacks. Guards added to headers which lacked them. Proper headers included rather than relying on incomplete definitions. gcc noreturn function attribute where appropriate. * ospf_opaque.c: remove the private definition of ospf_lsa's ospf_lsa_refresh_delay. * ospf_lsa.h: export ospf_lsa_refresh_delay * ospf_packet.c: (ospf_make_md5_digest) make *auth_key const, correct thing to do - removes need for the casts later. * ospf_vty.c: Use vty.h's VTY_GET_INTEGER rather than ospf_vty's home-brewed versions, shuts up several warnings. * ospf_vty.h: remove VTY_GET_UINT32. VTY_GET_IPV4_ADDRESS and VTY_GET_IPV4_PREFIX moved to lib/vty.h. * ospf_zebra.c: (ospf_distribute_list_update_timer) hacky overloading of the THREAD_ARG pointer should at least use uintptr_t.
* 2005-04-07 Paul Jakma <paul.jakma@sun.com>quagga_post_listloop_cleanuppaul2005-04-071-67/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * (global): Fix up list loops to match changes in lib/linklist, and some basic auditing of usage. * configure.ac: define QUAGGA_NO_DEPRECATED_INTERFACES * HACKING: Add notes about deprecating interfaces and commands. * lib/linklist.h: Add usage comments. Rename getdata macro to listgetdata. Rename nextnode to listnextnode and fix its odd behaviour to be less dangerous. Make listgetdata macro assert node is not null, NULL list entries should be bug condition. ALL_LIST_ELEMENTS, new macro, forward-referencing macro for use with for loop, Suggested by Jim Carlson of Sun. Add ALL_LIST_ELEMENTS_RO for cases which obviously do not need the "safety" of previous macro. LISTNODE_ADD and DELETE macros renamed to ATTACH, DETACH, to distinguish from the similarly named functions, and reflect their effect better. Add a QUAGGA_NO_DEPRECATED_INTERFACES define guarded section with the old defines which were modified above, for backwards compatibility - guarded to prevent Quagga using it.. * lib/linklist.c: fix up for linklist.h changes. * ospf6d/ospf6_abr.c: (ospf6_abr_examin_brouter) change to a single scan of the area list, rather than scanning all areas first for INTER_ROUTER and then again for INTER_NETWORK. According to 16.2, the scan should be area specific anyway, and further ospf6d does not seem to implement 16.3 anyway.
* * ospf_apiserver.c (ospf_apiserver_term): Obtain structgdt2004-12-091-8/+5
| | | | | ospf_apiserver * from listnode. Remove unused variables. Follows suggestion from Jay Fenlason.
* ospf_apiserver_term:gdt2004-12-091-1/+6
| | | | | | | | Remove unused variable. Add comment: this is seriously broken, and needs fixing. It appears likely to segfault if ever called. Comments please - should I make the fix I suggest in the comment? -gdt
* 2004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs2004-12-081-17/+17
| | | | * *.c: Change level of debug messages to LOG_DEBUG.
* 2004-11-19 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs2004-11-201-6/+6
| | | | | * global: Replace strerror with safe_strerror. And vtysh/vtysh.c needs to include "log.h" to pick up the declaration.
* 2004-11-15 Paul Jakma <paul@dishone.st>paul2004-11-151-3/+2
| | | | * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
* 2004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>gdt2004-10-071-4/+5
| | | | | | | * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't use of variable names 'node' and 'nextnode' to avoid possible conflict with list macros. Move variable declaration inside for loop after a statement to top of function.
* 2004-09-24 Paul Jakma <paul@dishone.st>paul2004-09-241-3/+3
| | | | | | * ospf_apiserver.{c,h}: (ospf_apiserver_term) loops calling ospf_apiserver_free, which deletes referenced nodes from apiserver_list, fixed.
* 2004-09-24 Paul Jakma <paul@dishone.st>paul2004-09-241-156/+109
| | | | | | | | | | | | | * ospf_apiserver.{c,h}: lists typedef removal cleanup. update some list loops to LIST_LOOP. some miscellaneous indent fixups. (ospf_apiserver_unregister_opaque_type) fix listnode_delete of referenced node in loop. * ospf_interface.h: lists typedef removal cleanup. * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list loops to LIST_LOOP. miscellaneous style and indent fixups. * ospf_te.{c,h}: ditto * ospf_packet.c: lists typedef removal cleanup.
* Remove ifdef's HAVE_NSSA. NSSA support is stable enough.hasso2004-06-201-2/+0
|
* 2003-07-09 Paul Jakma <paul@dishone.st>paul2003-07-091-2/+2
| | | | * ospf_apiserver.c: Add missing close bracket
* 2003-07-09 Paul Jakma <paul@dishone.st>paul2003-07-091-3/+5
| | | | * ospfd/ospf_apiserver.c: check for NULL from ospf_lookup()
* Latest ospfapi sync from Amir to fixup wrt to zebra.org changes.paul2003-04-061-59/+91
|
* Fixes from Amir to merge apiserver with zebra.org changespaul2003-04-051-27/+34
|
* Amir Guindehi <amir@datacore.ch>:paul2003-03-281-7/+15
| | | | | | | | | | | | | | | I got it to compile. The problem was that major functions newly need a struct ospf *ospf as the first argument. I tried to take the nearest struct ospf *ospf around the function needing it, because i was not sure if all those pointers to struct ospf * all point to the same (global) struct ospf * which you also get when you call ospf_get(). I used area->ospf where I had the area, I used oi->ospf, where I had an interface, I used lsa->oi->ospf where I had an lsa and i used ospf_get() where I had nothing. I hope that's correct and works. We will see. It compiles now without errors. Daemon is tested and works. The opaque lsa part is not yet tested. I will do that as soon as srrd is ready.
* 2003-03-25 Paul Jakma <paul@dishone.st>paul2003-03-251-1/+2
| | | | | | | | * sync to latest zebra CVS * spec file: updated and added define for ospf-api/client NB: OSPF-API has been broken by the zebra.org changes, which has added struct ospf * as a new arg to many functions
* Fix assert in ospf_api where interface is not configured in ospf.paul2003-03-211-1/+6
|
* Addition of OSPF-API - Amir Guindehi <nospam.amir@datacore.ch>paul2003-03-171-0/+2647