]> git.proxmox.com Git - mirror_frr.git/log
mirror_frr.git
19 years ago * rt_netlink.c: One tiny missing comma caused pointless debug messages
hasso [Sat, 9 Apr 2005 16:59:28 +0000 (16:59 +0000)]
* rt_netlink.c: One tiny missing comma caused pointless debug messages
  about IPv6 nexthops.

19 years ago * rt_netlink.c (netlink_parse_info): Fix warning. It's safe to cast
hasso [Sat, 9 Apr 2005 16:38:51 +0000 (16:38 +0000)]
* rt_netlink.c (netlink_parse_info): Fix warning. It's safe to cast
  status to unsigned here, because we already checked that it isn't
  negative or 0.
* rt_netlink.c (netlink_interface_addr): Prefix length belongs to the
  address, not to the interface.
* rt_netlink.c (netlink_route_multipath): Fix debug. No useless info
  is printed out now and IPv6 info is handeled.

19 years ago * routemap.c: Show description in "show route-map" output.
hasso [Sat, 9 Apr 2005 13:27:50 +0000 (13:27 +0000)]
* routemap.c: Show description in "show route-map" output.

19 years ago * bgp_vty.c: Make "exit-address-family" work in IPv4 unicast address
hasso [Sat, 9 Apr 2005 13:07:47 +0000 (13:07 +0000)]
* bgp_vty.c: Make "exit-address-family" work in IPv4 unicast address
  family node.

[backport candidate]

19 years ago2005-04-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Fri, 8 Apr 2005 19:02:04 +0000 (19:02 +0000)]
2005-04-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* sigevent.c: On GNU_LINUX, check whether __USE_GNU is already defined.

19 years ago2005-04-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Fri, 8 Apr 2005 18:50:40 +0000 (18:50 +0000)]
2005-04-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* vty.c: (vty_log_fixed) Use casts to (void *) to try to eliminate
  compiler warnings when assigning a (const char *) value to
  struct iovec iov_base.

19 years ago2005-04-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Fri, 8 Apr 2005 16:42:03 +0000 (16:42 +0000)]
2005-04-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* zebra.h: If GNU_LINUX is defined, then define _GNU_SOURCE.  This
  fixes a problem where we were not getting the declaration of strnlen
  in <string.h>.

19 years ago * bgpd.texi: Document new "bgp bestpath as-path confed" command.
hasso [Fri, 8 Apr 2005 15:40:36 +0000 (15:40 +0000)]
* bgpd.texi: Document new "bgp bestpath as-path confed" command.
* bgp_aspath.[ch], bgp_route.c, bgp_vty.c, bgpd.[ch]: Allow to enable
  the length of confederation path segments to be included during the
  as-path length check in the best path decision.

19 years ago * routemap.[ch]: Added "description ..." command.
hasso [Fri, 8 Apr 2005 14:20:18 +0000 (14:20 +0000)]
* routemap.[ch]: Added "description ..." command.
  Closes Bugzilla #167.

19 years ago * prefix.[hc]: Pass argument to the inet6_ntoa by value making it more
hasso [Fri, 8 Apr 2005 01:30:51 +0000 (01:30 +0000)]
* prefix.[hc]: Pass argument to the inet6_ntoa by value making it more
  inet_ntoa alike.
* ripngd.[hc], ripng_interface.c, ripng_peer.c: inet6_ntoa() takes
  argument now by value.

19 years ago * extract.pl.in: Ignore "router zebra".
hasso [Thu, 7 Apr 2005 18:42:09 +0000 (18:42 +0000)]
* extract.pl.in: Ignore "router zebra".

19 years ago * Makefile.am: Remove rebuild4 target, it's not used any more by build
hasso [Thu, 7 Apr 2005 17:07:39 +0000 (17:07 +0000)]
* Makefile.am: Remove rebuild4 target, it's not used any more by build
  procedure. Define vtysh_cmd_FILES. Use EXTRA_DIST.

19 years ago2005-04-07 Paul Jakma <paul.jakma@sun.com>
paul [Thu, 7 Apr 2005 07:30:20 +0000 (07:30 +0000)]
2005-04-07 Paul Jakma <paul.jakma@sun.com>

* (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.

19 years ago * lib/prefix.[hc]: inet6_ntoa utility function copied from
hasso [Tue, 5 Apr 2005 14:36:49 +0000 (14:36 +0000)]
* lib/prefix.[hc]: inet6_ntoa utility function copied from
  ripngd/ripngd.c (inet6_ntop).
* ripngd.[hc]: Remove inet6_ntop() and any usage of it. inet6_ntoa()
  from lib is used now.
* ripng_interface.c: inet6_ntop() -> inet6_ntoa().
* ripng_peer.c: inet6_ntop() -> inet6_ntoa().

19 years ago2005-04-05 Paul Jakma <paul@dishone.st>
paul [Tue, 5 Apr 2005 10:14:50 +0000 (10:14 +0000)]
2005-04-05 Paul Jakma <paul@dishone.st>

* HACKING: Expand on the importance of supplying good ChangeLog's in
  the PATCH SUBMISSION section.

19 years ago2005-04-05 Paul Jakma <paul@dishone.st>
paul [Tue, 5 Apr 2005 10:10:06 +0000 (10:10 +0000)]
2005-04-05 Paul Jakma <paul@dishone.st>

* HACKING: remove the 'manually patch redhat/quagga.spec' bit
  from RELEASE section. Let the rpm revision be CONFDATE, will work
  fine.

19 years ago2005-04-05 Paul Jakma <paul@dishone.st>
paul [Tue, 5 Apr 2005 08:04:18 +0000 (08:04 +0000)]
2005-04-05 Paul Jakma <paul@dishone.st>

* Makefile.am: Get rid of built_sources. It causes them to be added
  to dist, and the dist host can not generate the PDFs.

19 years ago2004-04-05 Paul Jakma <paul@dishone.st>
paul [Tue, 5 Apr 2005 00:45:23 +0000 (00:45 +0000)]
2004-04-05 Paul Jakma <paul@dishone.st>

* lib/vty.c: Improve logging of failures to open vty socket(s).
  See bugid #163.
* zebra/zserv.c: print more helpful errors when we fail to successfully
  bind and listen on zserv socket. Closes bugzilla #163.

19 years ago * configure.ac: Fix AC_LANG_SOURCE usage. It needs double square
hasso [Sun, 3 Apr 2005 23:46:37 +0000 (23:46 +0000)]
* configure.ac: Fix AC_LANG_SOURCE usage. It needs double square
  brackets around source. Single ones broke square brackets in the
  code (arrays).

19 years ago * configure.ac: Use AC_RUN_IFELSE instead of obsolete AC_TRY_RUN macro
hasso [Sun, 3 Apr 2005 13:07:21 +0000 (13:07 +0000)]
* configure.ac: Use AC_RUN_IFELSE instead of obsolete AC_TRY_RUN macro
  and define action for cross-compiling.

[backport candidate]

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sun, 3 Apr 2005 03:40:52 +0000 (03:40 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* if_ioctl.c: (interface_list_ioctl) Use if_get_by_name_len.
* if_proc.c: (ifaddr_proc_ipv6) Increase size of ifname buffer to
  avoid overflow.
* kernel_socket.c: (ifan_read) Use if_get_by_name_len.
* if.h: Fix comments to reflect that if_lookup_by_name and
  if_get_by_name now require the argument strings to be NUL-terminated.
* if.c: (if_lookup_by_name) Compare using strcmp.
  (if_get_by_name) Pass strlen(ifname) as 2nd arg to if_create.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 23:23:55 +0000 (23:23 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospf_interface.h: (ospf_if_lookup_by_name) Remove declaration of a
  function that does not exist.
* ospf6_interface.[ch]: (ospf6_interface_lookup_by_name) Remove unused
  function.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 23:16:41 +0000 (23:16 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospf_zebra.c: (zebra_interface_if_lookup) Must use
  if_lookup_by_name_len.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 23:09:52 +0000 (23:09 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* isis_zebra.c: (isis_zebra_if_del) Must use if_lookup_by_name_len.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 23:05:56 +0000 (23:05 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* if.c: (if_nametoindex) The man page is rather vague, but it seems
  like the argument to if_nametoindex has an implicit maximum length
  of IFNAMSIZ characters.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 22:50:38 +0000 (22:50 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* if.h: (if_lookup_by_name_len, if_get_by_name_len) New functions.
* if.c: (if_lookup_by_name_len, if_get_by_name_len) New functions.
  (if_get_by_name) Tighten up code.
  (interface) Use new function if_get_by_name_len.
* zclient.c: (zebra_interface_add_read) Use new if_get_by_name_len
  function.
  (zebra_interface_state_read) Use new if_lookup_by_name_len function.
* kernel_socket.c: (ifm_read) Use new if_lookup_by_name_len function
  to save a memcpy.
* if_ioctl_solaris.c: (interface_list_ioctl) Fix subtle bug with new
  if_get_by_name_len function.
* ospf_interface.c: (ospf_vl_new) Use strnlen to fix call to if_create.

19 years ago * configure.ac: Add --enable-isis-topology to enable isisd topology
hasso [Sat, 2 Apr 2005 19:03:39 +0000 (19:03 +0000)]
* configure.ac: Add --enable-isis-topology to enable isisd topology
  generator code.
* isisd/Makefile.am: Variables to handle conditonal compiling of
  topology generator code.
* isisd/isis_lsp.c: lsppdu_realloc() is used by topology generator.
* isisd/isisd.c: Rename show_isis_topology_cmd to not conflict the one
  in the isis_spf.c.
* isisd/isisd.h: Remove TOPOLOGY_GENERATE define, it will be defined in
  toplevel config.h if topology generator is enabled.
* isisd/topology/Makefile.am: Handle the libtoolized Quagga libraries.

19 years ago2005-04-02 Paul Jakma <paul@dishone.st>
paul [Sat, 2 Apr 2005 18:53:00 +0000 (18:53 +0000)]
2005-04-02 Paul Jakma <paul@dishone.st>

* Makefile.am: Urg, dont use automake _SOURCES, _BUILT_SOURCES
  for figures, automake doesnt know anything about them.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 18:48:39 +0000 (18:48 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* str.c: Replace strlcpy and strlcat with actual working versions
  copied from rsync-2.6.2/lib/compat.c.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 18:38:43 +0000 (18:38 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

Fix problems when netlink interfaces are renamed (same ifindex used
for a new interface).  Start cleaning up some problems with the way
interface names are handled.
* interface.c: (if_new_intern_ifindex) Remove obsolete function.
  (if_delete_update) After distributing the interface deletion message,
  set ifp->ifindex to IFINDEX_INTERNAL.
  (if_dump_vty) Detect pseudo interface by checking if ifp->ifindex is
  IFINDEX_INTERNAL.
  (zebra_interface) Check return code from interface_cmd.func.
  Do not set internal ifindex values to if_new_intern_ifindex(),
  since we now use IFINDEX_INTERNAL for all pseudo interfaces.
* kernel_socket.c: (ifm_read) Fix code and comments to reflect that
  all internal interfaces now have ifp->ifindex set to IFINDEX_INTERNAL.
        * rt_netlink.c: (set_ifindex) New function used to update ifp->ifindex.
  Detects interface rename events by checking if that ifindex is already
  being used.  If it is, delete the old interface before assigning
  the ifindex to the new interface.
  (netlink_interface, netlink_link_change) Call set_ifindex to update
  the ifindex.
* if.h: Remove define for IFINDEX_INTERNBASE and add define
  IFINDEX_INTERNAL 0, since all internal (i.e. non-kernel) pseudo-
  interfaces should have ifindex set to 0.
  (if_new) Remove function.
  (if_delete_retain) New function to delete an interface without
  removing from iflist and freeing the structure.
  (ifname2ifindex) New function.
* if.c: (if_new) Remove function (absorb into if_create).
  (if_create) Replace function if_new with call to calloc.
  Set ifp->ifindex to IFINDEX_INTERNAL.  Fix off-by-one error
  in assert to check length of interface name.  Add error message
  if interface with this name already exists.
  (if_delete_retain) New function to delete an interface without
  removing from iflist and freeing the structure.
  (if_delete) Implement with help of if_delete_retain.
  (ifindex2ifname) Reimplement using if_lookup_by_index.
  (ifname2ifindex) New function to complement ifindex2ifname.
  (interface) The interface command should check the name length
  and fail with a warning message if it is too long.
  (no_interface) Fix spelling in warning message.
  (if_nametoindex) Reimplement using if_lookup_by_name.
  (if_indextoname, ifaddr_ipv4_lookup) Reimplement using
  if_lookup_by_index.
* bgp_zebra.c: (bgp_interface_delete) After deleting, set ifp->ifindex
  to IFINDEX_INTERNAL.
* isis_zebra.c: (isis_zebra_if_del) Call if_delete_retain instead
  of if_delete, since it is generally not safe to remove interface
  structures.  After deleting, set ifp->ifindex to IFINDEX_INTERNAL.
  (zebra_interface_if_lookup) Tighten up code.
* ospf6_zebra.c: (ospf6_zebra_if_del) Previously, this whole function
  was commented out.  But this is not safe: we should at least update
  the ifindex when the interface is deleted.  So the new version
  updates the interface status and sets ifp->ifindex to
  IFINDEX_INTERNAL.
  (ospf6_zebra_route_update) Use if_indextoname properly.
* ospf_vty.c: (show_ip_ospf_interface_sub) Show ifindex and interface
  flags to help with debugging.
* ospf_zebra.c: (ospf_interface_delete) After deleting, set ifp->ifindex
  to IFINDEX_INTERNAL.
  (zebra_interface_if_lookup) Make function static.  Tighten up code.
* rip_interface.c: (rip_interface_delete) After deleting, set
  ifp->ifindex to IFINDEX_INTERNAL.
* ripng_interface.c: (ripng_interface_delete) After deleting, set
  ifp->ifindex to IFINDEX_INTERNAL.

19 years ago2005-04-02 Paul Jakma <paul@dishone.st>
paul [Sat, 2 Apr 2005 17:24:43 +0000 (17:24 +0000)]
2005-04-02 Paul Jakma <paul@dishone.st>

* .cvsignore: ignore eps files, built from sources

19 years ago2005-04-02 Paul Jakma <paul@dishone.st>
paul [Sat, 2 Apr 2005 17:13:33 +0000 (17:13 +0000)]
2005-04-02 Paul Jakma <paul@dishone.st>

* INSTALL.quagga.txt: Add note about additional CVS build
  requirements, if one wishes to build ps/pdf docs.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 16:37:07 +0000 (16:37 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospf6_route.c: (ospf6_route_show, ospf6_route_show_detail) Protect
  against the possibility that the string returned by if_indextoname
  may not terminate with '\0'.

19 years ago2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sat, 2 Apr 2005 16:01:05 +0000 (16:01 +0000)]
2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* configure.ac: Add strnlen to AC_CHECK_FUNCS.
* zebra.h: Should include str.h to pick up missing functions.
* str.h: Declare strnlen if needed.
* str.c: Do not include str.h since zebra.h now includes it.
  (strnlen) New function.

19 years ago2005-04-02 Paul Jakma <paul@dishone.st>
paul [Sat, 2 Apr 2005 12:13:59 +0000 (12:13 +0000)]
2005-04-02 Paul Jakma <paul@dishone.st>

* Makefile.am: quagga_TEXINFOS should depend on figures_BUILT_SOURCES.

19 years ago2005-04-02 Paul Jakma <paul@dishone.st>
paul [Sat, 2 Apr 2005 10:18:42 +0000 (10:18 +0000)]
2005-04-02 Paul Jakma <paul@dishone.st>

* fig{-{normal,rs}-processing,_topologies_{rs,full}}.dia: new
          files, dia diagramme XML versions of the original corresponding
          EPS encapsulated bitmaps.
* fig{-{normal,rs}-processing,_topologies_{rs,full}}.png: new
  files, png exports by dia of the source dia diagrammes above.
* fig{-{normal,rs}-processing,_topologies_{rs,full}}.eps: removed,
  replaced by above dia source.
* routeserver.texi: remove extension in image macros.
* quagga.info: updated build
* Makefile.am: Add rules to build eps (using 'convert'), png (using
  dia). Add figures_BUILT_SOURCES to extra_dist to avoid the
  dependency on dia :) (amongst other things) for dist users.

19 years ago * rt_netlink.c (netlink_talk_filter): Show always warning message,
hasso [Thu, 31 Mar 2005 20:13:49 +0000 (20:13 +0000)]
* rt_netlink.c (netlink_talk_filter): Show always warning message,
  it's not for debug.
* rt_netlink.c (netlink_talk): Don't assume we use netlink_cmd
  although we do now actually.
* rt_netlink.c (netlink_route, netlink_route_multipath): Always use
  netlink_cmd to send messages to the kernel.

[backport candidate]

19 years ago2005-03-31 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Thu, 31 Mar 2005 15:18:21 +0000 (15:18 +0000)]
2005-03-31 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospf_dump.c: (show_debugging_ospf) Show if ospf event debugging
  is turned on.

  [backport candidate]

19 years ago2005-03-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 30 Mar 2005 16:33:13 +0000 (16:33 +0000)]
2005-03-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* irdp.h: Add prototype for irdp_sock_init, and fix protos for
  other irdp_* functions.
* irdp_interface.c: (irdp_if_start) If irdp_sock is negative,
  call irdp_sock_init to create the IRDP socket.
  (irdp_if_init) Rename to irdp_init().
  (get_iflist_ifp) Remove function that is a duplicate of
  if_lookup_by_index.
  (*) Make many functions static.  And remove superfluous "\n" from
  several zlog messages.
* irdp_main.c: (irdp_init) Remove function that used to call
  irdp_if_init() and irdp_sock_init(), since we will now create
  the socket only upon first use.
  (irdp_sock_init) Do not update global irdp_sock variable, just
  return the fd and assume that the caller will do so.  If setsockopt
  calls fail, close the socket before returning -1.
  (*) Make many functions static.
* irdp_packet.c: Initialize irdp_sock to -1.
  (irdp_read_raw) Call standard library function if_lookup_by_index
  instead of get_iflist_ifp.
  (irdp_recvmsg) Should be static, not global.

19 years ago2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Tue, 29 Mar 2005 17:03:49 +0000 (17:03 +0000)]
2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* rt_netlink.c: (netlink_link_change) If the status of an
  operative interface changes (e.g. MTU changes), the client
  daemons should be notified by calling zebra_interface_up_update.
  Previously, the information was being updated in zebra's
  interface structure, but the clients were not notified of
  changes to an operative interface.
* ospf_zebra.c: (ospf_interface_state_up) If the MTU of an operative
  interface changes, print a debug message and call ospf_if_reset()
  to simulate down/up on the interface.
* ospf_interface.h: Declare new function ospf_if_reset().
* ospf_interface.c: (ospf_if_reset) New function to call ospf_if_down
  and ospf_if_up for all ospf interfaces attached to an interface.

19 years ago2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Tue, 29 Mar 2005 16:13:49 +0000 (16:13 +0000)]
2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospf_packet.c: (ospf_write_frags) Enhance error message to
  show MTU.  Also make function static.
  (ospf_write) Enhance error message to show interface name and MTU.
  Also make function static.

19 years ago2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Tue, 29 Mar 2005 16:08:16 +0000 (16:08 +0000)]
2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospf_vty.c (show_ip_ospf_interface_sub): Display interface MTU and
bandwidth; this is useful for debugging problems.  Also, the function
should be static.

19 years ago * extract.pl.in: Use SNMP_INCLUDES to avoid warnings if compiling with
hasso [Mon, 28 Mar 2005 15:38:16 +0000 (15:38 +0000)]
* extract.pl.in: Use SNMP_INCLUDES to avoid warnings if compiling with
  snmp support.

19 years ago * configure.ac, */Makefile.am: Fix previous commit. SNMP includes
hasso [Mon, 28 Mar 2005 15:29:07 +0000 (15:29 +0000)]
* configure.ac, */Makefile.am: Fix previous commit. SNMP includes
  must be after lib/ includes in some systems. Introduce SNMP_INCLUDES
  for that.

19 years ago * configure.ac: Fix most of "Presents But Cannot Compiled" warnings
hasso [Sun, 27 Mar 2005 21:00:35 +0000 (21:00 +0000)]
* configure.ac: Fix most of "Presents But Cannot Compiled" warnings
  about various headers. CFLAGS is not correct place to specify
  includes, INCLUDES is for that.

19 years ago * ospf_snmp.c: Don't crash in snmp query if ospf instance doesn't
hasso [Sun, 27 Mar 2005 13:32:25 +0000 (13:32 +0000)]
* ospf_snmp.c: Don't crash in snmp query if ospf instance doesn't
  exist at all.

[backport candidate]

19 years ago * configure.ac: Add Intel compiler (icc) support. Although Intel
hasso [Sun, 27 Mar 2005 13:07:23 +0000 (13:07 +0000)]
* configure.ac: Add Intel compiler (icc) support. Although Intel
  tries really hard to make icc look like gcc, there are some
  differences. It's very verbose with -Wall and it doesn't support
  the individual -W options. We are going to ignore some of these
  warnings.

19 years agoTrying to finish previous commit ...
hasso [Sat, 26 Mar 2005 14:13:40 +0000 (14:13 +0000)]
Trying to finish previous commit ...

19 years ago * doc/defines.texi.in, lib/version.h.in: Update copyright string to
hasso [Sat, 26 Mar 2005 14:07:31 +0000 (14:07 +0000)]
* doc/defines.texi.in, lib/version.h.in: Update copyright string to
  include year 2005.

19 years ago * ospfd.h: Include log.h, fixes compile with gcc-4.0.
hasso [Fri, 25 Mar 2005 19:48:40 +0000 (19:48 +0000)]
* ospfd.h: Include log.h, fixes compile with gcc-4.0.

[backport candidate]

19 years ago2005-03-25 Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>
vincent [Fri, 25 Mar 2005 13:08:53 +0000 (13:08 +0000)]
2005-03-25 Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>
* interface.c, interface.h, rtadv.c, rtadv.h: extensions to Neighbor
  discovery for Mobile IPv6.

19 years ago2005-03-25 Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>
vincent [Fri, 25 Mar 2005 13:05:47 +0000 (13:05 +0000)]
2005-03-25 Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>
* Extensions to Neighbor Discovery for Mobile IPv6

19 years ago * bgp_route.c: Don't crash while clearing route tables if there is
hasso [Mon, 21 Mar 2005 10:28:14 +0000 (10:28 +0000)]
    * bgp_route.c: Don't crash while clearing route tables if there is
          no particular afi/safi configured.

[backport candidate]

19 years ago2005-03-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 16 Mar 2005 16:13:06 +0000 (16:13 +0000)]
2005-03-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* zebra.h: Must check whether __attribute__ should be defined before
  including zassert.h.

[backport candidate]

19 years ago2005-03-14 Paul Jakma <paul.jakma@sun.com>
paul [Mon, 14 Mar 2005 20:19:01 +0000 (20:19 +0000)]
2005-03-14 Paul Jakma <paul.jakma@sun.com>

* (global) update all c files to match the lib/vector.h rename of
  (struct vector).active to max, and vector_max macro to
  vector_active.
* lib/vector.h: Rename to (struct vector).max to slightly less
  confusing active, for the number of active slots, distinct from
  allocated or active-and-not-empty. Rename vector_max to
  vector_active for same reason.

19 years ago2005-03-14 Paul Jakma <paul.jakma@sun.com>
paul [Mon, 14 Mar 2005 17:41:45 +0000 (17:41 +0000)]
2005-03-14 Paul Jakma <paul.jakma@sun.com>

* command.c: (various) Fix indentation and other whitespace.

19 years ago2005-03-14 Paul Jakma <paul.jakma@sun.com>
paul [Mon, 14 Mar 2005 17:35:52 +0000 (17:35 +0000)]
2005-03-14 Paul Jakma <paul.jakma@sun.com>

* command.c: (sort_node) use vector_max instead of referencing
  (struct vector *)->max directly. Test that vector_max is > 0
  before using it to calculate an index.
  Fixup vector loop to make main body conditional on vector slot
  not being empty.
  (cmd_cmdsize) Fixup vector loop to make main body conditional on
  vector slot not being empty.
  (cmd_filter_by_completion) ditto
  (cmd_filter_by_string) ditto
  (is_cmd_ambiguous) ditto
  (cmd_describe_command_real) Change index integers to unsigned.
  Test that vector_max is > 0 before using it to calculate an index.
  Return immediately with CMD_ERR_NO_MATCH if vline has no
  active slots.
  Fixup vector loop to make main body conditional on vector slot
  not being empty.
  (cmd_complete_command_real) ditto.
  (cmd_execute_command_strict) Fixup vector loop to be conditional
  on non-null slot.

19 years ago2005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Sun, 13 Mar 2005 19:27:22 +0000 (19:27 +0000)]
2005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps
  backward, then current time may be less than
  ospf->lsa_refresher_started.  This was causing invalid values
  for ospf->lsa_refresh_queue.index resulting in infinite loops.
  Problem fixed by casting the expression to unsigned before taking
  the modulus.

[backport candidate]

19 years ago * zebra/interaface.c: "show interface description" command
hasso [Sun, 13 Mar 2005 19:17:21 +0000 (19:17 +0000)]
* zebra/interaface.c: "show interface description" command
  implemented.

19 years ago2005-03-12 Paul Jakma <paul.jakma@sun.com>
paul [Sat, 12 Mar 2005 06:36:10 +0000 (06:36 +0000)]
2005-03-12 Paul Jakma <paul.jakma@sun.com>

* configure.ac: Solaris 8 can use the newer lifreq based methods
  too, allows IPv6.

19 years ago2005-03-12 Paul Jakma <paul@dishone.st>
paul [Sat, 12 Mar 2005 06:33:14 +0000 (06:33 +0000)]
2005-03-12 Paul Jakma <paul@dishone.st>

* rt_netlink.c: (netlink_route_multipath) dont set equalise flag.
  No stock Linux kernel has ever supported it, and even if it had

19 years ago2005-03-09 Paul Jakma <paul.jakma@sun.com>
paul [Wed, 9 Mar 2005 13:42:23 +0000 (13:42 +0000)]
2005-03-09 Paul Jakma <paul.jakma@sun.com>

* command.c: (config_list_cmd) Don't list hidden or deprecated
  commands, hiding these from tab completion is still to be done.

19 years ago2005-03-09 Paul Jakma <paul.jakma@sun.com>
paul [Wed, 9 Mar 2005 13:39:26 +0000 (13:39 +0000)]
2005-03-09 Paul Jakma <paul.jakma@sun.com>

* command.c: Undo commit of sign warning fix and hidden command
  in list_cmd. Sign warning is more subtle. list_cmd on its own
  will be committed after.

19 years ago * vtysh_config.c: Move password commands to the AAA_NODE. It
hasso [Wed, 9 Mar 2005 12:41:14 +0000 (12:41 +0000)]
* vtysh_config.c: Move password commands to the AAA_NODE. It
  quarantees that they will appear after SERVICE_NODE to make sure
  that encrypted passwords will work ("service password-encryption"
  command).

[backport candidate]

19 years ago2005-03-08 Paul Jakma <paul.jakma@sun.com>
paul [Tue, 8 Mar 2005 16:00:12 +0000 (16:00 +0000)]
2005-03-08 Paul Jakma <paul.jakma@sun.com>

* command.c: (no_banner_motd_cmd) use XFREE.
* vty.c: (vty_hello) fix the indentation and comment.

19 years ago2005-03-08 Paul Jakma <paul.jakma@sun.com>
paul [Tue, 8 Mar 2005 15:56:42 +0000 (15:56 +0000)]
2005-03-08 Paul Jakma <paul.jakma@sun.com>

* command.c: (cmd_describe_command_real) sign compile warning fix
  (cmd_complete_command_real) ditto.
  (config_list_cmd) Don't list hidden or deprecated commands,
  hiding these from tab completion is still to be done.
* command.h: cmd attr enum should start at 1.

19 years ago2005-03-08 Paul Jakma <paul.jakma@sun.com>
paul [Tue, 8 Mar 2005 15:16:57 +0000 (15:16 +0000)]
2005-03-08 Paul Jakma <paul.jakma@sun.com>

* command.c: (banner_motd_file_cmd) use XSTRDUP/XFREE
* vty.c: (vty_hello) suggestions from Andrew, read by line and
  stub out trailling non-printable characters on each line thus
  allowing us to specify VTY_NEWLINE to vty_out.

19 years ago2005-03-08 Jeroen Massar <jeroen@unfix.org>
paul [Tue, 8 Mar 2005 10:43:43 +0000 (10:43 +0000)]
2005-03-08 Jeroen Massar <jeroen@unfix.org>

* vty.c: (vty_hello) display motd file, if set
* command.h: add char *motdfile to struct host
* command.c: (config_write_host) write out motdfile config
  (banner_motd_file_cmd) new command, allow motd to be read from
  file.
  (no_banner_motd_cmd) free motdfile string, if needs be.
  (cmd_init) init (struct host).motdfile. Add new motd file
  commands.

19 years ago * isis_spf.c: host.name might be NULL.
hasso [Mon, 7 Mar 2005 08:54:41 +0000 (08:54 +0000)]
* isis_spf.c: host.name might be NULL.

[backport candidate]

19 years ago * command.c: host.name might be NULL.
hasso [Mon, 7 Mar 2005 08:35:39 +0000 (08:35 +0000)]
* command.c: host.name might be NULL.
* vty.c: Fix fd leak.

[backport candidate]

19 years ago * if_proc.c, ipforward_proc.c, rtread_proc.c: Fix fd leaks.
hasso [Mon, 7 Mar 2005 08:19:44 +0000 (08:19 +0000)]
 * if_proc.c, ipforward_proc.c, rtread_proc.c: Fix fd leaks.

 [backport candidate]

19 years ago * interface.c: Fix CRC and frame errors statistics in Linux.
hasso [Sun, 6 Mar 2005 13:42:05 +0000 (13:42 +0000)]
* interface.c: Fix CRC and frame errors statistics in Linux.

19 years agoFix segfault when ospf6_create() is not called yet.
jardin [Wed, 2 Mar 2005 22:43:26 +0000 (22:43 +0000)]
Fix segfault when ospf6_create() is not called yet.
Thanks to Mohit Thakur.

19 years ago2005-02-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Mon, 28 Feb 2005 20:52:15 +0000 (20:52 +0000)]
2005-02-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* zserv.c: Must include network.h and buffer.h for non-blocking I/O.
  Remove global message_queue and t_write (need separate buffering for
  each client).
  (zebra_server_dequeue,zebra_server_enqueue) Remove functions
  related to old buggy buffering code.
  (zserv_delayed_close) New thread callback function to delete a client.
  (zserv_flush_data) New thread callback function to flush buffered
  data to client.
  (zebra_server_send_message) Rewritten to use buffer_write (so
  buffering of writes and non-blocking I/O work properly).
  (zsend_interface_add,zsend_interface_delete,zsend_interface_address,
  zsend_interface_update) Return 0 instead of -1 if !client->ifinfo
  (this is not really an error).  Return value from
  zebra_server_send_message.
  (zsend_route_multipath,zsend_ipv4_nexthop_lookup,
  zsend_ipv4_import_lookup) Return value from zebra_server_send_message.
  (zsend_ipv6_nexthop_lookup) Fix scope to static, and return value
  from zebra_server_send_message.
  (zsend_router_id_update) Must use zebra_server_send_message instead
  of deprecated writen function.  Return 0 instead of -1 if this client
  is not subscribed to router-id updates (since this is not really
  an error).
  (zread_interface_add) Change type to static int.  If
  zsend_interface_add fails or zsend_interface_address fails, return -1
  immediately (since the client has had an I/O error).
  (zread_interface_delete,zread_ipv4_add,zread_ipv4_delete,
  zread_ipv6_add,zread_ipv6_delete,zread_router_id_delete) Return 0
  to indicate success.
  (zread_ipv4_nexthop_lookup) Return value from
  zsend_ipv4_nexthop_lookup.
  (zread_ipv4_import_lookup) Return value from zsend_ipv4_import_lookup.
  (zebra_read_ipv6) Remove unused function.
  (zread_ipv6_nexthop_lookup) Return value from
  zsend_ipv6_nexthop_lookup.
  (zread_router_id_add) Return value from zsend_router_id_update.
  (zebra_client_close) Call buffer_free(client->wb) and
  thread_cancel(client->t_suicide).
  (zebra_client_create) Allocate client->wb using buffer_new.
  (zebra_client_read) Support non-blocking I/O by using stream_read_try.
  Use ZEBRA_HEADER_SIZE instead of 3.
  (zebra_accept) Fix bug: reset accept thread at top.  Make client
  socket non-blocking using the set_nonblocking function.
  (config_write_forwarding) Fix scope to static.
  (zebra_init) Remove initialization code for old buggy write buffering.
* zserv.h: Add 2 new fields to struct zserv: struct buffer *wb
  (to enable buffered writes with non-blocking I/), and
  struct thread *t_suicide to support delayed close on I/O
  errors.
* router-id.h: Remove prototypes for zread_router_id_add and
  zread_router_id_delete (their scope should be static to zserv.c).

19 years ago2005-02-24 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Thu, 24 Feb 2005 16:06:33 +0000 (16:06 +0000)]
2005-02-24 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* redistribute.c: (zebra_check_addr,is_default,
  zebra_redistribute_default,zebra_redistribute) Fix scope to be static.

19 years ago2005-02-24 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Thu, 24 Feb 2005 16:02:53 +0000 (16:02 +0000)]
2005-02-24 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* stream.c: (stream_read_try) Log a warning message if a fatal
  I/O error occurs.
  (stream_fifo_new) Fix prototype.
* stream.h: Fix prototype for stream_fifo_new (need void arg).

19 years agoadd release procedure, noting redhat spec oddness
gdt [Wed, 23 Feb 2005 16:20:07 +0000 (16:20 +0000)]
add release procedure, noting redhat spec oddness

19 years ago2005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 23 Feb 2005 15:48:32 +0000 (15:48 +0000)]
2005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* {vty.h,vty.c}: Remove vty_finish (duplicate of vty_reset).
* isis_main.c: (reload) Call vty_reset instead of vty_finish (both
  functions were exactly the same).

19 years ago2005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 23 Feb 2005 15:43:01 +0000 (15:43 +0000)]
2005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospfd.h: Add new field struct stream *ibuf to struct ospf.
* ospfd.c: (ospf_new) Check return code from ospf_sock_init.
  Allocate ibuf using stream_new(OSPF_MAX_PACKET_SIZE+1).
  (ospf_finish) Call stream_free(ospf->ibuf.
* ospf_packet.c: (ospf_read) Call stream_reset(ospf->ibuf) and then
  pass it to ospf_recv_packet for use in receiving the packet
  (instead of allocating a new stream for each packet received).
  Eliminate all calls to stream_free(ibuf).
  (ospf_recv_packet) The struct stream *ibuf is now passed in as
  an argument.  No need to use recvfrom to peek at the packet
  header (to see how big it is), just use ospf->ibuf which is
  always large enough (this eliminates a system call to recvfrom).
  Therefore, no need to allocate a stream just for this packet,
  and no need to free it when done.

19 years ago2005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 23 Feb 2005 15:12:34 +0000 (15:12 +0000)]
2005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* buffer.h: Make the struct buffer and struct buffer_data structures
  private by moving them inside buffer.c.  Add comments for all
  functions.  Rename buffer_write as buffer_put (to be more consistent
  with the buffer_putc and buffer_putstr functions).  Declare a new
  buffer_write function that is used to write data to a file descriptor
  and/or add it to the buffer queue.  Remove unused function
  buffer_flush_vty_all.  Create a new enum typedef buffer_status_t
  to be used as the return code for all buffer_flush* functions
  and buffer_write.
* buffer.c: The struct buffer and struct buffer_data declarations
  are now private to this file.  In conjunction with that, remove
  some unnecessary fields: struct buffer (alloc, unused_head,
  unused_tail, length), struct buffer_data (prev).
  (buffer_data_new) Removed: functionality incorporated into buffer_add.
  (buffer_data_free) Removed: use a macro BUFFER_DATA_FREE instead.
  (buffer_new) Use calloc instead of malloc + memset(zero).
  Supply an appropriate default size if the specified size is 0.
  (buffer_free) Eliminate code duplication by calling buffer_reset to
  free the contents of the buffer (and remove unused code related
  to unused_head).
  (buffer_empty,buffer_putc,buffer_putstr) Aesthetic change (make more
  compact).
  (buffer_reset) Use macro BUFFER_DATA_FREE.  No need to set
  alloc and length to 0 (these fields have been removed).
  (buffer_add) Fix scope to be static.  Call XMALLOC directly instead
  of calling removed buffer_data_new function.  Simplify the logic
  (since it's now a singly-linked list instead of doubly-linked).
  (buffer_write) Renamed to buffer_put.  Change to void, since return
  code of 1 was meaningless.  No need to adjust length field, since
  it has been removed.
  (buffer_putw,buffer_flush,buffer_flush_vty_all,buffer_flush_vty)
  Remove unused functions.
  (buffer_flush_all) Rewrite using buffer_flush_available to eliminate
  a possible failure mode if IOV_MAX is less than the number of buffers
  on the queue.
  (buffer_flush_window) Incorporate logic from buffer_flush_vty.
  Log an error message if there is a writev error.
  (buffer_flush_available) Be more paranoid: check for case where
  buffer is already empty.  Use new ERRNO_IO_RETRY macro, and use
  new enum for return codes.  Simplify deletion logic (since it's
  now a singly-linked list).
  (buffer_write) New function for use with non-blocking I/O.
* vty.h: Replace the struct vty sb_buffer field with a fixed-size
  (5-character) sb_buf field and an sb_len field, since using
  a struct buffer was inappropriate for this task.  Add some useful
  comments about telnet window size negotiation.
* vty.c: Include <arpa/telnet.h> (no longer included by zebra.h).
  Remove VTY_OBUF_SIZE (instead use buffer_new default size).
  Make telnet_backward_char and telnet_space_char static const.
  (vty_out) Replace buffer_write with buffer_put.
  (vty_log_out) Check for I/O errors.  If fatal, close the vty session.
  Consolidate 3 separate writes into a single write call.
  (vty_will_echo,vty_command,vty_next_line,vty_previous_line,
  vty_end_config,vty_describe_fold,vty_clear_buf,vty_serv_sock_addrinfo,
  vty_serv_sock_family,vty_serv_un,vty_use_backup_config,exec_timeout,
  vty_config_write,vty_save_cwd) Fix scope to static.
  (vty_new) Let buffer_new use its default buffer size.
  (vty_write) Fix signature: 2nd arg should be const char *.
  Replaced buffer_write with buffer_put.
  (vty_telnet_option) Fix minor bug (window height or width greater than
  255 was broken).  Use sb_buf and sb_len instead of removed sb_buffer
  (which was being used improperly).
  (vty_read) On error, use ERRNO_IO_RETRY to decide whether it's fatal.
  If the error is fatal, call buffer_reset so vty_close does not attempt
  to flush the data.  Use new sb_buf and sb_len instead of sb_buffer
  to store the SB negotiation string.
  (vty_flush) When vty->lines is 0, call buffer_flush_available instead
  of buffer_flush_window.  Look at the return code from buffer_flush
  to detect I/O errors (and in that case, log an error message and
  close the vty).
  (vty_create) Fix scope to static.  Initialize sb_len to 0 instead
  of creating sb_buffer.
  (vty_accept) Set socket nonblocking.
  (vtysh_accept) Use new set_nonblocking function instead of calling
  fcntl directly.
  (vtysh_flush) New function called from vtysh_read (after command
  execution) and from vtysh_write.  This flushes the buffer
  and reacts appropriately to the return code (by closing the vty
  or scheduling further flushes).
  (vtysh_read) Check whether error is fatal using ERRNO_IO_RETRY.
  If not, just try again later.  Otherwise, call buffer_reset before
  calling vty_close (to avoid trying to flush the buffer in vty_close).
  Fix logic to allow case where a command does not arrive atomically
  in a single read call by checking for the terminating NUL char.
  (vtysh_write) Use new vtysh_flush helper function.
  (vty_close) No need to call buffer_empty, just call buffer_flush_all
  in any case (it will check whether the buffer is empty).
  Do not free sb_buffer (since it has been removed).
  (vty_log_fixed) Use writev instead of write.
* zebra.h: Do not include <arpa/telnet.h>, since this is used only
  by lib/vty.c.

19 years ago * bgp_route.c: Make reannouncing prefixes with changed attributes
hasso [Wed, 23 Feb 2005 14:27:24 +0000 (14:27 +0000)]
* bgp_route.c: Make reannouncing prefixes with changed attributes
  work again.

19 years agoAdded -p to the recommended diff flags.
hasso [Wed, 23 Feb 2005 11:54:12 +0000 (11:54 +0000)]
Added -p to the recommended diff flags.

19 years ago * ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
hasso [Wed, 23 Feb 2005 11:29:02 +0000 (11:29 +0000)]
* ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
* ospf_lsdb.h: Export ospf_lsdb_clean_stat() function.
* ospf_spf.h: Add link to the LSA stat structure into vertex.
* ospf_spf.c: New functions cmp() and update_stat() to manage
  candidates. Remove ospf_spf_has_vertex(), ospf_vertex_lookup(),
  ospf_install_candidate() and ospf_spf_register() functions not needed
  any more. Update ospf_vertex_new(), ospf_spf_next() and
  ospf_spf_calculate() functions to use pqueue instead of linked list.

19 years ago * pqueue.[ch]: Introduce "update" function to meet ospf spf needs. It
hasso [Mon, 21 Feb 2005 18:17:52 +0000 (18:17 +0000)]
* pqueue.[ch]: Introduce "update" function to meet ospf spf needs. It
  will allow to update node when:
  i) a node is inserted into the priority queue;
  ii) a node position is modified in the priority queue;
* pqueue.h: Export trickle_down() function.

19 years ago * ospf_ase.c: Don't show messages related to the ase calculations if
hasso [Mon, 21 Feb 2005 14:58:42 +0000 (14:58 +0000)]
* ospf_ase.c: Don't show messages related to the ase calculations if
  we are not debugging.

19 years ago * rt_netlink.c: Don't show messages "ignoring message type 0x001[89]"
hasso [Sun, 20 Feb 2005 19:09:23 +0000 (19:09 +0000)]
* rt_netlink.c: Don't show messages "ignoring message type 0x001[89]"
  if we are not debugging.

19 years ago * ospf_api.h: char isn't always signed, but it has to be it here.
hasso [Sat, 19 Feb 2005 17:58:40 +0000 (17:58 +0000)]
* ospf_api.h: char isn't always signed, but it has to be it here.

Fixes bugzilla #153. [backport candidate]

19 years ago * configure.ac: Fix Linux detection. Host types like i686-pc-linux
hasso [Sat, 19 Feb 2005 13:58:06 +0000 (13:58 +0000)]
* configure.ac: Fix Linux detection. Host types like i686-pc-linux
  didn't match the pattern.

Fixes bugzilla #150. [backport candidate]

19 years ago2005-02-19 Paul Jakma <paul@dishone.st>
paul [Sat, 19 Feb 2005 02:00:26 +0000 (02:00 +0000)]
2005-02-19 Paul Jakma <paul@dishone.st>

* zserv.c: (zebra_read_ipv6) replace the char * arithmetic with
  STREAM_READABLE.

19 years ago2005-02-19 Paul Jakma <paul.jakma@sun.com>
paul [Sat, 19 Feb 2005 01:19:20 +0000 (01:19 +0000)]
2005-02-19 Paul Jakma <paul.jakma@sun.com>

* ospf_packet.c: (ospf_stream_copy) remove
  (ospf_packet_dup) use stream_copy instead of ospf_stream_copy

19 years ago2005-02-19 Paul Jakma <paul.jakma@sun.com>
paul [Sat, 19 Feb 2005 01:17:07 +0000 (01:17 +0000)]
2005-02-19 Paul Jakma <paul.jakma@sun.com>

* stream.c: (stream_new) fix dumb mistake.

19 years ago2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Thu, 17 Feb 2005 20:11:58 +0000 (20:11 +0000)]
2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* watchquagga.c: (handle_read) Use new ERRNO_IO_RETRY macro.

19 years ago2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Thu, 17 Feb 2005 20:07:22 +0000 (20:07 +0000)]
2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* stream.c: (stream_read_try) Use new ERRNO_IO_RETRY macro.

19 years ago2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Thu, 17 Feb 2005 20:02:49 +0000 (20:02 +0000)]
2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* network.h: Define a new ERRNO_IO_RETRY macro to test whether an I/O
  operation should be retried.  This eliminates the need to duplicate
  the same logic testing for EAGAIN or EINTR in multiple places.

19 years ago2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Thu, 17 Feb 2005 19:55:59 +0000 (19:55 +0000)]
2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* ospf_packet.c: (ospf_recv_packet) If there is somehow a runt
  packet in the queue, it must be discarded.  Improve warning messages.
  Fix scope to static.
  (ospf_read) Fix bug: should reset the read thread in all cases
  to make sure we continue to get incoming messages.

19 years ago2005-02-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 16 Feb 2005 20:40:25 +0000 (20:40 +0000)]
2005-02-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* watchquagga.c: (try_connect) Use new set_nonblocking function instead
  of calling fcntl directly.

19 years ago2005-02-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 16 Feb 2005 20:35:47 +0000 (20:35 +0000)]
2005-02-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* stream.h: Declare new function stream_read_try suitable for use
  with non-blocking file descriptors.  Indicate that stream_read
  and stream_read_unblock are deprecated.
* stream.c: (stream_read_try) New function for use with non-blocking
  I/O.
  (stream_recvmsg) Should return -1 if the stream is too small to
  contain the data.

19 years ago2005-02-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 16 Feb 2005 16:25:39 +0000 (16:25 +0000)]
2005-02-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* network.c: (set_nonblocking) Should check return code from
  fcntl(F_GETFL).

19 years ago2005-02-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
ajs [Wed, 16 Feb 2005 00:45:37 +0000 (00:45 +0000)]
2005-02-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

* network.h: Declare new function set_nonblocking.  Indicate that
  readn and writen are deprecated.
* network.c: (set_nonblocking) New function to make a file descriptor
  non-blocking, since it seems silly to have fcntl calls sprinkled
  throughout the code.

19 years agoAdjust size complexity estimates. Still not quite right, but closer.
gdt [Tue, 15 Feb 2005 17:10:03 +0000 (17:10 +0000)]
Adjust size complexity estimates.  Still not quite right, but closer.