summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Johnston <matt@ucc.asn.au>2006-03-08 13:22:52 +0000
committerMatt Johnston <matt@ucc.asn.au>2006-03-08 13:22:52 +0000
commit2514a6739b3268c98ef09863eff52ed086e4b6f9 (patch)
tree26730439ecf0977978aa6a000f62f0c3c9144e2e
parentdde7a06217d43ac981d32cc677e8ff490eae4ad3 (diff)
downloaddropbear-2514a6739b3268c98ef09863eff52ed086e4b6f9.tar.gz
* Changes imported from Dropbear 0.47.
* bn_mp_clear.c is changed so that some vars are volatile, so that the compiler won't optimise away
-rw-r--r--Makefile.in (renamed from makefile)20
-rw-r--r--bn.ilg6
-rw-r--r--bn.ind82
-rw-r--r--bn.pdfbin337204 -> 0 bytes
-rw-r--r--bn_mp_clear.c11
-rw-r--r--poster.pdfbin40821 -> 0 bytes
-rw-r--r--tommath.pdfbin1160406 -> 0 bytes
-rw-r--r--tommath_class.h6
8 files changed, 26 insertions, 99 deletions
diff --git a/makefile b/Makefile.in
index 17873ee..e96173a 100644
--- a/makefile
+++ b/Makefile.in
@@ -5,16 +5,22 @@
#version of library
VERSION=0.35
-CFLAGS += -I./ -Wall -W -Wshadow -Wsign-compare
+VPATH=@srcdir@
+srcdir=@srcdir@
+
+# Dropbear takes flags from the toplevel makefile
+CFLAGS += -I$(srcdir)
+
+#CFLAGS += -I./ -Wall -W -Wshadow -Wsign-compare
#for speed
-CFLAGS += -O3 -funroll-all-loops
+#CFLAGS += -O3 -funroll-all-loops
#for size
#CFLAGS += -Os
#x86 optimizations [should be valid for any GCC install though]
-CFLAGS += -fomit-frame-pointer
+#CFLAGS += -fomit-frame-pointer
#debug
#CFLAGS += -g3
@@ -67,7 +73,7 @@ bn_mp_to_signed_bin_n.o bn_mp_to_unsigned_bin_n.o
libtommath.a: $(OBJECTS)
$(AR) $(ARFLAGS) libtommath.a $(OBJECTS)
- ranlib libtommath.a
+ $(RANLIB) libtommath.a
#make a profiled library (takes a while!!!)
#
@@ -146,10 +152,10 @@ pretty:
clean:
rm -f *.bat *.pdf *.o *.a *.obj *.lib *.exe *.dll etclib/*.o demo/demo.o test ltmtest mpitest mtest/mtest mtest/mtest.exe \
- *.idx *.toc *.log *.aux *.dvi *.lof *.ind *.ilg *.ps *.log *.s mpi.c *.da *.dyn *.dpi tommath.tex `find -type f | grep [~] | xargs` *.lo *.la
+ *.idx *.toc *.log *.aux *.dvi *.lof *.ind *.ilg *.ps *.log *.s mpi.c *.da *.dyn *.dpi tommath.tex *.lo *.la
rm -rf .libs
- cd etc ; make clean
- cd pics ; make clean
+ cd etc && make clean
+ cd pics && make clean
zipup: clean manual poster docs
perl gen.pl ; mv mpi.c pre_gen/ ; \
diff --git a/bn.ilg b/bn.ilg
deleted file mode 100644
index 3c859f0..0000000
--- a/bn.ilg
+++ /dev/null
@@ -1,6 +0,0 @@
-This is makeindex, version 2.14 [02-Oct-2002] (kpathsea + Thai support).
-Scanning input file bn.idx....done (79 entries accepted, 0 rejected).
-Sorting entries....done (511 comparisons).
-Generating output file bn.ind....done (82 lines written, 0 warnings).
-Output written in bn.ind.
-Transcript written in bn.ilg.
diff --git a/bn.ind b/bn.ind
deleted file mode 100644
index e5f7d4a..0000000
--- a/bn.ind
+++ /dev/null
@@ -1,82 +0,0 @@
-\begin{theindex}
-
- \item mp\_add, \hyperpage{29}
- \item mp\_add\_d, \hyperpage{52}
- \item mp\_and, \hyperpage{29}
- \item mp\_clear, \hyperpage{11}
- \item mp\_clear\_multi, \hyperpage{12}
- \item mp\_cmp, \hyperpage{24}
- \item mp\_cmp\_d, \hyperpage{25}
- \item mp\_cmp\_mag, \hyperpage{23}
- \item mp\_div, \hyperpage{30}
- \item mp\_div\_2, \hyperpage{26}
- \item mp\_div\_2d, \hyperpage{28}
- \item mp\_div\_d, \hyperpage{52}
- \item mp\_dr\_reduce, \hyperpage{40}
- \item mp\_dr\_setup, \hyperpage{40}
- \item MP\_EQ, \hyperpage{22}
- \item mp\_error\_to\_string, \hyperpage{10}
- \item mp\_expt\_d, \hyperpage{43}
- \item mp\_exptmod, \hyperpage{43}
- \item mp\_exteuclid, \hyperpage{51}
- \item mp\_gcd, \hyperpage{51}
- \item mp\_get\_int, \hyperpage{20}
- \item mp\_grow, \hyperpage{16}
- \item MP\_GT, \hyperpage{22}
- \item mp\_init, \hyperpage{11}
- \item mp\_init\_copy, \hyperpage{13}
- \item mp\_init\_multi, \hyperpage{12}
- \item mp\_init\_set, \hyperpage{21}
- \item mp\_init\_set\_int, \hyperpage{21}
- \item mp\_init\_size, \hyperpage{14}
- \item mp\_int, \hyperpage{10}
- \item mp\_invmod, \hyperpage{52}
- \item mp\_jacobi, \hyperpage{52}
- \item mp\_lcm, \hyperpage{51}
- \item mp\_lshd, \hyperpage{28}
- \item MP\_LT, \hyperpage{22}
- \item MP\_MEM, \hyperpage{9}
- \item mp\_mod, \hyperpage{35}
- \item mp\_mod\_d, \hyperpage{52}
- \item mp\_montgomery\_calc\_normalization, \hyperpage{38}
- \item mp\_montgomery\_reduce, \hyperpage{37}
- \item mp\_montgomery\_setup, \hyperpage{37}
- \item mp\_mul, \hyperpage{31}
- \item mp\_mul\_2, \hyperpage{26}
- \item mp\_mul\_2d, \hyperpage{28}
- \item mp\_mul\_d, \hyperpage{52}
- \item mp\_n\_root, \hyperpage{44}
- \item mp\_neg, \hyperpage{29}
- \item MP\_NO, \hyperpage{9}
- \item MP\_OKAY, \hyperpage{9}
- \item mp\_or, \hyperpage{29}
- \item mp\_prime\_fermat, \hyperpage{45}
- \item mp\_prime\_is\_divisible, \hyperpage{45}
- \item mp\_prime\_is\_prime, \hyperpage{46}
- \item mp\_prime\_miller\_rabin, \hyperpage{45}
- \item mp\_prime\_next\_prime, \hyperpage{46}
- \item mp\_prime\_rabin\_miller\_trials, \hyperpage{46}
- \item mp\_prime\_random, \hyperpage{47}
- \item mp\_prime\_random\_ex, \hyperpage{47}
- \item mp\_radix\_size, \hyperpage{49}
- \item mp\_read\_radix, \hyperpage{49}
- \item mp\_read\_unsigned\_bin, \hyperpage{50}
- \item mp\_reduce, \hyperpage{36}
- \item mp\_reduce\_2k, \hyperpage{41}
- \item mp\_reduce\_2k\_setup, \hyperpage{41}
- \item mp\_reduce\_setup, \hyperpage{36}
- \item mp\_rshd, \hyperpage{28}
- \item mp\_set, \hyperpage{19}
- \item mp\_set\_int, \hyperpage{20}
- \item mp\_shrink, \hyperpage{15}
- \item mp\_sqr, \hyperpage{33}
- \item mp\_sub, \hyperpage{29}
- \item mp\_sub\_d, \hyperpage{52}
- \item mp\_to\_unsigned\_bin, \hyperpage{50}
- \item mp\_toradix, \hyperpage{49}
- \item mp\_unsigned\_bin\_size, \hyperpage{50}
- \item MP\_VAL, \hyperpage{9}
- \item mp\_xor, \hyperpage{29}
- \item MP\_YES, \hyperpage{9}
-
-\end{theindex}
diff --git a/bn.pdf b/bn.pdf
deleted file mode 100644
index 615ff4e..0000000
--- a/bn.pdf
+++ /dev/null
Binary files differ
diff --git a/bn_mp_clear.c b/bn_mp_clear.c
index 5342648..1dc053b 100644
--- a/bn_mp_clear.c
+++ b/bn_mp_clear.c
@@ -19,14 +19,17 @@
void
mp_clear (mp_int * a)
{
- int i;
+ volatile mp_digit *p;
+ int len;
/* only do anything if a hasn't been freed previously */
if (a->dp != NULL) {
/* first zero the digits */
- for (i = 0; i < a->used; i++) {
- a->dp[i] = 0;
- }
+ len = a->alloc;
+ p = a->dp;
+ while (len--) {
+ *p++ = 0;
+ }
/* free ram */
XFREE(a->dp);
diff --git a/poster.pdf b/poster.pdf
deleted file mode 100644
index 4c3e365..0000000
--- a/poster.pdf
+++ /dev/null
Binary files differ
diff --git a/tommath.pdf b/tommath.pdf
deleted file mode 100644
index c486d29..0000000
--- a/tommath.pdf
+++ /dev/null
Binary files differ
diff --git a/tommath_class.h b/tommath_class.h
index 6d05b7b..9faf627 100644
--- a/tommath_class.h
+++ b/tommath_class.h
@@ -992,3 +992,9 @@
#else
#define LTM_LAST
#endif
+
+/* Dropbear doesn't need these. */
+#undef BN_MP_KARATSUBA_MUL_C
+#undef BN_MP_KARATSUBA_SQR_C
+#undef BN_MP_TOOM_MUL_C
+#undef BN_MP_TOOM_SQR_C