Go to file
Denis Ovsienko d171bf58ef lib: optimize ip_masklen()
The new implementation makes use of a 64KB mapping table, which makes it
possible to compute masklen faster and with constant execution time. The
map also allows for additional version of the function, which can detect
errors in input argument.

The previous implementation had a variable cost of execution, which
depended on masklen in a non-linear manner, and at its worst (/31) was
4 times slower, than the new implementation. The only case of old
function just slightly outperforming the new one is /0, which is of
little practical interest.
2012-01-02 18:23:24 +04:00
bgpd fix set never used warnings 2011-12-18 20:21:21 +04:00
doc build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
guile build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
init build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
isisd build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
lib lib: optimize ip_masklen() 2012-01-02 18:23:24 +04:00
m4 build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
ospf6d ospf6d: always remove the result of a previous SPF calculation 2011-12-14 14:11:29 +04:00
ospfclient build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
ospfd ospfd: more info in LSA checksum warning (BZ#685) 2011-12-21 16:42:35 +04:00
pkgsrc build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
ports build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
redhat build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
ripd build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
ripngd build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
solaris build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
tests build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
tools build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
vtysh build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
watchquagga build: delete .cvsignore files 2011-12-13 14:27:01 +04:00
zebra fix set never used warnings 2011-12-18 20:21:21 +04:00
.gitignore build: ignore mkinstalldirs and texinfo.tex 2010-04-28 20:57:44 -04:00
AUTHORS Initial revision 2002-12-13 20:15:29 +00:00
bootstrap.sh autoreconf -i 2007-02-06 19:28:28 +00:00
ChangeLog [trivia] Make 'make dist' happy about ChangeLog expunge 2008-08-23 08:36:42 +01:00
configure.ac build: fixup autoconf for cross-compiling (to OpenWRT) 2011-12-13 19:12:42 +04:00
COPYING Initial revision 2002-12-13 20:15:29 +00:00
COPYING.LIB Initial revision 2002-12-13 20:15:29 +00:00
HACKING infrastructure: Express preference for published git repos 2010-11-03 07:37:23 -04:00
HACKING.pending fix typo 2011-06-28 15:05:35 -04:00
INSTALL.quagga.txt delete CVS keywords 2011-09-27 21:34:26 +04:00
Makefile.am [doc] Add "--disable-doc" to configure 2009-06-25 14:01:19 +01:00
NEWS + note the meta-queue in NEWS 2008-06-07 17:54:38 +00:00
README 2004-11-12 Paul Jakma <paul@dishone.st> 2004-11-12 10:30:21 +00:00
README.NetBSD Omit --opaque-lsa from build (now default). 2011-06-28 15:05:05 -04:00
REPORTING-BUGS Update for git and emphasize asking for good reports. 2010-05-05 07:51:26 -04:00
SERVICES 2607/tcp is already used by ospfapi. 2003-12-23 10:42:45 +00:00
stamp-h.in Initial revision 2002-12-13 20:15:29 +00:00
TODO [TODO] Note MED functionality we should implement 2006-03-30 14:36:23 +00:00
update-autotools * README.NetBSD: use update-autotools instead of autoreconf 2007-02-02 16:52:38 +00:00

Quagga is free software that manages various IPv4 and IPv6 routing
protocols.

Currently Quagga supports BGP4, BGP4+, OSPFv2, OSPFv3, RIPv1,
RIPv2, and RIPng as well as very early support for IS-IS.
  
See the file INSTALL.quagga.txt for building and installation instructions.
  
See the file REPORTING-BUGS to report bugs.
  
Quagga is free software. See the file COPYING for copying conditions.