Commit Graph

192 Commits

Author SHA1 Message Date
David Lamparter
ee1ac2d52a build: fix isisd topology out of tree build
isisd got the include directory wrong on building with a separate build
directory.

  * configure.ac: adjust ISIS_TOPOLOGY_INCLUDES

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2012-07-19 13:00:29 +02:00
Joachim Nilsson
1080c13f5d configure: Add --with-pkg-extra-version=VER for packagers/distributions.
This change adds a --with-pkg-extra-version option to ./configure to allow
packagers and distributions to fine tune the version displayed to the end
user to assist in support. It is also very useful when reporting bugs on
the official Quagga mailing lists.

There are two ways of utilsing this functionality:

      a) ./configure --with-pkg-extra-version=-wmo1
      b) EXTRAVERSION=-wmo1 ./configure

The latter is a common way for many distributions to add extra version
strings to signify their own patch level to a given package.

Also, minor whitespace fix in configure summary.

Signed-off-by: Joachim Nilsson <joachim.nilsson@westermo.se>
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2012-07-13 18:53:53 +02:00
Vincent Bernat
d6be5fb9bc agentx: add AgentX support to Quagga.
--enable-snmp will enable AgentX support in Quagga. SMUX is still here
and can be enabled with --enable-snmp=smux. AgentX support can be
enabled with "agentx" in configuration file. As for SMUX, this command
is not understood by vtysh. It can be disabled with "no agentx",
though there is no real use of this since this command cannot be used
with vtysh.

If "agentx" and "no agentx" command were added to vtysh, it would not
be possible to disable agentx support after enabling it because
NetSNMP does not expose the appropriate methods for this.

The internals of AgentX are hidden by NetSNMP. Therefore, we don't
have a file descriptor to add to the threading system. We do not have
the timers to set either. Therefore, the event loop is modified to
make use of snmp_select_info() from NetSNMP.

Traps are not supported yet.
2012-06-25 19:03:23 +02:00
Vincent Bernat
08d7f6533e build: use net-snmp-config to configure NetSNMP
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.
2012-06-25 19:03:23 +02:00
Vincent Bernat
6b1e37f853 build: only define HAVE_SNMP
NetSNMP is the only SNMP implementation for Quagga. We don't need two
different symbols.
2012-06-25 19:03:23 +02:00
David Lamparter
828f235df4 release: 0.99.21 2012-05-01 21:43:53 +02:00
David Ward
f027d331fc doc: only package man pages for daemons that are built
Signed-off-by: David Ward <david.ward@ll.mit.edu>
Signed-off-by: David Lamparter <equinox@diac24.net>
2012-05-01 17:51:26 +02:00
Paul Jakma
5734509c05 babeld: Initial import, for Babel routing protocol.
* Initial import of the Babel routing protocol, ported to Quagga.
* LICENCE: Update the original LICENCE file to include all known potentially
  applicable copyright claims.  Ask that any future contributors to babeld/
  grant MIT/X11 licence to their work.
* *.{c,h}: Add GPL headers, in according with the SFLC guidance on
  dealing with potentially mixed GPL/other licensed work, at:

  https://www.softwarefreedom.org/resources/2007/gpl-non-gpl-collaboration.html
2012-03-25 17:06:51 +01:00
Paul Jakma
fa482834ea HACKING.tex: Change to a LaTeX version of HACKING
* configure.ac: Check for latexmk and pdflatex
* Makefile.am: Add a conditional target to build HACKING.pdf, as a convenience
* HACKING.tex: A slightly more structured HACKING, is readable on its own.
* HACKING: removed
2012-03-08 16:14:13 +00:00
David Lamparter
ca9f342c2c build: fixup autoconf for cross-compiling (to OpenWRT)
MALLOC/REALLOC aren't used properly (no rpl_malloc), remove them

while at it, infer some sane ipforwarding method from the OS value.
(v2 on that, "==" is not a proper operator for standard "test")
2011-12-13 19:12:42 +04:00
Denis Ovsienko
48f99b0c2b release: 0.99.20 2011-09-29 16:55:23 +04:00
Dmitrij Tejblum
eda3529e9c configure: test for glibc backtrace even without glibc.
Other platform may have compatible facilities.
2011-09-27 21:45:37 +04:00
Dmitrij Tejblum
10d04cdb41 lib: use "protocol-independed API" from RFC3678, if that is available
(This commit is based on the patch from BZ#420, and should fix that bug.)

* configure.ac: detect availability of that API
* sockopt.c (setsockopt_ipv4_multicast): use it for join/leave IPv4
  multicast groups
2011-09-27 21:39:12 +04:00
Denis Ovsienko
b82cdeb18f delete CVS keywords 2011-09-27 21:34:26 +04:00
Denis Ovsienko
6159928d28 configure: fix OpenPAM detection 2011-09-27 21:33:16 +04:00
Denis Ovsienko
2b43bf231c configure: fix FreeBSD header detection (BZ#408)
This change is based on Xavier Beaudouin's patch (which fixes detection
of 3 config.h macros on FreeBSD without any impact to Linux build of
Quagga) and FreeBSD port patch (which fixes 5 config.h macros, but
breaks the Linux build), it fixes 5 macros and works for both FreeBSD 8
and Linux.
2011-09-27 20:59:46 +04:00
Stephen Hemminger
b69442d456 configure: dismiss libutil.h
Recent versions of libc on Linux (Debian Testing) create lots of
compile warnings about direct usage of libutil.h
2011-09-27 20:47:18 +04:00
Denis Ovsienko
0998342b5f release: 0.99.19 2011-09-26 18:50:06 +04:00
Greg Troxel
0d51c7ef83 build: treat opaque-lsa default correctly for ospfapi
In deciding whether to default ospfapi to on or off, use the same rule
for opaque-lsa as earlier: != no rather than = yes, so that not having
set it implies yes.
2011-03-24 10:19:43 -04:00
Paul Jakma
36de261b57 build: change sense of opaque-{lsa,te} enable args to enable by default
* configure.ac: (AC_ARG_ENABLE({ospf-te,opaque-lsa})) reverse the sense to
  --disable
  (enable_{opaque_lsa,ospf_te}) treat as enabled unless explicitly disabled.
2011-03-22 12:09:11 +00:00
Paul Jakma
d8509631b4 release: 0.99.18
* configure.ac: Bump to 0.99.18
2011-03-21 14:56:00 +00:00
Denis Ovsienko
a6be12128c release: 0.99.17
* configure.ac: bump up version number
2010-08-19 13:36:43 +04:00
David Lamparter
745bf05f58 isisd: change ISIS_METHOD to use C preprocessor
this fixes warnings from vtysh extract.pl by making sure the isis method
files always 'work'. (previously, extract.pl would grab unselected isis
method sources and then complain about missing headers)
2010-04-28 20:15:44 -04:00
Denis Ovsienko
438589e31f release: 0.99.16
* configure.ac: bump up version number
2010-03-09 13:53:20 +03:00
David Ward
cdb9950482 configure: fix spelling 2009-12-03 20:22:47 +03:00
Dmitry Tejblum
9964fcfc22 configure: fix HAVE_CLOCK_MONOTONIC spelling 2009-11-05 16:50:36 +03:00
Paul Jakma
3849ce4e25 release: 0.99.15
* configure.ac: Bump to 0.99.15
2009-08-28 19:16:31 +01:00
Paul Jakma
998274cd7c [build] Bump release to 0.99.14 2009-07-21 15:21:20 +01:00
Paul Jakma
62c9f504bd [build] fix default CFLAGS and squish warning
* configure.ac: Move down the AC_SYS_LARGEFILE test - it was setting CFLAGS
  and so disabling the default CFLAGS setting section.
  Squish warning by adding AC_CONFIG_MACRO_DIR on the reccommendation of
  autoreconf.
2009-07-19 17:33:21 +01:00
Joakim Tjernlund
cbcd9bfc50 [doc] Add "--disable-doc" to configure
Configure option "--disable-doc" will prevent building
the documents under doc. Saves build time and the need to
have document building tools installed. Useful when your build
machine is different from your development machine.
2009-06-25 14:01:19 +01:00
Tomasz Pala
80abd9fe37 [configure] Allow for large-file support, e.g. for log files >2GB 2009-06-24 22:11:34 +01:00
Paul Jakma
5bc52c76c2 [doc] remove -dither arg to imagemagick, in building PDFs
* doc/Makefile.am: arguments for the 'convert' programme seem to have
  changed incompatibly at some stage - just remove the problematic -dither.
2009-06-22 16:11:06 +01:00
Jeremy Jackson
7ec573661f [configure] fix check for GNU awk/gawk to abort ./configure if missing
It also prints what were comments explaining why gawk is necessary, and
not-in-PATH to help user figure out why it's not found.

Build was mysteriously failing with the old version of this check when gawk
wasn't installed.
2009-06-19 15:03:31 +01:00
Jeremy Jackson
e84999d93a [configure] remove unused/broken autoconf cache variable ac_statedir
It wasn't used, and the code wasn't printing progress or the result in some
cases.  the test uses minimal resources, so it's probably better to not
cache so as to avoid inconsistencies if --with-prefix or directory variables
are changed between ./configure runs.
2009-06-19 15:03:31 +01:00
Jeremy Jackson
5589ffa7dd [configure/cleanup] fix broken autoconf cache variables
Fix zebra_rtread and zebra_ipforward_path.

It looks like someone tried to make this cached, but it was being ignored at
least on autoconf 2.6.1.  2.6.2 now gives a warning about the situation,
hence this fix.

Although they are just warnings, it's dangerous to leave them as-is, because
someone not diligent in reading the autoconf manual might just stick _cv_ in
the name, with the effect that running a ./configure --config-cache would
fail horribly, since variables are being set inside the AC_CACHE_CHECK()
block that would not be seen when the variable's value was read from cache.

Also added m4 quotes [] to macro arguments as autoconf manual
suggests.
2009-06-19 15:03:31 +01:00
Jeremy Jackson
7f177ee8df [configure] remote support for AIX, it conflicts on newer autoconf
AC_AIX and AC_GNU_SOURCE conflict > autoconf 2.53 or so,
but the replacement AC_USE_SYSTEM_EXTENSIONS isn't available
until later versions.  So either we narrow the supported
autconf version range, or disable AIX (if it has any effect),
or determin that AC_AIX doesn't do anything useful anyhow.
2009-06-19 15:03:31 +01:00
Jeremy Jackson
25f45887ab [configure] add configure support for PCRE Posix library
Debian tried unsuccessfully to build with libpcreposix.  This adds proper
support to autoconf/configure.ac for it.

Based on the patch by C.J.  Adams-Collier in bug #483.

bgpd/bgp_{regex,routemap}.h: Pull in PCRE POSIX header if available.
2009-06-19 15:01:16 +01:00
Paul Jakma
6511cab267 [configure] Refine CLOCK_MONOTONIC test
* configure.ac: Check for the actual CLOCK_MONOTONIC symbol, as clock_gettime
  need not imply that clock type is supported
* lib/zebra.h: use the method given in autoconf docs for sys/time.h
  inclusion
2009-06-18 20:18:31 +01:00
Stephen Hemminger
c4376c9d28 [configure] Detect support for monotonic clock
Quagga has code to support monotonic clock to avoid issues where
time of day changes. The support was incomplete since it was not being
detected by autoconf.
2009-06-18 20:18:31 +01:00
Paul Jakma
3453a7122c [bgpd] Add support for the old Linux 2.4, TCP_MD5_AUTH RFC2385 patch
* configure.ac: Add a --enable-linux24-tcp-md5 argument, to compile in
  support for the old TCP-MD5 patch for Linux 2.4 systems.  This overrides
  auto-detection of TCP-MD5 supported by the target system.
* lib/sockopt.c: (sockopt_tcp_signature) add in a variant for the old
  Linux 2.4, TCP_MD5_AUTH variant of TCP-MD5 support, conditional
  on the previous configure arg.
2009-06-12 14:21:02 +01:00
Paul Jakma
5012bc3d21 [release] Bump version to 0.99.12 2009-05-08 23:20:19 +01:00
Denis Ovsienko
c540835eaf Dmitry Tejblum <tejblum@yandex-team.ru>
Don't enable HAVE_BSD_STRUCT_IP_MREQ_HACK for FreeBSD 7.0 and upper,
because OS behaviour has changed.
2009-04-13 20:11:44 +04:00
Paul Jakma
5635b778af [release] Bump version to 0.99.11 2008-10-02 09:34:34 +01:00
Paul P Komkoff Jr
0e9de56d5e [build] Fix --enable-pie so it can actually be disabled
Signed-off-by: Paul Jakma <paul@quagga.net>
2008-09-24 16:42:35 +01:00
Joakim Tjernlund
fb62a3cef5 Make --enable-snmp cross compile and make libcrypto optional with --without-crypto
Autoconfig work by me, the rest was done by
"Kirill K. Smirnov" <lich@math.spbu.ru>
2008-08-25 09:48:30 +02:00
Stephen Hemminger
cadfb2cd81 [build] Linux netlink doesn't need IF_PROC
2008-08-16 Stephen Hemminger <stephen.hemminger@vyatta.com>

	* configure.ac: If netlink is available, then that is how the
	initial routes and interfaces should be read, rather than through
	/proc, so don't set IF_PROC.

Signed-off-by: Paul Jakma <paul@quagga.net>
2008-08-22 19:56:25 +01:00
Paul P Komkoff Jr
fe86b484e2 [build] --enable...user/group didn't match help text
2008-08-13 Paul P Komkoff Jr <i@stingr.net>

	* configure.ac: fix AC_ARG_ENABLE argument to match help string,

Signed-off-by: Paul Jakma <paul@quagga.net>
2008-08-22 19:52:54 +01:00
Paul P Komkoff Jr
46bc0e432e [build] Test for GNU-style PIE support in toolchain and enable
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>
2008-08-22 19:52:12 +01:00
Paul Jakma
750e814693 [bgpd] Fix triggerable crash when compiled with --disable-bgp-announce
2008-07-22 Paul Jakma <paul.jakma@sun.com>

	* HACKING: Document preference for compiler conditional code, over
	  cpp conditional.
	* configure.ac: DISABLE_BGP_ANNOUNCE always should be defined.
	* bgp_{packet,route,advertise}.c: change to compiler testing of
	  DISABLE_BGP_ANNOUNCE, rather than cpp.

2008-07-22 MIYAJIMA Mitsuharu <miyajima.mitsuharu@anchor.jp>

	* bgp_packet.c: (bgp_update_packet_eor) Fix crash triggerable
	  if a bgpd was compiled with --disable-bgp-announce and if GR is
	  advertised by peer.
2008-07-22 21:11:48 +00:00
Paul Jakma
0df7c91f04 [bgpd] TCP-MD5: password vty configuration and initial Linux support
2008-07-21 Paul Jakma <paul.jakma@sun.com>

	* bgp_packet.c: (bgp_open_receive) fix warning in a zlog call
	* bgp_vty.c: (bgp_vty_return) add return code
	* bgpd.c: (bgp_master_init) setup the socket list.
	* bgp_network.c: Remove the dual IPv4/6 socket thing for now, which
	  was implemented by Michael, until such time as its clear its
	  required for Linux (see sockopt comments). IPv6 support, including
	  IPv4 sessions on AF_INET6 sockets, therefore is broken, and the
	  '-l 0.0.0.0' arguments would need to be given to bgpd to make
	  things work here.

2008-07-21 Michael H. Warfield <mhw@wittsend.com>
           YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
	   Tomohiko Kusuda <kusuda@inetcore.com>
           Leigh Brown <leigh@solinno.co.uk>

	* bgp_network.c: (bgp_md5_set_one) shim between libzebra tcp-md5
	  sockopt and bgpd.
	  (bgp_md5_set_socket) Helper for bgp_connect
	  (bgp_md5_set) setup TCP-MD5SIG for the given peer.
	  (bgp_connect) call out to bgp_md5_set_socket for the outgoing
	  connect socket.
	  (bgp_socket) save references to the listen sockets, needed if
	  TCP-MD5SIG is applied later or changed.
	* bgp_vty.c: (*neighbor_password_cmd) New 'neighbor ... password'
	  commands.
	* bgpd.c: (peer_{new,delete) manage TCP-MD5 password
	  (peer_group2peer_config_copy) inherit TCP-MD5 password
	  (peer_password_{un,}set) orchestrate the whole add/remove of TCP-MD5
	  passwords: applying checks, stopping peers, and trying to return
	  errors to UI, etc.
	  (bgp_config_write_peer) save password.
	  Fix missing newline in writeout of neighbor ... port.

2008-07-21 Paul Jakma <paul.jakma@sun.com>

	* sockunion.c: ifdef out various places that converted
	  v4mapped sockets to pure v4. Doesn't seem necessary at all,
	  presumably a workaround for now historical inet_ntop bugs (?)

2008-07-21 Michael H. Warfield <mhw@wittsend.com>
           YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>

	* sockopt.{c,h}: (sockopt_tcp_signature) Add TCP-MD5SIG support.
2008-07-21 21:02:49 +00:00