aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Kasatkin <dmitry.kasatkin@intel.com>2011-08-31 07:05:16 -0400
committerDmitry Kasatkin <dmitry.kasatkin@intel.com>2011-11-09 04:47:25 -0500
commitd9c46b184fcfd33c85a7dc48a653435a08e21f56 (patch)
tree472f003b19daaff085f31931d4a6d5c495a6f716
parent5ce3e312ec5c11abce13215be70700778bf601f0 (diff)
crypto: GnuPG based MPI lib - make files (part 3)
Adds the multi-precision-integer maths library which was originally taken from GnuPG and ported to the kernel by (among others) David Howells. This version is taken from Fedora kernel 2.6.32-71.14.1.el6. The difference is that checkpatch reported errors and warnings have been fixed. This library is used to implemenet RSA digital signature verification used in IMA/EVM integrity protection subsystem. Due to patch size limitation, the patch is divided into 4 parts. Signed-off-by: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
-rw-r--r--lib/Kconfig7
-rw-r--r--lib/Makefile2
-rw-r--r--lib/mpi/Makefile21
3 files changed, 30 insertions, 0 deletions
diff --git a/lib/Kconfig b/lib/Kconfig
index 32f3e5ae2be5..4af07ec7f2de 100644
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -276,4 +276,11 @@ config CORDIC
276 so its calculations are in fixed point. Modules can select this 276 so its calculations are in fixed point. Modules can select this
277 when they require this function. Module will be called cordic. 277 when they require this function. Module will be called cordic.
278 278
279config MPILIB
280 tristate "Multiprecision maths library"
281 help
282 Multiprecision maths library from GnuPG.
283 It is used to implement RSA digital signature verification,
284 which is used by IMA/EVM digital signature extension.
285
279endmenu 286endmenu
diff --git a/lib/Makefile b/lib/Makefile
index a4da283f5dc0..6ba8cbf4c72f 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -115,6 +115,8 @@ obj-$(CONFIG_CPU_RMAP) += cpu_rmap.o
115 115
116obj-$(CONFIG_CORDIC) += cordic.o 116obj-$(CONFIG_CORDIC) += cordic.o
117 117
118obj-$(CONFIG_MPILIB) += mpi/
119
118hostprogs-y := gen_crc32table 120hostprogs-y := gen_crc32table
119clean-files := crc32table.h 121clean-files := crc32table.h
120 122
diff --git a/lib/mpi/Makefile b/lib/mpi/Makefile
new file mode 100644
index 000000000000..45ca90a8639c
--- /dev/null
+++ b/lib/mpi/Makefile
@@ -0,0 +1,21 @@
1#
2# MPI multiprecision maths library (from gpg)
3#
4
5obj-$(CONFIG_MPILIB) = mpi.o
6
7mpi-y = \
8 generic_mpih-lshift.o \
9 generic_mpih-mul1.o \
10 generic_mpih-mul2.o \
11 generic_mpih-mul3.o \
12 generic_mpih-rshift.o \
13 generic_mpih-sub1.o \
14 generic_mpih-add1.o \
15 mpicoder.o \
16 mpi-bit.o \
17 mpih-cmp.o \
18 mpih-div.o \
19 mpih-mul.o \
20 mpi-pow.o \
21 mpiutil.o