[lib] Trivial: fix line lengths of a comment in workqueu.c2006-03-30 Paul Jakma <paul.jakma@sun.com>
* workqueue.c: (work_queue_run) fix line length of comment
[lib] Mark most arguments in DEFUN_CMD_FUNC_TEXT as potentially unused2006-03-30 Paul Jakma <paul.jakma@sun.com>
* command.h: (DEFUN_CMD_FUNC_TEXT) Annotate arguments as
potentially being unused.
[bgpd] Fix infinite loop in community_str2com2006-03-30 Paul Jakma <paul.jakma@sun.com>
* bgp_community.c: (community_gettoken) Unknown token should
return NULL, to give a strong indication to callers that
the token no longer can be parsed, otherwise callers looping
on this function may have a hard time ending their loop.
(community_str2com) While loop around community_gettoken appears
to have been coded thinking that bre...
[TODO] Note MED functionality we should implement2006-03-30 Paul Jakma <paul.jakma@sun.com>
* TODO: Add reminder for useful MED functionality we should
implement.
[ospfd] Fix failure of Fletcher checksum with certain compilers2006-03-27 Paul Jakma <paul.jakma@sun.com>
* ospf_lsa.c: (ospf_lsa_checksum) Add an explicit cast to avoid
the ambiguities of ANSI and C99 C with respect to type
conversion. Detailed problem report and test case with
example data supplied by Dmitry Ivanov <dimss@telecentrs.lv>.
[lib] fix gensub call in memtypes.awk to pass "g", not g.2006-03-27 Paul Jakma <paul.jakma@sun.com>
* memtypes.awk: Fix gensub call, g should be a string..
[lib] status field/flags no longer used in struct workqueue2006-03-25 Paul Jakma <paul.jakma@sun.com>
* workqueue.h: (struct work_queue) Remove status field and
state flag, no longer used.
[ospfd] ignore loopbacks for received interface validation2006-03-25 Paul Jakma <paul.jakma@sun.com>
* ospf_interface.c: (ospf_if_lookup_recv_if) Ignore loopbacks,
we can never ever receive packets on those. Should fix
case where CARP is run with address in same subnet as real
interface. Problem report and diagnosis thanks to:
Landon Fuller <landonf@opendarwin.org>.
However, ospf_read() still can't deal deterministically with
multi...
[bgpd] release peer specific clear queue in peer_free2006-03-22 Paul Jakma <paul.jakma@sun.com>
* bgpd.c: (peer_free) release the per-peer workqueue when
freeing the peer.
[bgpd] trivial: use a distinct memtype for struct bgp_synchronize2006-03-19 Paul Jakma <paul.jakma@sun.com>
* memtypes.c: Add MTYPE_BGP_SYNCHRONISE.
* bgp_advertise.c: Use a distinct memory type for struct
bgp_synchronize.
[bgpd] Add 'show bgp memory' for stats on fixed-size allocations in bgpd2006-03-19 Paul Jakma <paul.jakma@sun.com>
* bgpd/bgp_vty.c: Add includes to get several structs we want
to provide usage statistics on.
(show_bgp_memory_cmd) Show memory usage stats for various
notable fixed size objects. Using mtype_stats_alloc and
mtype_memstr recently added to memory.c.
(bgp_show_summary) Report some additional stats specific to
the given BGP instance an...
[bgpd] Include header dependency in bgp_nexthop.h2006-03-19 Paul Jakma <paul.jakma@sun.com>
* bgp_nexthop.h: Include if.h as a dependent header, for struct
connected.
[lib/memory] Add mallinfo support2006-02-15 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Check for mallinfo, being careful to link test
so we can detect things like umem being used (which doesn't
provide a mallinfo).
* lib/memory.c: (mtype_memstr) new helper function to
return human friendly string for a byte count.
(mtype_stats_alloc) new function, for users to retrieve
number of objects allocated.
(sh...
[solaris] revert previous update of manifest install path2006-03-16 Paul Jakma <paul.jakma@sun.com>
* prototype.smf.in: Oops, continue to install manifest to
var/svc/manifest/network for now.
* Changelog: fix lack of trailing newline
[tests] fix heavy-wq, add redundant AS_SET test and statics to aspath_test2006-03-16 Paul Jakma <paul.jakma@sun.com>
* heavy-wq.c: (heavy_wq_init) delay is gone from workqueue
spec.
* aspath_test.c: (test_segments) Add an AS_SET with redundant
ASNs.
({empty_prepend,prepend,parse}_test) add static qualifiers
[solaris] SMF manifest, method and depend updates.2006-03-13 Alan Maguire <alan.maguire@sun.com>
* quagga.xml.in: Change the naming of services and instances.
network/routing/quagga:<daemon> may be neat and tidy, but
it's at odds with SMF convention elsewhere that demands
the service be named for what it does, and the instance name
describe the implementation (e.g. network/smtp:sendmail).
Remove call to method script for 'stop...
[zebra] arrange structs in padding-efficient manner and remove unused field2006-02-09 Paul Jakma <paul.jakma@sun.com>
* rib.h: (struct {rib,nexthop}) Rearrange fields to avoid
needless padding.
(struct rib) Remove the indirect pointer, not used anywhere!
[lib/privs] Changing user IDs should be done before dropping privileges2006-03-14 Paul Jakma <paul.jakma@sun.com>
* privs.c: (zprivs_caps_init) Change user IDs before lowering
privileges, while this seems to work on Linux, on Solaris
it rightfully refuses due to PRIV_PROC_SETID having been
dropped.
[bgpd] rearrange some structs for less padding, stats for table/attrs.2006-03-12 Paul Jakma <paul.jakma@sun.com>
* bgp_attr.h: (struct attr) rearrange fields to avoid
wasted padding between them as much as possible.
(attr_count,attr_unknown_count) export new functions to
return number of counts of cached attributes.
* bgp_attr.c: (attr_count,attr_unknown_count) new functions to
return number of counts of cached attributes.
* bgp_route.h: (struct b...
[lib] export show_address_cmd debug command in if.h2006-03-06 Paul Jakma <paul.jakma@sun.com>
* if.h: export show_address_cmd, for anyone who wishes to use
it.
[bgpd] Start off FSM again once clearing finishes.2006-03-03 Paul Jakma <paul.jakma@sun.com>
* bgp_route.c: (bgp_clear_node_complete) Doh. When clearing
is complete we need to kick off FSM again.
[lib/sockunion] trivial: use XSTRDUP.2006-02-21 Paul Jakma <paul.jakma@sun.com>
* sockunion.c: (sockunion_{su2str,log}) Use XSTRDUP.
Particularly with _su2str, as that string gets XFREEd,
which can be annoying if run debug code in memory.c.
[bgpd] Add Clrng description to bgp summary state.2006-02-21 Paul Jakma <paul.jakma@sun.com>
* bgp_vty.c: (bgp_show_summary) Add a 'Clrng' sub-description
to state of peer while it's suppressed due to clearing.
[bgpd] Record afi/safi in bgp_table. Serialise peer clear with FSM.2006-02-21 Paul Jakma <paul.jakma@sun.com>
* bgpd.h: move the clear_node_queue to be peer specific.
Add a new peer status flag, PEER_STATUS_CLEARING.
* bgp_table.h: (struct bgp_table) Add fields to record afi,
safi of the table.
(bgp_table_init) Take afi and safi to create table for.
* bgp_table.c: (bgp_table_init) record the afi and safi.
* bgp_nexthop...
[solaris] version depend files, auto-generate. Start zebra when needed.2006-02-19 Paul Jakma <paul.jakma@sun.com>
* depend.*: renamed to depend.*.in.
* depend.*.in: Add version dependency.
* Makefile.am: Generate depend.* from depend.*.in
Distribute the depend.*.in files rather than the depend.*
files.
* quagga.init.in: Enable zebra if one of the link-state
daemons is started.
Restart method is not required - SMF handles that.
* quagga.xml.in: Re...
[doc] Credit Jeroen Simonetti for contributing snmptrap.texi2006-02-19 Paul Jakma <paul.jakma@sun.com>
* quagga.info: update auto-built file.
* ChangeLog: Fix old, existing entry for snmptrap.texi addition to
credit the author, who got in touch with me.
* snmptrap.texi: Add comment line with author's details.
[bgpd] trivial readability fix2006-02-18 Paul Jakma <paul.jakma@sun.com>
* bgp_route.c: (bgp_announce_check) trivial, move declaration
of two local variables into the only block where they are
used, to aid the reader.
[bug #89] Fix leak of community when set community is used2006-02-18 Paul Jakma <paul.jakma@sun.com>
* bgp_routemap.c: (route_set_community) Quick, very hacky, fix
for the set-community leak, bug #89. True fix will be to
detangle the web of *_intern caching and provide saner object
caching for Quagga, future work.
[bgpd] trivial fix for gcc warning2006-02-05 Paul Jakma <paul.jakma@sun.com>
* bgp_aspath.c: (aspath_gettoken) fix gcc warning about
possible uninitialised usage.
[bgpd] Fix peer prefix counts and make it slightly more robust2006-02-05 Paul Jakma <paul.jakma@sun.com>
* bgp_route.h: Add BGP_INFO_COUNTED to track whether
prefix has been counted or not.
* bgp_route.c: (bgp_pcount_{inc,dec}rement) new helpers, to
centralise inc/dec of prefix-count,
(bgp_rib_remove) Remove pcount decrement, use helper.
(bgp_rib_withdraw) ditto, additionally use previous function
too.
(bgp_update_main) Use pcount hel...
[lib/workqueue] remove the useless 'delay' factor.2006-02-02 Paul Jakma <paul.jakma@sun.com>
* workqueue.h: (struct work_queue) Remove the delay field.
It served no purpose and just introduced bad behaviour.
Should be excised before its allowed to escape into 1.0.
This removes need for the 'flood' and runs_since_clear
fields.
* workqueue.c: (general) excise delay factor between queue
runs, hence the 'flood' crap too.. See abo...
[zebra] Display flags on their line in 'show interface'.2006-02-02 Paul Jakma <paul.jakma@sun.com>
* interface.c: (if_dump_vty) move flags to their line, neater.
[build system] cleanup --enable-snmp by removing ucd-snmp cruft2006-01-31 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Cleanup the hideous {net,ucd}-snmp section
by removing ucd-snmp. Hence fixing detection where
net-snmp is installed in /usr/local (Boris Kovalenko reported
the problem).
[zebra] Fix pauls zebra_rib/rib_process commit mistakes, again.2006-01-30 Paul Jakma <paul.jakma@sun.com>
* zebra_rib.c: (rib_process) Fourth time lucky on this jinxed
commit, last commit had a hole that could allow connected
route selection to escape beyond the connected route logic.
This time I cross-checked with Gunnar first. ;)
[zebra] Fix incorrect changes made in RIB metric selection patch2006-01-25 Gunnar Stigen <gunnar.stigen@axxessit.no>
* zebra_rib.c: (rib_process) Application of Gunnar's earlier
metric selection RIB change included incorrect tidy-ups made
by commiter. Fix. (NB: any errors here are again due to paul).
[zebra/solaris] Interface state fixups for Solaris.2006-01-25 Paul Jakma <paul.jakma@sun.com>
* (general) More solaris PF_ROUTE hacks. The IFF_UP mangling
for solaris was incomplete on the PF_ROUTE side. fix it.
This changeset generally uglifies things. For some future
work I'd like to see the state changes seperated out from
the details of the code. Differences between systems might
then be slightly easier to implement without...
[version] bump configure.ac version number to 0.99.32006-01-19 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Bump to 0.99.3
* doc/quagga.info: update auto-built file.
[lib/stream] small compile fix, use uint64_t, not u_int64_t.2006-01-19 Paul Jakma <paul.jakma@sun.com>
* stream.c: (stream_getq_from) should use POSIX uint64_t
not u_int64_t. Latter is neither a traditional BSD type, nor
a POSIX type.
[compiler] miscellaneous trivial compiler warning fixes2006-01-19 Paul Jakma <paul.jakma@sun.com>
* (general) various miscellaneous compiler warning fixes.
Remove redundant break statements from switch clauses
which return.
return from main, not exit, cause it annoys SOS.
Remove stray semi-colons which cause empty-statement
warnings.
* zebra/main.c: (sighup) remove private declaration of e...
[ospfd] Add support for oversized LSAs.2006-01-18 Juergen Kammer <j.kammer@eurodata.de>
* ospf_lsa.c: (ospf_router_lsa_new) dont take reference to the
stream data until it is constructed, data reference is
volatile due to the potential resize in link_info_set
2006-01-18 Paul Jakma <paul.jakma@sun.com>
* ospf_lsa.c: (link_info_set) Resize the stream if required and
possible. Return number of links added.
(lsa_link_*_...
[zebra] Record NEWADDR metric on PF_ROUTE, print CACHEINFO debug on netlink2006-01-17 Paul Jakma <paul.jakma@sun.com>
* kernel_socket.c: (ifam_read) Read metric from RTM_NEWADDR.
If interface is an alias, pass the alias as a label for
connected_add_ipv{4,6}.
* rt_netlink.c: (netlink_interface_addr) print out
IFA_CACHEINFO info, if present, when debugging kernel
messages.
[zebra] Defensive if_getaddrs bug fix.2006-01-17 Gunnar Stigen <gunnar.stigen@axxessit.no>
* if_ioctl.c: (if_getaddrs) Be defensive about assuming
that struct ifaddrs will have ifa_addr filled in.
[zebra] Include metric on connected routes.2006-01-17 Gunnar Stigen <gunnar.stigen@axxessit.no>
* connected.c: (connected_up_ipv{4,6}) Include interface metric on
connected routes.
[ospfd/zserv] adjust to new format2006-01-17 Paul Jakma <paul.jakma@sun.com>
* ospf_packet.c: (ospf_verify_header) print out the types
involved if there's a mismatch.
* ospf_zebra.c: (ospf_zebra_add) Adjust to new zserv format.