| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
this is nhrp changes from commit c321432aef01e13116980983f0a50ba486505804
rebased on quagga master and updated for vrf changes
|
|
|
|
|
|
|
| |
* Remove the old change from '08 to add in PIE arguments at automake level.
Versions of libtool since then know how to deal with -fpie and do the right
thing according to whether its building shared or executable objects.
So just pass '-fpie' as CFLAG and let libtool do its thing.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We realize VRFs with linux netns by default. The main job is
to associate a VRF with a netns. Currently this is done by
the configuration:
[no] vrf N netns <netns-name>
This command is also available in vtysh and goes to only
zebra, because presently only zebra supports multiple VRF.
A file descriptor is added to "struct vrf". This is for the
associated netns file. Once the command "vrf N netns NAME"
is executed, the specified file is opened and the file
descriptor is stored in the VRF N. In this way the
association is formed.
In vrf_socket(), we first switch to the specified VRF by
using the stored file descriptor, and then can allocate
a socket which is working in the associated netns.
Signed-off-by: Feng Lu <lu.feng@6wind.com>
Reviewed-by: Alain Ritoux <alain.ritoux@6wind.com>
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes some more bits of babeld, particularly from:
- buildtest.sh
- redhat/ build files
- vtysh integration (which actively broke the build)
The memtype and zclient/route type are kept in place since these don't
break anything and -theoretically- make it possible to build babeld
with some Quagga integration externally.
(Keeping vtysh integration is unfortunately not as easy.)
Reported-by: Donald Sharp <sharpd@cumulusnetworks.com>
Fixes: 336724d ("babeld: Remove babeld from Quagga")
Acked-by: Donald Sharp <sharpd@cumulusnetworks.com>
Acked-by: Paul Jakma <paul@quagga.net>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enhance zebra to send routes to the (optional) Forwarding Path Manager
component using the interface defined by fpm/fpm.h.
* configure.ac
- Add --enable-fpm flag.
The FPM-related code in zebra is activated only if the build is
configured with '--enable-fpm'.
- Add HAVE_NETLINK automake conditional.
This allows us to conditionally build netlink-dependent C code.
* zebra/{rib.h,zebra_rib.c}
- Add the 'fpm_q_entries' field to the rib_dest_t structure. This
allows dests to be placed on the fpm queue.
- Define a couple new rib_dest_t flags that hold FPM-related
state.
- Invoke the zfpm_trigger_update() function for a route_node
whenever the information to be sent to the FPM changes.
- rib_can_delete_dest(): Return FALSE if we have to update the FPM
about the given dest. This ensures that the dest is not deleted
even if there are no ribs hanging off of it.
* zebra/zebra_fpm.c
This file holds most of the code for interacting with the FPM.
- If quagga was configured with '--enable-fpm', periodically try
to connect to the FPM.
- When the connection comes up, enqueue all relevent dests to the
FPM queue.
- When the FPM socket is readable, dequeue the next rib_dest_t
from the FPM queue, encode it in to a message and send the
message to the FPM.
- When the connection to the FPM goes down, remove all dests from
the FPM queue, and then start trying to connect to the FPM
again.
- Expose the following new operational commands:
show zebra fpm stats
clear zebra fpm stats
* zebra/zebra_fpm_netlink.c
- zfpm_netlink_encode_route(): Function to encode information
about a rib_dest_t in netlink format.
* zebra/zebra_fpm_private.h
Private header file for the zebra FPM module.
* zebra/zebra_fpm.h
Header file exported by zebra FPM module to the rest of zebra.
* zebra/debug.c
Add the 'debug zebra fpm' command.
* zebra/main.c
Initialize the zebra-FPM code on startup.
* zebra/misc_null.c
Add stub for zfpm_trigger_update().
* zebra/Makefile.am
- Include new file zebra_fpm.c in build.
- Include zebra_fpm_netlink.c in build if HAVE_NETLINK is defined.
* vtysh/Makefile.am
Include zebra_fpm.c in list of files that define cli commands.
Signed-off-by: Avneesh Sachdev <avneesh@opensourcerouting.org>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
* Makefile.am: vtysh should also pull in commands from zebra_routemap.c
Signed-off-by: Paul Jakma <paul@quagga.net>
|
|
|
|
|
|
|
|
|
|
|
| |
2008-08-13 Paul P Komkoff Jr <i@stingr.net>
* configure.ac: add a configure flag and autoconf macro, which will
determine if your toolchain supports PIE.
* */Makefile.am: add corresponding CFLAGS and LDFLAGS into
appropriate places.
Signed-off-by: Paul Jakma <paul@quagga.net>
|
|
|
|
| |
against libreadline and friends.
|
|
|
|
| |
procedure. Define vtysh_cmd_FILES. Use EXTRA_DIST.
|
| |
|
|
|
|
|
|
| |
* Makefile.am: remove zebra/irdp.c from list - dead.
* extract.pl.in: Substitute in the autoconf srcdir/builddir paths
for includes to cpp.
|
|
|
|
|
|
|
| |
* Makefile.am: extract.pl isnt in srcdir, it's always in the
builddir.
* extract.pl.in: match on end of filenames, filename could contain
various preamble due to out of tree builds.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2004-07-23 Greg Troxel <gdt@poblano.ir.bbn.com>
* */Makefile.am: Use ../dir/libfoo.la, rather than "-L../dir
-lfoo", to avoid linking against installed libraries from a
previous version.
* {lib,ospfd,ospfclient}/Makefile.am: explicitly define the shared
library version number to be 0.0
* configure.ac: remove spurious , so extract.pl is chmod'd +x.
* HACKING: explain shared library versioning rules
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
libzebra and libospfapiclient are now built shared, and linked shared
with the daemons. This reduces the memory needed when running
multiple daemons; each daemon is at least 150k smaller. Static
libraries are still built, and libtool should use them on platforms
which don't have shared libaries. As with autoconf, the user of a
distribution does not need libtool; one just needs that to build from
CVS.
libospf.a is still a non-shared library, and still installed, not
because that makese sense, but because I don't understand why it is
the way it is now.
Note that the tree was tagged 'libtool-before' just before this commit.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
if --enable-vtysh, look for perl, and substitute into vtysh/extract.pl,
rather than assuming perl is in /usr/bin
Look for tputs in libtermcap and libcurses, in addition to
previously-searched locations. Follow GNU readlines search order.
Clean up --enable-vtysh definition in configure.ac.
Add vtysh/vtysh_cmds.c to CLEANFILES. This is important if
extract.pl fails, so that 'make clean && make' will regenerate
vtysh_cmds.c rhather than using the old zero-length file.
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
* vtysh/Makefile.am: vtysh_cmd.c rebuild was broken because it
depended against source files without specification, i.e. it
used ../zebra instead of $(top_srcdir)/zebra.
|
|
|
|
|
|
| |
* vtysh/Makefile.am: do not include vtysh_cmd.c in dists, its
configure dependent. (still need to find a way to make building of
it dependent on configure options or include all commands.)
|
|
|
|
|
| |
* vtysh/Makefile.am: explicitely list the files required for
vtysh_cmd.c to be generated, to minimise spurious rebuilds.
|
|
|
|
| |
* Merge of zebra privileges
|
|
|
|
|
| |
same idea as in lib/distribute.c to allow extract.pl to pick up commands
for vtysh.
|
|
|
|
|
|
| |
http://hasso.linux.ee/zebra/ht-distribute-18042003.patch
Allows to extract.pl to pickup "distribute-list ..." commands for vtysh
(ripngd and ripd).
|
|
|
|
| |
Add dependency on rebuild target for vtysh_cmd.c to Makefile.am
|
|
|