| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-12-08 Piotr Chytla <pch@packetconsulting.pl>
* zebra_rib.c: (static_install_ipv{4,6}) Case where existing
RIB is updated must explicitely rib_addqueue the route_node,
to ensure the update actually takes effect.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
syntax
2006-10-04 Oliver Hookins <ohookins@gmail.com>
* bgpd/bgp_main.c: Add configuration check option, with
'-C' rather than '-c' for consistency between daemons.
* isisd/isis_main.c: ditto
* ospf6d/ospf6_main.c: ditto
* ospfd/ospf_main.c: ditto
* ripngd/ripng_main.c: ditto
* vtysh/vtysh_main.c: ditto
* ripd/rip_main.c: Change the config check option to
'-C' and tidy up the code.
* zebra/main.c: ditto
2006-10-04 Stergiakis Alexandros <astergiakis@antcor.com>
* ripd/rip_main.c: This trivial patch introduces a new
command-line option '-c', which instructs zebra/ripd
to check its configuration file for validity, print
any error message, and then exit. This is useful when
the configuration file is edited by hand or otherwise,
and you simply want to validate it without any other
effect.
* zebra/main.c: ditto
|
| | |
| | |
| | |
| | |
| | | |
* kernel_socket.c (rtm_type_str): ifdef RTM_OLD{ADD,DEL} to
compile on systems that no longer define them.
|
| | |
| | |
| | |
| | |
| | |
| | | |
2006-08-06 Paul Jakma <paul.jakma@sun.com>
* rtadv.h: depends on interface.h, so should include it.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-08-06 Paul Jakma <paul.jakma@sun.com>
* interface.h: (ifstat_update_proc) declaration should match
ifstat_update_sysctl really, which is to not return status, as
such status is not used anywhere.
* if_{proc,sysctl}.c: Make ifstat_update_* definitions and return values
consistent with each other and their declarations, ie:
(void) (*) (void).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-08-01 Paul Jakma <paul.jakma@sun.com>
* irdp_main.c: (irdp_advertisement) free the stream here, when done,
right under where it was allocated so it's blindingly obvious
it's correct. This possibly fixes a very slow leak of streams in
zebra.
* irdp_packet.c: (send_packet) don't free the stream here as
it's hard to tell if right, plus an error case seemed to
returning before free anyway.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-08-04 Paul Jakma <paul.jakma@sun.com>
* misc_null.c: Add ifstat_update_sysctl, add another required
header.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-08-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* misc_null.c: Must include header files to get older versions of gcc
to process the #pragma statements properly.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-07-27 Paul Jakma <paul.jakma@sun.com>
* rib.h: (struct rib) Add a route_node rn_status flag field,
this has to be copied every time head RIB of a route_node
changes.
Remove the rib lock field, not needed - see below.
Add a status field for RIB-private flags.
* zebra_rib.c: Add a global for the workqueue hold time, useful
for testing.
(general) Fix for bug #268. Problem originally
detailed by Simon Bryden in [quagga-dev 4001].
Essentially, add/delete of a RIB must happen /before/ the
queue. Best-path selection (ie rib_process) and reaping of
freed RIBs can then be done after queueing. Only the route_node
is queued - no important RIB state (i.e. whether a RIB is to be
deleted) is queued.
(struct zebra_queue_node_t) Disappears, no longer need to
track multiple things on the queue, only the route_node.
(rib_{lock,unlock}) removed, RIBs no longer need to be
refcounted, no longer queued.
(rib_queue_qnode_del) Removed, deleted RIBs no longer deleted
via the queue.
(rib_queue_add_qnode) deleted
(rib_queue_add) Only the route_node is queued for best-path
selection, we can check whether it is already queued or
not and avoid queueing same node twice - struct rib * argument
is not needed.
(rib_link/unlink) (un)link RIB from route_node.
(rib_{add,del}node) Front-end to updates of a RIB.
(rib_process) Reap any deleted RIBs via rib_unlink.
Unset the route_node 'QUEUED' flag.
(General) Remove calls to rib_queue_add where add/del node was
called - not needed, update calls where not.
Ignore RIB_ENTRY_REMOVEd ribs in loops through route_nodes
|
| | |
| | |
| | |
| | |
| | |
| | | |
2006-07-27 Paul Jakma <paul.jakma@sun.com>
* debug.{c,h}: Add 'debug zebra rib' and 'debug zebra rib queue'.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-07-27 Paul Jakma <paul.jakma@sun.com>
* {ioctl,kernel}_null.c: Dummy/Null kernel method implementations,
useful for testing zebra code that calls such methods.
* {redistribute,misc}_null.c: Dummy/Null methods, as above. But
for zclient, and for various misc functions.
* test_main.c: Test harness for zebra, currently just to test the
RIB.
* Makefile.am: Build testzebra using above.
* zebra_rib.c: Add a global for the workqueue hold time, useful
for testing.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-07-27 Rumen Svobodnikov <rumen@telecoms.bg>
* connected.c: (connected_up_ipv4) interface connected routes always
go to table main (or otherwise they cannot be used by linux as
nexthops)
* zserv.c: (zread_ipv4_add) send route to the correct routing table
* zebra_rib.c (static_install_ipv4) set routing table
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-07-02 Paul Jakma <paul.jakma@sun.com>
* rt_netlink.c: (netlink_interface_addr) Fix CID #104, can not
proceed if addr is NULL.
* zebra_rib.c: (static_add_ipv6) Fix CID #18, double check
required arguments are supplied for the given nexthop type.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-06-15 Paul Jakma <paul.jakma@sun.com>
* (general) The key fixes are actually Andrew Schorr's.
* interface.c: (ip_address_uninstall) Unset the configured flag.
* connected.c: (connected_same) new helper, check whether
two connected are same.
(connected_implicit_withdraw) new helper, consolidation of
existing code in connected_add_ipv{4,6}.
Try filter out unneeded Zserv address delete/adds when
address is exact same.
Where old address is implicitely removed, be sure to preserve
the IFC_CONFIGURED flag if set, fixes bug where configured
addresses were being lost on FreeBSD.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-06-15 Paul Jakma <paul.jakma@sun.com>
* lib/if.c: (if_flag_dump) remove the whitespace indentation, callers
should provide.
* zebra/interface.c: (if_flag_dump_vty) redundant code, remove.
(if_dump_vty) use libzebra if_flag_dump.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-05-21 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* if.h: (struct connected) Document the meaning of the
ZEBRA_IFC_REAL and ZEBRA_IFC_CONFIGURED flags.
* connected.c: (connected_withdraw) Do not delete the connected
address if the ZEBRA_IFC_CONFIGURED flag is set.
(connected_add_ipv4,connected_add_ipv6) Before calling
connected_withdraw, unset the ZEBRA_IFC_CONFIGURED flag
on the superseded connected structure.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-05-19 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* connected.c: (connected_add_ipv4,connected_add_ipv6) If the
new struct connected matches an already existing one
(that will consequently be removed by connected_withdraw),
then be sure to preserve the ZEBRA_IFC_CONFIGURED flag.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-05-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* kernel_socket.c: (ifam_read_mesg) Improve debug message
to show the IP address.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-05-15 Paul Jakma <paul.jakma@sun.com>
* zserv.c: (general) Remove the private zebra_command_str
in favour of newly added libzebra zserv_command_string.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-05-11 Paul Jakma <paul.jakma@sun.com>
* interface.c: (if_delete_update) route_node_lookup may return
NULL, should fix Coverity CID #31.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2006-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!
|
| | |
| | |
| | |
| | |
| | | |
Bugfix 3732
Notify routing protocols about MTU changes
|
| | |
| | |
| | |
| | |
| | | |
Avoid possible problems where netlink message is being formatted
with unsigned 32 bit value, which was being read as int.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Quagga needs to fully cleanout state when interface is deleted from
system.
Bugfix: 3962, 3693
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Set metric in RIB to keep OSPF happy, but don't set the
metric in the kernel since the kernel portion of connected route
has metric=0.
Bugfix 3668
|
| | |
| | |
| | |
| | |
| | |
| | | |
Bugfix 3658
If inactive device is renamed, just do it.
If active device is renamed, update RIB if needed.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Bugzilla 3681 fix.
Routes from 'ip route' default to protocol boot. Need to use this
same value when deleting or udpating.
|
| | |
| | |
| | |
| | |
| | |
| | | |
There are two distinct pid's in netlink message. The one in
the receive address is the pid of the sender (ie kernel),
the other in the netlink message is the originator (ie quagga or ip command).
|
| | |
| | |
| | |
| | | |
This reverts commit e5d63369e1f3fdc1c22ae15fe477de1f97022703.
|
| | |
| | |
| | |
| | | |
Replace calls to XMALLOC followed by memset with XCALLOC.
|
| | |
| | |
| | |
| | |
| | | |
This is a refinement of the socket filter, and also closes a security
hole that would allow non-kernel messages to confuse quagga.
|
| | |
| | |
| | |
| | |
| | |
| | | |
This adds a new flag to the zebra daemon that causes it to add and
remove system routes (ie connected and kernel routes). This causes
user space (zebra) to do what the kernel was doing in hollwood.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Do some cleanup work on recently added meta-queue code:
* use table rather than switch
* indent with quagga standard indentation
* since meta_queue_new is only used at initialization
allocation failure should be fatal.
|
| | |
| | |
| | |
| | |
| | | |
The cmd_nodes used to configure vty, can mostly be static so
(basic data hiding 101).
|
| | |
| | |
| | |
| | | |
May also fix one issue with ipv6 static routes.
|
| | |
| | |
| | |
| | | |
This stuff is only used in RIB code
|
| | |
| | |
| | |
| | | |
Message tables should be unaltered.
|
| | |
| | |
| | |
| | | |
Get rid of some conflicts / overlaps from merge of upstream.
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
ChangeLog
NEWS
bgpd/ChangeLog
bgpd/bgp_attr.c
bgpd/bgp_network.c
bgpd/bgp_packet.c
bgpd/bgp_vty.c
bgpd/bgpd.c
bgpd/bgpd.h
lib/sockopt.c
lib/sockopt.h
lib/zebra.h
mkinstalldirs
zebra/rib.h
zebra/rt_netlink.c
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2008-07-01 Paul Jakma <paul.jakma@sun.com>
* ioctl.c: (if_get_flags) Deal more gracefully with failure
of the BSD link-state SIOCGIFMEDIA ioctl, as some interfaces
apparently don't implement it (e.g. tun).
Also, make BSD link-state checking be conditional on the
'link-detect' interface configuration flag, as it should be.
Fixes bug #465.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
2008-05-29 Martin Nagy <mnagy@redhat.com>
* */*main.c: Sanity check port numbers before using.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2008-05-29 Stephen Hemminger <stephen.hemminger@vyatta.com>
* rt_netlink.c: (netlink_install_filter) BPF filter to catch and
drop responses to zebra's own route messages.
(kernel_init) add BPF filter on the netlink socket.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2008-01-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* lib/zebra.h: Revert previous change, no need to include
<net/if_media.h> here.
* zebra/ioctl.c: If HAVE_BSD_LINK_DETECT is defined, include
<net/if_media.h>
(if_get_flags) Remove debug messages about BSD link state.
* zebra/kernel_socket.c: (bsd_linkdetect_translate) If link state
is unknown, we should set the IFF_RUNNING flag.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2008-01-10 Ingo Flaschberger <if@xip.at>
* configure.ac: Define HAVE_BSD_LINK_DETECT if <net/if_media.h> is
present.
* lib/zebra.h: If HAVE_BSD_LINK_DETECT is defined,
include <net/if_media.h>.
* zebra/ioctl.c: (if_get_flags) If HAVE_BSD_LINK_DETECT, use the
SIOCGIFMEDIA ioctl to ascertain link state.
* zebra/kernel_socket.c: (bsd_linkdetect_translate) New function to
map the ifm_data.ifi_link_state value into the IFF_RUNNING flag.
(ifm_read) Call bsd_linkdetect_translate to fix the IFF_RUNNING
flag before calling if_flags_update.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2008-01-08 Michael Larson <mike@vyatta.com>
* zebra_rib.c: (nexthop_active_check) Replace if_is_up with
if_is_operative to solve problems with static interface
routes not behaving properly with link-detect.
|
| | |
| | |
| | |
| | | |
existing static routes to be revalidated)
|