summaryrefslogtreecommitdiffstats
path: root/babeld
Commit message (Collapse)AuthorAgeFilesLines
* babeld: Remove babeld from QuaggaPaul Jakma2015-05-1532-8793/+0
| | | | | This commit removes babeld from Quagga because the Quagga project is unable to meet the wishes of the babeld authors.
* build: add --enable-werrorDavid Lamparter2015-04-211-1/+1
| | | | | | | | | | | | | | | This allows enabling -Werror in a consistent way. Note that this is different from just specifiying it in CFLAGS, since that would either break configure tests (if done on ./configure), or would override configure's CFLAGS (if done on make). Using --enable-werror instead provides a new WERROR variable that is additionally used during make with a consistent set of warning flags. The tests/ directory is exempt. (Rationale being, better to have more tests than pedantically complain about them.) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* *: use long long to print time_tDavid Lamparter2015-04-191-2/+2
| | | | | | | | | | | | Since we can't assume time_t to be long, int, or even long long, this consistently uses %lld/long long (or %llu/unsigned long long in a few cases) to print time_t/susecond_t values. This should fix a bunch of warnings, on NetBSD in particular. (Unfortunately, there seems to be no "PRId64" style printing macro for time_t...) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* build: get rid of INCLUDES, use AM_CPPFLAGSDavid Lamparter2015-02-141-1/+1
| | | | | | | | | | | | INCLUDES in configure.ac was not used at all, and INCLUDES in Makefile.am is supposed to be AM_CPPFLAGS these days. Reduces warnings spewed during bootstrap/autoreconf. Signed-off-by: David Lamparter <equinox@opensourcerouting.org> Acked-by: Greg Troxel <gdt@ir.bbn.com> Acked-by: Feng Lu <lu.feng@6wind.com> Acked-by: Paul Jakma <paul@jakma.org>
* lib/command.c: rewrite command matching/parsingChristian Franke2014-04-011-3/+0
| | | | | | | | | | Add support for keyword commands. Includes new documentation for DEFUN() in lib/command.h, for preexisting features as well as new keyword specification. Signed-off-by: Christian Franke <chris@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* *: use array_size() helper macroBalaji.G2012-10-251-1/+1
| | | | | | | | Use the array_size() helper macro. Replaces several instances of local macros with the same definition. Reviewed-by: Scott Feldman <sfeldma@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* build: use net-snmp-config to configure NetSNMPVincent Bernat2012-06-251-1/+1
| | | | | | | | The correct method to link to NetSNMP is to use net-snmp-config (which is like pkg-config). Explicit link to libcrypto is also dropped (NetSNMP libs are linked to libcrypto, no need to link Quagga to it). Moreover, @SNMP_INCLUDES@ is dropped because useless. Due to a bug in configure.ac, it was properly populated.
* build: allow configure and build in a separate directoryVincent Bernat2012-06-251-1/+1
| | | | | | | | | | | Some .h files in lib/ are autogenerated. The search path should include the build directory and the source directory. They usually match but sometimes, they may be different. For example: $ mkdir build $ cd build $ ../configure $ make
* babeld: merge kernel_zebra.c into kernel.c.Juliusz Chroboczek2012-04-282-276/+239
| | | | | | | | | | | In upstream babel, we include different kernel_foo files depending on the platform we compile for. In Quagga, this is not needed, and it avoids tricky autotools issues. (All autotools issues are tricky.) [David: without this commit, build breaks.] From: Juliusz Chroboczek <jch@pps.jussieu.fr> Signed-off-by: David Lamparter <equinox@diac24.net>
* babeld: Include babel_main.h in noinst_HEADERS.Denis Ovsienko2012-04-281-1/+1
| | | | | | | | | babeld wouldn't build in a dist tarball without this. From: Denis Ovsienko <infrastation@yandex.ru> Signed-off-by: Juliusz Chroboczek <jch@pps.jussieu.fr> [fixed up git message] Signed-off-by: David Lamparter <equinox@diac24.net>
* babeld: remove "parasitic" mode.Juliusz Chroboczek2012-03-254-48/+5
| | | | | | | | | This is the functionality described in Appendix C of RFC 6126. Its main purpose is to avoid keeping a full source table, which makes it possible to implement a subset of Babel in just a few hundred lines of code. However, in Quagga the code for maintaining the source table is already there, and a parasitic implementation can be simulated using filtering -- so it makes little sense to keep the functionality.
* babeld: 3 more timing statements in config textDenis Ovsienko2012-03-253-2/+15
| | | | | | | | | This commit makes the following lines visible in running-config text, when respective intervals are configured to non-default values: * babel hello-interval * babel update-interval * babel resend-delay
* babeld: consolidate zebra interface into fewer functions.Juliusz Chroboczek2012-03-251-124/+29
|
* babeld: fix typo in kernel_route_add_v6.Juliusz Chroboczek2012-03-251-0/+1
|
* babeld: set interface flags eagerly, not at interface up.Juliusz Chroboczek2012-03-251-11/+22
|
* babeld: more helpful sample conf file.Juliusz Chroboczek2012-03-251-2/+11
|
* babeld: remove remains of standalone babeld's configuration code.Juliusz Chroboczek2012-03-255-23/+8
| | | | | | Standalone babeld has a configuration interface that is not used in Quagga. This removes a few bits of this code that survived the port to Quagga.
* babeld: drive interface_config_write() forwardDenis Ovsienko2012-03-251-9/+17
|
* babeld: justify "running-config" meaning in CLIDenis Ovsienko2012-03-258-50/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The primary focus of this commit is to make "show running-config" command display more current configuration, including some of the bits previously seen in the output of "show babel running-config". Besides that, the following commands were renamed for consistency with the syntax of other components: "debug *" to "debug babel *" (and moved to top level) "show babel running-config" to "show babel parameters" * babel_interface.c * show_babel_running_config(): rename to show_babel_parameters(), update syntax pattern, don't call show_babeld_configuration() * babel_if_init(): update respectively * babel_enable_if_config_write(): new VTY helper for static babel_enable_if * babel_interface.h: add extern declaration * babel_main.c: unset all debug options by default * show_babel_main_configuration(): remove debug options decoder * babel_zebra.c * babel_debug(): rename to debug_babel(), update syntax pattern * no_babel_debug(): rename to no_debug_babel(), update syntax pattern * babelz_zebra_init(): update respectively * debug_babel_config_write() new VTY helper for static debug_type * babel_zebra.h: add extern declaration * babeld.c * babel_config_write(): add the code to output "debug babel *", "router babel", "redistribute *" and "network *" statements * show_babeld_configuration(): dismiss * babeld.h: remove extern declaration * babeld.texi: update for renamed commands * babeld.conf.sample: idem, add debug statements block
* Remove dead variable reboot_time.Juliusz Chroboczek2012-03-251-5/+0
| | | | Thanks to Denis Ovsienko.
* babeld: display update-interval and resend-delay in show commands"Juliusz Chroboczek2012-03-252-2/+3
|
* babeld: vty commands (hello-interval, update-interval, resend-delay).Juliusz Chroboczek2012-03-252-23/+61
|
* babeld: remove port and group setting commands.Juliusz Chroboczek2012-03-251-47/+0
| | | | They didn't work anyway, since they're called too late.
* Resynchronise with babeld-1.3.1.Juliusz Chroboczek2012-03-258-96/+32
|
* babeld: dismiss babel_redistribute_unset()Denis Ovsienko2012-03-251-18/+3
| | | | | | The function was effectively duplicating existing zclient_redistribute(). This makes no_babel_redistribute_type() consistent with babel_redistribute_type()
* babeld: fix wire{d,less} commands name.Matthieu Boutier2012-03-251-2/+2
|
* babeld: Add support for blackhole routes.Juliusz Chroboczek2012-03-251-21/+43
| | | | | | | Babel makes use of blackhole routes to prevent routing loops between overlapping prefixes shortly after a route is retracted (see RFC 6126 sections 2.8 and 3.5.5). This patch adds support for installing such blackhole routes.
* babeld: refactor filtering stubs.Juliusz Chroboczek2012-03-253-166/+56
| | | | | | Factorise the common parts of the in/out filtering functions. This also fixes a bug with filtered out routes, which in babeld are signalled by a filter returing INFINITY, not -1.
* babeld: Use quagga_gettime.Juliusz Chroboczek2012-03-251-38/+1
|
* babeld: Don't use an ifindex when installing IPv4 routes.Juliusz Chroboczek2012-03-251-8/+9
| | | | | | | | | | | Stand-alone babeld installs routes using both a next-hop gateway and an interface index. Unfortunately, this doesn't work for IPv4 under Quagga. We now ignore the ifindex when installing IPv4 routes, which makes Babel work for IPv4 in prefix-based networks. Of course this breaks IPv4 mesh networks, unless you play some tricks with your interfaces' netmasks.
* babeld: remove some unused functions' arguments.Matthieu Boutier2012-03-251-58/+26
|
* babeld: Indentation fix.Juliusz Chroboczek2012-03-251-3/+3
|
* babeld: Error handling and tweaks for babeld commands.Juliusz Chroboczek2012-03-253-8/+11
|
* babeld: Fix typo in hello interval command.Juliusz Chroboczek2012-03-251-1/+1
|
* babeld: Replace the babeld.conf.sample file by one that actually works.Juliusz Chroboczek2012-03-251-31/+13
|
* babeld: fix interface bug, simplify code.Matthieu Boutier2012-03-252-16/+30
| | | | | | | | Perhaps could it be able to free already free memory (so free(NULL)), in function interface_reset(). On other hand, it initiated untracked interfaces, raising (at least) inappropriate messages. Finally, I remove the BABEL_IF_IS_ENABLE flag, witch was not really usefull. Note the test if_up isn't weaker, because (...IS_UP => ...IS_ENABLE).
* babeld: state-file was loaded too early. Initial seqno too.Matthieu Boutier2012-03-253-5/+4
|
* babeld: fix eui64 features.Matthieu Boutier2012-03-252-6/+3
| | | | We are interested by eui64 with at least 6 octets.
* babeld: "return CMD_SUCCESS" was missing for command 'no debug'.Matthieu Boutier2012-03-251-0/+1
|
* babeld: Replace redistribution strings with route_types.h defines.Matthieu Boutier2012-03-251-47/+27
|
* babeld: babelz merge.Matthieu Boutier2012-03-2515-317/+792
| | | | | | Babelz is the last version of the stand-alone babel daemon. In particular, it use multiple channels to diminuate interferences. Please refer to this one for more details.
* babeld: remove unused variable.Matthieu Boutier2012-03-251-1/+0
|
* babeld: add MP-specific zclient API fixDenis Ovsienko2012-03-251-0/+4
| | | | | | | Add proper initialization of SAFI field, which is present in the revisions of zapi_ipv4 and zapi_ipv6 structures specific to MP-BGP patchset. Without this change no Babel routes could make into zebra RIB.
* babeld: change the modify route system.Matthieu Boutier2012-03-251-35/+14
| | | | | | Zebra doesn't set errno to EEXIST if we add a route who was already in the kernel, so we always returned after just doing "add; delete". This patch fix the problem by doing "delete; add" always.
* babeld: fix bug due to v4mapped addresses.Matthieu Boutier2012-03-252-6/+6
|
* babeld: add command (config) to set debug flags.Matthieu Boutier2012-03-251-0/+77
|
* babeld: remove useless variable, make local another.Matthieu Boutier2012-03-252-3/+1
|
* babeld: fix commands informations messages.Matthieu Boutier2012-03-252-8/+10
|
* babeld: place the babel-state file in the quagga vars directory.Matthieu Boutier2012-03-251-1/+1
|
* babeld: use zlog_debug instead of do_debugf, for debugf.Matthieu Boutier2012-03-251-2/+2
|