Age | Commit message (Collapse) | Author |
|
|
|
|
|
zebra/zebra_rib.c:nexthop_active_update())
|
|
|
|
|
|
|
|
|
|
2007-08-07 James Carlson <james.d.carlson@sun.com>
* configure.ac: Added support for separate link-layer access
mechanisms in isisd.
* isis_network.c: split up into isis_bpf.c, isis_dlpi.c, and
isis_pfpacket.c, selected by autoconf, and added DLPI support.
* (general) Fixed to allow compilation and use on Solaris.
|
|
2007-08-07 Paul Jakma <paul.jakma@sun.com>
* ospf_spf.c: (ospf_spf_next) Finish off the explanatory
comment made in previous commit
|
|
2007-08-06 Denis Ovsienko
* zebra_rib.c: (general) Add extra debug logging for RIB and
RIB queue.
|
|
2007-08-07 Atis Elsts <atis@mikrotik.com>
* ospf_spf.c: (ospf_spf_next) Sort heap in correct direction
after vertex cost is changed, thus fixing incorrect SPF
calculation on certain topologies.
* lib/pqueue.{c,h}: Export trickle_up
|
|
uninentionally deleted along with a test.
|
|
2007-08-06 Paul Jakma <paul.jakma@sun.com>
* ospf_lsa.c: (router_lsa_flags) Bug #331, NSSA regression caused
caused ASBRs to not advertise E-bit into NSSA areas.
|
|
2007-07-31 Paul Jakma <paul.jakma@sun.com>
* (general) Support for draft-ietf-idr-as-pathlimit-03.
* bgp_attr.h: (struct attr) Add pathlimit struct
bgp_attr.c: (attr_str) Add BGP_ATTR_AS_PATHLIMIT string.
(attrhash_key_make) tally pathlimit too
(attrhash_cmp) cmp pathlimit attr
(bgp_attr_aspathlimit) New, parse AS_PATHLIMIT attr.
(bgp_attr_parse) ditto
(bgp_packet_attribute) Write out AS_PATHLIMIT when set
(bgp_dump_routes_attr) ditto
* bgp_route.h: (struct bgp_static) Add TTL field
* bgp_route.c: (bgp_announce_check) Drop paths that are over
their hop-count TTL before sending via EBGP.
Mangle ASN in pathlimit for confeds/private as best we can.
(bgp_static_update_{rsclient,main}) Add any configure pathlimit
information.
(bgp_pathlimit_update_parents) New, update atomic-aggr setting for
parents of an aspathlimit'ed static.
(bgp_static_set) Add TTL argument, for all the 'bgp network'
commands.
Call previous for TTL changed statics.
(bgp_static_unset) Call pathlimit_update_parents.
(various bgp network commands) Add 'pathlimit <0-255>' qualifier
to all the various forms, bar route-map - which can set ttl
itself.
* bgp_routemap.c: (general) Add support for 'set pathlimit ttl' and
'match pathlimit as'.
* doc/bgpd.texi: Document 'network ... pathlimit <ttl>'
|
|
2007-07-26 Paul Jakma <paul.jakma@sun.com>
* (general) Clean up and compact capability parsing slightly.
Consolidate validation of length and logging of generic TLV, and
memcpy of capability data, thus removing such from cap specifc
code (not always present or correct).
* bgp_open.h: Add structures for the generic capability TLV header
and for the data formats of the various specific capabilities we
support. Hence remove the badly named, or else misdefined, struct
capability.
* bgp_open.c: (bgp_capability_vty_out) Use struct capability_mp_data.
Do the length checks *before* memcpy()'ing based on that length
(stored capability - should have been validated anyway on input,
but..).
(bgp_afi_safi_valid_indices) new function to validate (afi,safi)
which is about to be used as index into arrays, consolidates
several instances of same, at least one of which appeared to be
incomplete..
(bgp_capability_mp) Much condensed.
(bgp_capability_orf_entry) New, process one ORF entry
(bgp_capability_orf) Condensed. Fixed to process all ORF entries.
(bgp_capability_restart) Condensed, and fixed to use a
cap-specific type, rather than abusing capability_mp.
(struct message capcode_str) added to aid generic logging.
(size_t cap_minsizes[]) added to aid generic validation of
capability length field.
(bgp_capability_parse) Generic logging and validation of TLV
consolidated here. Code compacted as much as possible.
* bgp_packet.c: (bgp_open_receive) Capability parsers now use
streams, so no more need here to manually fudge the input stream
getp.
(bgp_capability_msg_parse) use struct capability_mp_data. Validate
lengths /before/ memcpy. Use bgp_afi_safi_valid_indices.
(bgp_capability_receive) Exported for use by test harness.
* bgp_vty.c: (bgp_show_summary) fix conversion warning
(bgp_show_peer) ditto
* bgp_debug.h: Fix storage 'extern' after type 'const'.
* lib/log.c: (mes_lookup) warning about code not being in
same-number array slot should be debug, not warning. E.g. BGP
has several discontigious number spaces, allocating from
different parts of a space is not uncommon (e.g. IANA
assigned versus vendor-assigned code points in some number
space).
|
|
Fix indentation to match accumulated changes.
|
|
2007-08-02 Denis Ovsienko
* rt_socket.c (kernel_rtm_ipv4): Only call rtm_write when changes
are intended. Don't set FIB flag on failed additions (such as
occur with multiple paths.
http://bugzilla.quagga.net/attachment.cgi?id=235&action=view
|
|
default
|
|
|
|
While it doesn't take a long time to build, this is currently the only
thing in the tree that doesn't work with BSD make, and there's no
reason to build solaris package control files on other systems.
|
|
|
|
2007-07-31 Lorenzo Colitti <lorenzo@colitti.com>
* bgp_dump.c: (general) Add comments to code.
(bgp_dump_interval_add) remove some redundant lines.
(bgp_dump_set) Use enum for type argument.
Avoid scheduling dump twice if exact same command
is given twice..
|
|
* configure.ac: Bump version to 0.99.8
|
|
2007-07-06 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* sockopt.{c,h}: (setsockopt_multicast_ipv4) Add some comments about
the arguments.
|
|
2007-06-25 Denis Ovsienko
* zebra_rib.c: (rib_add_ipv4_multipath) Loop through RIB
is using 'same' variable, but RIB_ENTRY_REMOVED check
is testing the constant 'rib' variable, fix. Impact
unknown at this point.
|
|
* configure.ac: Fix typo so it compiles again on BSD systems.
|
|
2007-06-22 Paul Jakma <paul.jakma@sun.com>
* bgp_fsm.c: (struct FSM) Bug #368. TCP Errors during OpenSent
should cycle to Active, not to Idle or else peer bringup can
race and cycle Idle<->Active. Reported and fix tested by
Mukesh Agrawal.
|
|
2007-06-22 Paul Jakma <paul.jakma@sun.com>
* configure.ac: IRDP also depends on struct icmphdr, enabling
only on in_pktinfo breaks when an OS acquires pktinfo, as
Solaris NV has. Reported by Jim Carlson.
|
|
2007-06-20 Nicolas Deffayet <nicolas@deffayet.com>
* vtysh.c: (vtysh_write_terminal) Write 'end' when done,
to be consistent with telnet vty, and expected by tools
like rancid.
|
|
2007-05-25 Paul Jakma <paul.jakma@sun.com>
* bgp_route.c: (bgp_default_originate) Sanity check added
previously was broken and always failed, thus this function
never could run, bug #370.
|
|
2007-06-07 Pavol Rusnak <prusnak@suse.cz>
* ospf6_lsa.c: (no_debug_ospf6_lsa_hex_cmd) Fix bug: must use strcmp
to compare strings.
|
|
2007-06-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* zebra.h: On linux, we seem to need to include <linux/types.h> before
<sys/sysctl.h>, otherwise we get isisd compilation errors about
__be16 not being defined.
|
|
2007-05-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* zebra_routemap.c: (route_set_src_compile) Use '#ifdef HAVE_IPV6'
as needed.
* zebra_vty.c: (vty_show_ip_route_detail, vty_show_ip_route) Use
'#ifdef HAVE_IPV6' as needed.
(show_ip_protocol) Move function definition outside of
'#ifdef HAVE_IPV6' section.
|
|
2007-05-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* kernel_socket.c: (ifam_read_mesg) Grab RTA_DST and RTA_GATEWAY
addresses from the message (if present, which seems unlikely on
current BSD platforms), and show them in the debug messages.
Also, add ifam_flags to the debug messages.
(ifam_read) If the interface is point-to-point, then the RTA_BRD
address should be treated as a peer address.
|
|
|
|
2007-05-10 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Use AC_GNU_SOURCE to define _GNU_SOURCE, rather
than having lib/zebra.h do it.
AC_FUNC_STRNLEN has side-effects with latest autoconf, use
AC_CHECK_FUNC on strnlen instead.
* lib/zebra.h: Don't try define _GNU_SOURCE, autoconf should do it.
|
|
2007-05-10 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Add back check for inet_aton, which got dropped
somehow in previous jumbo patch.
|
|
2007-05-09 Milan Kocian <milon@wq.cz>
* ospf_vty.c: Fix commands: 'ip ospf authentication A.B.C.D',
'no ip ospf authentication A.B.C.D', 'no ip ospf
authentication-key A.B.C.D'. Simply fix argv's indexes and
argc check in DEFUN functions.
|
|
2007-05-09 Paul Jakma <paul.jakma@sun.com>
* configure.ac: sys/conf.h depends on sys/param.h, at least on
FBSD 6.2.
(bug #363) Should check for in_pktinfo for IRDP
2006-05-27 Paul Jakma <paul.jakma@sun.com>
* configure.ac: General cleanup of header and type checks, introducing
an internal define, QUAGGA_INCLUDES, to build up a list of
stuff to include so as to avoid 'present but cant be compiled'
warnings.
Misc additional checks of things missing according to autoscan.
Add LIBM, for bgpd's use of libm, so as to avoid burdening
LIBS, and all the binaries, with libm linkage.
Remove the bad practice of using m4 changequote(), just
quote the []'s in the case statements properly.
This should fix bugs 162, 303 and 178.
* */*.{c,h}: Update all HAVE_* to the standard autoconf namespaced
HAVE_* defines. I.e. HAVE_SA_LEN -> HAVE_STRUCT_SOCKADDR_SA_LEN,
* bgpd/Makefile.am: Add LIBM to bgpd's LDADD, for pow().
|
|
2007-05-07 Paul Jakma <paul.jakma@sun.com>
* ospf_spf.c: (ospf_vertex_new) Dont init vertices to infinity,
just let 0 be a special case.
(ospf_spf_add_parent) 0 distance candidate vertex is special,
cost still to be initialised - asserting that new distance
is <= existing only makes sense where w already has a cost.
(ospf_spf_next) Infinite cost links should not be followed,
bar those of the root.
|
|
2007-05-03 Paul Jakma <paul.jakma@sun.com>
* bgp_route.h: (struct info) Move less frequently used
fields to a lazily allocated struct info_extra.
Export bgp_info_extra_get
* bgp_route.c: (bgp_info_extra_new) allocate extra
(bgp_info_extra_free) Free damp info and the info_extra.
(bgp_info_extra_get) Retrieve the info_extra of a struct
info, allocating as required.
(generally) adjust to use info->extra
* bgp_damp.c: (generally) use bgp_info_extra_get to access
dampinfo
* bgp_attr.h: Move rarely allocated attributes from struct attr
to a struct attr_extra, for a substantial saving in size of
struct attr.
* bgp_attr.c: (bgp_attr_extra_{new,free}), new, self-explanatory.
(bgp_attr_extra_get) Get the attr_extra for a given struct
attr, allocating it if needs be.
(bgp_attr_dup) Shallow copy the struct attr and its attr_extra.
(generally) adjust to know about attr->extra.
* bgp_debug.c: (bgp_dump_attr) ditto
* bgp_vty.c: (show_bgp_memory) print attr and info extra sizes.
* bgp_nexthop.c: (generally) adjust to know about attr->extra
and info->extra.
* bgp_{packet,routemap,snmp,zebra}.c: ditto
* lib/memtypes.c: Add MTYPE_ATTR_EXTRA and MTYPE_BGP_ROUTE_EXTRA
|
|
* zebra_routemap.c should have been in the commit of Steven's
routemap patch.
|
|
2007-05-01 David L Stevens <dlstevens@us.ibm.com>
* (general) These changes collectively add route-map and
prefix-list support to zebra and fix a bug in "show
route-map" (with no argument).
* doc/main.texi: added route-map, prefix-list, ip protocol
and set src documentation
* lib/command.h: added PROTOCOL_NODE type
* lib/log.c: (proto_name2num) new function, protocol name to
number translation.
* lib/routemap.c: (vty_show_route_map) fixed "show route-map"
without route-map name
* lib/routemap.h: added RMAP_ZEBRA type
* lib/zebra.h: added proto_name2num() prototype
* vtysh/extract.pl.in: added VTYSH_ZEBRA flag for route-map and
plist
* vtysh/Makefile.am: added zebra_routemap.c
* vtysh/vtysh.h: added VTYSH_ZEBRA flag to VTYSH_RMAP
* zebra/connected.c: (connected_up_ipv4) added src preference argument
to rib_add_ipv4()
* zebra/kernel_socket.c: (rtm_read) ditto
* zebra/main.c: added prefix list initialization
* zebra/Makefile.am: added zebra_routemap.c source file
* zebra/rib.h: added generic address union "g_addr" and use in
existing places that had an explicit union.
Added "src" to struct nexthop.
Added preferred src arg to nexthop_ipv4_add and rib_add_ipv4.
* zebra/rt_netlink.c: (netlink_routing_table) set preferred source on
netlink messages.
(netlink_route_change) ditto
(netlink_route_multipath) ditto.
* zebra/rtread_getmsg.c: (handle_route_entry) added (NULL) src to
rib_add_ipv4() call.
* zebra/rtread_proc.c: (proc_route_read) ditto
* zebra/zebra_rib.c: (nexthop_ipv4_add) add src argument.
(nexthop_ipv4_ifindex_add) ditto
(rib_add_ipv4) ditto
(nexthop_active_check) Add route-map processing.
* zebra/zebra_routemap.c: new file for zebra route-map commands.
* zebra/zebra_vty.c: (ip_protocol_cmd) Apply route-map to protocol
(vty_show_ip_route_detail) added "src" printing
(vty_show_ip_route) ditto
(show_ip_protocol_cmd) new command, list routemaps.
(config_write_protocol) write out routemap protocl config.
(zebra_vty_init) Install the new routemap protocol commands.
* zebra/zserv.c: (zread_ipv4_add) added (NULL) src arg
(zebra_init) init zebra route-maps.
* zebra/zserv.h: add zebra_route_map_init
|
|
2007-04-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* configure.ac: Change gcc CFLAGS from '-std=c99' to '-std=gnu99'
to improve portability.
|
|
2007-04-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* ospfd/ospfd.c: (ospf_network_match_iface) Comment out
COMPATIBILITY_MODE. Going forward, the ospf "network" command
will use a simple test: does the network command prefix
contain the connected (destination) prefix of the interface?
* doc/ospfd.texi: Add a paragraph to the description of the OSPFv2
network command to explain how we handle interfaces with
peer addresses.
|
|
2007-04-29 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Bump to 0.99.7
|
|
2007-04-22 Sebastien Tandel <sebastien@tandel.be>
* bgp_attr.h : Definition of BGP_ATTR_DEFAULT_WEIGHT.
* bgp_attr.c : (bgp_attr_default_intern) now uses
bgp_attr_default_set instead of duplicating the same code.
(general) Use of BGP_ATTR_DEFAULT_WEIGHT. Replace two 16 by
IPV6_MAX_BYTELEN.
|
|
2007-04-22 Sebastien Tandel <sebastien@tandel.be>
* bgp_advertise.c : (baa_hash_alloc, baa_hash_key, baa_hash_cmp)
conforms to quagga hash API. Defines _hash_[alloc|key|cmp] with
void * arguments as defined by the API.
* bgp_aspath.c,h : (aspath_key_make) conforms to quagga hash API.
Defines _hash_[alloc|key|cmp] with void * arguments as defined by
the API.
* bgp_attr.c,h : (cluster_hash_alloc, cluster_hash_key_make,
cluster_hash_cmp, transit_hash_alloc, transit_hash_key_make,
transit_hash_cmp, attrhash_key_make, attrhash_cmp,
bgp_attr_hash_alloc) conforms to quagga hash API. Defines
_hash_[alloc|key|cmp] with void * arguments as defined by the API.
|
|
2007-04-29 Paul Jakma <paul.jakma@sun.com>
* if_ioctl_solaris.c: (if_get_index) Fix bogus argument passed
to lifreq_set_name().
|
|
2007-04-29 Paul Jakma <paul.jakma@sun.com>
* ioctl{_solaris,}.c: (if_get_mtu) Fix missing ; in last commit.
|