<feed xmlns='http://www.w3.org/2005/Atom'>
<title>quagga/ripd/ChangeLog, branch isis-redist</title>
<subtitle>Quagga routing suite</subtitle>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/'/>
<entry>
<title>[trivia] Remove ChangeLog files, as this data is now maintained in SCM</title>
<updated>2008-08-22T18:57:22+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2008-08-19T13:13:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=3998bfd76620a676fbd77f19c5c6ea80a4cc88d2'/>
<id>3998bfd76620a676fbd77f19c5c6ea80a4cc88d2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[ripd] Fix mistaken empty string test</title>
<updated>2008-05-29T19:03:08+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2008-05-29T19:03:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=fa93b16208c2e7ffb09bd5bf72fb1a70a1ad8f73'/>
<id>fa93b16208c2e7ffb09bd5bf72fb1a70a1ad8f73</id>
<content type='text'>
2008-05-29 Stephen Hemminger &lt;stephen.hemminger@vyatta.com&gt;

	* ripd.c: (rip_auth_md5) fix bogus empty string test
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2008-05-29 Stephen Hemminger &lt;stephen.hemminger@vyatta.com&gt;

	* ripd.c: (rip_auth_md5) fix bogus empty string test
</pre>
</div>
</content>
</entry>
<entry>
<title>[ripd] remove unnecessary 0 entries from struct message's</title>
<updated>2008-03-13T03:28:13+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2008-03-13T03:28:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=ce6ab03a273beb903731621153722511910ebbe5'/>
<id>ce6ab03a273beb903731621153722511910ebbe5</id>
<content type='text'>
2008-03-13 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* ripd.c/rip_interface.c: Remove 0 entries from rip_msg
	  ri_version_msg struct message's, not needed with recent fixes
	  to mes_lookup.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2008-03-13 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* ripd.c/rip_interface.c: Remove 0 entries from rip_msg
	  ri_version_msg struct message's, not needed with recent fixes
	  to mes_lookup.
</pre>
</div>
</content>
</entry>
<entry>
<title>[ripd, ripngd] Remove useless code in rip_vty_out_uptime function</title>
<updated>2007-04-27T18:03:11+00:00</updated>
<author>
<name>Andrew J. Schorr</name>
<email>ajschorr@alumni.princeton.edu</email>
</author>
<published>2007-04-27T18:03:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=33672eddf14c5b619fc38975d4c1f2888189cbc8'/>
<id>33672eddf14c5b619fc38975d4c1f2888189cbc8</id>
<content type='text'>
2007-04-27 Andrew J. Schorr &lt;ajschorr@alumni.princeton.edu&gt;

	* ripd/ripd.c: (rip_vty_out_uptime) Remove unused variable timer_now.
	* ripngd/ripngd.c: (ripng_vty_out_uptime) Remove unused variable
	  timer_now.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2007-04-27 Andrew J. Schorr &lt;ajschorr@alumni.princeton.edu&gt;

	* ripd/ripd.c: (rip_vty_out_uptime) Remove unused variable timer_now.
	* ripngd/ripngd.c: (ripng_vty_out_uptime) Remove unused variable
	  timer_now.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix the display of route timeout in "show ip rip". (Use thread_timer_remain_second)</title>
<updated>2007-04-11T15:12:05+00:00</updated>
<author>
<name>Vincent Jardin</name>
<email>vincent.jardin@6wind.com</email>
</author>
<published>2007-04-11T15:12:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=a1fdf9479637642ae3de0ee6ef5c0958d6e687d8'/>
<id>a1fdf9479637642ae3de0ee6ef5c0958d6e687d8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[ripd] Fix "show ip rip status" display of time until next update</title>
<updated>2007-03-21T18:57:38+00:00</updated>
<author>
<name>Andrew J. Schorr</name>
<email>ajschorr@alumni.princeton.edu</email>
</author>
<published>2007-03-21T18:57:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=a4c648281dfdc45687580ea2d20884b5d7dbdc8d'/>
<id>a4c648281dfdc45687580ea2d20884b5d7dbdc8d</id>
<content type='text'>
2007-03-21 Andrew J. Schorr &lt;ajschorr@alumni.princeton.edu&gt;

	* ripd.c: (show_ip_rip_status) Use new thread_timer_remain_second
	  function instead of rip_next_thread_timer to display the time until
	  next update properly.
	  (rip_next_thread_timer) Remove obsolete function.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2007-03-21 Andrew J. Schorr &lt;ajschorr@alumni.princeton.edu&gt;

	* ripd.c: (show_ip_rip_status) Use new thread_timer_remain_second
	  function instead of rip_next_thread_timer to display the time until
	  next update properly.
	  (rip_next_thread_timer) Remove obsolete function.
</pre>
</div>
</content>
</entry>
<entry>
<title>[PtP over ethernet] New peer flag allows much more addressing flexibility</title>
<updated>2006-12-12T19:18:21+00:00</updated>
<author>
<name>Andrew J. Schorr</name>
<email>ajschorr@alumni.princeton.edu</email>
</author>
<published>2006-12-12T19:18:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=e4529636b77124285cca96a62799d0ff6a7addeb'/>
<id>e4529636b77124285cca96a62799d0ff6a7addeb</id>
<content type='text'>
2006-12-12 Andrew J. Schorr &lt;ajschorr@alumni.princeton.edu&gt;

	* if.h: (struct connected) Add new ZEBRA_IFA_PEER flag indicating
	  whether a peer address has been configured.  Comment now shows
	  the new interpretation of the destination addr: if ZEBRA_IFA_PEER
	  is set, then it must contain the destination address, otherwise
	  it may contain the broadcast address or be NULL.
	  (CONNECTED_DEST_HOST,CONNECTED_POINTOPOINT_HOST) Remove obsolete
	  macros that were specific to IPv4 and not fully general.
	  (CONNECTED_PEER) New macro to check ZEBRA_IFA_PEER flag.
	  (CONNECTED_PREFIX) New macro giving the prefix to insert into
	  the RIB: if CONNECTED_PEER, then use the destination (peer) address,
	  else use the address field.
	  (CONNECTED_ID) New macro to come up with an identifying address
	  for the struct connected.
	* if.c: (if_lookup_address, connected_lookup_address) Streamline
	  logic with new CONNECTED_PREFIX macro.
	* prefix.h: (PREFIX_COPY_IPV4, PREFIX_COPY_IPV6) New macros
	  for better performance than the general prefix_copy function.
	* zclient.c: (zebra_interface_address_read) For non-null destination
	  addresses, set prefixlen to equal the address prefixlen.  This
	  is needed to get the new CONNECTED_PREFIX macro to work properly.
	* connected.c: (connected_up_ipv4, connected_down_ipv4,
	  connected_up_ipv6, connected_down_ipv6) Simplify logic using the
	  new CONNECTED_PREFIX macro.
	  (connected_add_ipv4) Set prefixlen in destination addresses (required
	  by the CONNECTED_PREFIX macro).  Use CONNECTED_PEER macro instead
	  of testing for IFF_POINTOPOINT.  Delete invalid warning message.
	  Warn about cases where the ZEBRA_IFA_PEER is set but no
	  destination address has been supplied (and turn off the flag).
	  (connected_add_ipv6) Add new flags argument so callers may set
	  the ZEBRA_IFA_PEER flag.  If peer/broadcast address satisfies
	  IN6_IS_ADDR_UNSPECIFIED, then reject it with a warning.
	  Set prefixlen in destination address so CONNECTED_PREFIX will work.
	* connected.h: (connected_add_ipv6) Add new flags argument so
	  callers may set the ZEBRA_IFA_PEER flag.
	* interface.c: (connected_dump_vty) Use CONNECTED_PEER macro
	  to decide whether the destination address is a peer or broadcast
	  address (instead of checking IFF_BROADCAST and IFF_POINTOPOINT).
	* if_ioctl.c: (if_getaddrs) Instead of setting a peer address
	  only when the IFF_POINTOPOINT is set, we now accept a peer
	  address whenever it is available and not the same as the local
	  address.  Otherwise (no peer address assigned), we check
	  for a broadcast address (regardless of the IFF_BROADCAST flag).
	  And must now pass a flags value of ZEBRA_IFA_PEER to
	  connected_add_ipv4 when a peer address is assigned.
	  The same new logic is used with the IPv6 code as well (and we
	  pass the new flags argument to connected_add_ipv6).
	  (if_get_addr) Do not bother to check IFF_POINTOPOINT: just
	  issue the SIOCGIFDSTADDR ioctl and see if we get back
	  a peer address not matching the local address (and set
	  the ZEBRA_IFA_PEER in that case).  If there's no peer address,
	  try to grab SIOCGIFBRDADDR regardless of whether IFF_BROADCAST is set.
	* if_ioctl_solaris.c: (if_get_addr) Just try the SIOCGLIFDSTADDR ioctl
	  without bothering to check the IFF_POINTOPOINT flag.  And if
	  no peer address was found, just try the SIOCGLIFBRDADDR ioctl
	  without checking the IFF_BROADCAST flag.  Call connected_add_ipv4
	  and connected_add_ipv6 with appropriate flags.
	* if_proc.c: (ifaddr_proc_ipv6) Must pass new flags argument to
	  connected_add_ipv6.
	* kernel_socket.c: (ifam_read) Must pass new flags argument to
	  connected_add_ipv6.
	* rt_netlink.c: (netlink_interface_addr) Copy logic from iproute2
	  to determine local and possible peer address (so there's no longer
	  a test for IFF_POINTOPOINT).  Set ZEBRA_IFA_PEER flag appropriately.
	  Pass new flags argument to connected_add_ipv6.
	  (netlink_address) Test !CONNECTED_PEER instead of if_is_broadcast
	  to determine whether the connected destination address is a
	  broadcast address.
	* bgp_nexthop.c: (bgp_connected_add, bgp_connected_delete)
	  Simplify logic by using new CONNECTED_PREFIX macro.
	* ospf_interface.c: (ospf_if_is_configured, ospf_if_lookup_by_prefix,
	  ospf_if_lookup_recv_if) Simplify logic using new CONNECTED_PREFIX
	  macro.
	* ospf_lsa.c: (lsa_link_ptop_set) Using the new CONNECTED_PREFIX
	  macro, both options collapse into the same code.
	* ospf_snmp.c: (ospf_snmp_if_update) Simplify logic using new
	  CONNECTED_ID macro.
	  (ospf_snmp_is_if_have_addr) Simplify logic using new CONNECTED_PREFIX
	  macro.
	* ospf_vty.c: (show_ip_ospf_interface_sub) Use new CONNECTED_PEER macro
	  instead of testing the IFF_POINTOPOINT flag.
	* ospfd.c: (ospf_network_match_iface) Use new CONNECTED_PEER macro
	  instead of testing with if_is_pointopoint.  And add commented-out
	  code to implement alternative (in my opinion) more elegant behavior
	  that has no special-case treatment for PtP addresses.
	  (ospf_network_run) Use new CONNECTED_ID macro to simplify logic.
	* rip_interface.c: (rip_interface_multicast_set) Use new CONNECTED_ID
	  macro to simplify logic.
	  (rip_request_interface_send) Fix minor bug: ipv4_broadcast_addr does
	  not give a useful result if prefixlen is 32 (we require a peer
	  address in such cases).
	* ripd.c: (rip_update_interface) Fix same bug as above.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-12-12 Andrew J. Schorr &lt;ajschorr@alumni.princeton.edu&gt;

	* if.h: (struct connected) Add new ZEBRA_IFA_PEER flag indicating
	  whether a peer address has been configured.  Comment now shows
	  the new interpretation of the destination addr: if ZEBRA_IFA_PEER
	  is set, then it must contain the destination address, otherwise
	  it may contain the broadcast address or be NULL.
	  (CONNECTED_DEST_HOST,CONNECTED_POINTOPOINT_HOST) Remove obsolete
	  macros that were specific to IPv4 and not fully general.
	  (CONNECTED_PEER) New macro to check ZEBRA_IFA_PEER flag.
	  (CONNECTED_PREFIX) New macro giving the prefix to insert into
	  the RIB: if CONNECTED_PEER, then use the destination (peer) address,
	  else use the address field.
	  (CONNECTED_ID) New macro to come up with an identifying address
	  for the struct connected.
	* if.c: (if_lookup_address, connected_lookup_address) Streamline
	  logic with new CONNECTED_PREFIX macro.
	* prefix.h: (PREFIX_COPY_IPV4, PREFIX_COPY_IPV6) New macros
	  for better performance than the general prefix_copy function.
	* zclient.c: (zebra_interface_address_read) For non-null destination
	  addresses, set prefixlen to equal the address prefixlen.  This
	  is needed to get the new CONNECTED_PREFIX macro to work properly.
	* connected.c: (connected_up_ipv4, connected_down_ipv4,
	  connected_up_ipv6, connected_down_ipv6) Simplify logic using the
	  new CONNECTED_PREFIX macro.
	  (connected_add_ipv4) Set prefixlen in destination addresses (required
	  by the CONNECTED_PREFIX macro).  Use CONNECTED_PEER macro instead
	  of testing for IFF_POINTOPOINT.  Delete invalid warning message.
	  Warn about cases where the ZEBRA_IFA_PEER is set but no
	  destination address has been supplied (and turn off the flag).
	  (connected_add_ipv6) Add new flags argument so callers may set
	  the ZEBRA_IFA_PEER flag.  If peer/broadcast address satisfies
	  IN6_IS_ADDR_UNSPECIFIED, then reject it with a warning.
	  Set prefixlen in destination address so CONNECTED_PREFIX will work.
	* connected.h: (connected_add_ipv6) Add new flags argument so
	  callers may set the ZEBRA_IFA_PEER flag.
	* interface.c: (connected_dump_vty) Use CONNECTED_PEER macro
	  to decide whether the destination address is a peer or broadcast
	  address (instead of checking IFF_BROADCAST and IFF_POINTOPOINT).
	* if_ioctl.c: (if_getaddrs) Instead of setting a peer address
	  only when the IFF_POINTOPOINT is set, we now accept a peer
	  address whenever it is available and not the same as the local
	  address.  Otherwise (no peer address assigned), we check
	  for a broadcast address (regardless of the IFF_BROADCAST flag).
	  And must now pass a flags value of ZEBRA_IFA_PEER to
	  connected_add_ipv4 when a peer address is assigned.
	  The same new logic is used with the IPv6 code as well (and we
	  pass the new flags argument to connected_add_ipv6).
	  (if_get_addr) Do not bother to check IFF_POINTOPOINT: just
	  issue the SIOCGIFDSTADDR ioctl and see if we get back
	  a peer address not matching the local address (and set
	  the ZEBRA_IFA_PEER in that case).  If there's no peer address,
	  try to grab SIOCGIFBRDADDR regardless of whether IFF_BROADCAST is set.
	* if_ioctl_solaris.c: (if_get_addr) Just try the SIOCGLIFDSTADDR ioctl
	  without bothering to check the IFF_POINTOPOINT flag.  And if
	  no peer address was found, just try the SIOCGLIFBRDADDR ioctl
	  without checking the IFF_BROADCAST flag.  Call connected_add_ipv4
	  and connected_add_ipv6 with appropriate flags.
	* if_proc.c: (ifaddr_proc_ipv6) Must pass new flags argument to
	  connected_add_ipv6.
	* kernel_socket.c: (ifam_read) Must pass new flags argument to
	  connected_add_ipv6.
	* rt_netlink.c: (netlink_interface_addr) Copy logic from iproute2
	  to determine local and possible peer address (so there's no longer
	  a test for IFF_POINTOPOINT).  Set ZEBRA_IFA_PEER flag appropriately.
	  Pass new flags argument to connected_add_ipv6.
	  (netlink_address) Test !CONNECTED_PEER instead of if_is_broadcast
	  to determine whether the connected destination address is a
	  broadcast address.
	* bgp_nexthop.c: (bgp_connected_add, bgp_connected_delete)
	  Simplify logic by using new CONNECTED_PREFIX macro.
	* ospf_interface.c: (ospf_if_is_configured, ospf_if_lookup_by_prefix,
	  ospf_if_lookup_recv_if) Simplify logic using new CONNECTED_PREFIX
	  macro.
	* ospf_lsa.c: (lsa_link_ptop_set) Using the new CONNECTED_PREFIX
	  macro, both options collapse into the same code.
	* ospf_snmp.c: (ospf_snmp_if_update) Simplify logic using new
	  CONNECTED_ID macro.
	  (ospf_snmp_is_if_have_addr) Simplify logic using new CONNECTED_PREFIX
	  macro.
	* ospf_vty.c: (show_ip_ospf_interface_sub) Use new CONNECTED_PEER macro
	  instead of testing the IFF_POINTOPOINT flag.
	* ospfd.c: (ospf_network_match_iface) Use new CONNECTED_PEER macro
	  instead of testing with if_is_pointopoint.  And add commented-out
	  code to implement alternative (in my opinion) more elegant behavior
	  that has no special-case treatment for PtP addresses.
	  (ospf_network_run) Use new CONNECTED_ID macro to simplify logic.
	* rip_interface.c: (rip_interface_multicast_set) Use new CONNECTED_ID
	  macro to simplify logic.
	  (rip_request_interface_send) Fix minor bug: ipv4_broadcast_addr does
	  not give a useful result if prefixlen is 32 (we require a peer
	  address in such cases).
	* ripd.c: (rip_update_interface) Fix same bug as above.
</pre>
</div>
</content>
</entry>
<entry>
<title>[ripd] bug #293: routemap set metric doesn't check for underflow correctly</title>
<updated>2006-09-11T02:14:16+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-09-11T02:14:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=b25ea4d085c858137ec28b1be9d6ab6c30a97303'/>
<id>b25ea4d085c858137ec28b1be9d6ab6c30a97303</id>
<content type='text'>
2006-09-11 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rip_routemap.c: (route_set_metric) underflow check needs to
	  use signed, problem identified and diagnosed by Pavel
	  Nikiforov in bug #293.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-09-11 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rip_routemap.c: (route_set_metric) underflow check needs to
	  use signed, problem identified and diagnosed by Pavel
	  Nikiforov in bug #293.
</pre>
</div>
</content>
</entry>
<entry>
<title>[ripd] bug #278: remove gratuitous use of mid-function declaration</title>
<updated>2006-09-11T02:10:40+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-09-11T02:10:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=3e557ae1ea7693d91b6df42c2529952d6a349911'/>
<id>3e557ae1ea7693d91b6df42c2529952d6a349911</id>
<content type='text'>
2006-09-11 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* ripd.c: (rip_read) remove gratuitous use of mid-function
	  declaration of vrecv, bug #278.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-09-11 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* ripd.c: (rip_read) remove gratuitous use of mid-function
	  declaration of vrecv, bug #278.
</pre>
</div>
</content>
</entry>
<entry>
<title>[ripd] update to use auto-generated redistribute route-type defs</title>
<updated>2006-06-30T16:58:53+00:00</updated>
<author>
<name>Paul Jakma</name>
<email>paul.jakma@sun.com</email>
</author>
<published>2006-06-30T16:58:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sublab.org/quagga/commit/?id=9a57dc69d2432b6633fc47b05d4ee475a29db361'/>
<id>9a57dc69d2432b6633fc47b05d4ee475a29db361</id>
<content type='text'>
2006-06-29 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rip_zebra: (general) convert redistribute commands to use
	  the auto-generated defines.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2006-06-29 Paul Jakma &lt;paul.jakma@sun.com&gt;

	* rip_zebra: (general) convert redistribute commands to use
	  the auto-generated defines.
</pre>
</div>
</content>
</entry>
</feed>
