<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tteras/quagga/zebra/ChangeLog, branch zrm.patch</title>
<subtitle>tteras' quagga tree
</subtitle>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/'/>
<entry>
<title>[zebra] trivial: rtadv.h depends on interface.h</title>
<updated>2006-08-06T16:02:43+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-08-06T16:02:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=66c454f2a57a1a0053ea308edfc8c8024b3b7a48'/>
<id>66c454f2a57a1a0053ea308edfc8c8024b3b7a48</id>
<content type='text'>
2006-08-06 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rtadv.h: depends on interface.h, so should include it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-08-06 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rtadv.h: depends on interface.h, so should include it.
</pre>
</div>
</content>
</entry>
<entry>
<title>[zebra] fix inconsistencies in ifstat_update_* declarations and definitions</title>
<updated>2006-08-06T15:57:59+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-08-06T15:57:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=f28b0e57bd5173215132fed02aa4b284d7cbe26a'/>
<id>f28b0e57bd5173215132fed02aa4b284d7cbe26a</id>
<content type='text'>
2006-08-06 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* interface.h: (ifstat_update_proc) declaration should match
	  ifstat_update_sysctl really, which is to not return status, as
	  such status is not used anywhere.
	* if_{proc,sysctl}.c: Make ifstat_update_* definitions and return values
	  consistent with each other and their declarations, ie:
	  (void) (*) (void).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-08-06 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* interface.h: (ifstat_update_proc) declaration should match
	  ifstat_update_sysctl really, which is to not return status, as
	  such status is not used anywhere.
	* if_{proc,sysctl}.c: Make ifstat_update_* definitions and return values
	  consistent with each other and their declarations, ie:
	  (void) (*) (void).
</pre>
</div>
</content>
</entry>
<entry>
<title>[zebra] IRDP: Move stream_free to where its created, probably fixing a leak</title>
<updated>2006-08-04T06:18:04+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-08-04T06:18:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=36943749147bef10df8ffc0e2ad79f4dd06cd9ac'/>
<id>36943749147bef10df8ffc0e2ad79f4dd06cd9ac</id>
<content type='text'>
2006-08-01 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* irdp_main.c: (irdp_advertisement) free the stream here, when done,
	  right under where it was allocated so it's blindingly obvious
	  it's correct. This possibly fixes a very slow leak of streams in
	  zebra.
	* irdp_packet.c: (send_packet) don't free the stream here as
	  it's hard to tell if right, plus an error case seemed to
	  returning before free anyway.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-08-01 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* irdp_main.c: (irdp_advertisement) free the stream here, when done,
	  right under where it was allocated so it's blindingly obvious
	  it's correct. This possibly fixes a very slow leak of streams in
	  zebra.
	* irdp_packet.c: (send_packet) don't free the stream here as
	  it's hard to tell if right, plus an error case seemed to
	  returning before free anyway.
</pre>
</div>
</content>
</entry>
<entry>
<title>[zebra] add more stuff to misc_null to avoid compile breakages</title>
<updated>2006-08-04T06:14:13+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-08-04T06:14:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=7e4bcdc1d6d0e0338fe5cac6103dd485332e7b51'/>
<id>7e4bcdc1d6d0e0338fe5cac6103dd485332e7b51</id>
<content type='text'>
2006-08-04 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* misc_null.c: Add ifstat_update_sysctl, add another required
	  header.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-08-04 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* misc_null.c: Add ifstat_update_sysctl, add another required
	  header.
</pre>
</div>
</content>
</entry>
<entry>
<title>[testzebra] Patch to misc_null.c to get older gcc to recognize #pragma tricks</title>
<updated>2006-08-02T16:47:03+00:00</updated>
<author>
<name>Andrew J. Schorr</name>
<email>ajschorr@alumni.princeton.edu</email>
</author>
<published>2006-08-02T16:47:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=a6974fef057a6673be3bb11042a92c9490ece894'/>
<id>a6974fef057a6673be3bb11042a92c9490ece894</id>
<content type='text'>
2006-08-02 Andrew J. Schorr &lt;ajschorr@alumni.princeton.edu&gt;

	* misc_null.c: Must include header files to get older versions of gcc
	  to process the #pragma statements properly.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-08-02 Andrew J. Schorr &lt;ajschorr@alumni.princeton.edu&gt;

	* misc_null.c: Must include header files to get older versions of gcc
	  to process the #pragma statements properly.
</pre>
</div>
</content>
</entry>
<entry>
<title>[zebra] Bug #268, Fix race between add/delete of routes, sanitise rib queueing</title>
<updated>2006-07-27T21:49:00+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-07-27T21:49:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=6d691129594f87958ecaf4169b2e1f62f90d3616'/>
<id>6d691129594f87958ecaf4169b2e1f62f90d3616</id>
<content type='text'>
2006-07-27 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rib.h: (struct rib) Add a route_node rn_status flag field,
	  this has to be copied every time head RIB of a route_node
	  changes.
	  Remove the rib lock field, not needed - see below.
	  Add a status field for RIB-private flags.
	* zebra_rib.c: Add a global for the workqueue hold time, useful
	  for testing.
	  (general) Fix for bug #268. Problem originally
	  detailed by Simon Bryden in [quagga-dev 4001].
	  Essentially, add/delete of a RIB must happen /before/ the
	  queue. Best-path selection (ie rib_process) and reaping of
	  freed RIBs can then be done after queueing. Only the route_node
	  is queued - no important RIB state (i.e. whether a RIB is to be
	  deleted) is queued.
	  (struct zebra_queue_node_t) Disappears, no longer need to
	  track multiple things on the queue, only the route_node.
	  (rib_{lock,unlock}) removed, RIBs no longer need to be
	  refcounted, no longer queued.
	  (rib_queue_qnode_del) Removed, deleted RIBs no longer deleted
	  via the queue.
	  (rib_queue_add_qnode) deleted
	  (rib_queue_add) Only the route_node is queued for best-path
	  selection, we can check whether it is already queued or
	  not and avoid queueing same node twice - struct rib * argument
	  is not needed.
	  (rib_link/unlink) (un)link RIB from route_node.
	  (rib_{add,del}node) Front-end to updates of a RIB.
	  (rib_process) Reap any deleted RIBs via rib_unlink.
	  Unset the route_node 'QUEUED' flag.
	  (General) Remove calls to rib_queue_add where add/del node was
	  called - not needed, update calls where not.
	  Ignore RIB_ENTRY_REMOVEd ribs in loops through route_nodes
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-07-27 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rib.h: (struct rib) Add a route_node rn_status flag field,
	  this has to be copied every time head RIB of a route_node
	  changes.
	  Remove the rib lock field, not needed - see below.
	  Add a status field for RIB-private flags.
	* zebra_rib.c: Add a global for the workqueue hold time, useful
	  for testing.
	  (general) Fix for bug #268. Problem originally
	  detailed by Simon Bryden in [quagga-dev 4001].
	  Essentially, add/delete of a RIB must happen /before/ the
	  queue. Best-path selection (ie rib_process) and reaping of
	  freed RIBs can then be done after queueing. Only the route_node
	  is queued - no important RIB state (i.e. whether a RIB is to be
	  deleted) is queued.
	  (struct zebra_queue_node_t) Disappears, no longer need to
	  track multiple things on the queue, only the route_node.
	  (rib_{lock,unlock}) removed, RIBs no longer need to be
	  refcounted, no longer queued.
	  (rib_queue_qnode_del) Removed, deleted RIBs no longer deleted
	  via the queue.
	  (rib_queue_add_qnode) deleted
	  (rib_queue_add) Only the route_node is queued for best-path
	  selection, we can check whether it is already queued or
	  not and avoid queueing same node twice - struct rib * argument
	  is not needed.
	  (rib_link/unlink) (un)link RIB from route_node.
	  (rib_{add,del}node) Front-end to updates of a RIB.
	  (rib_process) Reap any deleted RIBs via rib_unlink.
	  Unset the route_node 'QUEUED' flag.
	  (General) Remove calls to rib_queue_add where add/del node was
	  called - not needed, update calls where not.
	  Ignore RIB_ENTRY_REMOVEd ribs in loops through route_nodes
</pre>
</div>
</content>
</entry>
<entry>
<title>[zebra] Add 'debug zebra rib' commands</title>
<updated>2006-07-27T21:35:33+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-07-27T21:35:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=b0498dc6ff0510efe9467fbaed41945f3f056af4'/>
<id>b0498dc6ff0510efe9467fbaed41945f3f056af4</id>
<content type='text'>
2006-07-27 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* debug.{c,h}: Add 'debug zebra rib' and 'debug zebra rib queue'.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-07-27 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* debug.{c,h}: Add 'debug zebra rib' and 'debug zebra rib queue'.
</pre>
</div>
</content>
</entry>
<entry>
<title>[zebra] Add test rig code, for testing the zebra RIB</title>
<updated>2006-07-27T19:59:58+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-07-27T19:59:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=457eb9af72e6e7aa85c26b65ba4d053f9ecbffac'/>
<id>457eb9af72e6e7aa85c26b65ba4d053f9ecbffac</id>
<content type='text'>
2006-07-27 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* {ioctl,kernel}_null.c: Dummy/Null kernel method implementations,
	  useful for testing zebra code that calls such methods.
	* {redistribute,misc}_null.c: Dummy/Null methods, as above. But
	  for zclient, and for various misc functions.
	* test_main.c: Test harness for zebra, currently just to test the
	  RIB.
	* Makefile.am: Build testzebra using above.
	* zebra_rib.c: Add a global for the workqueue hold time, useful
	  for testing.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-07-27 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* {ioctl,kernel}_null.c: Dummy/Null kernel method implementations,
	  useful for testing zebra code that calls such methods.
	* {redistribute,misc}_null.c: Dummy/Null methods, as above. But
	  for zclient, and for various misc functions.
	* test_main.c: Test harness for zebra, currently just to test the
	  RIB.
	* Makefile.am: Build testzebra using above.
	* zebra_rib.c: Add a global for the workqueue hold time, useful
	  for testing.
</pre>
</div>
</content>
</entry>
<entry>
<title>[zebra] Connected routes must always be added to main table</title>
<updated>2006-07-27T16:11:02+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-07-27T16:11:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=171eee31edbddbd8906447dc8725e0513227d013'/>
<id>171eee31edbddbd8906447dc8725e0513227d013</id>
<content type='text'>
2006-07-27 Rumen Svobodnikov &lt;rumen@telecoms.bg&gt;

	* connected.c: (connected_up_ipv4) interface connected routes always
	  go to table main (or otherwise they cannot be used by linux as
          nexthops)
	* zserv.c: (zread_ipv4_add) send route to the correct routing table
	* zebra_rib.c (static_install_ipv4) set routing table
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-07-27 Rumen Svobodnikov &lt;rumen@telecoms.bg&gt;

	* connected.c: (connected_up_ipv4) interface connected routes always
	  go to table main (or otherwise they cannot be used by linux as
          nexthops)
	* zserv.c: (zread_ipv4_add) send route to the correct routing table
	* zebra_rib.c (static_install_ipv4) set routing table
</pre>
</div>
</content>
</entry>
<entry>
<title>[zebra] Fix CID #104, check addr for null, and #18, check nexthop type args</title>
<updated>2006-07-02T16:38:54+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-07-02T16:38:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/user/tteras/quagga/commit/?id=27b472533bc8bb0fdb37dcda7596c385d3b9f414'/>
<id>27b472533bc8bb0fdb37dcda7596c385d3b9f414</id>
<content type='text'>
2006-07-02 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rt_netlink.c: (netlink_interface_addr) Fix CID #104, can not
	  proceed if addr is NULL.
	* zebra_rib.c: (static_add_ipv6) Fix CID #18, double check
	  required arguments are supplied for the given nexthop type.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-07-02 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rt_netlink.c: (netlink_interface_addr) Fix CID #104, can not
	  proceed if addr is NULL.
	* zebra_rib.c: (static_add_ipv6) Fix CID #18, double check
	  required arguments are supplied for the given nexthop type.
</pre>
</div>
</content>
</entry>
</feed>
