| Age | Commit message (Collapse) | Author | 
|---|
|  | * configure.ac: Add solaris support for the zebra/*_solaris
          method's, based on Sowmini's patches.
        * zebra/Makefile.am: support for IOCTL_METHOD, as per Sowmini's
          patch. | 
|  | * if_ioctl_solaris.c: Add zprivs support.
	* ioctl_solaris.c: ditto.
2004-05-09 Sowmini Varadhan <sowmini.varadhan@sun.com>
	* if_ioctl_solaris.c: New file, Solaris interface ioctl methods.
	* ioctl_solaris.c: New file, Common solaris ioctl methods. | 
|  | * ipforward_solaris.c: fix typo of ND variable. | 
|  | * ioctl.c: (if_get_mtu) set mtu6 to mtu
	* mtu_kvm.c: (if_kvm_get_mtu) set mtu6 to mtu
	* rt_netlink.c: (netlink_interface) set mtu6 to mtu
	  (netlink_link_change) ditto
2004-05-09 Sowmini Varadhan <sowmini.varadhan@sun.com>
	* interface.c: (if_delete_update) only used with HAVE_NETLINK
	  and RTM_IFANNOUNCE.
	  (if_flag_dump_vty) Solaris IFF_IPV4 and IFF_IPV6 if flags
	  (if_dump_vty) print mtu6 if not same as mtu | 
|  | * zserv.c: (zsend_route_multipath) Set the nexthop_num
	  field correctly. Add NEXTHOP_TYPE_IPV6_IFNAME for v6.
	  Conditionally set ZAPI_MESSAGE_METRIC flag - only for adds.
	  (zsend_ipv4_add) cruft, deleted.
	  (zsend_ipv4_delete) ditto.
	  (zsend_ipv6_add) ditto.
	  (zsend_ipv6_delete) ditto.
2004-05-09 Sowmini Varadhan <sowmini.varadhan@sun.com>
	* zserv.c: (zsend_ipv{4,6}_{add,delete}_multipath) collapsed
	  into single zsend_route_multipath function.
	  (zsend_interface_{up,down}) collapsed into zsend_interface_update.
	  (zsend_interface_address_{add,delete}) collapsed into
	  zsend_interface_address.
	  (zsend_interface_add) send mtu6.
	  (zsend_interface_delete) ditto.
	  (zebra_write) remove unused function.
	  (various) Apply static qualifier. Add comments.
	* zserv.h: Definitions changed as per above.
	* redistribute.c: Changes as per zserv.c. | 
|  |  | 
|  | * Fixed "(no) ipv6 forwarding" command logic.
* Added --disable-capabilities switch to configure. | 
|  |  | 
|  |  | 
|  |  | 
|  | * (many) reference <lib/version.h> rather than "version.h",
	because version.h is a generated file and not present in the
	source tree when using objdir builds.
(committed by gdt)
works fine with normal builds; didn't try objdir | 
|  |  | 
|  |  | 
|  | from vtysh ([quagga-dev 932]). | 
|  |  | 
|  | * tests/test-sig.c: New file, regression test for sigevents.
        * lib/Makefile.am: add sigevent.{c,h}
        * (isis|rip|ripng|ospf|ospf6|bgp)d/\1_main.c: modify for sigevents.
        * zebra/main.c: ditto. | 
|  | * kernel_socket.c (kernel_read): Use sockaddr_storage in buffer
        for reading kernel messages to ensure enough space (necessary on
        Solaris due to sockaddr_dl being large).  Thanks to Sowmini
        Varadhan for help with this change. | 
|  |  | 
|  | * kernel_socket.c (ifm_read): Major cleanup.  Use Sowmini's code
        to find the sockaddr_dl in all cases, narrowing the Solaris ifdef
        to just the accomodation of broken kernels.  Check sockaddr_dl
        carefully up front, and later assume any non-NULL sdl pointer is
        valid.  Clean up types and variable declarations, and rename
        WRAPUP to SAROUNDUP to make the name fit the behavior. | 
|  |  | 
|  | catching this. | 
|  | * kernel_socket.c (kernel_read): Look up interfaces by index
        first, so that state changes which do not include a sockaddr_dl
        now work.  Add many sanity checks.  In
        particular, do not assume that a sockaddr_dl follows a message
        without checking the ifm_addrs flags, and do not trust the length
        in a sockaddr_dl.  Add/clarify many comments. | 
|  | - add privs support
  - use misc quagga's definitions
  - make it compile"able"
  - fix segfault cases related to hostname()
  - add debug isis xxx command
This patch has been approved by Paul Jakma. | 
|  | fixes rest of bug #62 | 
|  | files, defaulting to sysconfdir (matching previous behavior).
This is needed to support (cleanly) NetBSD pkgsrc, which requires that
example config files go in $(prefix)/share/examples/pkgname, rather
than in $(prefix)/etc/pkgname. | 
|  | * zebra/rt_netlink.c: netlink_parse_info() ignore messages which are
	  not from kernel. Reported to RH by Herbert Xu. See
	  http://rhn.redhat.com/errata/RHSA-2003-307.html and CAN-2003-0858. | 
|  | * zebra/zebra_rib.c: Revert patch (dating from zebra.org) which
          caused zebra to read all routes in all tables, rather than just
          the main table. See [quagga-dev 280]. | 
|  | * zebra/zebra_rib.c: (nexthop_active_update) Check for multipath
          limit when setting changed flag to avoid spurious changes.
          (static_install_ipv{4,6}) dont uninstall by default, might not be
          required - avoid spurious uninstalls.
          (static_uninstall_ipv{4,6}) only uninstall the route if its
	  actually FIB route. | 
|  | * configure.ac: Check for fcntl()
        * {bgpd,ospf,ospf6d,ripd,ripngd}/Makefile.am: Install conf file via
          regular automake means, not magic install incantations, see
          bug #38.
        * lib/Makefile.am: install the headers, needed to link libzebra.a
          (and hence libospf.a, OSPF-API, etc.) | 
|  | * zebra/kernel_socket.c: HAVE_IPV6 conditional for WRAPUP when
          HAVE_SA_LEN is not defined. bcopy -> memcpy, bcopy is not
          portable. | 
|  | * lib/regex.c: bzero -> memset
        * zebra/ioctl.c: ditto. bzero is not portable. | 
|  | * zebra/connected.c: PtP revert fixup. Zebra was not creating
	connected route for PtP peer. | 
|  | * zebra/ipforward_proc.c: (ipforward) Close the fd for
	/proc/net/snmp. See [quagga-dev 284] | 
|  | * zebra/zebra_rib.c: Fix possible dangling reference to rib
 	route_nodes - unlock it the appropriate number of times. (twice,
	because of the implicit lock). see [quagga-dev 251]. | 
|  | * zebra/connected.c: revert the 'generic PtP' patch as it causes
	far too many problems. People who use FreeSWAN should investigate
	native linux ipsec.
	* zebra/rt_netlink.c: ditto
	* lib/if.c: ditto
	* ripd/ripd.h: ditto
	* ripd/ripd.c: ditto
	* ripd/rip_interface.c: ditto
	* ospfd/ospfd.c: ditto
	* ospfd/ospf_snmp.c: ditto
	* bgpd/bgp_nexthop.c: ditto | 
|  | * zebra/kernel_socket.c: Fix up WRAPUP macro to deal with multiple
          address families in the absence of sa_len element in struct
          sockaddr.
          (ifm_read): Handle solaris 9 if_msghdr_t.
          Deal with interfaces which are incomplete, lookup on name rather
          than the placeholder interface index of -1. | 
|  | * bgpd/bgp_routemap.c: attr->med is type u_in32_t, should be
	  compared with UINT32_MAX
	* ospfd/ospfd.c: remove redundant assert
	* zebra/rtadv.c: add missing include for zebra/rib.h | 
|  | * lib/Makefile.am: Do not use a lib (libcap) as a dependency
	* zebra/Makefile.am: Link in libcap | 
|  | * zebra/main.c: Fixup ZEBRA_{GROUP,USER} defines ->
	  QUAGGA_{USER,GROUP}
	* bgpd/bgp_main.c: ditto
	* ospf6d/ospf6_main.c: ditto
	* ospfd/ospf_main.c: ditto
	* ripd/rip_main.c: ditto
	* ripngd/ripng_main.c: ditto
	* zebra/main.c: ditto | 
|  | * Add missing 'i' to getopts, short form of --pid_file.
	  see http://bugzilla.quagga.net/show_bug.cgi?id=25 | 
|  | * lib/if.c: (if_cmp_func) new function, compare interface names in
	alphabetical order.
	(if_create) Take name as argument and add interface in sorted order.
	(if_get_by_name),(interface_cmd) fixup calls to if_create - see
	above.
	(if_init) register list comparison function.
	* lib/if.h: Add comparison function, modify if_create prototype.
	* lib/zclient.c: Modify call to if_create.
	* ospfd/ospf_interface.c: (ospf_vl_new) modify call to if_create.
	change sprintf to snprintf.
	* zebra/kernel_socket.c: (ifm_read) modify call to if_create. | 
|  | * lib/version.h: add ZEBRA_URL (unused for now)
        * lib/vty.c: CMD_ERR_NOTHING_TODO when reading conf file should not
          be fatal. slight reformating.
        * ospfd/ospf_zebra.c: ignore reject/blackhole routes if zebra sends
          these type of routes. probably should be a new type of route to
          allow daemons to more easily choose whether to redistribute them
          - rathen than just a flag (eg for reject/blackhole).
          reorder the is_prefix_default test for ZEBRA_IPV4_ROUTE_DELETE to
          avoid the inverted test - slightly more readable.
        * redhat/zebra.spec.in: Add ospfapi port to services file, if
          with_ospfapi.
        * zebra/rib.h: Change nexthop types to an enum.
        * zebra/rt_netlink.c: run it through indent -nut.
          Add nexthop_types_desc[] descriptive array for nexthop types.
          (netlink_route_multipath) debug statements indicate which branch
          they are in and print out nexthop type.
        * zebra/zebra_rib.c: slight reformatting.
        * zebra/zebra_vty.c: Pass ZEBRA_FLAG_BLACKHOLE flag to
          static_add_ipv4() if Null0 route is configured. print out Null0 if
          STATIC_IPV4_BLACKHOLE route, and ignore flags (shouldnt be
          possible to set flags from vty) for config and show route. | 
|  | * zebra/if_proc.c: zebra does not close the file after reading
          /proc/net/dev for retrieving interface names and statistics.
          call fclose(fp) before returning from ifstat_update_proc()
          or interface_list_proc() | 
|  | * zebra/if_ioctl.c: Fix missing declaration for if_fake_index.
	  See bug id #24: http://bugzilla.dishone.st/show_bug.cgi?id=24
	  reported by Vsevolod Sipakov. | 
|  | * zebra/kernel_socket.c: Update for new zebrad global struct
	* zebra/ipforward_solaris.c: Add missing privs.h include. Uncomment
          /dev/ip define.
	* lib/zebra.h: Add typedefs for SunOS. | 
|  | * zebra/rt_netlink.c: Debug statements added to
          netlink_route_multipath()
	* zebra/zebra_rib.c: If route has a gateway, delete only existing
          route with that specified gateway. | 
|  | * Fix lib/smux.c's reliance on daemons exporting struct
          thread_master *master. | 
|  | * lib/vty.{c,h}: Remove vty layer depending on a 'master' global,
	  pass the thread master in explicitly to vty_init. Sort out some
	  header dependency problems with lib/command.h
	* zebra/: Move globals to struct zebrad. Update vty_init().
	* (.*)/\1_main.c: update call to vty_init(). | 
|  | * zebra/ioctl.c: Properly zero-out struct ifreq before passing it
          to the SIOCSIFFLAGS ioctl(2), so that it doesn't
          occasionally trigger promisc mode on interface.
          Reported/tested by:	Vladimir B. Grebenschikov <vova@sw.ru>
          (patch snarfed taken from FreeBSD ports) | 
|  | * (zebra/rtadvc.): can not set checksum for ICMPV6, see:
From: Jun-ichiro itojun Hagino <itojun@iijlab.net>
Subject: [zebra 11052] setsockopt(IPV6_CHECKSUM) does not work for ICMPv6
socket
setsockopt(IPV6_CHECKSUM) does not work for ICMPv6 socket.
RFC2292 may not be clear enough about it (it talks about raw socket
and ICMPv6 socket mixed up), but the next revision
(draft-ietf-ipngwg-rfc2292bis-02.txt) is very clear about it.
>   An attempt to set IPV6_CHECKSUM for an ICMPv6 socket will fail. |