]> git.proxmox.com Git - mirror_frr.git/log
mirror_frr.git
18 years ago[lib] CID #3, fix forward-null errors in vty_prefix_list_uninstall
Paul Jakma [Fri, 12 May 2006 23:17:38 +0000 (23:17 +0000)]
[lib] CID #3, fix forward-null errors in vty_prefix_list_uninstall

2006-05-12 Paul Jakma <paul.jakma@sun.com>

* plist.c: (vty_prefix_list_uninstall) Fix potential NULL deref
  of prefix and typestr strings, Coverity CID #3.

18 years ago[ospfd] Fix small error in CID #13 commit
Paul Jakma [Fri, 12 May 2006 23:15:30 +0000 (23:15 +0000)]
[ospfd] Fix small error in CID #13 commit

2006-05-13 Paul Jakma <paul.jakma@sun.com>

* ospf_lsa.c: (ospf_translated_nssa_refresh) fix the sanity
  check to match the assert, small error in CID #13 fix.

18 years ago[ospfd] CID #13, debug for NULL type7 LSA should not print out data from it
Paul Jakma [Fri, 12 May 2006 23:11:14 +0000 (23:11 +0000)]
[ospfd] CID #13, debug for NULL type7 LSA should not print out data from it

2006-05-12 Paul Jakma <paul.jakma@sun.com>

* ospf_lsa.c: (ospf_translated_nssa_refresh) Add non-assert
  sanity check, in case DEBUG isn't defined.  Debug message
  when no type7 exists should print the ID from the type5, not
  the type7, fixes CID #13.

18 years ago[ospfd] CID #15, remove redundant NULL check in ism_change_state
Paul Jakma [Fri, 12 May 2006 23:07:27 +0000 (23:07 +0000)]
[ospfd] CID #15, remove redundant NULL check in ism_change_state

2006-05-12 Paul Jakma <paul.jakma@sun.com>

* ospf_ism.c: (ism_change_state) NULL check on oi->area is
  useless, it's always valid. Only possibility where it
    couldn't be is if there is a race between abr_task and
  cleaning up oi's, in which case a NULL check here isn't going
  to do anything. Fixes CID #15.

18 years ago[ospfd] CID #14, NULL check ospf->backbone before use, ospf_update_router_route
Paul Jakma [Fri, 12 May 2006 23:04:45 +0000 (23:04 +0000)]
[ospfd] CID #14, NULL check ospf->backbone before use, ospf_update_router_route

2006-05-12 Paul Jakma <paul.jakma@sun.com>

* ospf_ia.c: (ospf_update_router_route) ospf->backbone could be
  NULL when passed to ospf_find_asbr_route_through_area,
  check for NULL first, CID #14.

18 years ago[ospfd] CID #28, remove another ospf_lookup call - ospf_redistribute_withdraw
Paul Jakma [Fri, 12 May 2006 23:02:46 +0000 (23:02 +0000)]
[ospfd] CID #28, remove another ospf_lookup call - ospf_redistribute_withdraw

2006-05-12 Paul Jakma <paul.jakma@sun.com>

* ospf_asbr.c: (ospf_redistribute_withdraw) remove ospf_lookup
  call by taking the struct ospf * as argument, which the
  caller has, fixing CID #28.
* ospf_asbr.h: (ospf_redistribute_withdraw) update declaration
* ospf_zebra.c: (ospf_redistribute_unset) update call to
  ospf_redistribute_withdraw to match.

18 years ago[ospfd] CID #27, fix missing NULL return check
Paul Jakma [Fri, 12 May 2006 23:00:06 +0000 (23:00 +0000)]
[ospfd] CID #27, fix missing NULL return check

2006-05-12 Paul Jakma <paul.jakma@sun.com>

* ospf_interface.c: (ospf_if_exists) Fix missing NULL return
  check on ospf_lookup, CID #27.

18 years ago[ospfd] CID #29, fix missing NULL check by removing unused code.
Paul Jakma [Fri, 12 May 2006 22:57:57 +0000 (22:57 +0000)]
[ospfd] CID #29, fix missing NULL check by removing unused code.

2006-05-12 Paul Jakma <paul.jakma@sun.com>

* ospf_lsa.c: (ospf_lsa_action) Get rid of the ospf_lookup
  call, which is not checked for NULL return, by stripping out
  functionality which is never used, hence fixing Coverity CID
  #29.
  (struct lsa_action) remove unused member.

18 years ago[ospfd] Squash another ospf_lookup call
Paul Jakma [Fri, 12 May 2006 22:55:41 +0000 (22:55 +0000)]
[ospfd] Squash another ospf_lookup call

2006-05-11 Paul Jakma <paul.jakma@sun.com>

* ospf_lsa.c: (ospf_default_originate_timer) Let the thread
  take (struct ospf *) as thread argument, rather than (struct
  ospf *)->default_originate, thus avoiding having to call
  ospf_lookup.
* ospf_zebra.c: (ospf_redistribute_default_set) change setup
  of ospf_default_originate_timer thread to match.
* ospfd.c: (ospf_router_id_update) ditto.

18 years ago[ospfd] Fix leak in area-range-cost command, CID #46.
Paul Jakma [Fri, 12 May 2006 22:51:49 +0000 (22:51 +0000)]
[ospfd] Fix leak in area-range-cost command, CID #46.

2006-05-11 Paul Jakma <paul.jakma@sun.com>

* ospf_abr.c: (ospf_area_range_cost_set) Shouldn't create a new
  range, should just lookup to see if one exists, the new range
  is just leaked. Fixes CID #46.

18 years ago[ospfd] CID #49, fix dereference before NULL check
Paul Jakma [Fri, 12 May 2006 22:50:40 +0000 (22:50 +0000)]
[ospfd] CID #49, fix dereference before NULL check

2006-05-11 Paul Jakma <paul.jakma@sun.com>

* ospf_route.c: (ospf_route_delete_same_ext) Fix deref before
  NULL check by moving into check-protected block, fix CID #49.

18 years ago[ospfd] Check NULL result from ospf_area_lookup_by_area_id, CID #69
Paul Jakma [Thu, 11 May 2006 13:34:08 +0000 (13:34 +0000)]
[ospfd] Check NULL result from ospf_area_lookup_by_area_id, CID #69

2006-05-11 Paul Jakma <paul.jakma@sun.com>

* ospf_vty.c: (no_ospf_area_filter_list) Check NULL result from
  ospf_area_lookup_by_area_id, fixes Coverity CID #69

18 years ago[ospfd] Fix missing check for ospf_lookup NULL return, CID #70
Paul Jakma [Thu, 11 May 2006 13:31:11 +0000 (13:31 +0000)]
[ospfd] Fix missing check for ospf_lookup NULL return, CID #70

2006-05-11 Paul Jakma <paul.jakma@sun.com>

* ospf_vty.c: (general) Audit ospf_lookup calls in commands,
  ensure check for NULL result, make vty messages consistent.
  (show_ip_ospf_interface) Missing NULL check on ospf_lookup
  result, fixes Coverity CID #70.

18 years ago[zebra] CID #31, guard against potential NULL return of route_node_lookup
Paul Jakma [Thu, 11 May 2006 13:28:05 +0000 (13:28 +0000)]
[zebra] CID #31, guard against potential NULL return of route_node_lookup

2006-05-11 Paul Jakma <paul.jakma@sun.com>

* interface.c: (if_delete_update) route_node_lookup may return
  NULL, should fix Coverity CID #31.

18 years ago[ripngd] CID #72, remove unneeded NULL check
Paul Jakma [Thu, 11 May 2006 13:20:47 +0000 (13:20 +0000)]
[ripngd] CID #72, remove unneeded NULL check

2006-05-11 Paul Jakma <paul.jakma@sun.com>

* ripng_interface.c: (ripng_interface_address_add) Remove
  unneeded NULL check, Coverity CID #72.

18 years ago[doc] Update auto-generated quagga.info
Paul Jakma [Wed, 10 May 2006 19:53:58 +0000 (19:53 +0000)]
[doc] Update auto-generated quagga.info

2006-05-10 Paul Jakma <paul.jakma@sun.com>

* quagga.info: update auto-built file.

18 years ago[0.99] Version bump to 0.99.4
Paul Jakma [Wed, 10 May 2006 19:52:36 +0000 (19:52 +0000)]
[0.99] Version bump to 0.99.4

2006-05-10 Paul Jakma <paul.jakma@sun.com>

* configure.ac: Bump to 0.99.4

18 years ago[doc] bug #245, remove reference to non-existent log_mode argument
Paul Jakma [Mon, 8 May 2006 14:40:39 +0000 (14:40 +0000)]
[doc] bug #245, remove reference to non-existent log_mode argument

2006-05-08 Paul Jakma <paul.jakma@sun.com>

* main.texi: --log_mode does not exist, remove, bug #245.

18 years ago[bgpd] Bug #240, Fix route-server crash when static routes are configured
Paul Jakma [Mon, 8 May 2006 14:37:17 +0000 (14:37 +0000)]
[bgpd] Bug #240, Fix route-server crash when static routes are configured

2006-05-08 Paul Jakma <paul.jakma@sun.com>

* bgp_route.c: (bgp_afi_node_get) given table should never be
  NULL, check/assert this.
  (bgp_static_update) Bug #240. Rsclients should only be passed
  the static update if they are configured for the afi,safi.

18 years ago[ripngd] bug #242, fix crash in routemap, ipv6 stored in in_addr.
Paul Jakma [Mon, 8 May 2006 14:32:07 +0000 (14:32 +0000)]
[ripngd] bug #242, fix crash in routemap, ipv6 stored in in_addr.

2006-05-08 Paul Jakma <paul.jakma@sun.com>

* ripng_routemap.c: (route_set_ipv6_nexthop_local_compile) bug
  #242, s/in_addr/in6_addr to fix crash.
  Thanks to jithinvachery+quagga@gmail.com.

18 years ago[bgpd] CID#62 fix double-free, use-after-free in community_str2com
Paul Jakma [Mon, 8 May 2006 14:25:09 +0000 (14:25 +0000)]
[bgpd] CID#62 fix double-free, use-after-free in community_str2com

2006-05-08 Paul Jakma <paul.jakma@sun.com>

* bgp_community.c: (community_str2com) Coverity CID#62, fix
  double-free, use-after-free.

18 years ago[bgpd] Fix bug where FSM can stay hung forever in Idle/Clrng
Paul Jakma [Thu, 4 May 2006 08:08:15 +0000 (08:08 +0000)]
[bgpd] Fix bug where FSM can stay hung forever in Idle/Clrng

2006-05-04 Paul Jakma <paul.jakma@sun.com>

* bgp_route.c: (general) Fix logical bug in clearing, noted
  by Chris Caputo in [quagga-users 6728] - clearing depended on
  at least one route being added to workqueue, in order for
  workqueue completion function to restart FSM. However, if no
  routes are cleared, then the completion function never is
  called, it needs to be called manually if the workqueue
  didn't get scheduled.
  Finally, clearing is per-peer-session, not per AFI/SAFI, so
  the FSM synchronisation should be in bgp_clear_route_table.
  (bgp_clear_route_table) Wrong place for FSM/clearing
  synchronisation, move to..
  (bgp_clear_route) FSM/clearing synchronisation should be
  here.
  If no routes were cleared, no workqueue scheduled, call
  the completion func to ensure FSM kicks off again.

18 years ago[bgpd] bug #210: Enable crucial VPNv4 code which was disabled
Paul Jakma [Thu, 4 May 2006 07:52:12 +0000 (07:52 +0000)]
[bgpd] bug #210: Enable crucial VPNv4 code which was disabled

2006-05-04 Paul Jakma <paul.jakma@sun.com>

* (general) VPNv4 fixes. Certain VPNv4 code was not enabled.
  See bug #210.
* bgp_attr.{c,h}: (bgp_packet_{withdraw,attribute}) Tag should be
  u_char really.
* bgp_packet.c: (bgp_{update,withdraw}_packet) Enable some
  VPNv4 code which inexplicably was ifdef'd out. comments from
  a tester on IRC suggest this fixes bug #210.

18 years ago[docs] Update ripd docs on version and authentication, see bugs #261,#262
Paul Jakma [Thu, 4 May 2006 07:37:37 +0000 (07:37 +0000)]
[docs] Update ripd docs on version and authentication, see bugs #261,#262

2006-05-04 Paul Jakma <paul.jakma@sun.com>

* ripd.texi: Add Version Control as a distinct section.
  Expand Version Control section with overview text,
  touching on insecurity of RIPv1 and referencing
  authentication section, cleanup text of various version
  commands.
  RIP Authentication: Add overview text, refer to RIPv1 version
  control, which is required to completely secure RIP.

18 years ago[ripd] bugs #261, #262: Fix RIPv1 info-leak and unauthenticated route updates
Paul Jakma [Thu, 4 May 2006 07:36:34 +0000 (07:36 +0000)]
[ripd] bugs #261, #262: Fix RIPv1 info-leak and unauthenticated route updates

2006-05-04 Paul Jakma <paul.jakma@sun.com>

* (general) Fixes for bugs #261 and 262. Thanks to
  Konstantin V. Gavrilenko <kos@arhont.com> for the problem
  reports, testing of a series of proposed patches and comment
  on the proposed changes in behaviour.
* rip_interface.c: (ip_rip_authentication_mode_cmd) Parse all
  of the command before making any changes to configured state.
* ripd.c: (rip_read) RIP version control should be absolute and
          always apply, fixes bug #261 by allowing RIPv1 to be disabled.
  Fix bug #262: If authentication is enabled, then
  unauthenticated packets should not be accepted. We do however
  make an exception for RIPv1 REQUEST packets, to which we will
  reply as RIPv1 can now be disabled fully, to allow ripd to
  still provide routing /information/ to simple devices.

18 years ago[ospfd] Fix SPF of virtual-links
Paul Jakma [Thu, 4 May 2006 07:32:57 +0000 (07:32 +0000)]
[ospfd] Fix SPF of virtual-links

2006-04-24 Paul Jakma <paul.jakma@sun.com>

* (general) More Virtual-link fixes, again with much help in
  testing / debug from Juergen Kammer. Primarily in SPF.
* ospf_spf.h: Add guard. ospf_interface.h will include this
  header.
* ospf_interface.h: Modify ospf_vl_lookup definition to take
  struct ospf as argument, so as to allow for NULL area
  argument.
  (struct ospf_vl_data) Remove out_oi, instead add a struct
  vertex_nexthop, to use as initial nexthop for backbone paths
  through a vlink.
* ospf_interface.c: (ospf_vl_lookup) Modified to allow
  NULL area to be passed to indicate "any" (first) area.
  Add extra debug.
  (ospf_vl_set_params) vl_oi -> nexthop. Add extra debug.
  (ospf_vl_up_check) Fix debug, inet_ntoa returns a static
  buffer..
* ospf_route.c: (ospf_intra_add_router) Vlinks dont go through
  backbone, don't bother checking.
* ospf_spf.c: (static struct list vertex_list) Record vertices
  that will need to be freed.
  (cmp) Order network before router vertices, as required,
  wasn't implemented.
  (vertex_nexthop_free) Mild additional robustness check.
  (vertex_parent_free) Take void argument, as this function
  is passed as list deconstructor for vertex parent list.
  (ospf_vertex_new) More debug. Set deconstructor for parent
  list. Track allocated vertices on the vertex_list.
  (ospf_vertex_free) Get rid of the tricky recursive cleanup of
  vertices. Now frees only the given vertex.
  (ospf_vertex_add_parent) Fix assert.
  (ospf_nexthop_calculation) Fix calculation of nexthop for
  VLink vertices, lookup the vl_data and use its previously
  recorded nexthop information.
  (ospf_spf_calculate) Vertices are freed simply by deleting
  vertex_list nodes and letting ospf_vertex_free as deconstructor
  work per-node.
  (ospf_spf_calculate_timer) Trivial optimisation, leave
  backbone SPF calculation till last to reduce SPF churn on
  VLink updates.
* ospf_vty.c: (ospf_find_vl_data) update call to ospf_vl_lookup
  (no_ospf_area_vlink_cmd) ditto.
  (show_ip_ospf_interface_sub) For Vlinks, the peer address is
  more interesting than the output interface.

18 years ago[ripd] Fix logic to send updates on all connected addresses.
Andrew J. Schorr [Fri, 28 Apr 2006 16:22:36 +0000 (16:22 +0000)]
[ripd] Fix logic to send updates on all connected addresses.

2006-04-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ripd.c: (rip_update_process) Try to fix the logic for sending
  an updated on each connected network.  The new code will
  attempt to send the update on each connected network, whereas
  the previous code seemed to be attempting to avoid sending
  more than one RIPv1 update on a given interface, but was coded
  incorrectly.  The actual effect of the old code was to send
  an update only on the first connected address in the cases
  where the interface is not multicast, or RIPv2 is not being used.

18 years ago[solaris] Manifest referenced non-existent services, fix.
Paul Jakma [Mon, 3 Apr 2006 21:27:20 +0000 (21:27 +0000)]
[solaris] Manifest referenced non-existent services, fix.

2006-04-03 Paul Jakma <paul.jakma@sun.com>

* quagga.xml.in: oops, ipvX-routing services don't exist yet in
  any Solaris builds.

18 years ago[ospfd] Fix virtual-link handling in nbrs route-table, exposed by bug#234 fix
Paul Jakma [Mon, 3 Apr 2006 21:25:32 +0000 (21:25 +0000)]
[ospfd] Fix virtual-link handling in nbrs route-table, exposed by bug#234 fix

2006-04-03 Paul Jakma <paul.jakma@sun.com>

* (general) Fix issues with handling of Vlinks and entries
  in the nbrs route-table which were highlighted by the
  nsm/nbr_self fixes from bug #234. Many thanks to Juergen
  Kammer for his help and efforts in testing out debug patches to
  pinpoint the issue.
* ospf_interface.c: (ospf_vl_new) Add nbr_self for Vlink.
* ospf_neighbor.c: (ospf_nbr_key) new static function, helper
  to create key in nbrs table for a given nbr.
  (ospf_nbr_delete) Use ospf_nbr_key. Add an assert() to
  document an expected state.
  (ospf_nbr_add_self) Ditto.
  (ospf_nbr_lookup_by_addr) Add an assert.
* ospf_nsm.c: (nsm_kill_nbr) Can never kill the nbr_self
  psuedo-neighbour.

18 years ago[doc] document version zserv header, add txt figures, make pdf figs nicer
Paul Jakma [Mon, 3 Apr 2006 21:24:27 +0000 (21:24 +0000)]
[doc] document version zserv header, add txt figures, make pdf figs nicer

2006-03-31 Paul Jakma <paul.jakma@sun.com>

* fig*.txt: New files, txt versions of the diagrammes for the
  info file.
* protocol.texi: Document the new version 1 header.
* routeserver.texi: Explicitly specify scaling widths for the
  figures, only way to make them look reasonable, sadly.
  Try fix some formatting and explicitely note lists as being
  bulleted.
* Makefile.am: convert seems to do png to pdf just fine. No
  need for intermediate eps.
  Add txt figure expansions and list as dependencies and
  EXTRA_DIST files.

18 years agoSync rebuild of cvs_head
Paul Jakma [Thu, 30 Mar 2006 15:04:44 +0000 (16:04 +0100)]
Sync rebuild of cvs_head

18 years ago[lib] command.c exports host global, add it to header.
Paul Jakma [Thu, 30 Mar 2006 15:00:30 +0000 (15:00 +0000)]
[lib] command.c exports host global, add it to header.

2006-03-14 Paul Jakma <paul.jakma@sun.com>

* privs.c: (zprivs_caps_init) Change user IDs before lowering
  privileges, while this seems to work on Linux, on Solaris
  it rightfully refuses due to PRIV_PROC_SETID having been
  dropped.
* command.h: Add the struct host global exported from command.c

18 years ago[lib] Trivial: fix line lengths of a comment in workqueu.c
Paul Jakma [Thu, 30 Mar 2006 14:45:47 +0000 (14:45 +0000)]
[lib] Trivial: fix line lengths of a comment in workqueu.c

2006-03-30 Paul Jakma <paul.jakma@sun.com>

* workqueue.c: (work_queue_run) fix line length of comment

18 years ago[lib] Mark most arguments in DEFUN_CMD_FUNC_TEXT as potentially unused
Paul Jakma [Thu, 30 Mar 2006 14:43:17 +0000 (14:43 +0000)]
[lib] Mark most arguments in DEFUN_CMD_FUNC_TEXT as potentially unused

2006-03-30 Paul Jakma <paul.jakma@sun.com>

* command.h: (DEFUN_CMD_FUNC_TEXT) Annotate arguments as
  potentially being unused.

18 years ago[bgpd] Fix infinite loop in community_str2com
Paul Jakma [Thu, 30 Mar 2006 14:39:35 +0000 (14:39 +0000)]
[bgpd] Fix infinite loop in community_str2com

2006-03-30 Paul Jakma <paul.jakma@sun.com>

* bgp_community.c: (community_gettoken) Unknown token should
  return NULL, to give a strong indication to callers that
  the token no longer can be parsed, otherwise callers looping
  on this function may have a hard time ending their loop.
  (community_str2com) While loop around community_gettoken appears
  to have been coded thinking that break statement would break
  from the while{}, hence it could never exit for unknown token
  case. Fix it to do..while, so it can use the NULL result from
  community_gettoken easily.

18 years ago[TODO] Note MED functionality we should implement
Paul Jakma [Thu, 30 Mar 2006 14:36:23 +0000 (14:36 +0000)]
[TODO] Note MED functionality we should implement

2006-03-30 Paul Jakma <paul.jakma@sun.com>

* TODO: Add reminder for useful MED functionality we should
  implement.

18 years ago[ospfd] Fix failure of Fletcher checksum with certain compilers
Paul Jakma [Thu, 30 Mar 2006 14:34:31 +0000 (14:34 +0000)]
[ospfd] Fix failure of Fletcher checksum with certain compilers

2006-03-27 Paul Jakma <paul.jakma@sun.com>

* ospf_lsa.c: (ospf_lsa_checksum) Add an explicit cast to avoid
  the ambiguities of ANSI and C99 C with respect to type
  conversion. Detailed problem report and test case with
  example data supplied by Dmitry Ivanov <dimss@telecentrs.lv>.

18 years ago[lib] fix gensub call in memtypes.awk to pass "g", not g.
Paul Jakma [Thu, 30 Mar 2006 14:30:19 +0000 (14:30 +0000)]
[lib] fix gensub call in memtypes.awk to pass "g", not g.

2006-03-27 Paul Jakma <paul.jakma@sun.com>

* memtypes.awk: Fix gensub call, g should be a string..

18 years ago[lib] status field/flags no longer used in struct workqueue
Paul Jakma [Thu, 30 Mar 2006 14:25:24 +0000 (14:25 +0000)]
[lib] status field/flags no longer used in struct workqueue

2006-03-25 Paul Jakma <paul.jakma@sun.com>

* workqueue.h: (struct work_queue) Remove status field and
  state flag, no longer used.

18 years ago[ospfd] ignore loopbacks for received interface validation
Paul Jakma [Thu, 30 Mar 2006 14:20:00 +0000 (14:20 +0000)]
[ospfd] ignore loopbacks for received interface validation

2006-03-25 Paul Jakma <paul.jakma@sun.com>

* ospf_interface.c: (ospf_if_lookup_recv_if) Ignore loopbacks,
  we can never ever receive packets on those. Should fix
  case where CARP is run with address in same subnet as real
  interface. Problem report and diagnosis thanks to:
  Landon Fuller <landonf@opendarwin.org>.
  However, ospf_read() still can't deal deterministically with
  multiple interfaces in same subnet.

18 years ago[ospfd] Fix incorrect byte-order conversion of OSPF_MAX_SEQUENCE_NUMBER
Paul Jakma [Thu, 30 Mar 2006 14:16:11 +0000 (14:16 +0000)]
[ospfd] Fix incorrect byte-order conversion of OSPF_MAX_SEQUENCE_NUMBER

2006-03-23 Steve Lawson <steve.lawson@aheadcomusa.com>

* ospf_lsa.c: (ospf_lsa_install) Fix incorrect byte-order
  conversion of OSPF_MAX_SEQUENCE_NUMBER

18 years ago[bgpd] release peer specific clear queue in peer_free
Paul Jakma [Thu, 30 Mar 2006 14:12:38 +0000 (14:12 +0000)]
[bgpd] release peer specific clear queue in peer_free

2006-03-22 Paul Jakma <paul.jakma@sun.com>

* bgpd.c: (peer_free) release the per-peer workqueue when
  freeing the peer.

18 years ago[bgpd] trivial: use a distinct memtype for struct bgp_synchronize
Paul Jakma [Thu, 30 Mar 2006 14:09:38 +0000 (14:09 +0000)]
[bgpd] trivial: use a distinct memtype for struct bgp_synchronize

2006-03-19 Paul Jakma <paul.jakma@sun.com>

* memtypes.c: Add MTYPE_BGP_SYNCHRONISE.
* bgp_advertise.c: Use a distinct memory type for struct
  bgp_synchronize.

18 years ago[bgpd] Add 'show bgp memory' for stats on fixed-size allocations in bgpd
Paul Jakma [Thu, 30 Mar 2006 14:05:23 +0000 (14:05 +0000)]
[bgpd] Add 'show bgp memory' for stats on fixed-size allocations in bgpd

2006-03-19 Paul Jakma <paul.jakma@sun.com>

* bgpd/bgp_vty.c: Add includes to get several structs we want
  to provide usage statistics on.
  (show_bgp_memory_cmd) Show memory usage stats for various
  notable fixed size objects. Using mtype_stats_alloc and
  mtype_memstr recently added to memory.c.
  (bgp_show_summary) Report some additional stats specific to
  the given BGP instance and/or AFI/SAFI such as table counts,
  peers, rsclients and peer-groups.
  (bgp_vty_init) Install show_bgp_memory_cmd.

18 years ago[bgpd] Include header dependency in bgp_nexthop.h
Paul Jakma [Thu, 30 Mar 2006 14:01:14 +0000 (14:01 +0000)]
[bgpd] Include header dependency in bgp_nexthop.h

2006-03-19 Paul Jakma <paul.jakma@sun.com>

* bgp_nexthop.h: Include if.h as a dependent header, for struct
  connected.

18 years ago[lib] fix libtool version argument in Makefile.am
Paul Jakma [Thu, 30 Mar 2006 13:58:05 +0000 (13:58 +0000)]
[lib] fix libtool version argument in Makefile.am

2006-03-16 Paul Jakma <paul.jakma@sun.com>

* Makefile.am: Fix -version-info argument.

18 years ago[lib/memory] Add mallinfo support
Paul Jakma [Thu, 30 Mar 2006 13:53:59 +0000 (13:53 +0000)]
[lib/memory] Add mallinfo support

2006-02-15 Paul Jakma <paul.jakma@sun.com>

* configure.ac: Check for mallinfo, being careful to link test
  so we can detect things like umem being used (which doesn't
  provide a mallinfo).
* lib/memory.c: (mtype_memstr) new helper function to
  return human friendly string for a byte count.
  (mtype_stats_alloc) new function, for users to retrieve
  number of objects allocated.
  (show_memory_mallinfo) New function, show mallinfo statistics
  if available.
  (show_memory_all_cmd) Call show_memory_mallinfo, if mallinfo
  is available.
* lib/memory.h: Export mtype_memstr and mtype_stats_alloc.
  Provide a define for a reasonable buffer size for
  mtype_memstr.

18 years ago[solaris] revert previous update of manifest install path
Paul Jakma [Thu, 30 Mar 2006 13:46:23 +0000 (13:46 +0000)]
[solaris] revert previous update of manifest install path

2006-03-16 Paul Jakma <paul.jakma@sun.com>

* prototype.smf.in: Oops, continue to install manifest to
  var/svc/manifest/network for now.
* Changelog: fix lack of trailing newline

18 years ago[tests] fix heavy-wq, add redundant AS_SET test and statics to aspath_test
Paul Jakma [Thu, 30 Mar 2006 13:42:50 +0000 (13:42 +0000)]
[tests] fix heavy-wq, add redundant AS_SET test and statics to aspath_test

2006-03-16 Paul Jakma <paul.jakma@sun.com>

* heavy-wq.c: (heavy_wq_init) delay is gone from workqueue
  spec.
* aspath_test.c: (test_segments) Add an AS_SET with redundant
  ASNs.
  ({empty_prepend,prepend,parse}_test) add static qualifiers

18 years ago[solaris] SMF manifest, method and depend updates.
Paul Jakma [Thu, 30 Mar 2006 13:38:28 +0000 (13:38 +0000)]
[solaris] SMF manifest, method and depend updates.

2006-03-13 Alan Maguire <alan.maguire@sun.com>

* quagga.xml.in: Change the naming of services and instances.
  network/routing/quagga:<daemon> may be neat and tidy, but
  it's at odds with SMF convention elsewhere that demands
  the service be named for what it does, and the instance name
  describe the implementation (e.g. network/smtp:sendmail).
  Remove call to method script for 'stop', SMF can do that
  itself.
  Enumerate the privileges required in the SMF manifest, with the
  method_credential element.
  Dont try provide seperate properties for each argument, it's
  just tedious, particularly when they can no longer be
  inherited from a common quagga service - use a single
  "daemon-args" property, defaulting to -P 0.
  Specify authorisation for the 'routeadm' utility and for
  RBAC.

2006-03-13 Paul Jakma <paul.jakma@sun.com>

* quagga.init.in: Update to match SMF manifest changes.
  If run from an SMF environment, assume method is start.
  Offer a more tradition init script interface for pre-SMF.
  Enable zebra for the link-state daemons.
  Don't allow daemons to start in non-global zones, except
  for bgpd - it doesn't have to care about underlying
  networking much.
  Remove all the svcprop calls, SMF or the user will supply any
  arguments on the command-line.
* depend.smf.in: Add dependency on SUNWroute, which provides
  routeadm, which provides /var/svc/manifest/network/routing
* prototype.smf.in: Install manifest to
  var/svc/manifest/network/routing.

18 years ago[zebra] arrange structs in padding-efficient manner and remove unused field
Paul Jakma [Thu, 30 Mar 2006 13:32:09 +0000 (13:32 +0000)]
[zebra] arrange structs in padding-efficient manner and remove unused field

2006-02-09 Paul Jakma <paul.jakma@sun.com>

* rib.h: (struct {rib,nexthop}) Rearrange fields to avoid
  needless padding.
  (struct rib) Remove the indirect pointer, not used anywhere!

18 years ago[lib/privs] Changing user IDs should be done before dropping privileges
Paul Jakma [Thu, 30 Mar 2006 13:25:52 +0000 (13:25 +0000)]
[lib/privs] Changing user IDs should be done before dropping privileges

2006-03-14 Paul Jakma <paul.jakma@sun.com>

* privs.c: (zprivs_caps_init) Change user IDs before lowering
  privileges, while this seems to work on Linux, on Solaris
  it rightfully refuses due to PRIV_PROC_SETID having been
  dropped.

18 years ago[bgpd] rearrange some structs for less padding, stats for table/attrs.
Paul Jakma [Thu, 30 Mar 2006 13:20:48 +0000 (13:20 +0000)]
[bgpd] rearrange some structs for less padding, stats for table/attrs.

2006-03-12 Paul Jakma <paul.jakma@sun.com>

* bgp_attr.h: (struct attr) rearrange fields to avoid
  wasted padding between them as much as possible.
  (attr_count,attr_unknown_count) export new functions to
  return number of counts of cached attributes.
* bgp_attr.c: (attr_count,attr_unknown_count) new functions to
  return number of counts of cached attributes.
* bgp_route.h: (struct bgp_info) rearrange fields to avoid
  wasted padding.
* bgp_table.h: (struct bgp_table) Add a count field, of number
  of nodes in the table.
  (struct bgp_node)  rearrange fields to avoid
  wasted padding between them, though I don't think there
  was any in this case.
* bgp_table.c: (bgp_node_{delete,get}) Maintain the table node count.
  (bgp_table_count) new function to access the table count.

18 years ago[lib] export show_address_cmd debug command in if.h
Paul Jakma [Mon, 6 Mar 2006 18:18:37 +0000 (18:18 +0000)]
[lib] export show_address_cmd debug command in if.h

2006-03-06 Paul Jakma <paul.jakma@sun.com>

* if.h: export show_address_cmd, for anyone who wishes to use
  it.

18 years ago[bgpd] Start off FSM again once clearing finishes.
Paul Jakma [Mon, 6 Mar 2006 18:06:53 +0000 (18:06 +0000)]
[bgpd] Start off FSM again once clearing finishes.

2006-03-03 Paul Jakma <paul.jakma@sun.com>

* bgp_route.c: (bgp_clear_node_complete) Doh. When clearing
  is complete we need to kick off FSM again.

18 years ago[bgpd] Start off FSM again once clearing finishes.
Paul Jakma [Mon, 6 Mar 2006 18:06:53 +0000 (18:06 +0000)]
[bgpd] Start off FSM again once clearing finishes.

2006-03-03 Paul Jakma <paul.jakma@sun.com>

* bgp_route.c: (bgp_clear_node_complete) Doh. When clearing
  is complete we need to kick off FSM again.

18 years ago[lib/sockunion] trivial: use XSTRDUP.
Paul Jakma [Tue, 21 Feb 2006 01:37:14 +0000 (01:37 +0000)]
[lib/sockunion] trivial: use XSTRDUP.

2006-02-21 Paul Jakma <paul.jakma@sun.com>

* sockunion.c: (sockunion_{su2str,log}) Use XSTRDUP.
  Particularly with _su2str, as that string gets XFREEd,
  which can be annoying if run debug code in memory.c.

18 years ago[lib/sockunion] trivial: use XSTRDUP.
Paul Jakma [Tue, 21 Feb 2006 01:37:14 +0000 (01:37 +0000)]
[lib/sockunion] trivial: use XSTRDUP.

2006-02-21 Paul Jakma <paul.jakma@sun.com>

* sockunion.c: (sockunion_{su2str,log}) Use XSTRDUP.
  Particularly with _su2str, as that string gets XFREEd,
  which can be annoying if run debug code in memory.c.

18 years ago[bgpd] Add Clrng description to bgp summary state.
Paul Jakma [Tue, 21 Feb 2006 01:14:13 +0000 (01:14 +0000)]
[bgpd] Add Clrng description to bgp summary state.

2006-02-21 Paul Jakma <paul.jakma@sun.com>

* bgp_vty.c: (bgp_show_summary) Add a 'Clrng' sub-description
  to state of peer while it's suppressed due to clearing.

18 years ago[bgpd] Add Clrng description to bgp summary state.
Paul Jakma [Tue, 21 Feb 2006 01:14:13 +0000 (01:14 +0000)]
[bgpd] Add Clrng description to bgp summary state.

2006-02-21 Paul Jakma <paul.jakma@sun.com>

* bgp_vty.c: (bgp_show_summary) Add a 'Clrng' sub-description
  to state of peer while it's suppressed due to clearing.

18 years ago[bgpd] Record afi/safi in bgp_table. Serialise peer clear with FSM.
Paul Jakma [Tue, 21 Feb 2006 01:09:01 +0000 (01:09 +0000)]
[bgpd] Record afi/safi in bgp_table. Serialise peer clear with FSM.

2006-02-21 Paul Jakma <paul.jakma@sun.com>

* bgpd.h: move the clear_node_queue to be peer specific.
  Add a new peer status flag, PEER_STATUS_CLEARING.
* bgp_table.h: (struct bgp_table) Add fields to record afi,
          safi of the table.
          (bgp_table_init) Take afi and safi to create table for.
        * bgp_table.c: (bgp_table_init) record the afi and safi.
        * bgp_nexthop.c: Update all calls to bgp_table_init.
        * bgp_vty.c: ditto.
        * bgpd.c: ditto.
        * bgp_fsm.c: (bgp_timer_set) dont bring up a session which is
  clearing.
        * bgp_route.c: (general) Update all bgp_table_init calls.
          (bgp_process_{rsclient,main}) clear_node is serialised
          via PEER_STATUS_CLEARING and fsm now.
          (struct bgp_clear_node_queue) can be removed. struct bgp_node
          can be the queue item data directly, as struct peer can be
          kept in the new wq global user data and afi/safi can be
          retrieved via bgp_node -> bgp_table.
          (bgp_clear_route_node) fix to get peer via wq->spec.data,
          afi/safi via bgp_node->bgp_table.
          (bgp_clear_node_queue_del) no more item data to delete, only
          unlock the bgp_node.
          (bgp_clear_node_complete) only need to unset CLEARING flag
          and unlock struct peer.
          (bgp_clear_node_queue_init) queue attaches to struct peer
          now. record peer name as queue name.
          (bgp_clear_route_table) If queue transitions to active,
          serialise clearing by setting PEER_STATUS_CLEARING rather
          than plugging process queue, and lock peer while queue
          active.
          Update to pass only bgp_node as per-queue-item specific data.

18 years ago[bgpd] Record afi/safi in bgp_table. Serialise peer clear with FSM.
Paul Jakma [Tue, 21 Feb 2006 01:09:01 +0000 (01:09 +0000)]
[bgpd] Record afi/safi in bgp_table. Serialise peer clear with FSM.

2006-02-21 Paul Jakma <paul.jakma@sun.com>

* bgpd.h: move the clear_node_queue to be peer specific.
  Add a new peer status flag, PEER_STATUS_CLEARING.
* bgp_table.h: (struct bgp_table) Add fields to record afi,
          safi of the table.
          (bgp_table_init) Take afi and safi to create table for.
        * bgp_table.c: (bgp_table_init) record the afi and safi.
        * bgp_nexthop.c: Update all calls to bgp_table_init.
        * bgp_vty.c: ditto.
        * bgpd.c: ditto.
        * bgp_fsm.c: (bgp_timer_set) dont bring up a session which is
  clearing.
        * bgp_route.c: (general) Update all bgp_table_init calls.
          (bgp_process_{rsclient,main}) clear_node is serialised
          via PEER_STATUS_CLEARING and fsm now.
          (struct bgp_clear_node_queue) can be removed. struct bgp_node
          can be the queue item data directly, as struct peer can be
          kept in the new wq global user data and afi/safi can be
          retrieved via bgp_node -> bgp_table.
          (bgp_clear_route_node) fix to get peer via wq->spec.data,
          afi/safi via bgp_node->bgp_table.
          (bgp_clear_node_queue_del) no more item data to delete, only
          unlock the bgp_node.
          (bgp_clear_node_complete) only need to unset CLEARING flag
          and unlock struct peer.
          (bgp_clear_node_queue_init) queue attaches to struct peer
          now. record peer name as queue name.
          (bgp_clear_route_table) If queue transitions to active,
          serialise clearing by setting PEER_STATUS_CLEARING rather
          than plugging process queue, and lock peer while queue
          active.
          Update to pass only bgp_node as per-queue-item specific data.

18 years ago[solaris] version depend files, auto-generate. Start zebra when needed.
Paul Jakma [Sun, 19 Feb 2006 18:59:26 +0000 (18:59 +0000)]
[solaris] version depend files, auto-generate. Start zebra when needed.

2006-02-19 Paul Jakma <paul.jakma@sun.com>

* depend.*: renamed to depend.*.in.
* depend.*.in: Add version dependency.
* Makefile.am: Generate depend.* from depend.*.in
  Distribute the depend.*.in files rather than the depend.*
  files.
* quagga.init.in: Enable zebra if one of the link-state
  daemons is started.
  Restart method is not required - SMF handles that.
* quagga.xml.in: Remove restart method details.

18 years ago[doc] Credit Jeroen Simonetti for contributing snmptrap.texi
Paul Jakma [Sun, 19 Feb 2006 07:16:25 +0000 (07:16 +0000)]
[doc] Credit Jeroen Simonetti for contributing snmptrap.texi

2006-02-19 Paul Jakma <paul.jakma@sun.com>

* quagga.info: update auto-built file.
* ChangeLog: Fix old, existing entry for snmptrap.texi addition to
  credit the author, who got in touch with me.
* snmptrap.texi: Add comment line with author's details.

18 years ago[bgpd] trivial readability fix
Paul Jakma [Sat, 18 Feb 2006 10:52:09 +0000 (10:52 +0000)]
[bgpd] trivial readability fix

2006-02-18 Paul Jakma <paul.jakma@sun.com>

* bgp_route.c: (bgp_announce_check) trivial, move declaration
  of two local variables into the only block where they are
  used, to aid the reader.

18 years ago[bug #89] Fix leak of community when set community is used
Paul Jakma [Sat, 18 Feb 2006 10:49:04 +0000 (10:49 +0000)]
[bug #89] Fix leak of community when set community is used

2006-02-18 Paul Jakma <paul.jakma@sun.com>

* bgp_routemap.c: (route_set_community) Quick, very hacky, fix
  for the set-community leak, bug #89. True fix will be to
  detangle the web of *_intern caching and provide saner object
  caching for Quagga, future work.

18 years ago[bgpd] trivial fix for gcc warning
paul [Sun, 5 Feb 2006 17:55:35 +0000 (17:55 +0000)]
[bgpd] trivial fix for gcc warning

2006-02-05 Paul Jakma <paul.jakma@sun.com>

* bgp_aspath.c: (aspath_gettoken) fix gcc warning about
  possible uninitialised usage.

18 years ago[bgpd] Fix peer prefix counts and make it slightly more robust
paul [Sun, 5 Feb 2006 17:51:19 +0000 (17:51 +0000)]
[bgpd] Fix peer prefix counts and make it slightly more robust

2006-02-05 Paul Jakma <paul.jakma@sun.com>

* bgp_route.h: Add BGP_INFO_COUNTED to track whether
  prefix has been counted or not.
* bgp_route.c: (bgp_pcount_{inc,dec}rement) new helpers, to
  centralise inc/dec of prefix-count,
  (bgp_rib_remove) Remove pcount decrement, use helper.
  (bgp_rib_withdraw) ditto, additionally use previous function
  too.
  (bgp_update_main) Use pcount helpers.
  (bgp_clear_route_node) ditto, aslo REMOVED routes don't need
  clearing.

18 years ago[lib/workqueue] remove the useless 'delay' factor.
paul [Thu, 2 Feb 2006 17:50:19 +0000 (17:50 +0000)]
[lib/workqueue] remove the useless 'delay' factor.

2006-02-02 Paul Jakma <paul.jakma@sun.com>

* workqueue.h: (struct work_queue) Remove the delay field.
  It served no purpose and just introduced bad behaviour.
  Should be excised before its allowed to escape into 1.0.
  This removes need for the 'flood' and runs_since_clear
  fields.
* workqueue.c: (general) excise delay factor between queue
  runs, hence the 'flood' crap too.. See above.
* bgp_route.c: (bgp_{clear_node,process}_queue_init) delay
  field is removed from workqueue spec.

18 years ago[zebra] Display flags on their line in 'show interface'.
paul [Thu, 2 Feb 2006 17:27:13 +0000 (17:27 +0000)]
[zebra] Display flags on their line in 'show interface'.

2006-02-02 Paul Jakma <paul.jakma@sun.com>

* interface.c: (if_dump_vty) move flags to their line, neater.

18 years ago[build system] cleanup --enable-snmp by removing ucd-snmp cruft
paul [Tue, 31 Jan 2006 10:09:27 +0000 (10:09 +0000)]
[build system] cleanup --enable-snmp by removing ucd-snmp cruft

2006-01-31 Paul Jakma <paul.jakma@sun.com>

* configure.ac: Cleanup the hideous {net,ucd}-snmp section
  by removing ucd-snmp. Hence fixing detection where
  net-snmp is installed in /usr/local (Boris Kovalenko reported
  the problem).

18 years agoripd.c: correct bug that allowed route learnt through RIP to take precedence over...
vincent [Mon, 30 Jan 2006 18:12:42 +0000 (18:12 +0000)]
ripd.c: correct bug that allowed route learnt through RIP to take precedence over connected routes

18 years ago[zebra] Fix pauls zebra_rib/rib_process commit mistakes, again.
paul [Mon, 30 Jan 2006 14:08:51 +0000 (14:08 +0000)]
[zebra] Fix pauls zebra_rib/rib_process commit mistakes, again.

2006-01-30 Paul Jakma <paul.jakma@sun.com>

* zebra_rib.c: (rib_process) Fourth time lucky on this jinxed
  commit, last commit had a hole that could allow connected
  route selection to escape beyond the connected route logic.
  This time I cross-checked with Gunnar first. ;)

18 years ago[zebra] Fix incorrect changes made in RIB metric selection patch
paul [Wed, 25 Jan 2006 06:31:04 +0000 (06:31 +0000)]
[zebra] Fix incorrect changes made in RIB metric selection patch

2006-01-25 Gunnar Stigen <gunnar.stigen@axxessit.no>

* zebra_rib.c: (rib_process) Application of Gunnar's earlier
  metric selection RIB change included incorrect tidy-ups made
  by commiter. Fix. (NB: any errors here are again due to paul).

18 years ago[zebra/solaris] Interface state fixups for Solaris.
paul [Wed, 25 Jan 2006 04:31:40 +0000 (04:31 +0000)]
[zebra/solaris] Interface state fixups for Solaris.

2006-01-25 Paul Jakma <paul.jakma@sun.com>

* (general) More solaris PF_ROUTE hacks. The IFF_UP mangling
  for solaris was incomplete on the PF_ROUTE side. fix it.
  This changeset generally uglifies things. For some future
  work I'd like to see the state changes seperated out from
  the details of the code. Differences between systems might
  then be slightly easier to implement without convoluted
  hacks.
  Changes should be specific to Solaris mostly, however
  also tested on FreeBSD 6.
* if_ioctl_solaris.c: (interface_list_ioctl) ignore ~IFF_UP
  interfaces, we'll hear about them when/if interface goes up
  through NEWADDR.
  Update flags explicitely at end of it to kick mangling.
* ioctl_solaris.c: (if_mangle_up) removed to interface.c, in
  kind.
  (lifreq_set_name) more convenient to take the string, than
  the ifp.
  (if_get_flags_direct) new convenience function, returns
  the actual flags. Used during bootstrap in if_ioctl_solaris.c
  to peek at flags of logical interfaces to see whether or
  not to ignore them.
  (if_get_flags) ENXIO means it's gone, poke out IFF_UP and
  kick flags update.
  (if_{un,}set_flags) flags argument should be 64bit.
* ioctl.{c,h}: flags argument should be 64bit.
* interface.h: Add a 'primary_state' flag to struct zebra_if on
  SUNOS_5.
  Export if_flags_update.
* interface.c: (if_flags_mangle) moved over in kind from
  ioctl_solaris.c. Nasty kludge to try get IFF_UP right, as
  much as is possible. Also keep track of the actual IFF_UP
  value for the primary interface, so we can know when the ifp
  must be deleted.
  (if_flags_update) Take a new interface flags value, apply it
  to the interface, and take whatever actions are required due
  to flag transitions.
  (if_refresh) flag state change logic is moved out to
  previous. Just call if_get_flags, which will end up using
  previous to effect the update of flags.
  (if_flag_dump_vty) IFF_IPV{4,6} aren't interesting, VIRTUAL
  and NOXMIT are though.
* kernel_socket.c: (ifm_read) Down->Down transitions shouldn't
  create ifp, for non-IFANNOUNCE systems.
  Use if_flags_update to update flags.
  flag transition logic is now handled automatically through
  if_flags_update.
  (ifam_read) Better to call if_refresh *after* adding
    connected addresses, as connected count affects IFF_UP on
    IFF_UP-mangled systems.
    On Solaris, Up->Down due to DELADDR means we need to delete
  the ifp - the IFINFO might already have been and gone.
* rt.h: include other dependent headers.

18 years ago[cvs] update cvsignore file.
paul [Thu, 19 Jan 2006 20:33:47 +0000 (20:33 +0000)]
[cvs] update cvsignore file.

18 years ago[version] bump configure.ac version number to 0.99.3
paul [Thu, 19 Jan 2006 20:26:17 +0000 (20:26 +0000)]
[version] bump configure.ac version number to 0.99.3

2006-01-19 Paul Jakma <paul.jakma@sun.com>

* configure.ac: Bump to 0.99.3
* doc/quagga.info: update auto-built file.

18 years ago[lib/stream] small compile fix, use uint64_t, not u_int64_t.
paul [Thu, 19 Jan 2006 20:22:16 +0000 (20:22 +0000)]
[lib/stream] small compile fix, use uint64_t, not u_int64_t.

2006-01-19 Paul Jakma <paul.jakma@sun.com>

* stream.c: (stream_getq_from) should use POSIX uint64_t
  not u_int64_t. Latter is neither a traditional BSD type, nor
  a POSIX type.

18 years ago[compiler] miscellaneous trivial compiler warning fixes
paul [Thu, 19 Jan 2006 20:16:55 +0000 (20:16 +0000)]
[compiler] miscellaneous trivial compiler warning fixes

2006-01-19 Paul Jakma <paul.jakma@sun.com>

        * (general) various miscellaneous compiler warning fixes.
          Remove redundant break statements from switch clauses
          which return.
          return from main, not exit, cause it annoys SOS.
          Remove stray semi-colons which cause empty-statement
          warnings.
* zebra/main.c: (sighup) remove private declaration of external
  function.

18 years ago[ospfd] Add support for oversized LSAs.
paul [Wed, 18 Jan 2006 15:07:38 +0000 (15:07 +0000)]
[ospfd] Add support for oversized LSAs.

2006-01-18 Juergen Kammer <j.kammer@eurodata.de>

* ospf_lsa.c: (ospf_router_lsa_new) dont take reference to the
  stream data until it is constructed, data reference is
  volatile due to the potential resize in link_info_set

2006-01-18 Paul Jakma <paul.jakma@sun.com>

* ospf_lsa.c: (link_info_set) Resize the stream if required and
  possible. Return number of links added.
  (lsa_link_*_set) use return value from previous.
* ospf_lsa.h: Add OSPF_ROUTER_LSA_LINK_SIZE define.

18 years ago2006-01-18 Gunnar Stigen <gunnar.stigen@axxessit.no>
paul [Wed, 18 Jan 2006 14:52:52 +0000 (14:52 +0000)]
2006-01-18 Gunnar Stigen <gunnar.stigen@axxessit.no>

* zebra_rib.c: Take interface metric into account.

18 years ago2006-01-17 Vincent Jardin <vincent.jardin@6wind.com>
vincent [Tue, 17 Jan 2006 23:39:04 +0000 (23:39 +0000)]
2006-01-17 Vincent Jardin <vincent.jardin@6wind.com>

        * md5.c: Don't forget to keep const.
        * regex.c: Cleanup code and remove warnings.

18 years ago[zebra] Record NEWADDR metric on PF_ROUTE, print CACHEINFO debug on netlink
paul [Tue, 17 Jan 2006 18:03:04 +0000 (18:03 +0000)]
[zebra] Record NEWADDR metric on PF_ROUTE, print CACHEINFO debug on netlink

2006-01-17 Paul Jakma <paul.jakma@sun.com>

* kernel_socket.c: (ifam_read) Read metric from RTM_NEWADDR.
  If interface is an alias, pass the alias as a label for
  connected_add_ipv{4,6}.
* rt_netlink.c: (netlink_interface_addr) print out
  IFA_CACHEINFO info, if present, when debugging kernel
  messages.

18 years ago[zebra] Defensive if_getaddrs bug fix.
paul [Tue, 17 Jan 2006 17:59:11 +0000 (17:59 +0000)]
[zebra] Defensive if_getaddrs bug fix.

2006-01-17 Gunnar Stigen <gunnar.stigen@axxessit.no>

* if_ioctl.c: (if_getaddrs) Be defensive about assuming
  that struct ifaddrs will have ifa_addr filled in.

18 years ago[zebra] Include metric on connected routes.
paul [Tue, 17 Jan 2006 17:56:18 +0000 (17:56 +0000)]
[zebra] Include metric on connected routes.

2006-01-17 Gunnar Stigen <gunnar.stigen@axxessit.no>

* connected.c: (connected_up_ipv{4,6}) Include interface metric on
  connected routes.

18 years ago[ospfd/zserv] adjust to new format
paul [Tue, 17 Jan 2006 17:49:53 +0000 (17:49 +0000)]
[ospfd/zserv] adjust to new format

2006-01-17 Paul Jakma <paul.jakma@sun.com>

* ospf_packet.c: (ospf_verify_header) print out the types
  involved if there's a mismatch.
* ospf_zebra.c: (ospf_zebra_add) Adjust to new zserv format.

18 years ago[lib/zclient] Export zclient_create_header
paul [Tue, 17 Jan 2006 17:43:18 +0000 (17:43 +0000)]
[lib/zclient] Export zclient_create_header

2006-01-17 Paul Jakma <paul.jakma@sun.com>

* zclient.{c,h}: (zclient_create_header) export this, seems others
  could use it (in lieu of more complete zserv helpers).

18 years ago[lib/vty] Add 'no terminal monitor' alias
paul [Tue, 17 Jan 2006 17:42:03 +0000 (17:42 +0000)]
[lib/vty] Add 'no terminal monitor' alias

2006-01-17 Paul Jakma <paul.jakma@sun.com>

* vty.c: (no_terminal_monitor_cmd) New ALIAS for
  terminal_no_monitor, in the more normal negating format,
  to be kind to my fingers.
  (vty_init) install new ALIAS.

18 years ago[lib/md5] md5_loop should take void pointer for more useful caller warnings.
paul [Tue, 17 Jan 2006 17:40:45 +0000 (17:40 +0000)]
[lib/md5] md5_loop should take void pointer for more useful caller warnings.

2006-01-17 Paul Jakma <paul.jakma@sun.com>

* md5.{c,h}: (md5_loop) Is better off taking a void * and doing
  cast to byte wise type internally, avoids needs for casts
  in users.

18 years ago[zserv] fix up custom isisd and bgpd Zserv functions for new format.
paul [Tue, 17 Jan 2006 17:33:46 +0000 (17:33 +0000)]
[zserv] fix up custom isisd and bgpd Zserv functions for new format.

2006-01-17 Paul Jakma <paul.jakma@sun.com>

* bgp_nexthop.c: (zlookup_read*) convert to new Zserv format.
  (zlookup_query_ipv6) ditto.
  (bgp_import_check) ditto.
* isis_zebra.c: (isis_zebra_route_add_ipv4) fix for new
  zserv format.

18 years ago[ripd] Fix verification of received MD5 authenticated packets
paul [Tue, 17 Jan 2006 17:26:25 +0000 (17:26 +0000)]
[ripd] Fix verification of received MD5 authenticated packets

2006-01-17 Paul Jakma <paul.jakma@sun.com>

* ripd.c: (rip_auth_md5) remove pdigest, not needed.
  Use a local buffer for the auth_str, where it can be properly
  nul padded. Do so, hence fixing MD5 authentication.
  Key looked up via key ring should be used in preference to
  the RIPv1 simple password, not other way around.
  No need to copy around digests, we can reference them
  directly.
  The auth_len received can't be trusted, some implementations
  lie (e.g. older ripd).
  (rip_auth_md5_ah_write) rename len local variable to doff
  to be consistent with other functions.
  (rip_auth_header_write) add the missing return.
  (rip_auth_md5_set) use the proper constructs to access stream.

18 years ago2006-01-16 Paul Jakma <paul.jakma@sun.com>
paul [Mon, 16 Jan 2006 12:06:00 +0000 (12:06 +0000)]
2006-01-16 Paul Jakma <paul.jakma@sun.com>

* aspath_test.c: (validate) free the temporary aspaths.
  (empty_get_test) ditto.

18 years ago[bgpd] add aspath_finish, static resource cleanup function.
paul [Mon, 16 Jan 2006 12:01:29 +0000 (12:01 +0000)]
[bgpd] add aspath_finish, static resource cleanup function.

2006-01-16 Paul Jakma <paul.jakma@sun.com>

* bgp_aspath.c:
  (aspath_snmp_pathseg) move the static stream pointer out to
  file scope, so it can be freed.
  (aspath_finish) new function, free aspath resources.
* bgp_aspath.h: (aspath_finish) export.

18 years ago[bgpd] fix some leaks introduced in aspath rewrite.
paul [Mon, 16 Jan 2006 11:13:27 +0000 (11:13 +0000)]
[bgpd] fix some leaks introduced in aspath rewrite.

2006-01-16 Paul Jakma <paul.jakma@sun.com>

* bgp_aspath.c: (assegment_append_asns) XREALLOC can return
  NULL theoretically, take care not to lose the allocated data.
  (aspath_hash_alloc) aspath_dup already set the aspath
  string - fix leak.
  (aspath_parse) aspath_hash_alloc dupes the entire aspath,
  including segments, but we forgot to free the temporary
  assegment.

18 years ago[zserv] Extend Zserv header with version information and marker field
paul [Mon, 16 Jan 2006 01:54:02 +0000 (01:54 +0000)]
[zserv] Extend Zserv header with version information and marker field

2006-01-16 Paul Jakma <paul.jakma@sun.com>

* lib/zclient.h: Update the Zserv protocol header with a version
  field.  Define the old command field to be a 'marker', to
  allow old Zserv and updated Zserv to be differentiated.
  Future updates will bump the version field obviously. New
  command field is made wider.  Try to stop using the
  'zebra_size_t' typedef in the callbacks.
* lib/zclient.c: Update to read/write new format header.
* zebra/zserv.c: Ditto

18 years ago[zserv] Update interface flags to 8 bytes wide.
paul [Wed, 11 Jan 2006 01:59:04 +0000 (01:59 +0000)]
[zserv] Update interface flags to 8 bytes wide.

2006-01-11 Paul Jakma <paul.jakma@sun.com>

* if.h: (struct interface) expand flags to 8 bytes.
* zclient.c: (zebra_interface_{add,state}_read) stream read of
  interface flags now need to use stream_getq.
  (zebra_interface_if_set_value) ditto

2006-01-11 Paul Jakma <paul.jakma@sun.com>

* zserv.c: (zsend_interface_{add,delete,update}) if flags are
  8 bytes now, update to write out with stream_putq.

18 years ago2006-01-11 Erik Smit <zoiah@zoiah.net>
paul [Wed, 11 Jan 2006 01:38:25 +0000 (01:38 +0000)]
2006-01-11 Erik Smit <zoiah@zoiah.net>

* vtysh.c: (vtysh_config_from_file) fix regression from
  a previous cleanup, vtysh_client.flags and cmd->daemon are
  bitwise flags, bitwise & was meant to be used. Fixes breakage
  of integrated config file reading.

18 years ago[ospfd] Bug #234. Fix nbr_self reinitialisation after down/up.
paul [Wed, 11 Jan 2006 01:08:19 +0000 (01:08 +0000)]
[ospfd] Bug #234. Fix nbr_self reinitialisation after down/up.

2006-01-10 Len Sorensen <lennartsorensen@ruggedcom.com>

* (general) Bug #234, see also [quagga-dev 3902].
  Fix problem with nbr_self not being properly reinitialised
  when an interface comes up, after having been down.
  Some re-arrangement done by Paul Jakma, any bugs introduced
  on top of Len's suggested changes are his.
* ospf_neighbor.c: (ospf_nbr_add_self) centralise
  initialisation of nbr_self parameters here.
* ospf_interface.c: (ospf_if_new) deleting initialisation of
  parameters of nbr_self, just rely on call to
  ospf_nbr_add_self.
  (ospf_if_cleanup) ditto.
* ospfd.c: (ospf_network_run) ditto.

18 years ago[ospfd] fix undefined effect expression
paul [Tue, 10 Jan 2006 23:27:05 +0000 (23:27 +0000)]
[ospfd] fix undefined effect expression

2006-01-10 Juris Kalnins <juris@mt.lv>

* ospf_packet.c: (ospf_make_md5_digest) fix odd, if not
  undefined effect, assignment of an increment expression.

18 years ago[bgpd] remove export of long defunct function
paul [Tue, 10 Jan 2006 22:15:45 +0000 (22:15 +0000)]
[bgpd] remove export of long defunct function

2006-01-10 Juris Kalnins <juris@mt.lv>

* bgpd.h: (bgp_router_id_unset) ex-function, remove.