Commit Graph

153 Commits

Author SHA1 Message Date
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
Paul Jakma
e1f3d39898 [release] Bump version to 0.99.10
2008-06-10 Paul Jakma <paul@jakma.org>

	* configure.ac: Bump version to 0.99.10
2008-06-10 21:25:38 +00:00
Andrew J. Schorr
6418bedf29 [link-detect] Improve BSD support.
2008-01-11 Ingo Flaschberger <if@xip.at>

	* configure.ac: Improve HAVE_BSD_LINK_DETECT test.
2008-01-11 16:33:59 +00:00
Andrew J. Schorr
c543a17371 [link-detect] Try to get BSD link-detect to work properly.
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-10 15:24:32 +00:00
Paul Jakma
af400e26ae [release] bump to 0.99.9
2007-09-07 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Bump version to 0.99.9
2007-09-07 16:54:01 +00:00
Paul Jakma
238497fc85 [isisd] Add support for Solaris DLPI
2007-08-07 James Carlson <james.d.carlson@sun.com>

	* configure.ac: Added support for separate link-layer access
	  mechanisms in isisd.
	* isis_network.c: split up into isis_bpf.c, isis_dlpi.c, and
	  isis_pfpacket.c, selected by autoconf, and added DLPI support.
	* (general) Fixed to allow compilation and use on Solaris.
2007-08-07 18:49:18 +00:00
Greg Troxel
97cee877c2 Add --enable-solaris to descend into solaris-specific build directory.
While it doesn't take a long time to build, this is currently the only
thing in the tree that doesn't work with BSD make, and there's no
reason to build solaris package control files on other systems.
2007-08-02 13:36:56 +00:00
Paul Jakma
e6a01955a7 2007-07-27 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Bump version to 0.99.8
2007-07-27 16:48:55 +00:00
Hasso Tepper
fbf24544a2 2007-06-25 Hasso Tepper <hasso@quagga.net>
* configure.ac: Fix typo so it compiles again on BSD systems.
2007-06-25 19:30:59 +00:00
Paul Jakma
11770e1086 [build] configure needs to check for struct icmphdr for IRDP
2007-06-22 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: IRDP also depends on struct icmphdr, enabling
	  only on in_pktinfo breaks when an OS acquires pktinfo, as
	  Solaris NV has. Reported by Jim Carlson.
2007-06-22 16:14:42 +00:00
Paul Jakma
2b5cb411ce [autoconf] Fix missing space character in previous commit 2007-05-10 17:05:16 +00:00
Paul Jakma
d46d2a24e9 [autoconf] GNU_SOURCE can be defined twice, through AC_FUNC_STRNLEN
2007-05-10 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Use AC_GNU_SOURCE to define _GNU_SOURCE, rather
	  than having lib/zebra.h do it.
	  AC_FUNC_STRNLEN has side-effects with latest autoconf, use
	  AC_CHECK_FUNC on strnlen instead.
	* lib/zebra.h: Don't try define _GNU_SOURCE, autoconf should do it.
2007-05-10 16:53:04 +00:00
Paul Jakma
6bd1a7bab3 [autoconf] add back check for inet_aton
2007-05-10 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Add back check for inet_aton, which got dropped
	  somehow in previous jumbo patch.
2007-05-10 16:52:26 +00:00
Paul Jakma
6f0e3f6e17 [autoconf] bugs 162,303,178: Fix 'present but can not be compiled' warnings
2007-05-09 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: sys/conf.h depends on sys/param.h, at least on
	  FBSD 6.2.
	  (bug #363) Should check for in_pktinfo for IRDP

2006-05-27 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: General cleanup of header and type checks, introducing
	  an internal define, QUAGGA_INCLUDES, to build up a list of
	  stuff to include so as to avoid 'present but cant be compiled'
	  warnings.
	  Misc additional checks of things missing according to autoscan.
	  Add LIBM, for bgpd's use of libm, so as to avoid burdening
	  LIBS, and all the binaries, with libm linkage.
	  Remove the bad practice of using m4 changequote(), just
	  quote the []'s in the case statements properly.
	  This should fix bugs 162, 303 and 178.
	* */*.{c,h}: Update all HAVE_* to the standard autoconf namespaced
	  HAVE_* defines. I.e. HAVE_SA_LEN -> HAVE_STRUCT_SOCKADDR_SA_LEN,
	* bgpd/Makefile.am: Add LIBM to bgpd's LDADD, for pow().
2007-05-10 02:38:51 +00:00
Andrew J. Schorr
5fa0509956 [build] Improve portability by invoking gcc with -std=gnu99 instead of -std=c99
2007-04-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

	* configure.ac: Change gcc CFLAGS from '-std=c99' to '-std=gnu99'
	  to improve portability.
2007-04-30 19:14:08 +00:00
Paul Jakma
a857eb6be5 [0.99] Version bump to 0.99.7
2007-04-29 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Bump to 0.99.7
2007-04-29 20:13:35 +00:00
Greg Troxel
553bdfe376 use generic sed test so this works on autoconf 2.59 2007-02-06 20:10:35 +00:00
Greg Troxel
1bbaa8cfbd Better comment explaining that GNU awk is really required. 2007-02-06 19:36:47 +00:00
Greg Troxel
0750e81016 add AC_PROC_SED 2007-02-03 22:30:02 +00:00
Paul Jakma
43cd33a44e [0.99] Bump version to 0.99.6
2006-12-08 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Bump to 0.99.6
2006-12-08 21:27:08 +00:00
Paul Jakma
c15deb1b74 [0.99] version bump to 0.99.5
2006-08-27 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Bump to 0.99.5
2006-08-27 22:06:12 +00:00
Paul Jakma
fb66b29c67 [lib] Add support for Sun libc printstack to zlog_backtrace_sigsafe
2006-05-28 Paul Jakma <paul.jakma@sun.com>

	* configure.ac:
	  Check for Sun libc printstack(), add a general HAVE_STACK_TRACE
	  define for lib/log.c, if any supported stack symbol dumping
	  function is found (glibc backtrace/sun libc printstack).
	* log.c: (general) Add support for Sun libc printstack().
	  (hex_append) make the cpp conditional on general HAVE_STACK_TRACE
	  define.
	  (zlog_backtrace_sigsafe) Ditto. Add printstack() version of the
	  the DUMP macro in this function.
2006-05-28 08:26:15 +00:00
Paul Jakma
105b8239f1 [build] Update SOS CFLAGS and add check for GNU Make in configure.ac
2006-05-28 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Update SOS CFLAGS, Xt shouldn't be used and
	  enable debug options.
	  Add a check for GNU Make and warn the user if it does not appear
	  to be the make used.
2006-05-28 08:02:41 +00:00
Paul Jakma
08f9fb1c45 [0.99] Version bump to 0.99.4
2006-05-10 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Bump to 0.99.4
2006-05-10 19:52:36 +00:00
Paul Jakma
41be32bfe6 [lib/memory] Add mallinfo support
2006-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.
	  (show_memory_mallinfo) New function, show mallinfo statistics
	  if available.
	  (show_memory_all_cmd) Call show_memory_mallinfo, if mallinfo
	  is available.
	* lib/memory.h: Export mtype_memstr and mtype_stats_alloc.
	  Provide a define for a reasonable buffer size for
	  mtype_memstr.
2006-03-30 13:53:59 +00:00
paul
b1fc9acbbe [build system] cleanup --enable-snmp by removing ucd-snmp cruft
2006-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).
2006-01-31 10:09:27 +00:00
paul
53f953a500 [version] bump configure.ac version number to 0.99.3
2006-01-19 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Bump to 0.99.3
	* doc/quagga.info: update auto-built file.
2006-01-19 20:26:17 +00:00
paul
6a4b883229 [build] Set default CFLAGS for SunPro, rationalise CFLAGS defaults.
2005-11-26 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Collect together CFLAGS based on compiler
	  detected a bit. Recognise and set default CFLAGS for SunPro /
	  SOS10.
2005-11-26 08:28:00 +00:00
paul
76367ea975 [bug #231] check and include stdint.h, also add std=c99 to gcc CFLAGS
2005-11-14 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Tell gcc we like C99.
	  [bug #231] Check and test for stdint.h.
	* lib/zebra.h: [bug #231] include stdint, if its there.
2005-11-14 14:05:35 +00:00
paul
cf220d1f73 2005-11-11 Paul Jakma <paul.jakma@sun.com>
* NEWS: Update.
	* configure.ac: Bump to 0.99.2
2005-11-11 10:28:59 +00:00
paul
ceacedba22 2005-09-29 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Add the test for Solaris least-privileges. Set
	  defines for whether capabilities are supported and whether of
	  the linux or solaris variety.
	  Add missing-prototypes, missing-declarations, char-subscripts
	  and cast-qual warnings to default cflags, cause Hasso enjoys warnings,
	  and we really should clean the remaining ones up. (ie isisd..).
	* (*/*main.c) Update the zebra_capabilities_t arrays in the various
	  daemons to match the changes made in lib/privs.h.
	* zebra.h: Solaris capabilities requires priv.h to be included.
	* privs.{c,h}: Add support for Solaris Least-Privileges.
	  privs.h: Reduce some of the abstract capabilities, which do
	  not have rough equivalents on both systems. Rename the net
	  related caps to _NET, as they should have been in first
	  place.
	  (zprivs_terminate) should take the zebra_privs_t as argument so
	  that it can update change pointer.
	  Add an additional privilege state, ZPRIVS_UNKNOWN.
	* privs.c: (various capability functions) Add
	  Solaris privileges variants.
	  (zprivs_state) Use privs.c specific generic types to
          represent various capability/privilege related types, so that
          each can be typedef'd as appropriate on each platform.
	  (zprivs_null_state) static added, to hold the state the null
	  method should report (should be raised by default, and
          LOWERED if zprivs_terminate has been called)
          (zprivs_state_null) Report back the zprivs_null_state.
          (cap_map) Make it able to map abstract capability to multiple
          system capabilities.
          (zcaps2sys) Map to abstract capabilities to multiple system
          privileges/capabilities.
          (zprivs_init) move capability related init to seperate
	  function, zprivs_caps_init.
          (zprivs_terminate) ditto, moved to zprivs_caps_terminate.
          Set the change_state callback to the NULL state, so the
          user can continue to run and use the callbacks.
2005-09-29 14:39:32 +00:00
hasso
e6a4feb763 * configure.ac: Test existance of strndup.
* lib/str.[ch]: Add strndup() from glibc.
2005-09-19 09:53:21 +00:00
paul
a969459c92 2005-08-25 Paul Jakma <paul@jakma.org>
* configure.ac: Add -fno-omit-frame-pointer after -Os in default
	  cflags, just to be sure.
	  Fedora's readline library does not itself link to termcap, hence
	  we must pass the result of termcap tests in via OTHER-LIBRARIES
	  argument, otherwise the test of main in readline will fail due to
	  missing termcap systems. On systems like Debian, -ltermcap
	  is not needed for the readline test, because libreadline already
	  links to it.
2005-08-25 14:50:05 +00:00
hasso
c0689394ae * configure.ac, vtysh/Makefile.am: Only vtysh needs to be linked
against libreadline and friends.
2005-08-25 12:00:58 +00:00
hasso
850d39f340 * configure.ac: Actually test whether libc has IPv6 support.
[backport candidate]
2005-06-30 13:52:20 +00:00
paul
14c1f187ac - revert the commenting of touch doc/quagga.info, wont work because
defines.texi is autogenerated every configure time so it will always
  be newer than quagga.info, and hence require quagga.info to be built. drat.
2005-05-13 20:11:53 +00:00
paul
e3ca81413a 2005-05-13 Paul Jakma <paul.jakma@sun.com>
* configure.ac: Comment out the touch doc/quagga.info hack. I'm
	  hoping it's not needed anymore, cause it breaks out of tree builds
	  which i've become fond of.. Plus I think we sorted out most of
	  the original problems (updated texinfo.tex, moved the version
	  info to an autogenerated by automake version.texi). Dist users
	  most definitely wont be affected.
2005-05-13 07:09:50 +00:00
paul
42c981994a 2005-05-07 Yar Tikhiy <yar@comp.chem.msu.su>
* configure.ac: Check for OSes which support passing ifindex in
	  struct ip_mreq.
	* lib/sockopt.c: Add support for BSD style ifindex in ip_mreq.
	* ospfd/ospf_network.c: Log ifindex on multicast membership leave/join
	  events.
2005-05-07 02:22:51 +00:00
paul
0c2029e912 2005-04-29 Paul Jakma <paul.jakma@sun.com>
* NEWS: Added some more 0.99 news.
	* configure.ac: bump to 0.99.1 (0.99.0 was never released except
	  via CVS snapshots)
2005-04-29 03:20:54 +00:00
ajs
924b922971 2005-04-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* configure.ac: Added AC_ARG_ENABLE(time-check).  By default,
	  warning messages will now be printed for threads or commands that take
	  longer than 5 seconds, but this configure argument can be used
	  to disable the checks or change the threshold.
	* thread.h (thread_consumed_time): Declare new function to calculate
	  elapsed microseconds.
	* thread.c (thread_consumed_time): Must be global not static so we
	  can call it from lib/vty.c:vty_command.
	  (thread_should_yield): Surround with `#if 0' to make clear that this
	  function is not currently being used anywhere.
	  (thread_call): If CONSUMED_TIME_CHECK is defined, print a CPU HOG
	  warning message if the thread takes more than CONSUMED_TIME_CHECK
	  microseconds.
	* vty.c (vty_command): If CONSUMED_TIME_CHECK is defined, print a CPU
	  HOG warning message if the command takes more than CONSUMED_TIME_CHECK
	  microseconds.
2005-04-16 17:11:24 +00:00