142
|
1 #include <tommath.h> |
|
2 #ifdef BN_MP_CLEAR_C |
2
|
3 /* LibTomMath, multiple-precision integer library -- Tom St Denis |
|
4 * |
|
5 * LibTomMath is a library that provides multiple-precision |
|
6 * integer arithmetic as well as number theoretic functionality. |
|
7 * |
|
8 * The library was designed directly after the MPI library by |
|
9 * Michael Fromberger but has been written from scratch with |
|
10 * additional optimizations in place. |
|
11 * |
|
12 * The library is free for all purposes without any express |
|
13 * guarantee it works. |
|
14 * |
|
15 * Tom St Denis, [email protected], http://math.libtomcrypt.org |
|
16 */ |
|
17 |
|
18 /* clear one (frees) */ |
|
19 void |
|
20 mp_clear (mp_int * a) |
|
21 { |
142
|
22 int i; |
|
23 |
2
|
24 /* only do anything if a hasn't been freed previously */ |
|
25 if (a->dp != NULL) { |
|
26 /* first zero the digits */ |
142
|
27 for (i = 0; i < a->used; i++) { |
|
28 a->dp[i] = 0; |
|
29 } |
2
|
30 |
|
31 /* free ram */ |
|
32 XFREE(a->dp); |
|
33 |
|
34 /* reset members to make debugging easier */ |
|
35 a->dp = NULL; |
|
36 a->alloc = a->used = 0; |
|
37 a->sign = MP_ZPOS; |
|
38 } |
|
39 } |
142
|
40 #endif |