aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2015-07-03 10:43:02 -0400
committerJack Lloyd <[email protected]>2015-07-03 10:43:02 -0400
commitae94396329f583d0999d4086936811f68bddd59b (patch)
tree3aaaa95dc4bea25564e9c11b7a70a1ebb2f4e7b2 /doc
parent56d07f092b170bfdf4972414b0739664c8d6294a (diff)
Simplify the website and documentation layout.
Merge the website index, download page, algo page into the readme file so all the important information is in one place. The readme.rst is now also used as the website landing page. Remove the website target on the makefile, replaced by website.sh, since I'm the only one who ever needs to run this. Fix various ReST formatting bugs in news.rst and the manual Remove the old build_log which hasn't been touched in years and refers entirely to compilers which we don't support anymore.
Diffstat (limited to 'doc')
-rw-r--r--doc/dev/build_log.rst252
-rw-r--r--doc/manual/ffi.rst23
-rw-r--r--doc/manual/index.rst30
-rw-r--r--doc/manual/python.rst2
-rw-r--r--doc/news.rst184
-rw-r--r--doc/pgpkey.txt37
-rw-r--r--doc/release_process.rst (renamed from doc/dev/release_process.rst)32
-rw-r--r--doc/roadmap.rst (renamed from doc/dev/roadmap.rst)19
-rw-r--r--doc/todo.rst (renamed from doc/dev/todo.rst)6
-rw-r--r--doc/website/algos.rst104
-rw-r--r--doc/website/contents.rst15
-rw-r--r--doc/website/download.rst51
-rw-r--r--doc/website/index.rst23
-rw-r--r--doc/website/license.rst8
-rw-r--r--doc/website/manual.rst11
-rw-r--r--doc/website/pgpkey.rst43
16 files changed, 144 insertions, 696 deletions
diff --git a/doc/dev/build_log.rst b/doc/dev/build_log.rst
deleted file mode 100644
index dd2fd7180..000000000
--- a/doc/dev/build_log.rst
+++ /dev/null
@@ -1,252 +0,0 @@
-
-Build Log
-========================================
-
-To report build results (successful or not), email the `development
-list <http://lists.randombit.net/mailman/listinfo/botan-devel/>`_ your
-results and relevant system information (OS versions, compiler name
-and version, CPU architecture and other hardware information,
-configuration settings).
-
-Debian reports the build results on a number of platforms for both
-`1.8 <https://buildd.debian.org/status/logs.php?pkg=botan1.8>`_ and
-`1.10 <https://buildd.debian.org/status/logs.php?pkg=botan1.10>`_.
-
-=========== ======= =================== ======================== ============================ ========
-Date Version OS CPU Compiler Results
-=========== ======= =================== ======================== ============================ ========
-2012-07-09 1.11.0 Gentoo Intel Core i7-860 GCC 4.7.0 OK
-2012-07-09 1.11.0 Gentoo Intel Core i7-860 Clang 3.1 OK
-
-2012-09-17 1.10.3 Gentoo Intel Core i7-860 Intel C++ 11.1 OK
-
-2011-07-24 1.10.3 Ubuntu 9.04 ARM926EJ-S GCC 4.3.3 OK
-
-2011-07-13 1.10.3 QNX 6.4.1 x86 GCC 4.3.3 OK
-2012-07-11 1.10.3 Windows 7 x64 x86 Visual C++ 16.00.30319.01 OK
-2012-07-11 1.10.3 Windows 7 x64 x86-64 Visual C++ 16.00.30319.01 OK
-
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 GCC 4.7.0 OK
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 GCC 4.6.3 OK
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 GCC 4.5.3 OK
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 GCC 4.4.7 OK
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 GCC 4.3.6 OK
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 GCC 4.1.2 OK
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 GCC 3.4.6 OK
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 Clang 3.1 OK
-2012-07-09 1.10.2 Gentoo Intel Core i7-860 Intel C++ 12.1 OK
-
-2011-05-09 1.9.17 Gentoo 10.0 PowerPC G5 GCC 4.4.5 OK
-2011-05-02 1.9.17 FreeBSD 8.2 x86-64 GCC 4.2.1 OK
-2011-04-25 1.9.16 Gentoo 10.0 Intel Core i7-860 Clang 2.9 Miscompiles SSE2 IDEA
-2011-04-23 1.9.16 Gentoo 10.0 Intel Core i7-860 Sun C++ 5.10 OK
-2011-04-22 1.9.16 Gentoo 10.0 Intel Core i7-860 Intel C++ 11.1 OK
-2011-04-15 1.9.16 Haiku R1-alpha2 x86 GCC 4.3.3 OK
-2011-04-15 1.9.16 Haiku R1-alpha2 x86 GCC 2.95.3 Can't compile
-2011-04-15 1.9.16 Windows 7 x86-64 Visual C++ 16.00.30319.01 OK
-2011-04-15 1.9.16 QNX 6.4.1 i386 GCC 4.3.3 OK
-2011-03-29 1.9.15 Gentoo 10.0 Intel Core i5-520M GCC 4.5.2 OK
-2011-03-21 1.9.15 Ark Linux x86-64 GCC 4.6.0-pre OK
-2011-03-21 1.9.15 Ark Linux x86-32 GCC 4.6.0-pre OK
-2011-03-21 1.9.15 Ark Linux ARM GCC 4.6.0-pre OK
-2011-03-18 1.9.14 Debian 6.0 Intel Atom D510 GCC 4.4.5 OK
-2011-03-01 1.9.14 OpenBSD 4.6 UltraSPARC IIIi GCC 4.2.4 OK
-2011-03-01 1.9.14 OpenBSD 4.7 i386 GCC 4.2.4 OK
-2011-03-01 1.9.14 Debian 6.0 Intel Madison IA-64 GCC 4.4.5 OK
-2011-03-01 1.9.14 Ubuntu 9.10 ARM Cortex-A8 GCC 4.4.1 OK
-2011-03-01 1.9.14 Debian 5.0 PowerPC G5/970 GCC 4.3.2 OK
-2011-03-01 1.9.14 Windows 7 x64 Intel Core i5-520M Visual C++ 15.00.30729.01 OK (32/64)
-2011-03-01 1.9.14 Gentoo 10.0 Intel Core i7-860 Open64 4.2.1 OK
-2011-03-01 1.9.14 Gentoo 10.0 Intel Core i7-860 Sun C++ 5.10 OK
-2011-03-01 1.9.14 Gentoo 10.0 Intel Core i7-860 Intel C++ 11.1 OK
-2011-03-01 1.9.14 Gentoo 10.0 Intel Core i7-860 GCC 4.5.2 OK
-2011-02-14 1.9.13 NetBSD 5.1 Intel Xeon P4 GNU GCC 4.1.3 OK
-2011-01-14 1.9.12 FreeBSD 8.1 x86-64 Clang 2.9 OK
-2010-11-29 1.9.11 Windows 7 x64 Intel Core i5-520M Visual C++ 15.00.30729.01 OK (32/64)
-2010-11-29 1.9.11 Gentoo 10.0 Intel Core i7-860 GNU GCC 4.1.2, 4.4.5, 4.5.1 OK
-2010-11-29 1.9.11 Debian 5.0 PowerPC G5/970 GCC 4.3.2 OK
-2010-11-29 1.9.11 Gentoo 10.0 Intel Core i7-860 Intel C++ 11.1 OK
-2010-11-29 1.9.11 Gentoo 10.0 Intel Core i7-860 Clang 2.8 Miscompiles SSE2 IDEA
-2010-11-29 1.9.11 Debian 5.0 (32 bit) UltraSPARC T1 Niagra GCC 4.3.2 OK
-2010-09-07 1.9.11 Gentoo 10.0 Intel Core i7-860 Sun C++ 5.10 OK
-2010-08-12 1.9.10 Debian 5.0 Xeon X5450 Harpertown GCC 4.3.2 OK
-2010-08-12 1.9.10 Ubuntu 9.04 Intel Atom N270 GCC 4.3.3 OK
-2010-08-12 1.9.10 Debian 5.0 Intel Prescott GCC 4.3.2 OK
-2010-08-08 1.9.10 Gentoo 10.0 Intel Core i7-860 GCC 3.4.6 OK
-2010-08-08 1.9.10 Gentoo 10.0 Intel Core i7-860 GCC 4.1.2 OK
-2010-08-08 1.9.10 Gentoo 10.0 Intel Core i7-860 GCC 4.3.5 OK
-2010-08-08 1.9.10 Gentoo 10.0 Intel Core i7-860 GCC 4.4.4 OK
-2010-08-08 1.9.10 Gentoo 10.0 Intel Core i7-860 GCC 4.5.1 OK
-2010-08-08 1.9.10 Gentoo 10.0 Intel Core i7-860 Clang SVN Miscompiles Turing
-2010-07-27 1.9.9 Debian 5.0 AMD Magny-Cours GCC 4.3.2, 4.5.0 OK
-2010-06-16 1.9.8 Gentoo 10.0 Intel Core2 Q6600 Intel C++ 11.1 OK
-2010-06-16 1.9.8 Debian 5.0 (32 bit) UltraSPARC T1 Niagra GCC 4.3.2 OK
-2010-06-16 1.9.8 Debian 5.0 Intel Madison IA-64 GCC 4.3.2 OK
-2010-06-16 1.9.8 Gentoo 10.0 IBM POWER5+ GCC 4.1.2, 4.2.4, 4.3.2 OK
-2010-06-16 1.9.8 OpenBSD 4.6 UltraSPARC IIIi GCC 3.3.5, 4.2.4 OK
-2010-06-16 1.9.8 FreeBSD 8.0 AMD Opteron 252 GCC 4.2.1 OK
-2010-06-16 1.9.8 gNewSense MIPS Loongson-2 (64) GCC 4.3.2 OK
-2010-06-16 1.9.8 Ubuntu 9.10 ARM Cortex-A8 GCC 4.4.1 OK
-2010-06-11 1.9.8 Gentoo 10.0 Intel Core2 Q6600 GCC 3.4.6, 4.1.2 OK
-2010-06-11 1.9.8 Windows 7 x64 Intel Core i5-520M Visual C++ 15.00.30729.01 OK (32 and 64 bit)
-2010-06-11 1.9.8 Gentoo 10.0 Intel Core i5-520M GCC 4.5.0 OK
-2010-06-01 1.9.8 OpenBSD 4.7 i386 GCC 3.3.5 OK
-2010-05-03 1.9.7 Windows 7 x64 Intel Core i5-520M Visual C++ 15.00.30729.01 OK
-2010-04-27 1.9.7 Gentoo 10.0 PPC 970FX (G5) GCC 4.3.4 OK
-2010-04-27 1.9.7 Gentoo 10.0 Intel Core2 Q6600 GCC 4.4.3, 4.5.0 OK
-2010-03-18 1.9.4 Gentoo 10.0 Intel Core2 Q6600 GCC 4.4.3 OK
-2010-03-18 1.9.4 Debian 5.0 UltraSPARC II (64) GCC 4.3.2 OK
-2010-03-18 1.9.4 Gentoo 10.0 PowerPC G5 GCC 4.3.4 OK
-2010-03-18 1.9.4 Gentoo 10.0 IBM POWER5+ GCC 4.3.2 OK
-2010-03-15 1.9.4 Windows XP x86 Visual C++ 15.00.30729.01 OK
-2010-03-10 1.9.4 FreeBSD 8.0 AMD Opteron 252 GCC 4.2.1 OK, but missing includes
-2009-12-29 1.9.4 Debian 4.0 PowerPC G4 7455 GCC 4.1.2 OK
-2009-12-23 1.9.4 Debian 5.0 Xeon X5450 Harpertown GCC 4.3.2 OK
-2009-11-13 1.9.3 Debian 5.0 UltraSPARC II GCC 4.3.2 OK
-2009-11-10 1.9.2 Debian 4.0 PowerPC G4 GCC 4.1.2 OK
-2009-11-03 1.9.2 Debian Linux 4.0 AMD Opteron 8354 GCC 4.4.1 OK
-2009-10-27 1.9.2 Debian Linux 5.0 Xeon X5450 Harpertown GCC 4.3.2 OK
-2009-10-23 1.9.1 Gentoo Linux Intel Core2 Q6600 GCC 4.4.1, Intel C++ 11.1 OK
-2009-10-23 1.9.1 Gentoo Linux AMD Opteron 2212 GCC 4.3.4 OK
-2009-09-24 1.9.0 Debian 4.0 AMD Opteron 8354 GCC 4.1.2, 4.4.1 OK
-2010-07-01 1.8.9 OpenSUSE 10.3 Intel Core2 GCC 4.2.1 OK
-2010-06-22 1.8.9 Slackware 13.1 Intel E5400 (64) GCC 4.4.4 OK
-2010-06-22 1.8.9 Slackware 13.1 Pentium-M (32) GCC 4.4.4 OK
-2010-06-16 1.8.9 Debian 5.0 (32 bit) UltraSPARC T1 Niagra GCC 4.3.2 (GCC TR1) Crashes in GF(p) tests
-2010-03-18 1.8.8 Debian 5.0 UltraSPARC II (64) GCC 4.3.2 OK
-2008-10-23 1.8.7 Gentoo 2008.0 PPC 970FX (G5) GCC 4.3.4 OK
-2009-10-07 1.8.7 Debian GNU/Hurd 0.3 i686 GCC 4.3.4 OK
-2009-09-08 1.8.7 Gentoo 2008.0 Intel Core2 Q6600 GCC 4.4.1 OK
-2009-09-04 1.8.6 Gentoo 2008.0 PPC 970FX (G5) GCC 4.3.4 OK
-2009-08-13 1.8.6 Gentoo 2008.0 Intel Core2 Q6600 GCC 4.3.3 OK
-2009-08-13 1.8.6 Windows XP x86 Visual C++ 15.00.30729.01 OK (no TR1)
-2009-08-03 1.8.5 openSuSE 10.3 x86 GCC 4.2.1 OK
-2009-08-03 1.8.5 Gentoo 2008.0 Intel Core2 Q6600 Open64 4.2.1 BAD: Miscompiles several ciphers
-2009-07-31 1.8.5 Solaris 11 x86 Sun C++ 5.9 OK, but minor build problems
-2009-07-30 1.8.5 Gentoo 2006.1 UltraSPARC IIe (32) GCC 3.4.6 OK (no TR1)
-2009-07-25 1.8.5 Debian 4.0 AMD Opteron 2212 GCC 4.1.2 OK
-2009-07-23 1.8.5 Gentoo 2008.0 Marvel Feroceon 88FR131 GCC 4.1.2 OK
-2009-07-23 1.8.5 Debian 5.0 Intel Xscale 80219 GCC 4.3.2 OK
-2009-07-23 1.8.5 Debian 5.0 UltraSPARC II (64) GCC 4.3.2 OK
-2009-07-23 1.8.5 Debian 5.0 UltraSPARC II (32) GCC 4.3.2 BAD: bus error in GF(p)
-2009-07-23 1.8.5 Debian 5.0 UltraSPARC II (32) GCC 4.1.3 BAD: miscompiles BigInt code
-2009-07-23 1.8.5 Debian 4.0 PowerPC G4 GCC 4.1.2 OK
-2009-07-23 1.8.5 Debian 4.0 PowerPC G5 GCC 4.1.2 OK
-2009-07-23 1.8.5 Debian 5.0 Intel Madison IA-64 GCC 4.1.3, 4.3.2 OK
-2009-07-23 1.8.5 Debian 5.0 HP-PA PA8600 GCC 4.3.2 OK
-2009-07-23 1.8.5 Mandriva 2008.1 MIPS Loongson-2 (32) GCC 4.2.3 OK
-2009-07-23 1.8.5 gNewSense MIPS Loongson-2 (64) GCC 4.3.2 OK
-2009-07-21 1.8.5 Windows XP x86 Visual C++ 15.00.30729.01 OK (no TR1)
-2009-07-21 1.8.5 Gentoo 2008.0 Intel Core2 Q6600 GCC 4.1.2, 4.3.3 OK
-2009-07-21 1.8.5 Gentoo 2008.0 Intel Core2 Q6600 Intel C++ 10.1 20080801 OK
-2009-07-21 1.8.5 Gentoo 2008.0 AMD Opteron 2212 GCC 4.3.3 OK
-2009-07-21 1.8.5 Ubuntu 8.04 Intel Xeon X5492 GCC 4.2.4 OK
-2009-07-21 1.8.5 MacOS X 10.5.6 Intel Core 2 Duo T5600 GCC 4.0.1 OK
-2009-07-21 1.8.5 Solaris 10 AMD Opteron GCC 3.4.3 OK (no TR1)
-2008-07-11 1.8.3 Fedora 11 Intel Pentium E5200 GCC 4.4.0 OK
-2008-07-10 1.8.3 Gentoo 2008.0 PPC 970FX (G5) GCC 4.3.1 OK
-2008-07-10 1.8.3 Gentoo 2008.0 IBM POWER5+ GCC 4.2.2 OK
-2009-07-10 1.8.3 Gentoo 2008.0 AMD Opteron 2212 GCC 4.3.3 OK
-2009-07-10 1.8.3 Ubuntu 8.04 Intel Xeon X5492 GCC 4.2.4 OK
-2009-07-10 1.8.3 MacOS X 10.5.6 Intel Core 2 Duo T5600 GCC 4.0.1 OK
-2009-07-10 1.8.3 Debian 5.0.1 Intel Core 2 Duo T5600 GCC 4.3.2 OK
-2009-07-10 1.8.3 Fedora 10 Intel Core 2 Duo T5600 GCC 4.3.2 OK
-2009-07-10 1.8.3 Solaris 10 AMD Opteron GCC 3.4.3 OK (no TR1)
-2009-07-09 1.8.3 Gentoo 2008.0 Intel Core2 Q6600 Intel C++ 10.1 20080801 OK
-2009-07-02 1.8.3 Gentoo 2008.0 Intel Core2 Q6600 GCC 4.3.3 OK
-2009-07-02 1.8.3 FreeBSD 7.0 x86-64 GCC 4.2.1 OK
-2009-07-02 1.8.3 Windows XP x86 Visual C++ 15.00.30729.01 OK (no TR1)
-2008-12-27 1.8.0 Ubuntu 8.04 Pentium 4-M GCC 4.2.3 OK
-2008-12-14 1.8.0 FreeBSD 7.0 x86-64 GCC 4.2.1 OK
-2008-12-10 1.8.0 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.1.2, 4.2.4, 4.3.2 OK
-2008-12-05 1.7.24 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.1.2, 4.2.4, 4.3.2 OK
-2008-12-04 1.7.24 Gentoo 2007.0 Intel Core2 Q6600 Intel 10.1-20080801 OK
-2008-12-03 1.7.24 Solaris 10 x86 GCC 3.4.3 OK (small patch needed, fixed in 1.8.0)
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.1.2 OK
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.2.4 OK
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.3.2 OK
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.4-20081017 OK
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 (32) GCC 4.1.2, 4.2.4 OK
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 (32) GCC 4.3.2 OK (with Boost 1.35 TR1)
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 (32) GCC 4.3.2 Crashes (with libstdc++ TR1)
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 9.1-20061101 OK
-2008-11-24 1.7.23 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 10.1-20080801 OK
-2008-11-24 1.7.23 Fedora 8 STI Cell PPU GCC 4.1.2 OK
-2008-11-24 1.7.23 Fedora 8 STI Cell PPU IBM XLC for Cell 0.9 45 minute link. Miscompiles DES
-2008-11-24 1.7.23 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2, 4.2.2, 4.3.1 OK
-2008-11-24 1.7.23 Gentoo 2007.0 AMD Opteron 2212 GCC 3.3.6, 4.1.2, 4.3.2 OK (no TR1 with 3.3.6)
-2008-11-24 1.7.23 Windows XP x86 Visual C++ 15.00.30729.01 OK (no TR1)
-2008-11-09 1.7.20 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2 OK
-2008-11-09 1.7.20 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.3.2 OK
-2008-11-09 1.7.20 Windows XP x86 Visual C++ 15.00.30729.01 OK
-2008-11-06 1.7.19 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2 OK
-2008-11-06 1.7.19 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.1.2, 4.3.1 OK
-2008-11-06 1.7.19 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 9.1-20061101 OK
-2008-11-06 1.7.19 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 10.1-20080801 OK
-2008-11-06 1.7.19 Windows XP x86 Visual C++ 15.00.30729.01 OK
-2008-11-03 1.7.19 FreeBSD 7.0 x86-64 GCC 4.2.1 OK
-2008-10-24 1.7.18 Gentoo 2007.0 IBM POWER5+ GCC 4.2.2, 4.3.1 OK
-2008-10-24 1.7.18 Fedora 8 STI Cell PPU GCC 4.1.2 OK
-2008-10-22 1.7.18 Windows XP Pentium 4-M GCC 3.4.5 (MinGW) OK
-2008-10-22 1.7.18 Windows XP Pentium 4-M Visual C++ 15.00.30729.01 OK
-2008-10-22 1.7.18 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2 OK
-2008-10-22 1.7.18 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.1.2, 4.2.4, 4.3.2 OK
-2008-10-22 1.7.18 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 9.1-20061101 OK
-2008-10-22 1.7.18 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 10.1-20080801 OK
-2008-10-07 1.7.15 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2 OK
-2008-10-07 1.7.15 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.3.1 OK
-2008-09-30 1.7.14 Gentoo 2007.0 PPC 970FX (G5) GCC 4.3.1 OK
-2008-09-30 1.7.14 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2 OK
-2008-09-30 1.7.14 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.3.1 OK
-2008-09-30 1.7.14 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 10.1.018 OK
-2008-09-30 1.7.14 Windows XP Pentium 4-M Visual C++ 15.00.30729.01 OK
-2008-09-30 1.7.14 Windows XP Pentium 4-M GCC 3.4.5 (MinGW) OK
-2008-09-18 1.7.12 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2, 4.2.2 OK
-2008-09-18 1.7.12 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.2.4, 4.3.1 OK
-2008-09-18 1.7.12 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 10.1.018 OK
-2008-09-18 1.7.12 Windows XP Pentium 4-M Visual C++ 15.00.30729.01 OK
-2008-09-18 1.7.12 Windows XP Pentium 4-M GCC 3.4.5 (MinGW) OK
-2008-09-16 1.7.12 Fedora 7 STI Cell PPU GCC 4.1.2 OK
-2008-09-16 1.7.11 MacOS X 10.4 (32) Intel Core2 GCC 4.0.1 OK
-2008-09-11 1.7.11 Gentoo 2007.0 Intel Core2 Q6600 GCC 4.3.1 OK
-2008-09-11 1.7.11 Windows XP Pentium 4-M Visual C++ 15.00.30729.01 OK
-2008-09-08 1.7.9 Gentoo 2007.0 Intel Core2 Q6600 Intel C++ 10.1.018 OK
-2008-08-28 1.7.9 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2 OK
-2008-08-28 1.7.9 Gentoo 2007.0 IBM POWER5+ GCC 4.2.2 OK
-2008-08-28 1.7.9 Gentoo 2007.0 IBM POWER5+ GCC 4.3.1 OK
-2008-08-28 1.7.9 Gentoo STI Cell PPU GCC 4.1.2 OK
-2008-08-27 1.7.9 Gentoo Intel Core2 Q6600 GCC 4.1.2 OK
-2008-08-27 1.7.9 Gentoo Intel Core2 Q6600 GCC 4.2.4 OK
-2008-08-27 1.7.9 Gentoo Intel Core2 Q6600 GCC 4.3.1 OK
-2008-08-27 1.7.9 Gentoo Intel Core2 Q6600 GCC 4.4-20080822 OK
-2008-08-27 1.7.9 Gentoo Intel Core2 Q6600 Intel C++ 9.1-20061101 OK
-2008-08-27 1.7.9 Gentoo Intel Core2 Q6600 Intel C++ 10.1-20080602 OK
-2008-08-27 1.7.9 Windows XP Pentium 4-M Visual C++ 2008 OK
-2008-08-27 1.7.9 Windows XP Pentium 4-M GCC 3.4.5 (MinGW) OK
-2008-08-18 1.7.8 Ubuntu 8.04 Pentium 4-M GCC 4.2.3 OK
-2008-08-18 1.7.8 Windows XP Pentium 4-M Visual C++ 2008 OK
-2008-08-18 1.7.8 Windows XP Pentium 4-M GCC 3.4.5 (MinGW) OK
-2008-07-18 1.7.8 Gentoo IBM POWER5+ GCC 4.1.2 OK
-2008-07-15 1.7.8 Gentoo Intel Core2 Q6600 GCC 4.3.1 OK
-2008-07-06 1.7.7 Gentoo Intel Core2 Q6600 PGI 7.2 Miscompiles TEA, Turing, BigInt
-2008-06-28 1.7.7 Gentoo Pentium 4-M GCC 4.1.2 OK
-2008-06-28 1.7.7 Gentoo Intel Core2 Q6600 GCC 4.1.2, 4.2.4, 4.3.1 OK
-2008-06-28 1.7.7 Gentoo Intel Core2 Q6600 Intel C++ 10.1 OK
-2008-06-28 1.7.7 Gentoo IBM POWER5+ GCC 4.1.2, 4.2.2 OK
-2008-06-25 1.7.6 Gentoo IBM POWER5+ GCC 4.1.2, 4.2.2 OK
-2008-06-09 1.7.6 Gentoo PPC 970FX (G5) GCC 4.1.2 OK
-2008-05-14 1.7.6 Gentoo Intel Core2 Q6600 Intel C++ 9.1 Builds, but link problems
-2008-05-14 1.7.6 Gentoo Intel Core2 Q6600 GCC 4.2.3 OK
-2008-04-21 1.7.5 Gentoo STI Cell PPU GCC 4.1.2 OK
-2008-04-14 1.7.5 Debian Pentium 4 GCC 4.1.2 OK
-2008-04-13 1.7.5 Gentoo 2006.1 UltraSPARC II (32) GCC 3.4.6 OK
-2008-04-12 1.7.5 RHEL3 Pentium 4 Xeon GCC 3.2.3 OK
-2008-04-12 1.7.5 Gentoo Intel Core2 Q6600 Intel C++ 10.1 OK
-2008-04-12 1.7.5 Gentoo AMD Opteron 2212 GCC 4.1.2 OK
-2008-04-12 1.7.5 Gentoo Intel Core2 Q6600 GCC 4.2.3 OK
-2008-09-16 1.6.5 MacOS X 10.4 Intel Core2 (32) GCC 4.0.1 OK
-2008-08-28 1.6.5 Gentoo 2007.0 IBM POWER5+ GCC 4.1.2, 4.2.2, 4.3.1 OK
-2008-08-27 1.6.5 Gentoo Intel Core2 Q6600 GCC 4.3.1, 4.4-20080822 OK
-2008-08-18 1.6.4 Windows XP Pentium 4-M Visual C++ 2008 OK
-2008-07-02 1.6.4 Solaris 10 x86-64 Sun Forte 12 OK
-=========== ======= =================== ======================== ============================ ========
diff --git a/doc/manual/ffi.rst b/doc/manual/ffi.rst
index a951c63f3..7a01dc8ae 100644
--- a/doc/manual/ffi.rst
+++ b/doc/manual/ffi.rst
@@ -39,7 +39,7 @@ Versioning
Hash Functions
----------------------------------------
-.. cpp:type:: typedef struct botan_hash_struct* botan_hash_t
+.. cpp:type:: opaque* botan_hash_t
An opaque data type for a hash. Don't mess with it.
@@ -72,7 +72,7 @@ Hash Functions
Authentication Codes
----------------------------------------
-.. cpp:type:: typedef struct botan_mac_struct* botan_mac_t
+.. cpp:type:: opaque* botan_mac_t
An opaque data type for a MAC. Don't mess with it, but do remember
to set a random key first.
@@ -87,15 +87,14 @@ Authentication Codes
.. cpp:function:: int botan_mac_update(botan_mac_t mac, uint8_t buf[], size_t len)
-.. cpp:function:: int botan_mac_final(botan_mac_t mac, uint8_t out[], size_t* ou
-t_len)
+.. cpp:function:: int botan_mac_final(botan_mac_t mac, uint8_t out[], size_t* out_len)
.. cpp:function:: size_t botan_mac_output_length(botan_mac_t mac)
Ciphers
----------------------------------------
-.. cpp:type:: typedef struct botan_cipher_struct* botan_cipher_t
+.. cpp:type:: opaque* botan_cipher_t
An opaque data type for a MAC. Don't mess with it, but do remember
to set a random key first. And please use an AEAD.
@@ -111,22 +110,20 @@ Ciphers
.. cpp:function:: int botan_cipher_clear(botan_cipher_t hash)
-.. cpp:function:: int botan_cipher_set_key(botan_cipher_t cipher,
- const uint8_t* key, size_t key_len)
+.. cpp:function:: int botan_cipher_set_key(botan_cipher_t cipher, \
+ const uint8_t* key, size_t key_len)
-.. cpp:function:: int botan_cipher_set_associated_data(botan_cipher_t cipher,
- const uint8_t* ad,
- size_t ad_len)
+.. cpp:function:: int botan_cipher_set_associated_data(botan_cipher_t cipher, \
+ const uint8_t* ad, size_t ad_len)
-.. cpp:function:: int botan_cipher_start(botan_cipher_t cipher,
+.. cpp:function:: int botan_cipher_start(botan_cipher_t cipher, \
const uint8_t* nonce, size_t nonce_len)
.. cpp:function:: int botan_cipher_is_authenticated(botan_cipher_t cipher)
.. cpp:function:: size_t botan_cipher_tag_size(botan_cipher_t cipher)
-.. cpp:function:: int botan_cipher_valid_nonce_length(botan_cipher_t cipher, siz
-e_t nl)
+.. cpp:function:: int botan_cipher_valid_nonce_length(botan_cipher_t cipher, size_t nl)
.. cpp:function:: size_t botan_cipher_default_nonce_length(botan_cipher_t cipher)
diff --git a/doc/manual/index.rst b/doc/manual/index.rst
index 988d7732f..1bfc01d30 100644
--- a/doc/manual/index.rst
+++ b/doc/manual/index.rst
@@ -4,36 +4,6 @@ Introduction
If you need to build the library first, start with :doc:`building`.
-Books and other resources
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-It's a very good idea if you have some knowledge of cryptography
-*before* trying to use the library. This is an area where it is very
-easy to make mistakes, and where things are often subtle and/or
-counterintuitive. Obviously the library tries to provide things at a
-high level precisely to minimize the number of ways things can go
-wrong, but naive use will almost certainly not result in a secure
-system.
-
-Especially recommended are:
-
-- *Cryptography Engineering*
- by Niels Ferguson, Bruce Schneier, and Tadayoshi Kohno
-
-- *Security Engineering -- A Guide to Building Dependable Distributed Systems*
- by Ross Anderson
-
-- *Handbook of Applied Cryptography*
- by Alfred J. Menezes, Paul C. Van Oorschot, and Scott A. Vanstone
- (`available online <http://www.cacr.math.uwaterloo.ca/hac/>`_)
-
-If you're doing something non-trivial or unique, you might want to at
-the very least ask for review/input on a mailing list such as the
-`metzdowd <http://www.metzdowd.com/mailman/listinfo/cryptography>`_ or
-`randombit <http://lists.randombit.net/mailman/listinfo/cryptography>`_
-crypto lists. And (if possible) pay a professional cryptographer or
-security company to review your design and code.
-
References
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/doc/manual/python.rst b/doc/manual/python.rst
index cef9fddd2..eb625f24a 100644
--- a/doc/manual/python.rst
+++ b/doc/manual/python.rst
@@ -110,7 +110,7 @@ Ciphers
.. py:method:: update_granularity()
Returns update block size. Call to update() must provide
- input of exactly this many bytes
+ input of exactly this many bytes
.. py:method:: is_authenticated()
diff --git a/doc/news.rst b/doc/news.rst
index 84c3e2345..396303e24 100644
--- a/doc/news.rst
+++ b/doc/news.rst
@@ -4,7 +4,7 @@ Release Notes
Version 1.11.18, Not Yet Released
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-* In this release Botan has switched VCS from `monotone` to `git`,
+* In this release Botan has switched VCS from ``monotone`` to ``git``,
and is now hosted on github at https://github.com/randombit/botan
Version 1.11.17, 2015-06-18
@@ -17,12 +17,12 @@ Version 1.11.17, 2015-06-18
value was actually negotiated, TLS would treat it as a negotiated
limit of 4096.
-* Fix the configure.py flag `--disable-aes-ni` which did nothing of
+* Fix the configure.py flag ``--disable-aes-ni`` which did nothing of
the sort.
* Fixed nmake clean target. GitHub #104
-* Correct buffering logic in `Compression_Filter`. GitHub #93 and #95
+* Correct buffering logic in ``Compression_Filter``. GitHub #93 and #95
Version 1.11.16, 2015-03-29
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -47,8 +47,8 @@ Version 1.11.16, 2015-03-29
padding types.
* Added global timeout to HMAC_RNG entropy reseed. The defaults are
- the values set in the build.h macros `BOTAN_RNG_AUTO_RESEED_TIMEOUT`
- and `BOTAN_RNG_RESEED_DEFAULT_TIMEOUT`, but can be overriden
+ the values set in the build.h macros ``BOTAN_RNG_AUTO_RESEED_TIMEOUT``
+ and ``BOTAN_RNG_RESEED_DEFAULT_TIMEOUT``, but can be overriden
on a specific poll with the new API call reseed_with_timeout.
* Fixed Python cipher update_granularity() and default_nonce_length()
@@ -103,15 +103,15 @@ Version 1.11.14, 2015-02-27
If you intend to build your application against a static library and don't
want to explicitly reference each algo object you might attempt to look up by
- string, consider either building with `--via-amalgamation`, or else (much
+ string, consider either building with ``--via-amalgamation``, or else (much
simpler) using the amalgamation directly.
-* The new `ffi` submodule provides a simple C API/ABI for a number of useful
+* The new ``ffi`` submodule provides a simple C API/ABI for a number of useful
operations (hashing, ciphers, public key operations, etc) which is easily
accessed using the FFI modules included in many languages.
-* A new Python wrapper (in `src/lib/python/botan.py`) using `ffi` and the Python
- `ctypes` module is available. The old Boost.Python wrapper has been removed.
+* A new Python wrapper (in ``src/lib/python/botan.py``) using ``ffi`` and the Python
+ ``ctypes`` module is available. The old Boost.Python wrapper has been removed.
* Add specialized reducers for P-192, P-224, P-256, and P-384
@@ -121,13 +121,13 @@ Version 1.11.14, 2015-02-27
is not yet enabled by the default policy, and the ciphersuite numbers used are
in the experimental range and may conflict with other uses.
-* Add ability to read TLS policy from a text file using `TLS::Text_Policy`.
+* Add ability to read TLS policy from a text file using ``TLS::Text_Policy``.
* The amalgamation now splits off any ISA specific code (for instance, that
requiring SSSE3 instruction sets) into a new file named (for instance)
- `botan_all_ssse3.cpp`. This allows the main amalgamation file to be compiled
- without any special flags, so `--via-amalgamation` builds actually work now.
- This is disabled with the build option `--single-amalgamation-file`
+ ``botan_all_ssse3.cpp``. This allows the main amalgamation file to be compiled
+ without any special flags, so ``--via-amalgamation`` builds actually work now.
+ This is disabled with the build option ``--single-amalgamation-file``
* PBKDF and KDF operations now provide a way to write the desired output
directly to an application-specified area rather than always allocating a new
@@ -160,9 +160,9 @@ Version 1.11.14, 2015-02-27
which wants to mlock memory for its own uses.
* The botan-config script previously installed on Unix systems has been
- removed. Its functionality is replaced by the `config` command of the
- `botan` tool executable, for example `botan config cflags` instead of
- `botan-config --cflags`.
+ removed. Its functionality is replaced by the ``config`` command of the
+ ``botan`` tool executable, for example ``botan config cflags`` instead of
+ ``botan-config --cflags``.
* Added a target for POWER8 processors
@@ -172,7 +172,7 @@ Version 1.11.13, 2015-01-11
* All support for the insecure SSLv3 protocol and the server support
for processing SSLv2 client hellos has been removed.
-* The command line tool now has `tls_proxy` which negotiates TLS with
+* The command line tool now has ``tls_proxy`` which negotiates TLS with
clients and forwards the plaintext to a specified port.
* Add MCEIES, a McEliece-based integrated encryption system using
@@ -237,10 +237,10 @@ Version 1.11.11, 2014-12-21
* The Sqlite3 wrapper has been abstracted to a simple interface for
SQL dbs in general, though Sqlite3 remains the only implementation.
The main logic of the TLS session manager which stored encrypted
- sessions to a Sqlite3 database (`TLS::Session_Manager_SQLite`) has
- been moved to the new `TLS::Session_Manager_SQL`. The Sqlite3
+ sessions to a Sqlite3 database (``TLS::Session_Manager_SQLite``) has
+ been moved to the new ``TLS::Session_Manager_SQL``. The Sqlite3
manager API remains the same but now just subclasses
- `TLS::Session_Manager_SQL` and has a constructor instantiate the
+ ``TLS::Session_Manager_SQL`` and has a constructor instantiate the
concrete database instance.
Applications which would like to use a different db can now do so
@@ -275,7 +275,7 @@ Version 1.10.9, 2014-12-13
* Fix decoding indefinite length BER constructs that contain a context
sensitive tag of zero. Github pull 26 from Janusz Chorko.
-* The `botan-config` script previously tried to guess its prefix from
+* The ``botan-config`` script previously tried to guess its prefix from
the location of the binary. However this was error prone, and now
the script assumes the final installation prefix matches the value
set during the build. Github issue 29.
@@ -416,7 +416,7 @@ Version 1.11.9, 2014-04-10
Version 1.11.8, 2014-02-13
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-* The `botan` command line application introduced in 1.11.7 is now
+* The ``botan`` command line application introduced in 1.11.7 is now
installed along with the library.
* A bug in certificate path validation introduced in 1.11.6 which
@@ -474,17 +474,17 @@ Version 1.11.7, 2014-01-10
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* Botan's basic numeric types are now defined in terms of the
- C99/C++11 standard integer types. For instance `u32bit` is now a
- typedef for `uint32_t`, and both names are included in the library
+ C99/C++11 standard integer types. For instance ``u32bit`` is now a
+ typedef for ``uint32_t``, and both names are included in the library
namespace. This should not result in any application-visible
changes.
-* There are now two executable outputs of the build, `botan-test`,
- which runs the tests, and `botan` which is used as a driver to call
+* There are now two executable outputs of the build, ``botan-test``,
+ which runs the tests, and ``botan`` which is used as a driver to call
into various subcommands which can also act as examples of library
- use, much in the manner of the `openssl` command. It understands the
- commands `base64`, `asn1`, `x509`, `tls_client`, `tls_server`,
- `bcrypt`, `keygen`, `speed`, and various others. As part of this
+ use, much in the manner of the ``openssl`` command. It understands the
+ commands ``base64``, ``asn1``, ``x509``, ``tls_client``, ``tls_server``,
+ ``bcrypt``, ``keygen``, ``speed``, and various others. As part of this
change many obsolete, duplicated, or one-off examples were removed,
while others were extended with new functionality. Contributions of
new subcommands, new bling for exising ones, or documentation in any
@@ -646,7 +646,7 @@ Version 1.11.4, 2013-07-25
server would by default negotiate either protocol type (clients
would only accept the same protocol type as they
offered). Applications which use DTLS or combined TLS/DTLS need to
- override `Policy::acceptable_protocol_version`.
+ override ``Policy::acceptable_protocol_version``.
* The TLS channels now accept a new parameter specifying how many
bytes to preallocate for the record handling buffers, which allows
@@ -654,13 +654,13 @@ Version 1.11.4, 2013-07-25
for a particular connection.
* Applications can now send arbitrary TLS alert messages using
- `TLS::Channel::send_alert`
+ ``TLS::Channel::send_alert``
-* A new TLS policy `NSA_Suite_B_128` is available, which
+* A new TLS policy ``NSA_Suite_B_128`` is available, which
will negotiate only the 128-bit security NSA Suite B. See
:rfc:`6460` for more information about Suite B.
-* Adds a new interface for benchmarking, `time_algorithm_ops`,
+* Adds a new interface for benchmarking, ``time_algorithm_ops``,
which returns a map of operations to operations per second. For
instance now both encrypt and decrypt speed of a block cipher can be
checked, as well as the key schedule of all keyed algorithms. It
@@ -671,7 +671,7 @@ Version 1.11.4, 2013-07-25
Version 1.11.3, 2013-04-11
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-* Add a new interface for AEAD modes (`AEAD_Mode`).
+* Add a new interface for AEAD modes (``AEAD_Mode``).
* Implementations of the OCB and GCM authenticated cipher modes are
now included.
@@ -679,14 +679,14 @@ Version 1.11.3, 2013-04-11
* Support for TLS GCM ciphersuites is now available.
* A new TLS policy mechanism
- `TLS::Policy::server_uses_own_ciphersuite_preferences`
+ ``TLS::Policy::server_uses_own_ciphersuite_preferences``
controls how a server chooses a ciphersuite. Previously it always
chose its most preferred cipher out of the client's list, but this
can allow configuring a server to choose by the client's preferences
instead.
-* `Keyed_Filter` now supports returning a
- `Key_Length_Specification` so the full details of what
+* ``Keyed_Filter`` now supports returning a
+ ``Key_Length_Specification`` so the full details of what
keylengths are supported is now available in keyed filters.
* The experimental and rarely used Turing and WiderWAKE stream ciphers
@@ -695,9 +695,9 @@ Version 1.11.3, 2013-04-11
* New functions for symmetric encryption are included in cryptobox.h
though interfaces and formats are subject to change.
-* A new function `algorithm_kat_detailed` returns a string
+* A new function ``algorithm_kat_detailed`` returns a string
providing information about failures, instead of just a pass/fail
- indicator as in `algorithm_kat`.
+ indicator as in ``algorithm_kat``.
Version 1.10.5, 2013-03-02
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -716,50 +716,38 @@ Version 1.10.5, 2013-03-02
Version 1.11.2, 2013-03-02
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-* A bug in the release script caused the `botan_version.py` included
- in 1.11.1` to be invalid, which required a manual edit to fix
+* A bug in the release script caused the ``botan_version.py`` included
+ in 1.11.1`` to be invalid, which required a manual edit to fix
(Bugzilla 226)
-Memory Zeroization Changes
-""""""""""""""""""""""""""""""""""""""""
-
-* Previously `clear_mem` was implemented by an inlined call to
- `std::memset`. However an optimizing compiler might notice cases
+* Previously ``clear_mem`` was implemented by an inlined call to
+ ``std::memset``. However an optimizing compiler might notice cases
where the memset could be skipped in cases allowed by the standard.
- Now `clear_mem` calls `zero_mem` which is compiled separately and
+ Now ``clear_mem`` calls ``zero_mem`` which is compiled separately and
which zeros out the array through a volatile pointer. It is possible
some compiler with some optimization setting (especially with
something like LTO) might still skip the writes. It would be nice if
there was an automated way to test this.
-New Parallel Filter
-""""""""""""""""""""""""""""""""""""""""
-
-* The new filter `Threaded_Fork` acts like a normal
- `Fork`, sending its input to a number of different
+* The new filter ``Threaded_Fork`` acts like a normal
+ ``Fork``, sending its input to a number of different
filters, but each subchain of filters in the fork runs in its own
thread. Contributed by Joel Low.
-TLS Enhancements and Bug Fixes
-""""""""""""""""""""""""""""""""""""""""
-
* The default TLS policy formerly preferred AES over RC4, and allowed
3DES by default. Now the default policy is to negotiate only either
AES or RC4, and to prefer RC4.
-* New TLS `Blocking_Client` provides a thread per
+* New TLS ``Blocking_Client`` provides a thread per
connection style API similar to that provided in 1.10
-Other API Changes
-""""""""""""""""""""""""""""""""""""""""
-
-* The API of `Credentials_Manager::trusted_certificate_authorities`
- has changed to return a vector of `Certificate_Store*` instead of
- `X509_Certificate`. This allows the list of trusted CAs to be
+* The API of ``Credentials_Manager::trusted_certificate_authorities``
+ has changed to return a vector of ``Certificate_Store*`` instead of
+ ``X509_Certificate``. This allows the list of trusted CAs to be
more easily updated dynamically or loaded lazily.
-* The `asn1_int.h` header was split into `asn1_alt_name.h`,
- `asn1_attribute.h` and `asn1_time.h`.
+* The ``asn1_int.h`` header was split into ``asn1_alt_name.h``,
+ ``asn1_attribute.h`` and ``asn1_time.h``.
Version 1.10.4, 2013-01-07
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -782,20 +770,17 @@ Version 1.10.4, 2013-01-07
Version 1.11.1, 2012-10-30
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-TLS Enhancements and Bug Fixes
-""""""""""""""""""""""""""""""""""""""""
-
Initial support for DTLS (both v1.0 and v1.2) is available in this
release, though it should be considered highly experimental. Currently
timeouts and retransmissions are not handled.
-The `TLS::Client` constructor now takes the version to
-offer to the server. The policy hook `TLS::Policy` function
-`pref_version`, which previously controlled this, has been removed.
+The ``TLS::Client`` constructor now takes the version to
+offer to the server. The policy hook ``TLS::Policy`` function
+`pref_version``, which previously controlled this, has been removed.
-`TLS::Session_Manager_In_Memory` now chooses a random
+`TLS::Session_Manager_In_Memory`` now chooses a random
256-bit key at startup and encrypts all sessions (using the existing
-`TLS::Session::encrypt` mechanism) while they are stored in
+`TLS::Session::encrypt`` mechanism) while they are stored in
memory. This is primarily to reduce pressure on locked memory, as each
session normally requires 48 bytes of locked memory for the master
secret, whereas now only 32 bytes are needed total. This change may
@@ -814,9 +799,9 @@ persistent storage by 1.11.0 will not load in this version and vice
versa. In either case this will not cause any errors, the session will
simply not resume and instead a full handshake will occur.
-New policy hooks `TLS::Policy::acceptable_protocol_version`,
-`TLS::Policy::allow_server_initiated_renegotiation`, and
-`TLS::Policy::negotiate_heartbeat_support` were added.
+New policy hooks ``TLS::Policy::acceptable_protocol_version``,
+`TLS::Policy::allow_server_initiated_renegotiation``, and
+`TLS::Policy::negotiate_heartbeat_support`` were added.
TLS clients were not sending a next protocol message during a session
resumption, which would cause resumption failures with servers that
@@ -827,24 +812,18 @@ handshake to be passed to the application callback as if they were
heartbeat responses.
Support for TLS key material export as specified in :rfc:`5705` has
-been added, available via `TLS::Channel::key_material_export`
-
-New Feature: Public Key Strength Checking
-""""""""""""""""""""""""""""""""""""""""""
+been added, available via ``TLS::Channel::key_material_export``
-A new function `Public_Key::estimated_strength` returns
+A new function ``Public_Key::estimated_strength`` returns
an estimate for the upper bound of the strength of the key. For
instance for an RSA key, it will return an estimate of how many
operations GNFS would take to factor the key.
-A new `Path_Validation_Result` code has been added
+A new ``Path_Validation_Result`` code has been added
``SIGNATURE_METHOD_TOO_WEAK``. By default signatures created with keys
below 80 bits of strength (as estimated by ``estimated_strength``) are
rejected. This level can be modified using a parameter to the
-`Path_Validation_Restrictions` constructor.
-
-SRP6 Is Picker About Values
-""""""""""""""""""""""""""""""""""""""""
+``Path_Validation_Restrictions`` constructor.
The SRP6 code was checking for invalid values as specified in
:rfc:`5054`, ones equal to zero mod p, however it would accept
@@ -853,10 +832,7 @@ occur in a normal run of the protocol. These values are now
rejected. Credits to Timothy Prepscius for pointing out these values
are not normally used and probably signal something fishy.
-Removal of Various BigInt Functions
-""""""""""""""""""""""""""""""""""""""""
-
-Several `BigInt` functions have been removed, including
+Several ``BigInt`` functions have been removed, including
``operator[]``, ``assign``, ``get_reg``, and ``grow_reg``. The version
of ``data`` that returns a mutable pointer has been renamed
``mutable_data``. Support for octal conversions has been removed.
@@ -864,9 +840,6 @@ of ``data`` that returns a mutable pointer has been renamed
The constructor ``BigInt(NumberType type, size_t n)`` has been
removed, replaced by ``BigInt::power_of_2``.
-AES-NI Crash Fixed
-""""""""""""""""""""""""""""""""""""""""
-
In 1.11.0, when compiled by GCC, the AES-NI implementation of AES-192
would crash if the mlock-based allocator was used due to an alignment
issue.
@@ -881,9 +854,6 @@ Version 1.11.0, 2012-07-19
This version of the library cannot be compiled by or used with a
C++98 compiler.
-TLS and PKI Changes
-""""""""""""""""""""""""""""""""""""""""
-
There have been many changes and improvements to TLS. The interface
is now purely event driven and does not directly interact with
sockets. New TLS features include TLS v1.2 support, client
@@ -901,9 +871,6 @@ The API for X.509 path validation has changed, with
``x509_path_validate`` in x509path.h now handles path validation and
``Certificate_Store`` handles storage of certificates and CRLs.
-Memory Container Changes
-""""""""""""""""""""""""""""""""""""""""
-
The memory container types have changed substantially. The
``MemoryVector`` and ``SecureVector`` container types have been
removed, and an alias of ``std::vector`` using an allocator that
@@ -917,16 +884,10 @@ using a best-fit allocator and all metadata held outside the mmap'ed
range, in an effort to make best use of the very limited amount of
memory current Linux kernels allow unpriveledged users to lock.
-New LZMA Compression Filter
-""""""""""""""""""""""""""""""""""""""""
-
A filter using LZMA was contributed by Vojtech Kral. It is available
if LZMA support was enabled at compilation time by passing
``--with-lzma`` to ``configure.py``.
-ECC Key Decoding Problem Resolved
-""""""""""""""""""""""""""""""""""""""""
-
:rfc:`5915` adds some extended information which can be included in
ECC private keys which the ECC key decoder did not expect, causing an
exception when such a key was loaded. In particular, recent versions
@@ -1019,8 +980,8 @@ GCC on Windows will cause the configure.py to warn that likely you
wanted to configure for either MinGW or Cygwin, not the generic
Windows target.
-A bug in configure.py would cause it to interpret `--cpu=s390x` as
-`s390`. This may have affected other CPUs as well. Now configure.py
+A bug in configure.py would cause it to interpret ``--cpu=s390x`` as
+``s390``. This may have affected other CPUs as well. Now configure.py
searches for an exact match, and only if no exact match is found will
it search for substring matches.
@@ -1039,7 +1000,7 @@ Note that Python 2.4 is not supported at all.
Version 1.10.1, 2011-07-11
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-* A race condition in `Algorithm_Factory` could cause crashes in
+* A race condition in ``Algorithm_Factory`` could cause crashes in
multithreaded code.
* The return value of ``name`` has changed for GOST 28147-89 and
@@ -1058,7 +1019,7 @@ Version 1.10.1, 2011-07-11
Version 1.8.13, 2011-07-02
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-* A race condition in `Algorithm_Factory` could cause crashes in
+* A race condition in ``Algorithm_Factory`` could cause crashes in
multithreaded code.
Version 1.10.0, 2011-06-20
@@ -1200,7 +1161,7 @@ Version 1.9.17, 2011-04-29
AES-NI instruction set have been renamed from AES_XXX_Intel to
AES_XXX_NI.
-* Systems that are identified as `sun4u` will default to compiling for
+* Systems that are identified as ``sun4u`` will default to compiling for
32-bit SPARCv9 code rather than 64-bit. This matches the still
common convention for 32-bit SPARC userspaces. If you want 64-bit
code on such as system, use ``--cpu=sparc64``.
@@ -1224,7 +1185,7 @@ Version 1.9.16, 2011-04-11
* The class ``EC_Domain_Params`` has been renamed ``EC_Group``, with a
typedef for backwards compatability.
-* ``EC_Group``'s string constructor didn't understand the standard
+* The ``EC_Group`` string constructor didn't understand the standard
names like "secp160r1", forcing use of the OIDs.
* Two constructors for ECDSA private keys, the one that creates a new
@@ -1411,7 +1372,6 @@ Version 1.9.10, 2010-08-12
than the table-based implementation on some processors. The current
code has been tested with GCC 4.5, Visual C++ 2008, and Clang 2.8.
-
* Support for dynamically loading Engine objects at runtime was also
added. Currently only system that use ``dlopen``-style dynamic
linking are supported.
@@ -2484,7 +2444,7 @@ Version 1.3.8, 2003-12-30
Version 1.3.7, 2003-12-12
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-* Fixed a big security problem in es_unix
+* Fixed a big security problem in es_unix (use of untrusted PATH)
* Fixed several stability problems in es_unix
* Expanded the list of programs es_unix will try to use
* SecureAllocator now only preallocates blocks in special cases
diff --git a/doc/pgpkey.txt b/doc/pgpkey.txt
new file mode 100644
index 000000000..e4b5a83f3
--- /dev/null
+++ b/doc/pgpkey.txt
@@ -0,0 +1,37 @@
+The following PGP key is used to sign all releases:
+
+pub 2048R/EFBADFBC 2004-10-30
+ Key fingerprint = 621D AF64 11E1 851C 4CF9 A2E1 6211 EBF1 EFBA DFBC
+uid Botan Distribution Key
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v2.0.17 (GNU/Linux)
+
+mQELBEGD1j0BCADHxPJkPcjJE+4Dlisx2hVc0Dj6JI1MSLrkM8R+2bOhVUSferxP
+T1EMPhfrAdOHTAloyvRThJztnZsNKqfLL49GGcBLdEGAVNks1pG37Teze5Lx1XIu
+zJFrozL2sqBy5C6nHpFgd1tcD68Rah2wp0u2cR9owXf1IqKdEfuo661+MTv7wTB1
+4hKV75nB7ZO6676SEZRILYM+7RJwKAKEmEPJc6hEf94VXn9ecNzaTlHgYkjhz9db
+LOd3od9XvuUw+LMR1dwBqMxbvR90MiXjbedDEkbArcZB9YOAIvEX/lC3qaW4XJt4
+iwHWl/YVZEfALcvQywe2CDrH5hO794wd9MpBAAYptBZCb3RhbiBEaXN0cmlidXRp
+b24gS2V5iQEqBBMBAgAUAhsDAh4BAheABQJKfFpnBBUKCQgACgkQYhHr8e+637xk
+PQf/aOi78XenwwvFrwXOVIVTdZIf8rK1zJksf26h09UD8uVV6z5iiTcpn86+eN9p
+6Ar8IH3tD+JuFnPSwZ/r9MNC2XZwenYo4Gb14jqM6/9hBe328vmeM4Y1G7bD4HrL
+kgV5WEyokqm3zbp3FBLr3Vh68TAC5JB9aHevra+cCA2u3vBNI3YUM5z4TdO150P3
+J00whkqImQEUni8bgxvllBLFM+uhucsX3HZWkoDEpotbg8yd0bqMkiPEyMr1OnJq
+eDVDMrB5wnyLgLFfRAAw3mopM0C1PNOAHr/BIYiaDHX2OwnOfep8rMDoRVf2Ge0D
+DBgsJJ6LduQHLeg403SHWL2F6YkCHAQTAQIABgUCQYPWUgAKCRBcD5boTsFta+r9
+EACWVis7YcaGkKKgRB/5ox8rM36XVhMXdh/hnnGHt5rapbbRRkRHRcWU8WIcFO1A
+59+TfwNNd8gN1MEt/5aX5KHWVKHBDexJgIxm6Dm1pisYHf/dnYQPM18hmqqwNlKY
+97hFkPpHd7enrtc/SvGbQhhLXYlpwBrdMl76e9xJLnnrRQksxegGPo8cr+C9HTs1
+Lwa8zzBxyBwYBYX+0moDkDShEhuXx6mEOXrGvQanJuIvpoIwGH+62E65MbJGlwWp
+w/MAtm2jFhBIhGV0bqJCFp9zIgdNgfskBaPr0oilbuJQZqP0Iqe/6CCt4XkS51yW
+ZqxjLAFpEpvDec4PGw3witKf/koGon9X8C035+nEjLBrWy18Q91vw2USyLI+mm9d
+iMAS8pY2gomfxBO2VwYHJryZykjCYQkccRA1tHteRj4gqTObo0Ak47y5MnplTWwi
+40oP7K2cfhCRBmMioxmYES4xsHEupfRBo3xr1Jq9q0t688WTT1NXHPMPoueF9mKZ
+Cf2pa9aHsqBmWTm3sCaNQKGubCDBEUmJUyndmSatJyYM7NVYoUp6EfqMACFuTNdB
+sjKMh7aWVikQpbJDfA1BIU3lZeqgjgrghVAWkEOBfhG0IVZj+RVCJpsqoTJ8asY2
+VreArSCyr/VnLEnfuH/QpgvCiCbepo3E34DJt4SaAOO2ZohGBBARAgAGBQJMGVc1
+AAoJEKY/LL36AvvMgsoAn2G7kXd09BF7ffk1Sfh174SVrvM9AKC7+R7x0+yV3SCd
+JkkUOo3xR5cOxw==
+=1QuR
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/doc/dev/release_process.rst b/doc/release_process.rst
index 2848008c9..603a46a27 100644
--- a/doc/dev/release_process.rst
+++ b/doc/release_process.rst
@@ -9,24 +9,23 @@ Release Process and Checklist
Pre Release Checks
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Confirm that the release notes under ``doc/relnotes`` are accurate and
+Confirm that the release notes in ``news.rst`` are accurate and
complete and that the version number in ``botan_version.py`` is
correct. Update the release date in the release notes and change the
-entry for the appropriate branch in ``doc/website/download.rst`` to
-point to the new release. Add the new release to
-``doc/relnotes/index.rst``.
+entry for the appropriate branch in ``readme.rst`` to point to the new
+release.
Check in these changes (alone, with no other modifications) with a
checkin message along the lines of "Update for X.Y.Z release", then
tag the release with the version in git (eg tag '1.11.8', no prefix).
-Build The Release
+Build The Release Tarballs
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The release script is ``src/scripts/dist.py`` and must be
run from a git workspace.
- $ src/scripts/dist.py 1.11.8
+ $ src/scripts/dist.py 1.11.18
One useful option is ``--output-dir``, which specifies where the
output will be placed.
@@ -34,10 +33,9 @@ output will be placed.
The ``--pgp-key-id`` option is used to specifiy a PGP keyid. If set,
the script assumes that it can execute GnuPG and will attempt to
create signatures for the tarballs. The default value is ``EFBADFBC``,
-matching :doc:`the official signing key <pgpkey>`. You can set it to
-an empty value (``--pgp-key-id=``) to avoid creating signatures though
-official distributed releases *should not* be released without
-signatures.
+which is the official signing key. You can use ``--pgp-key-id=none``
+to avoid creating any signature, though official distributed releases
+*should not* be released without signatures.
Build The Windows Installer
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -53,20 +51,16 @@ placed in ``build/botan.iss`` by ``configure.py``. Create the
installer either via the InnoSetup GUI by opening the ``iss`` file and
selecting the 'Compile' option, or using the ``iscc`` command line
tool. If all goes well it will produce an executable with a name like
-``botan-1.11.8-x86_64.exe``. Sign the installers with GPG.
+``botan-1.11.18-x86_64.exe``. Sign the installers with GPG.
Update The Website
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The current botan website is derived entirely from the ReST content in
-``docs`` using Sphinx (plus Doxygen generated documentation). A script
-called ``mtn-watch`` periodically checks for new updates on the
-``net.randombit.botan`` branch (only), and if found regenerates the
-site content. Thus as soon as the changes are synced to the server
-running on ``mtn.randombit.net``, the website will be updated.
+The website content is created by ``src/scripts/website.sh``.
+Currently refreshing the website is a manual process.
Announce The Release
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Send an email to the announce and devel mailing lists noting that a
-new release is available.
+Send an email to the botan-announce and botan-devel mailing lists
+noting that a new release is available.
diff --git a/doc/dev/roadmap.rst b/doc/roadmap.rst
index 9c30130e1..76ab81f07 100644
--- a/doc/dev/roadmap.rst
+++ b/doc/roadmap.rst
@@ -11,13 +11,13 @@ snapshots are made directly from it. Every once in a while a new even-numbered
branch is forked. All development continues on the main trunk, with fixes and
occasionally small features backported to the stable branch. Stability of API
and ABI is very important in the stable branches, whereas in trunk ABI changes
-happen with no warning and API changes are made whenever it would serve the
+happen with no warning, and API changes are made whenever it would serve the
ends of justice.
Current Status
----------------------------------------
-Currently (as of 2015-01-08) trunk is numbered 1.11 and is written in C++11,
+Currently (as of 2015-07-03) trunk is numbered 1.11 and is written in C++11,
unlike earlier versions which used C++98. In due time a new stable 2.0 branch
will be made off of trunk and afterwards trunk will be renumbered as 2.1. The
2.0 releases will be maintained with security and bug fixes at least until a
@@ -40,18 +40,17 @@ released.
Supported Targets
----------------------------------------
-The primary supported target (ie, what the main developer uses and tests with
-regularly) is a recent GCC or Clang on Linux with an x86-64 CPU. Occasionally
-Linux systems using POWER, MIPS, and ARM processors are also checked. Testing
-and fixes for Windows, MinGW, OS X, OpenBSD, Visual C++, iOS, etc comes
-primarily from users.
+The primary supported targets, which are tested with every commit by
+continous integration, are GCC and Clang on Linux, Clang on OS X, and
+MSVC 2013 on Windows, all on some form of x86.
+
+Other processors, like ARM, MIPS, and POWER processors, and OSes, such
+as OpenBSD, MinGW, or iOS are occasionally tested on an ad-hoc basis,
+but breakage is somewhat more likely.
Ongoing Issues
----------------------------------------
-Currently sources are kept in :doc:`Monotone <vcs>`, which likely discourages
-some would-be developers. The github mirror may be helping somewhat here.
-
Some infrastructure, scripts and such still exists only on the machines of the
primary developer.
diff --git a/doc/dev/todo.rst b/doc/todo.rst
index 6845e0e68..b2fbed189 100644
--- a/doc/dev/todo.rst
+++ b/doc/todo.rst
@@ -5,8 +5,7 @@ These are features either requested by users or that seem like
potentially useful things to have. Several are quite self-contained
and could make a quick project.
-Request a new feature by sending a patch to this file or by writing to
-the mailing list.
+Request a new feature by opening a pull request to update this file.
Symmetric Algorithms, Hashes, ...
----------------------------------------
@@ -25,7 +24,6 @@ Public Key Crypto, Math
* EdDSA
* Ed448-Goldilocks
-* Add specialized reductions for other NIST primes
* Fast new implementations/algorithms for ECC point operations,
Montgomery multiplication, multi-exponentiation, ...
@@ -65,7 +63,7 @@ Accelerators / backends
* ARMv8 crypto extensions
* Intel Skylake SHA-1/SHA-2
-Python/FFI
+FFI (Python, OCaml)
----------------------------------------
* Expose TLS
diff --git a/doc/website/algos.rst b/doc/website/algos.rst
deleted file mode 100644
index fcf51c91f..000000000
--- a/doc/website/algos.rst
+++ /dev/null
@@ -1,104 +0,0 @@
-
-Supported Algorithms
-========================================
-
-Botan supports a range of cryptographic algorithms and protocols,
-including:
-
-TLS/Public Key Infrastructure
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
- * TLS/DTLS (v1.0 to v1.2), including using preshared keys (TLS-PSK) or
- passwords (TLS-SRP) and most important extensions.
- * X.509 certificates (including generating new self-signed and CA
- certs) and CRLs
- * Certificate path validation and OCSP
- * PKCS #10 certificate requests (creation and certificate issue)
-
-Public Key Cryptography
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
- * Encryption algorithms RSA, ElGamal, DLIES
- (padding schemes OAEP or PKCS #1 v1.5)
- * Signature algorithms RSA, DSA, ECDSA, GOST 34.10-2001, Nyberg-Rueppel,
- Rabin-Williams (padding schemes PSS, PKCS #1 v1.5, X9.31)
- * Diffie-Hellman, ECDH using NIST/Brainpool prime groups, Curve25519
- * McEliece code based encryption providing a KEM scheme
-
-Block ciphers
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
- * Authenticated cipher modes EAX, OCB, GCM, SIV, CCM, and ChaCha20Poly1305
- * Unauthenticated cipher modes CTR, CBC, XTS, CFB, OFB, and ECB
- * AES (including constant time SSSE3 and AES-NI versions)
- * AES candidates Serpent, Twofish, MARS, CAST-256, RC6
- * DES, 3DES and DESX
- * National/telecom block ciphers SEED, KASUMI, MISTY1, GOST 28147
- * Other block ciphers including Threefish-512, Blowfish, CAST-128, IDEA,
- Noekeon, TEA, XTEA, RC2, RC5, SAFER-SK
- * Large block cipher construction Lion
-
-Stream Ciphers
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
- * RC4
- * Salsa20/XSalsa20
- * ChaCha20
-
-Hash functions
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
- * SHA-1, SHA-224, SHA-256, SHA-384, and SHA-512
- * RIPEMD-160, RIPEMD-128, Tiger, Whirlpool
- * SHA-3 winner Keccak-1600
- * SHA-3 candidate Skein-512
- * Hash function combiners (Parallel and Comb4P)
- * National standard hashes HAS-160 and GOST 34.11
- * Obsolete or insecure hashes MD5, MD4, MD2
- * Non-cryptographic checksums Adler32, CRC24, CRC32
-
-Authentication Codes and PRFs
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
- * HMAC
- * CMAC (aka OMAC1)
- * Poly1305
- * SipHash
- * Obsolete designs CBC-MAC and ANSI X9.19 DES-MAC
-
-Other Useful Things
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
- * Key derivation functions for passwords, including PBKDF2
- * Password hashing functions, including bcrypt
- * General key derivation functions KDF1 and KDF2 from IEEE 1363
-
-Recommended Algorithms
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-This section is by no means the last word on selecting which algorithms to
-use. However, botan includes a sometimes bewildering array of possible
-algorithms, and unless you're familiar with the latest developments in the
-field, it can be hard to know what is secure and what is not. The following
-attributes of the algorithms were evaluated when making this list: security,
-support by other implementations, patent/IP status, and efficiency (in
-roughly that order).
-
-If your data is in motion, strongly consider using TLS v1.2 as a pre built,
-already standard and well studied protocol.
-
-Otherwise, if you simply *must* do something custom, use:
-
-* Message encryption: AES or Serpent in EAX or GCM mode
-
-* General hash functions: SHA-256 or SHA-512
-
-* Message authentication: HMAC with SHA-256
-
-* Public Key Encryption: RSA, 2048+ bit keys, with OAEP and SHA-256
- ("EME1(SHA-256)")
-
-* Public Key Signatures: RSA, 2048+ bit keys with PSS and SHA-512
- ("EMSA4(SHA-512)"), or ECDSA with SHA-256 or SHA-512
-
-* Key Agreement: Diffie-Hellman or ECDH, with "KDF2(SHA-256)"
diff --git a/doc/website/contents.rst b/doc/website/contents.rst
deleted file mode 100644
index 26a38a718..000000000
--- a/doc/website/contents.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-
-Contents
-========================================
-
-.. toctree::
-
- index
- download
- license
- manual
- pgpkey
- credits
- algos
- news.rst
-
diff --git a/doc/website/download.rst b/doc/website/download.rst
deleted file mode 100644
index f1790c41a..000000000
--- a/doc/website/download.rst
+++ /dev/null
@@ -1,51 +0,0 @@
-
-Download
-========================================
-
-All releases are signed with a :doc:`PGP key <pgpkey>`.
-
-You can access the latest development sources on `GitHub
-<https://github.com/randombit/botan>`_.
-
-.. note::
-
- All users, especially for new applications, are encouraged to use
- the latest 1.11 release instead of 1.10, though some API changes
- are still likely to occur before a new stable release based on 1.11.
-
-Current Development Series (1.11)
-----------------------------------------
-
-The latest development release is :doc:`relnotes/1_11_17`:
-:tgz:`1.11.17` (:tgz_sig:`sig <1.11.17>`)
-
-.. note::
-
- Botan 1.11 requires a working C++11 compiler; GCC 4.8 and later,
- Clang 3.4 and later, and MSVC 2013 are regularly tested.
-
-Current Stable Series (1.10)
-----------------------------------------
-
-The latest stable branch release is :doc:`relnotes/1_10_9`:
-:tgz:`1.10.9` (:tgz_sig:`sig <1.10.9>`)
-
-From Your Favorite Distribution
-----------------------------------------
-
-Botan is already included in many package distributions though often
-the included version lags behind the latest release. Distributions
-providing botan include
-`Fedora <https://admin.fedoraproject.org/pkgdb/acls/name/botan>`_,
-`EPEL <http://dl.fedoraproject.org/pub/epel/6/SRPMS/repoview/botan.html>`_ (for RHEL/CentOS),
-`Debian <http://packages.debian.org/search?keywords=libbotan>`_,
-`Ubuntu <http://packages.ubuntu.com/search?keywords=botan>`_,
-`Gentoo <http://packages.gentoo.org/package/botan>`_,
-`Arch <http://www.archlinux.org/packages/community/x86_64/botan/>`_,
-`Slackbuild <http://slackbuilds.org/result/?search=Botan>`_,
-`FreeBSD <http://www.freshports.org/security/botan110>`_,
-`NetBSD <ftp://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/security/botan/README.html>`_,
-`Cygwin <http://cygwin.com/packages/x86/botan/>`_,
-`MacPorts <http://www.macports.org/ports.php?by=name&substr=botan>`_,
-`OpenPKG <http://www.openpkg.org/product/packages/?package=botan>`_, and
-`T2 SDE <http://www.t2-project.org/packages/botan.html>`_
diff --git a/doc/website/index.rst b/doc/website/index.rst
deleted file mode 100644
index 12c20dcdc..000000000
--- a/doc/website/index.rst
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Botan: Crypto and TLS for C++11
-========================================
-
-Botan is a crypto library for C++ released under the permissive
-:doc:`BSD-2 license <license>`.
-
-It provides useful things like TLS, X.509 PKIX (certs, CRLs, OCSP,
-etc), ECDSA, AES, GCM, and bcrypt, plus a :doc:`kitchen sink <algos>`
-of other crypto algorithms of various utility. A third party open source
-implementation of `SSHv2 <https://github.com/cdesjardins/ne7ssh>`_
-that uses botan is also available. In addition to C++ you can use
-(parts of) botan from Python or Perl (both included in tree), or with
-`Node.js <https://github.com/justinfreitag/node-botan>`_.
-
-See :doc:`download` for information about getting the latest release,
-and :doc:`manual` for the documentation.
-
-If you need help or have questions, send a mail to the `development
-mailing list
-<http://lists.randombit.net/mailman/listinfo/botan-devel/>`_ or
-open a ticket on
-`GitHub Issues <https://github.com/randombit/botan/issues>`_.
diff --git a/doc/website/license.rst b/doc/website/license.rst
deleted file mode 100644
index d07a34e9a..000000000
--- a/doc/website/license.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-
-.. _license:
-.. highlight:: none
-
-License
-========================================
-
-.. literalinclude:: license.txt
diff --git a/doc/website/manual.rst b/doc/website/manual.rst
deleted file mode 100644
index bda6ef09c..000000000
--- a/doc/website/manual.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-
-Reference Manual
-========================================
-
-The documentation is all under ``doc`` in your source tree, stored as
-``.rst`` (`RestructedText <http://docutils.sourceforge.net/rst.html>`_) files.
-They can be processed by `Sphinx <http://sphinx-doc.org>`_ to produce
-HTML or PDF output.
-
-The `manual </manual/>`_ and `Doxygen reference </doxygen/>`_ for the
-latest development release is available online.
diff --git a/doc/website/pgpkey.rst b/doc/website/pgpkey.rst
deleted file mode 100644
index 1f0e83a44..000000000
--- a/doc/website/pgpkey.rst
+++ /dev/null
@@ -1,43 +0,0 @@
-
-Code Signing Key
-========================================
-
-.. highlight:: none
-
-The following PGP key is used to sign all releases::
-
- pub 2048R/EFBADFBC 2004-10-30
- Key fingerprint = 621D AF64 11E1 851C 4CF9 A2E1 6211 EBF1 EFBA DFBC
- uid Botan Distribution Key
-
- -----BEGIN PGP PUBLIC KEY BLOCK-----
- Version: GnuPG v2.0.17 (GNU/Linux)
-
- mQELBEGD1j0BCADHxPJkPcjJE+4Dlisx2hVc0Dj6JI1MSLrkM8R+2bOhVUSferxP
- T1EMPhfrAdOHTAloyvRThJztnZsNKqfLL49GGcBLdEGAVNks1pG37Teze5Lx1XIu
- zJFrozL2sqBy5C6nHpFgd1tcD68Rah2wp0u2cR9owXf1IqKdEfuo661+MTv7wTB1
- 4hKV75nB7ZO6676SEZRILYM+7RJwKAKEmEPJc6hEf94VXn9ecNzaTlHgYkjhz9db
- LOd3od9XvuUw+LMR1dwBqMxbvR90MiXjbedDEkbArcZB9YOAIvEX/lC3qaW4XJt4
- iwHWl/YVZEfALcvQywe2CDrH5hO794wd9MpBAAYptBZCb3RhbiBEaXN0cmlidXRp
- b24gS2V5iQEqBBMBAgAUAhsDAh4BAheABQJKfFpnBBUKCQgACgkQYhHr8e+637xk
- PQf/aOi78XenwwvFrwXOVIVTdZIf8rK1zJksf26h09UD8uVV6z5iiTcpn86+eN9p
- 6Ar8IH3tD+JuFnPSwZ/r9MNC2XZwenYo4Gb14jqM6/9hBe328vmeM4Y1G7bD4HrL
- kgV5WEyokqm3zbp3FBLr3Vh68TAC5JB9aHevra+cCA2u3vBNI3YUM5z4TdO150P3
- J00whkqImQEUni8bgxvllBLFM+uhucsX3HZWkoDEpotbg8yd0bqMkiPEyMr1OnJq
- eDVDMrB5wnyLgLFfRAAw3mopM0C1PNOAHr/BIYiaDHX2OwnOfep8rMDoRVf2Ge0D
- DBgsJJ6LduQHLeg403SHWL2F6YkCHAQTAQIABgUCQYPWUgAKCRBcD5boTsFta+r9
- EACWVis7YcaGkKKgRB/5ox8rM36XVhMXdh/hnnGHt5rapbbRRkRHRcWU8WIcFO1A
- 59+TfwNNd8gN1MEt/5aX5KHWVKHBDexJgIxm6Dm1pisYHf/dnYQPM18hmqqwNlKY
- 97hFkPpHd7enrtc/SvGbQhhLXYlpwBrdMl76e9xJLnnrRQksxegGPo8cr+C9HTs1
- Lwa8zzBxyBwYBYX+0moDkDShEhuXx6mEOXrGvQanJuIvpoIwGH+62E65MbJGlwWp
- w/MAtm2jFhBIhGV0bqJCFp9zIgdNgfskBaPr0oilbuJQZqP0Iqe/6CCt4XkS51yW
- ZqxjLAFpEpvDec4PGw3witKf/koGon9X8C035+nEjLBrWy18Q91vw2USyLI+mm9d
- iMAS8pY2gomfxBO2VwYHJryZykjCYQkccRA1tHteRj4gqTObo0Ak47y5MnplTWwi
- 40oP7K2cfhCRBmMioxmYES4xsHEupfRBo3xr1Jq9q0t688WTT1NXHPMPoueF9mKZ
- Cf2pa9aHsqBmWTm3sCaNQKGubCDBEUmJUyndmSatJyYM7NVYoUp6EfqMACFuTNdB
- sjKMh7aWVikQpbJDfA1BIU3lZeqgjgrghVAWkEOBfhG0IVZj+RVCJpsqoTJ8asY2
- VreArSCyr/VnLEnfuH/QpgvCiCbepo3E34DJt4SaAOO2ZohGBBARAgAGBQJMGVc1
- AAoJEKY/LL36AvvMgsoAn2G7kXd09BF7ffk1Sfh174SVrvM9AKC7+R7x0+yV3SCd
- JkkUOo3xR5cOxw==
- =1QuR
- -----END PGP PUBLIC KEY BLOCK-----