85ee66d6273beae891414d91e58c77be2db31ee4
[libgcrypt.git] / mpi / ChangeLog
1 2008-12-04  Werner Koch  <wk@g10code.com>
2
3         * mpicoder.c: Re-indent.
4
5 2008-12-03  Werner Koch  <wk@g10code.com>
6
7         * mpi-pow.c (gcry_mpi_powm): Fix last change.  Asserts are really
8         useful!
9
10 2008-12-02  Werner Koch  <wk@g10code.com>
11
12         * mpi-pow.c (gcry_mpi_powm): Re-indent.
13         (gcry_mpi_powm): Simplified allocation of the result to fix a
14         double free bug.  This is bug#977.  Reported by Haakon Ringberg.
15
16 2008-08-20  Werner Koch  <wk@g10code.com>
17
18         * mpi-bit.c (gcry_mpi_lshift): Actually implement.
19
20 2008-08-19  Werner Koch  <wk@g10code.com>
21
22         * mpi-bit.c (gcry_mpi_lshift): New.
23
24 2007-10-31  Werner Koch  <wk@g10code.com>
25
26         * mpi-mod.c (gcry_mpi_mod): Remove
27         * mpi-inv.c (_gcry_mpi_invm): Remove _ prefix.
28         * mpiutil.c (_gcry_mpi_swap): Remove.
29         (_gcry_mpi_new): Remove.
30         (_gcry_mpi_snew): Remove.
31         (gcry_mpi_invm): Remove.
32         (gcry_mpi_copy): Remove and rename _version to this.
33         (gcry_mpi_set, gcry_mpi_set_ui): Merge with _ version.
34         * mpi-inv.c (gcry_mpi_invm): Remove _ prefix and return 1.
35         * mpi-mul.c (gcry_mpi_mul_2exp): Remove and rename _ version to this.
36
37 2007-10-29  Werner Koch  <wk@g10code.com>
38
39         * config.links: No Candadian Cross here, thus use $host instead of
40         $target.  
41
42 2007-10-26  Werner Koch  <wk@g10code.com>
43
44         * config.links (mpi_optional_modules): Special rules for Apple
45         Darwin on ia32 from Gregor Riepl.
46
47 2007-05-09  Marcus Brinkmann  <marcus@g10code.de>
48
49         * config.links: Rename assembler file links by suffixing "-asm".
50         * Makefile.am (CCASCOMPILE, LTCCASCOMPILE, CLEANFILES,
51         libmpi_la_LIBADD, libmpi_la_DEPENDENCIES, SUFFIXES, .S.o, .S.obj,
52         .S.lo): Removed variables and targets.
53         (mpih_add1, mpih_sub1, mpih_mul1, mpih_mul2, mpih_mul3,
54         mpih_lshift, mpih_rshift, mpih_udiv, mpih_udiv_qrnnd,
55         nodist_libmpi_la_SOURCES): New variables.
56         (DISTCLEANFILES): Rename assembler file links by suffixing "-asm".
57         Add variants for C file links.
58
59 2007-05-04  Werner Koch  <wk@g10code.com>
60
61         * config.links (path): Allowthe sue of colons as delimiters. 
62
63 2007-05-03  Werner Koch  <wk@g10code.com>
64
65         * pentium4/distfiles: Fixed.
66
67 2007-04-30  Werner Koch  <wk@g10code.com>
68
69         * config.links: Create a file mod-source-info.h.
70         * Makefile.am (DISTCLEANFILES): Add that file.
71         * mpiutil.c (_gcry_mpi_get_hw_config): New.
72
73 2007-04-28  Marcus Brinkmann  <marcus@g10code.de>
74
75         * config.links: Add additional assembler search directories.
76
77 2007-03-28  Werner Koch  <wk@g10code.com>
78
79         * ec.c: New.
80
81 2007-03-23  Werner Koch  <wk@g10code.com>
82
83         * mpi-bit.c (_gcry_mpi_lshift_limbs): Assign AP after the resize.
84
85         * mpi-div.c (gcry_mpi_mod, _gcry_mpi_mod): Moved to ..
86         * mpi-mod.c: .. new file.
87         (_gcry_mpi_barrett_init, _gcry_mpi_barrett_free): New.
88         (_gcry_mpi_mod_barrett): New.
89         (_gcry_mpi_mul_barrett): New.
90
91 2007-03-22  Werner Koch  <wk@g10code.com>
92
93         * mpi-div.c (_gcry_mpi_mod): New.
94         * mpiutil.c (_gcry_mpi_new, _gcry_mpi_snew): New.
95
96 2007-03-13  Werner Dittmann <Werner.Dittmann@t-online.de>  (wk)
97
98         * amd64/mpih-add1.S, amd64/mpih-add1.S, amd64/mpih-lshift.S
99         * amd64/mpih-mul1.S, amd64/mpih-mul2.S, amd64/mpih-mul3.S
100         * amd64/mpih-rshift.S, amd64/mpih-sub1.S: New.
101         * config.links:  Add case for x86_64.
102
103 2007-02-23  Werner Koch  <wk@g10code.com>
104
105         * mpi-pow.c (gcry_mpi_powm): Remove unused var ESIGN.
106
107         * mpiutil.c (gcry_mpi_get_flag): Let it return a value to silent
108         MIPSpro cc warning.
109
110 2007-02-21  Werner Koch  <wk@g10code.com>
111
112         * mpicoder.c (_gcry_mpi_set_buffer): Made BUFFER a void*.
113
114 2006-11-15  Werner Koch  <wk@g10code.com>
115
116         * Makefile.am (.S.o): Check for srcdir also in in CPP pass.
117         (INCLUDES): Removed.
118         (AM_CPPFLAGS, AM_CFLAGS): New, modified. Merged with Moritz'
119         changes.
120
121 2006-11-05  Moritz Schulte  <moritz@g10code.com>
122
123         * Makefile.am (AM_CFLAGS): Added -I$(top_builddir)/src so that the
124         new gcrypt.h is used, not the one installed in the system.
125
126 2006-10-23  Werner Koch  <wk@g10code.com>
127
128         * config.links (mpi_optional_modules): Make sure that powerpc64 is
129         matched before a generic powerpc.  Reported by Andreas Metzler.
130         Should fix Debian bug 284609.
131
132 2006-08-25  Werner Koch  <wk@g10code.com>
133
134         * mpi-bit.c (gcry_mpi_rshift): Don't shift if N == 0 but do a
135         plain copy.
136
137 2006-08-04  Werner Koch  <wk@g10code.com>
138
139         * mpi-bit.c (gcry_mpi_rshift): Rewritten to remove the limitation
140         on N (which used to be less than BITS_PER_MPI_LIMB).
141
142 2006-08-03  Werner Koch  <wk@g10code.com>
143
144         * mpi-bit.c (gcry_mpi_set_bit, gcry_mpi_set_highbit): Fixed
145         allocation.  Reported by bpgcrypt at itaparica.org.
146         * mpiutil.c (_gcry_mpi_resize): Clear the new part of the resized
147         limb space.
148
149 2006-07-26  Werner Koch  <wk@g10code.com>
150
151         * mpiutil.c (gcry_mpi_randomize): Changed P to unsigned char*.
152
153         * mpicoder.c (gcry_mpi_scan): Changed arg BUFFER to void*.
154         (mpi_read_from_buffer): Made BUFFER arg const.
155         (gcry_mpi_scan): Removed now needless cast. Add cast for arg to
156         mpi_fromstr.
157         (gcry_mpi_print): Made TMP unsigned.
158
159         * Makefile.am (AM_CCASFLAGS): New.
160
161 2005-10-09  Moritz Schulte  <moritz@g10code.com>
162
163         * mpi-cmp.c (gcry_mpi_cmp_ui): Rewritten; correctly handle case of
164         zero limbs in U.
165
166 2005-04-27  Moritz Schulte  <moritz@g10code.com>
167
168         * mpiutil.c (gcry_mpi_randomize): Store random data in secure
169         memory if the given MPI is secure - not the other way around (argl).
170
171 2005-04-23  Moritz Schulte  <moritz@g10code.com>
172
173         * Makefile.am: Don't assume the compiler will pre-process the .S
174         files. Some compilers, like those from HP and IBM, don't do
175         this. So, we use the same solution gnupg-1.4.0 does. Preprocess
176         first and then compile.
177
178         * hppa1.1/mpih-mul3.S: Add "level 1.1" directive to disable
179         warning about using PA-RISC1.1 opcodes.
180         * hppa1.1/mpih-mul2.S: Likewise.
181         * hppa1.1/mpih-mul1.S: Likewise.
182         * hppa1.1/udiv-qrnnd.S: Likewise.
183
184 2005-02-16  Moritz Schulte  <moritz@g10code.com>
185
186         * mpiutil.c (_gcry_mpi_alloc_limb_space): Rewritten, fixed memory
187         corruption.
188
189 2005-02-06  Moritz Schulte  <moritz@g10code.com>
190
191         * mpiutil.c (_gcry_mpi_get_ui, gcry_mpi_get_ui): New functions.
192
193 2005-01-05  Werner Koch  <wk@g10code.com>
194
195         * hppa1.1/udiv-qrnnd.S: Reverted change of 2004-03-02 but kept the
196         .align directive.
197
198 2004-12-16  Werner Koch  <wk@g10code.com>
199
200         * config.links (mpi_optional_modules): Move entry for powerpc64
201         before generic powerpc.  Suggested by Rafael Ávila de Espíndola.
202
203 2004-03-02  Werner Koch  <wk@gnupg.org>
204
205         * hppa1.1/udiv-qrnnd.S: Alignment fix from Lamont Jones for
206         Debian.  Taken from gnupg-1.3.
207
208         * longlong.h: Added PowerPC 64 bit code from GPM-4.1.2 but didn't
209         enable it yet.  Some whitespace changes in HPPA to fix assembler
210         problems on HP-UX.  From gnupg 1.3
211
212         * mpiutil.c (_gcry_mpi_alloc_limb_space): Better allocate
213         something even if NLIMBS is passed as 0.
214
215         * config.links: Updated system list to match gnupg 1.3.
216
217 2003-12-19  Werner Koch  <wk@gnupg.org>
218
219         * mpi-internal.h [M_DEBUG]: Removed this unused code.
220         (struct karatsuba_ctx): Added TSPACE_NLIMBS and TP_NLIMBS.
221         * mpiutil.c (_gcry_mpi_free_limb_space): Add arg NLIMBS and wipe
222         out the memory.  Changed all callers.
223         * mpih-mul.c (_gcry_mpih_mul_karatsuba_case): Keep track of
224         allocated limbs.
225         * mpi-div.c (_gcry_mpi_tdiv_qr): Keep track of allocated limbs.
226         * mpi-mul.c (gcry_mpi_mul): Ditto.
227         * mpi-pow.c (gcry_mpi_powm): Ditto.
228
229         * Manifest: Empty new file.  Also add Manifest files to all CPU
230         specific directories.
231         * Makefile.am: Added.
232
233         * mpiutil.c (gcry_mpi_randomize): Use gcry_create_nonce if WEAK
234         random has been requested.
235
236 2003-10-31  Werner Koch  <wk@gnupg.org>
237
238         * i386/mpih-rshift.S, i386/mpih-lshift.S: Use %dl and not %edx for
239         testb; this avoids an assembler warning.
240
241         * mpi-pow.c (gcry_mpi_powm): s/exp/expo/ to avoid shadowing warning.
242
243 2003-08-19  Marcus Brinkmann  <marcus@g10code.de>
244
245         * Makefile.am (SUFFIXES): New variable.
246         (.S.o, .S.lo, .S.obj): Rewritten.
247
248 2003-07-30  Moritz Schulte  <moritz@g10code.com>
249
250         * longlong.h (__clz_tab): Renamed to _gcry_clz_tab.
251         * mpi-bit.c (__clz_tab): Likewise.
252
253 2003-07-27  Werner Koch  <wk@gnupg.org>
254
255         * mpicoder.c (gcry_mpi_scan): New argument BUFLEN to replace the
256         use of the intial value of NBYTES.  Changed BUFFER to unsigned.
257         (gcry_mpi_print): Likewise.
258         (gcry_mpi_dump): New.
259         (_gcry_log_mpidump): Make use of gcry_mpi_dump.
260         (mpi_print): Removed.
261         (gcry_mpi_scan): Allocated mpi in secure memory when required.
262         (gcry_mpi_aprint): Changed BUFFER to unsigned char*.
263
264 2003-07-14  Moritz Schulte  <moritz@g10code.com>
265
266         * mpicoder.c: Used gcry_err* wrappers for libgpg-error symbols.
267
268 2003-06-16  Moritz Schulte  <moritz@g10code.com>
269
270         * mpi-add.c: Replace last occurences of old type names with newer
271         names (i.e. replace MPI with gcry_mpi_t).
272         * mpi-bit.c: Likewise.
273         * mpi-cmp.c: Likewise.
274         * mpi-div.c: Likewise.
275         * mpi-gcd.c: Likewise.
276         * mpi-internal.h: Likewise.
277         * mpi-inv.c: Likewise.
278         * mpi-mpow.c: Likewise.
279         * mpi-mul.c: Likewise.
280         * mpi-pow.c: Likewise.
281         * mpi-scan.c: Likewise.
282         * mpicoder.c: Likewise.
283         * mpiutil.c: Likewise.
284
285 2003-06-09  Moritz Schulte  <moritz@g10code.com>
286
287         * mpicoder.c (gcry_mpi_scan): Adjust for libgpg-error.
288         (gcry_mpi_print): Likewise.
289         (gcry_mpi_aprint): Likewise.
290
291 2003-06-07  Moritz Schulte  <moritz@g10code.com>
292
293         * longlong.h, mpi-add.c, mpi-bit.c, mpi-cmp.c, mpi-div.c,
294         mpi-gcd.c, mpi-inline.c, mpi-inline.h, mpi-internal.h, mpi-inv.c,
295         mpi-mpow.c, mpi-mul.c, mpi-pow.c, mpi-scan.c, mpicoder.c,
296         mpih-div.c, mpih-mul.c, mpiutil.c, generic/mpi-asm-defs.h,
297         generic/mpih-add1.c, generic/mpih-lshift.c, generic/mpih-mul1.c,
298         generic/mpih-mul2.c, generic/mpih-mul3.c, generic/mpih-rshift.c,
299         generic/mpih-sub1.c, generic/udiv-w-sdiv.c, i386/syntax.h,
300         m68k/syntax.h, mips3/mpi-asm-defs.h, powerpc32/syntax.h: Edited
301         all preprocessor instructions to remove whitespace before the '#'.
302         This is not required by C89, but there are some compilers out
303         there that don't like it.  Replaced any occurence of the now
304         deprecated type names with the new ones.
305
306 2003-05-21  Moritz Schulte  <moritz@g10code.com>
307
308         * mpiutil.c (_gcry_mpi_alloc_limb_space): Only try to allocate
309         memory in case the amount of bytes to allocate is non-zero.
310
311 2003-04-27  Moritz Schulte  <moritz@g10code.com>
312
313         * mpiutil.c (_gcry_mpi_resize): Allocate secure memory, in case
314         bit zero of `flags' is set.
315
316         * mpi-add.c (gcry_mpi_sub): Simplify function; always use a
317         temporary variable now.
318
319 2003-04-15  Werner Koch  <wk@gnupg.org>
320
321         * longlong.h (umul_ppmm): Support SH3 and SH4.  Thanks to
322         kazuya.s@jp.yokogawa.com.
323
324 2003-04-02  Werner Koch  <wk@gnupg.org>
325
326         * mpicoder.c (gcry_mpi_print): Fixed testing against possible
327         uninitialized LEN.  Valgrinded by Nikos Mavroyanopoulos.
328
329 2003-01-15  Werner Koch  <wk@gnupg.org>
330
331         * longlong.h: Removed some spaces between backslashes and newlines.
332
333 2002-09-20  Werner Koch  <wk@gnupg.org>
334
335         * mpi-mul.c (gcry_mpi_mul_2exp): New. This was declared in
336         gcrypt.h but only implemented as internal function.  Noted by Timo
337         but a few minutes to late for today's release.
338
339         * Makefile.am (DISTCLEANFILES): Include mpi-asm-defs.h
340
341 2002-09-18  Werner Koch  <wk@gnupg.org>
342
343         * Makefile.am (.S.lo): Pass -DPIC. i386, PPC and Sparc code
344         require it.  It worked for me because I am using the i586 code.
345
346 2002-08-23  Werner Koch  <wk@gnupg.org>
347
348         * Makefile.am (.S.lo): Fixed for libtool build with --disable-shared.
349
350 2002-07-24  Werner Koch  <wk@gnupg.org>
351
352         * longlong.h: Replaced all K&R multiline strings by ISO ones for
353         the sake of modern compilers.  Suggested by Marco Parrone.
354
355 2002-06-24  Werner Koch  <wk@gnupg.org>
356
357         * mpiutil.c (gcry_mpi_swap): New.
358
359         * mpi-div.c (gcry_mpi_div): New.
360         (gcry_mpi_mod): New.
361         * mpi-inv.c (gcry_mpi_invm): New.
362
363         * mpicoder.c (do_get_buffer): Make sure that we allocate at least
364         one byte.
365
366 2002-06-12  Werner Koch  <wk@gnupg.org>
367
368         * hppa1.1/udiv-qrnnd.S: Changes for PIC by Randolph Chung.
369
370 2002-05-15  Werner Koch  <wk@gnupg.org>
371
372         * config.links: Chnage the way the mpi modules are determined.
373         * Makefile.am: Revamped to better handle modules
374
375 2002-05-14  Werner Koch  <wk@gnupg.org>
376
377         Changed license of all files to the LGPL.
378
379 2002-04-18  Werner Koch  <wk@gnupg.org>
380
381         * mpicoder.c (gcry_mpi_scan): Don't use normalize on a NULL MPI.
382
383 2002-03-20  Werner Koch  <wk@gnupg.org>
384
385         * mpicoder.c (mpi_read_from_buffer): Bail out on a zero length
386         buffer because we can't eventually do an malloc of this size.
387         Reported by Timo.
388
389 2002-01-14  Werner Koch  <wk@gnupg.org>
390
391         * mpi-inv.c (_gcry_mpi_invm): Typo fixes, noted by Carlo Perassi.
392
393 2001-11-01  Werner Koch  <wk@gnupg.org>
394
395         * mpicoder.c (gcry_mpi_scan): Allow to pass a nbytes as NULL or
396         with value 0 for format GCRY_FMT_SSH, so that the length is not
397         used for any checks, only the length stored in the bufer is used.
398         This is a nice format becuase we can just pass a buffer around and
399         don't need to care about its length.
400
401 2001-08-03  Werner Koch  <wk@gnupg.org>
402
403         * config.links: Changed the way the list of files to be
404         symlinked is returned.
405
406 2001-05-31  Werner Koch  <wk@gnupg.org>
407
408         * mpih-cmp.c: Removed and moved mpihelp_cmp to ..
409         * mpi-inline.h: .. here.
410
411         Major function renaming. All global functions are now prefixed
412         with _gcry_ or gcry_.  Renamed also all mpihelp_ to just mpih_ so
413         that functions names are not getting to long an unreadable and for
414         better matching with the filenames.
415         
416 2001-05-28  Werner Koch  <wk@gnupg.org>
417
418         * mpicoder.c (mpi_fromstr): Made static and assume that all input
419         is in hexformat.
420
421         Updated all CPU specific code with the one from GnuPG-1.0.5.  This
422         is just a change of text formatting and the use of .label
423         instead of labels for hppa and pa7100.
424
425         * longlong.h: Fixes for ARM by Phil Blundell.
426
427 2001-03-29  Werner Koch  <wk@gnupg.org>
428
429         * mpi-mul.c (mpi_mul): Make sure that secret temporary results are
430         not stored in w.  Suggested by Florian Weimer.
431
432         * config.links: Use i386 code for i386.  According to tests by
433         Kevin Ryde the i586 code runs slow on i386 CPUs.  Ditto for i786.
434
435 2001-01-11  Werner Koch  <wk@gnupg.org>
436
437         * Makefile.am: Removed mpi.h.
438
439 2000-12-19  Werner Koch  <wk@gnupg.org>
440
441         * mpi-internal.h: Put limb_t definition in an ifdef.
442
443         Major change:
444         Removed all GnuPG stuff and renamed this piece of software
445         to gcrypt. 
446
447 2000-11-14  Werner Koch  <wk@gnupg.org>
448
449         * mpi-internal.h, mpi.h: Changed the way they are called and
450         introduced DID_MPI_LIMP_TYPEDEF hack.  Very ugly, should all be
451         revamped.
452         
453         * Makefile.am (OMIT_DEPENDENCIES): Hack to work around dependency
454         problems.
455
456 2000-10-11  Werner Koch  <wk@gnupg.org>
457
458         * generic/mpi-asm-defs.h: New.
459         * mips3/mpi-asm-defs.h: New.
460         * config.links: Create a link to one of the above files.
461
462 Fri Jul 28 18:19:11 CEST 2000  Werner Koch  <wk@openit.de>
463
464   * mpicoder.c (gcry_mpi_scan): Normalize the returned MPI.
465
466 Tue Jul 25 17:44:15 CEST 2000  Werner Koch  <wk@openit.de>
467
468   * config.links: Support for powerpc--netbsd by Gabriel Rosenkoetter.
469
470 Mon Jul 17 16:35:47 CEST 2000  Werner Koch  <wk@>
471
472   * power/: Add all files from GMP for this CPU. Converted comments to
473   CPP comments because some ASes complain about ' in comments.
474
475   * config.links:  Support for BSDI 4.x; by Wayne Chapeskie. Add support
476   for FreeBSD 5 and made the case stmt looking nicer; by Jun Kuriyama.
477   Add support for NetBSD.
478   (sparc8): Made the search path the same as sparc9
479   (sparc64-unknown-linux-gnu): use udiv module; by Adam Mitchell.
480
481   * Makefile.am: c/SFLAGS/ASFLAGS/. This has only been used by the
482   powerpc and actually never passed the -Wa,foo to the cc.
483
484   * mpih-div.c (mpihelp_divrem): The MPN_COPY_DECR copied one element
485   too many.  This is a gmp2.0.2p9.txt patch.
486
487   * longlong.h (umul_ppmm): Fixes for ARM-4. By Sean MacLennan.
488
489   * mpi-internal.h (karatsuba_ctx): New.
490   * mpih-mul.c (mpihelp_release_karatsuba_ctx): New.
491   (mpihelp_mul_karatsuba_case): New.
492   (mpihelp_mul): Splitted to make use of the new functions.
493   * mpi-pow.c (mpi_powm): Make use of the new splitted function to avoid
494   multiple allocation of temporary memory during the karatsuba operations.
495   * mpi_mpow.c: Removed the unused Barrett code.
496
497 2000-03-21 16:17:30  Werner Koch  (wk@habibti.openit.de)
498
499         * config.links: Add support for FreeBSD 5.
500
501 Mon Jan 24 22:24:38 CET 2000  Werner Koch  <wk@gnupg.de>
502
503         * mpicoder.c (gcry_mpi_aprint): Now really returns the length.
504
505 Mon Jan 24 13:04:28 CET 2000  Werner Koch  <wk@gnupg.de>
506
507         * mpiutil.c: Removed all memory debugging code.
508
509         * mpicoder.c (gcry_mpi_aprint): New.
510
511         * Replaced all m_ memory functions by g10_ ones.
512
513 Fri Dec 31 14:06:56 CET 1999  Werner Koch  <wk@gnupg.de>
514
515         * mpi-bit.c (gcry_mpi_get_nbits): New.
516
517         * mpiutil.c (mpi_set_secure): made static.
518         (gcry_mpi_get_flag): New.
519         (gcry_mpi_set_flag): New.
520         (gcry_mpi_clear_flag): New.
521         (mpi_set_opaque): renamed to gcry_mpi_set_opaque.
522         (mpi_get_opaque): renamed to gcry_mpi_get_opaque.
523
524 Fri Dec 31 12:48:31 CET 1999  Werner Koch  <wk@gnupg.de>
525
526         * mpicoder.c (mpi_read_from_buffer): Made static.
527         (gcry_mpi_print): A buffer of NULL is now allowed to get the required
528         length back.
529         (mpi_get_keyid): Removed.
530         (mpi_print): Made static - should be removed.
531
532 Wed Dec  8 21:58:32 CET 1999  Werner Koch  <wk@gnupg.de>
533
534         * Makefile.am (INCLUDES): Add ../gcrypt.
535
536         * g10m.c : Removed.
537
538         * mpicoder.c (mpi_write): Removed.
539         (mpi_read): Removed.
540         (gcry_mpi_scan): New. Taken from ../gcrypt/mpiapi.c.
541         (gcry_mpi_print): Ditto.
542
543         * mpi-pow.c (mpi_powm): Renamed to ...
544         (gcry_mpi_powm): ... this.
545
546         * mpiutil.c (gcry_mpi_new): New as a wrapper around the old function.
547         Taken from ../gcrypt/mpiapi.c.
548         (gcry_mpi_snew): Ditto.
549         (gcry_mpi_release): Ditto.
550         (gcry_mpi_copy): Ditto.
551         (gcry_mpi_set): Ditto.
552         (gcry_mpi_set_ui): Ditto.
553         (gcry_mpi_cmp): Ditto.
554         (gcry_mpi_cmp_ui): Ditto.
555         (gcry_mpi_randomize): Ditto.
556
557         * mpicoder.c (mpi_print): Removed the nbit_info kludge.
558         * mpi-bits.c (mpi_get_nbits): Replaced the is_protected stuff by
559         checking whether it is an opaque mpi and then returns it's length
560         in bits.
561         * mpiutil.c (mpi_set_opaque): Changed the interface to take a number
562         of bits for the length.  Adjusted all users.
563         (mpi_get_opaque): Ditto.
564
565 Fri Nov 19 17:15:20 CET 1999  Werner Koch  <wk@gnupg.de>
566
567         * mpicoder.c (g10_log_mpidump): Add a temporary workaround
568
569         * mpih-mul.c (mpihelp_mul_n): s/m_is_ecure/g10_is_secure/
570
571         * mpiutil.c (mpi_alloc): Remved the debug mode because it has turned
572         out, that this feature was not very useful in the past.  Use the
573         new alloc functions.
574         (mpi_alloc_secure): Ditto.
575         (mpi_alloc_limb_space): Ditto.
576         (mpi_free_limb_space): Ditto.
577         (mpi_resize): Ditto.
578         (mpi_free): Ditto.
579         (mpi_set_secure): Removed the debug stuff.
580         (mpi_set_opaque): Ditto.
581         (mpi_copy): Ditto.
582         (mpi_alloc_set_ui): Ditto.
583         (mpi_m_check): Use g10_ wrapper.
584
585 Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
586
587
588         * config.links: Add case label for DJGPP
589
590 Wed Jul 14 19:42:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
591
592
593         * Makefile.am: Use .s files as temporaries, disabled other .S rules.
594
595 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
596
597
598         * mpicoder.c (g10_log_mpidump): New.
599
600         * Makefile.am: Support for libtool.
601
602 Fri Jul  2 11:45:54 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
603
604
605         * mpi-bit.c (mpi_lshift_limbs,mpi_rshift_limbs): New.
606         * mpi-mpow.c (barrett_mulm): New but diabled.
607
608 Tue Jun  1 16:01:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
609
610         * config.links (i[56]86*-*-freebsdelf*): New.
611
612 Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
613
614         * config.links (sysdep.h): Not any more conditionally created.
615
616 Tue May  4 15:47:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
617
618         * mpiutil.c (mpi_alloc_like): New.
619
620 Mon Apr 26 17:48:15 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
621
622         * mpih-add.c, mpih-sub.c: Removed
623         * mpi-inline.c: New.
624         * mpi-inline.h: Make it usable by mpi-inline.c.
625
626 Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
627
628         * mpih-mul.c (mpihelp_mul_n): Fixed use of memory region.
629         (mpihelp_mul): Ditto.
630
631 Wed Apr  7 20:51:39 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
632
633         * Makefile.am: Explicit rules to invoke cpp on *.S
634
635 Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
636
637         * config.links: Take advantage of the with_symbol_underscore macro.
638         Add support for freebsd 4.
639
640 Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
641
642         * mips3/mpih-sub1.S: Removed left over junk in last line. (Should I
643         blame me or my editor?).
644
645 Sat Feb 13 12:04:43 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
646
647         * Makefile.am: Removed the +=. Add MPI_OPT_FLAGS.
648
649 Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
650
651         * mpi-cmp.c (mpi_cmp_ui): Normalized the arg.
652
653 Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
654
655         * mpi-bit.c (mpi_normalize): New.
656         (mpi_get_nbits): Normalize the MPI.
657         * mpi-bit.c (mpi_cmp): Normalize the MPI before the compare.
658
659
660 Tue Dec  8 13:15:16 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
661
662         * config.links: Moved the case for powerpc*linux
663         * powerpcp32/*.S: Removed some underscores.
664
665 Thu Nov 26 07:27:52 1998  Werner Koch  <werner.koch@guug.de>
666
667         * config.links: Support for ppc with ELF
668         * powerpc32/syntax.h: New.
669         * powerpc32/*.S: Applied ELF patches (glibc patches)
670
671 Tue Nov 10 19:31:37 1998  Werner Koch  (wk@isil.d.shuttle.de)
672
673         * power*/ : Started with stuff for PPC
674         * config.links: Some stuff for PPC.
675         * generic/udiv-w-sdiv.c: New but disabled.
676
677 Tue Oct 27 12:37:46 1998  Werner Koch  (wk@isil.d.shuttle.de)
678
679         * config.links (freebsd): Fixes for FreeBSD 3.0
680
681 Wed Oct 14 09:59:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
682
683         * config.links (freebsd): ELF patches from Jun Kuriyama.
684
685 Thu Oct  8 13:28:17 1998  Werner Koch  (wk@isil.d.shuttle.de)
686
687         * mpi-mpow.c (mpi_mulpowm): Fixed mem leak (m_free/mpi_free).
688
689 Thu Sep 17 18:08:50 1998  Werner Koch  (wk@(none))
690
691         * hppa1.1/udiv-qrnnd.S: Fix from Steffen Zahn for HPUX 10.20
692
693 Thu Aug  6 16:39:28 1998  Werner Koch,mobil,,,  (wk@tobold)
694
695         * mpi-bit.c (mpi_set_bytes): Removed.
696
697 Wed Aug  5 15:11:12 1998  Werner Koch  (wk@(none))
698
699         * mpicoder.c (mpi_read_from_buffer): New.
700
701         * mpiutil.c (mpi_set_opaque): New.
702         (mpi_get_opaque): New.
703         (mpi_copy): Changed to support opauqe flag
704         (mpi_free): Ditto.
705
706 Sat Jul  4 10:11:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
707
708         * mpiutil.c (mpi_clear): Reset flags.
709         (mpi_set): Ditto.
710         (mpi_alloc_secure): Set flag to 1 and not ored the 1 in, tsss..
711
712 Fri Jun 26 11:19:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
713
714         * mpiutil.c (mpi_alloc): set nbits to 0.
715         (mpi_alloc_secure): Ditto.
716         (mpi_clear): Ditto.
717
718 Thu Jun 25 11:50:01 1998  Werner Koch  (wk@isil.d.shuttle.de)
719
720         * mips3/*.S: New
721
722 Mon May 18 13:47:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
723
724         * config.links: split mpih-shift into mpih-[lr]shift and
725         changed all implementations.
726         * mpi/alpha: add some new assembler stuff.
727
728 Wed May 13 11:04:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
729
730         * config.links: Add support for MIPS
731
732 Thu Apr  9 11:31:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
733
734         * mpicoder.c (mpi_get_secure_buffer): New.
735
736 Wed Apr  8 09:44:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
737
738         * config.links: Applied small fix from Ulf Möller.
739
740 Mon Apr  6 12:38:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
741
742         * mpicoder.c (mpi_get_buffer): Removed returned leading zeroes
743         and changed all callers.
744
745 Tue Mar 10 13:40:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
746
747         * mpi-bit.c (mpi_clear_highbit): New.
748
749 Mon Mar  2 19:29:00 1998  Werner Koch  (wk@isil.d.shuttle.de)
750
751         * Makefile.am (DISTCLEANFILES): New
752
753 Thu Feb 26 06:48:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
754
755         * config.links (X86_BROKEN_ALIGN): Added for some systems.
756
757 Mon Feb 23 12:21:40 1998  Werner Koch  (wk@isil.d.shuttle.de)
758
759         * mpi/m68k/mpih-shift.S (Lspecial): Changed duplicate symbol.
760
761 Mon Feb 16 13:00:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
762
763         * config.links : Add detection of m68k cpus
764
765
766  Copyright 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc.
767
768  This file is free software; as a special exception the author gives
769  unlimited permission to copy and/or distribute it, with or without
770  modifications, as long as this notice is preserved.
771
772  This file is distributed in the hope that it will be useful, but
773  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
774  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.