* acinclude.m4 (AC_CHECK_PTH): Added.
[libgcrypt.git] / mpi / ChangeLog
1 2003-10-31  Werner Koch  <wk@gnupg.org>
2
3         * i386/mpih-rshift.S, i386/mpih-lshift.S: Use %dl and not %edx for
4         testb; this avoids an assembler warning.
5
6         * mpi-pow.c (gcry_mpi_powm): s/exp/expo/ to avoid shadowing warning.
7
8 2003-08-19  Marcus Brinkmann  <marcus@g10code.de>
9
10         * Makefile.am (SUFFIXES): New variable.
11         (.S.o, .S.lo, .S.obj): Rewritten.
12
13 2003-07-30  Moritz Schulte  <moritz@g10code.com>
14
15         * longlong.h (__clz_tab): Renamed to _gcry_clz_tab.
16         * mpi-bit.c (__clz_tab): Likewise.
17
18 2003-07-27  Werner Koch  <wk@gnupg.org>
19
20         * mpicoder.c (gcry_mpi_scan): New argument BUFLEN to replace the
21         use of the intial value of NBYTES.  Changed BUFFER to unsigned.
22         (gcry_mpi_print): Likewise.
23         (gcry_mpi_dump): New.
24         (_gcry_log_mpidump): Make use of gcry_mpi_dump.
25         (mpi_print): Removed.
26         (gcry_mpi_scan): Allocated mpi in secure memory when required.
27         (gcry_mpi_aprint): Changed BUFFER to unsigned char*.
28
29 2003-07-14  Moritz Schulte  <moritz@g10code.com>
30
31         * mpicoder.c: Used gcry_err* wrappers for libgpg-error symbols.
32
33 2003-06-16  Moritz Schulte  <moritz@g10code.com>
34
35         * mpi-add.c: Replace last occurences of old type names with newer
36         names (i.e. replace MPI with gcry_mpi_t).
37         * mpi-bit.c: Likewise.
38         * mpi-cmp.c: Likewise.
39         * mpi-div.c: Likewise.
40         * mpi-gcd.c: Likewise.
41         * mpi-internal.h: Likewise.
42         * mpi-inv.c: Likewise.
43         * mpi-mpow.c: Likewise.
44         * mpi-mul.c: Likewise.
45         * mpi-pow.c: Likewise.
46         * mpi-scan.c: Likewise.
47         * mpicoder.c: Likewise.
48         * mpiutil.c: Likewise.
49
50 2003-06-09  Moritz Schulte  <moritz@g10code.com>
51
52         * mpicoder.c (gcry_mpi_scan): Adjust for libgpg-error.
53         (gcry_mpi_print): Likewise.
54         (gcry_mpi_aprint): Likewise.
55
56 2003-06-07  Moritz Schulte  <moritz@g10code.com>
57
58         * longlong.h, mpi-add.c, mpi-bit.c, mpi-cmp.c, mpi-div.c,
59         mpi-gcd.c, mpi-inline.c, mpi-inline.h, mpi-internal.h, mpi-inv.c,
60         mpi-mpow.c, mpi-mul.c, mpi-pow.c, mpi-scan.c, mpicoder.c,
61         mpih-div.c, mpih-mul.c, mpiutil.c, generic/mpi-asm-defs.h,
62         generic/mpih-add1.c, generic/mpih-lshift.c, generic/mpih-mul1.c,
63         generic/mpih-mul2.c, generic/mpih-mul3.c, generic/mpih-rshift.c,
64         generic/mpih-sub1.c, generic/udiv-w-sdiv.c, i386/syntax.h,
65         m68k/syntax.h, mips3/mpi-asm-defs.h, powerpc32/syntax.h: Edited
66         all preprocessor instructions to remove whitespace before the '#'.
67         This is not required by C89, but there are some compilers out
68         there that don't like it.  Replaced any occurence of the now
69         deprecated type names with the new ones.
70
71 2003-05-21  Moritz Schulte  <moritz@g10code.com>
72
73         * mpiutil.c (_gcry_mpi_alloc_limb_space): Only try to allocate
74         memory in case the amount of bytes to allocate is non-zero.
75
76 2003-04-27  Moritz Schulte  <moritz@g10code.com>
77
78         * mpiutil.c (_gcry_mpi_resize): Allocate secure memory, in case
79         bit zero of `flags' is set.
80
81         * mpi-add.c (gcry_mpi_sub): Simplify function; always use a
82         temporary variable now.
83
84 2003-04-15  Werner Koch  <wk@gnupg.org>
85
86         * longlong.h (umul_ppmm): Support SH3 and SH4.  Thanks to
87         kazuya.s@jp.yokogawa.com.
88
89 2003-04-02  Werner Koch  <wk@gnupg.org>
90
91         * mpicoder.c (gcry_mpi_print): Fixed testing against possible
92         uninitialized LEN.  Valgrinded by Nikos Mavroyanopoulos.
93
94 2003-01-15  Werner Koch  <wk@gnupg.org>
95
96         * longlong.h: Removed some spaces between backslashes and newlines.
97
98 2002-09-20  Werner Koch  <wk@gnupg.org>
99
100         * mpi-mul.c (gcry_mpi_mul_2exp): New. This was declared in
101         gcrypt.h but only implemented as internal function.  Noted by Timo
102         but a few minutes to late for today's release.
103
104         * Makefile.am (DISTCLEANFILES): Include mpi-asm-defs.h
105
106 2002-09-18  Werner Koch  <wk@gnupg.org>
107
108         * Makefile.am (.S.lo): Pass -DPIC. i386, PPC and Sparc code
109         require it.  It worked for me because I am using the i586 code.
110
111 2002-08-23  Werner Koch  <wk@gnupg.org>
112
113         * Makefile.am (.S.lo): Fixed for libtool build with --disable-shared.
114
115 2002-07-24  Werner Koch  <wk@gnupg.org>
116
117         * longlong.h: Replaced all K&R multiline strings by ISO ones for
118         the sake of modern compilers.  Suggested by Marco Parrone.
119
120 2002-06-24  Werner Koch  <wk@gnupg.org>
121
122         * mpiutil.c (gcry_mpi_swap): New.
123
124         * mpi-div.c (gcry_mpi_div): New.
125         (gcry_mpi_mod): New.
126         * mpi-inv.c (gcry_mpi_invm): New.
127
128         * mpicoder.c (do_get_buffer): Make sure that we allocate at least
129         one byte.
130
131 2002-06-12  Werner Koch  <wk@gnupg.org>
132
133         * hppa1.1/udiv-qrnnd.S: Changes for PIC by Randolph Chung.
134
135 2002-05-15  Werner Koch  <wk@gnupg.org>
136
137         * config.links: Chnage the way the mpi modules are determined.
138         * Makefile.am: Revamped to better handle modules
139
140 2002-05-14  Werner Koch  <wk@gnupg.org>
141
142         Changed license of all files to the LGPL.
143
144 2002-04-18  Werner Koch  <wk@gnupg.org>
145
146         * mpicoder.c (gcry_mpi_scan): Don't use normalize on a NULL MPI.
147
148 2002-03-20  Werner Koch  <wk@gnupg.org>
149
150         * mpicoder.c (mpi_read_from_buffer): Bail out on a zero length
151         buffer because we can't eventually do an malloc of this size.
152         Reported by Timo.
153
154 2002-01-14  Werner Koch  <wk@gnupg.org>
155
156         * mpi-inv.c (_gcry_mpi_invm): Typo fixes, noted by Carlo Perassi.
157
158 2001-11-01  Werner Koch  <wk@gnupg.org>
159
160         * mpicoder.c (gcry_mpi_scan): Allow to pass a nbytes as NULL or
161         with value 0 for format GCRY_FMT_SSH, so that the length is not
162         used for any checks, only the length stored in the bufer is used.
163         This is a nice format becuase we can just pass a buffer around and
164         don't need to care about its length.
165
166 2001-08-03  Werner Koch  <wk@gnupg.org>
167
168         * config.links: Changed the way the list of files to be
169         symlinked is returned.
170
171 2001-05-31  Werner Koch  <wk@gnupg.org>
172
173         * mpih-cmp.c: Removed and moved mpihelp_cmp to ..
174         * mpi-inline.h: .. here.
175
176         Major function renaming. All global functions are now prefixed
177         with _gcry_ or gcry_.  Renamed also all mpihelp_ to just mpih_ so
178         that functions names are not getting to long an unreadable and for
179         better matching with the filenames.
180         
181 2001-05-28  Werner Koch  <wk@gnupg.org>
182
183         * mpicoder.c (mpi_fromstr): Made static and assume that all input
184         is in hexformat.
185
186         Updated all CPU specific code with the one from GnuPG-1.0.5.  This
187         is just a change of text formatting and the use of .label
188         instead of labels for hppa and pa7100.
189
190         * longlong.h: Fixes for ARM by Phil Blundell.
191
192 2001-03-29  Werner Koch  <wk@gnupg.org>
193
194         * mpi-mul.c (mpi_mul): Make sure that secret temporary results are
195         not stored in w.  Suggested by Florian Weimer.
196
197         * config.links: Use i386 code for i386.  According to tests by
198         Kevin Ryde the i586 code runs slow on i386 CPUs.  Ditto for i786.
199
200 2001-01-11  Werner Koch  <wk@gnupg.org>
201
202         * Makefile.am: Removed mpi.h.
203
204 2000-12-19  Werner Koch  <wk@gnupg.org>
205
206         * mpi-internal.h: Put limb_t definition in an ifdef.
207
208         Major change:
209         Removed all GnuPG stuff and renamed this piece of software
210         to gcrypt. 
211
212 2000-11-14  Werner Koch  <wk@gnupg.org>
213
214         * mpi-internal.h, mpi.h: Changed the way they are called and
215         introduced DID_MPI_LIMP_TYPEDEF hack.  Very ugly, should all be
216         revamped.
217         
218         * Makefile.am (OMIT_DEPENDENCIES): Hack to work around dependency
219         problems.
220
221 2000-10-11  Werner Koch  <wk@gnupg.org>
222
223         * generic/mpi-asm-defs.h: New.
224         * mips3/mpi-asm-defs.h: New.
225         * config.links: Create a link to one of the above files.
226
227 Fri Jul 28 18:19:11 CEST 2000  Werner Koch  <wk@openit.de>
228
229   * mpicoder.c (gcry_mpi_scan): Normalize the returned MPI.
230
231 Tue Jul 25 17:44:15 CEST 2000  Werner Koch  <wk@openit.de>
232
233   * config.links: Support for powerpc--netbsd by Gabriel Rosenkoetter.
234
235 Mon Jul 17 16:35:47 CEST 2000  Werner Koch  <wk@>
236
237   * power/: Add all files from GMP for this CPU. Converted comments to
238   CPP comments because some ASes complain about ' in comments.
239
240   * config.links:  Support for BSDI 4.x; by Wayne Chapeskie. Add support
241   for FreeBSD 5 and made the case stmt looking nicer; by Jun Kuriyama.
242   Add support for NetBSD.
243   (sparc8): Made the search path the same as sparc9
244   (sparc64-unknown-linux-gnu): use udiv module; by Adam Mitchell.
245
246   * Makefile.am: c/SFLAGS/ASFLAGS/. This has only been used by the
247   powerpc and actually never passed the -Wa,foo to the cc.
248
249   * mpih-div.c (mpihelp_divrem): The MPN_COPY_DECR copied one element
250   too many.  This is a gmp2.0.2p9.txt patch.
251
252   * longlong.h (umul_ppmm): Fixes for ARM-4. By Sean MacLennan.
253
254   * mpi-internal.h (karatsuba_ctx): New.
255   * mpih-mul.c (mpihelp_release_karatsuba_ctx): New.
256   (mpihelp_mul_karatsuba_case): New.
257   (mpihelp_mul): Splitted to make use of the new functions.
258   * mpi-pow.c (mpi_powm): Make use of the new splitted function to avoid
259   multiple allocation of temporary memory during the karatsuba operations.
260   * mpi_mpow.c: Removed the unused Barrett code.
261
262 2000-03-21 16:17:30  Werner Koch  (wk@habibti.openit.de)
263
264         * config.links: Add support for FreeBSD 5.
265
266 Mon Jan 24 22:24:38 CET 2000  Werner Koch  <wk@gnupg.de>
267
268         * mpicoder.c (gcry_mpi_aprint): Now really returns the length.
269
270 Mon Jan 24 13:04:28 CET 2000  Werner Koch  <wk@gnupg.de>
271
272         * mpiutil.c: Removed all memory debugging code.
273
274         * mpicoder.c (gcry_mpi_aprint): New.
275
276         * Replaced all m_ memory functions by g10_ ones.
277
278 Fri Dec 31 14:06:56 CET 1999  Werner Koch  <wk@gnupg.de>
279
280         * mpi-bit.c (gcry_mpi_get_nbits): New.
281
282         * mpiutil.c (mpi_set_secure): made static.
283         (gcry_mpi_get_flag): New.
284         (gcry_mpi_set_flag): New.
285         (gcry_mpi_clear_flag): New.
286         (mpi_set_opaque): renamed to gcry_mpi_set_opaque.
287         (mpi_get_opaque): renamed to gcry_mpi_get_opaque.
288
289 Fri Dec 31 12:48:31 CET 1999  Werner Koch  <wk@gnupg.de>
290
291         * mpicoder.c (mpi_read_from_buffer): Made static.
292         (gcry_mpi_print): A buffer of NULL is now allowed to get the required
293         length back.
294         (mpi_get_keyid): Removed.
295         (mpi_print): Made static - should be removed.
296
297 Wed Dec  8 21:58:32 CET 1999  Werner Koch  <wk@gnupg.de>
298
299         * Makefile.am (INCLUDES): Add ../gcrypt.
300
301         * g10m.c : Removed.
302
303         * mpicoder.c (mpi_write): Removed.
304         (mpi_read): Removed.
305         (gcry_mpi_scan): New. Taken from ../gcrypt/mpiapi.c.
306         (gcry_mpi_print): Ditto.
307
308         * mpi-pow.c (mpi_powm): Renamed to ...
309         (gcry_mpi_powm): ... this.
310
311         * mpiutil.c (gcry_mpi_new): New as a wrapper around the old function.
312         Taken from ../gcrypt/mpiapi.c.
313         (gcry_mpi_snew): Ditto.
314         (gcry_mpi_release): Ditto.
315         (gcry_mpi_copy): Ditto.
316         (gcry_mpi_set): Ditto.
317         (gcry_mpi_set_ui): Ditto.
318         (gcry_mpi_cmp): Ditto.
319         (gcry_mpi_cmp_ui): Ditto.
320         (gcry_mpi_randomize): Ditto.
321
322         * mpicoder.c (mpi_print): Removed the nbit_info kludge.
323         * mpi-bits.c (mpi_get_nbits): Replaced the is_protected stuff by
324         checking whether it is an opaque mpi and then returns it's length
325         in bits.
326         * mpiutil.c (mpi_set_opaque): Changed the interface to take a number
327         of bits for the length.  Adjusted all users.
328         (mpi_get_opaque): Ditto.
329
330 Fri Nov 19 17:15:20 CET 1999  Werner Koch  <wk@gnupg.de>
331
332         * mpicoder.c (g10_log_mpidump): Add a temporary workaround
333
334         * mpih-mul.c (mpihelp_mul_n): s/m_is_ecure/g10_is_secure/
335
336         * mpiutil.c (mpi_alloc): Remved the debug mode because it has turned
337         out, that this feature was not very useful in the past.  Use the
338         new alloc functions.
339         (mpi_alloc_secure): Ditto.
340         (mpi_alloc_limb_space): Ditto.
341         (mpi_free_limb_space): Ditto.
342         (mpi_resize): Ditto.
343         (mpi_free): Ditto.
344         (mpi_set_secure): Removed the debug stuff.
345         (mpi_set_opaque): Ditto.
346         (mpi_copy): Ditto.
347         (mpi_alloc_set_ui): Ditto.
348         (mpi_m_check): Use g10_ wrapper.
349
350 Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
351
352
353         * config.links: Add case label for DJGPP
354
355 Wed Jul 14 19:42:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
356
357
358         * Makefile.am: Use .s files as temporaries, disabled other .S rules.
359
360 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
361
362
363         * mpicoder.c (g10_log_mpidump): New.
364
365         * Makefile.am: Support for libtool.
366
367 Fri Jul  2 11:45:54 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
368
369
370         * mpi-bit.c (mpi_lshift_limbs,mpi_rshift_limbs): New.
371         * mpi-mpow.c (barrett_mulm): New but diabled.
372
373 Tue Jun  1 16:01:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
374
375         * config.links (i[56]86*-*-freebsdelf*): New.
376
377 Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
378
379         * config.links (sysdep.h): Not any more conditionally created.
380
381 Tue May  4 15:47:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
382
383         * mpiutil.c (mpi_alloc_like): New.
384
385 Mon Apr 26 17:48:15 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
386
387         * mpih-add.c, mpih-sub.c: Removed
388         * mpi-inline.c: New.
389         * mpi-inline.h: Make it usable by mpi-inline.c.
390
391 Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
392
393         * mpih-mul.c (mpihelp_mul_n): Fixed use of memory region.
394         (mpihelp_mul): Ditto.
395
396 Wed Apr  7 20:51:39 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
397
398         * Makefile.am: Explicit rules to invoke cpp on *.S
399
400 Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
401
402         * config.links: Take advantage of the with_symbol_underscore macro.
403         Add support for freebsd 4.
404
405 Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
406
407         * mips3/mpih-sub1.S: Removed left over junk in last line. (Should I
408         blame me or my editor?).
409
410 Sat Feb 13 12:04:43 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
411
412         * Makefile.am: Removed the +=. Add MPI_OPT_FLAGS.
413
414 Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
415
416         * mpi-cmp.c (mpi_cmp_ui): Normalized the arg.
417
418 Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
419
420         * mpi-bit.c (mpi_normalize): New.
421         (mpi_get_nbits): Normalize the MPI.
422         * mpi-bit.c (mpi_cmp): Normalize the MPI before the compare.
423
424
425 Tue Dec  8 13:15:16 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
426
427         * config.links: Moved the case for powerpc*linux
428         * powerpcp32/*.S: Removed some underscores.
429
430 Thu Nov 26 07:27:52 1998  Werner Koch  <werner.koch@guug.de>
431
432         * config.links: Support for ppc with ELF
433         * powerpc32/syntax.h: New.
434         * powerpc32/*.S: Applied ELF patches (glibc patches)
435
436 Tue Nov 10 19:31:37 1998  Werner Koch  (wk@isil.d.shuttle.de)
437
438         * power*/ : Started with stuff for PPC
439         * config.links: Some stuff for PPC.
440         * generic/udiv-w-sdiv.c: New but disabled.
441
442 Tue Oct 27 12:37:46 1998  Werner Koch  (wk@isil.d.shuttle.de)
443
444         * config.links (freebsd): Fixes for FreeBSD 3.0
445
446 Wed Oct 14 09:59:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
447
448         * config.links (freebsd): ELF patches from Jun Kuriyama.
449
450 Thu Oct  8 13:28:17 1998  Werner Koch  (wk@isil.d.shuttle.de)
451
452         * mpi-mpow.c (mpi_mulpowm): Fixed mem leak (m_free/mpi_free).
453
454 Thu Sep 17 18:08:50 1998  Werner Koch  (wk@(none))
455
456         * hppa1.1/udiv-qrnnd.S: Fix from Steffen Zahn for HPUX 10.20
457
458 Thu Aug  6 16:39:28 1998  Werner Koch,mobil,,,  (wk@tobold)
459
460         * mpi-bit.c (mpi_set_bytes): Removed.
461
462 Wed Aug  5 15:11:12 1998  Werner Koch  (wk@(none))
463
464         * mpicoder.c (mpi_read_from_buffer): New.
465
466         * mpiutil.c (mpi_set_opaque): New.
467         (mpi_get_opaque): New.
468         (mpi_copy): Changed to support opauqe flag
469         (mpi_free): Ditto.
470
471 Sat Jul  4 10:11:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
472
473         * mpiutil.c (mpi_clear): Reset flags.
474         (mpi_set): Ditto.
475         (mpi_alloc_secure): Set flag to 1 and not ored the 1 in, tsss..
476
477 Fri Jun 26 11:19:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
478
479         * mpiutil.c (mpi_alloc): set nbits to 0.
480         (mpi_alloc_secure): Ditto.
481         (mpi_clear): Ditto.
482
483 Thu Jun 25 11:50:01 1998  Werner Koch  (wk@isil.d.shuttle.de)
484
485         * mips3/*.S: New
486
487 Mon May 18 13:47:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
488
489         * config.links: split mpih-shift into mpih-[lr]shift and
490         changed all implementations.
491         * mpi/alpha: add some new assembler stuff.
492
493 Wed May 13 11:04:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
494
495         * config.links: Add support for MIPS
496
497 Thu Apr  9 11:31:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
498
499         * mpicoder.c (mpi_get_secure_buffer): New.
500
501 Wed Apr  8 09:44:33 1998  Werner Koch  (wk@isil.d.shuttle.de)
502
503         * config.links: Applied small fix from Ulf Möller.
504
505 Mon Apr  6 12:38:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
506
507         * mpicoder.c (mpi_get_buffer): Removed returned leading zeroes
508         and changed all callers.
509
510 Tue Mar 10 13:40:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
511
512         * mpi-bit.c (mpi_clear_highbit): New.
513
514 Mon Mar  2 19:29:00 1998  Werner Koch  (wk@isil.d.shuttle.de)
515
516         * Makefile.am (DISTCLEANFILES): New
517
518 Thu Feb 26 06:48:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
519
520         * config.links (X86_BROKEN_ALIGN): Added for some systems.
521
522 Mon Feb 23 12:21:40 1998  Werner Koch  (wk@isil.d.shuttle.de)
523
524         * mpi/m68k/mpih-shift.S (Lspecial): Changed duplicate symbol.
525
526 Mon Feb 16 13:00:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
527
528         * config.links : Add detection of m68k cpus
529
530
531  Copyright 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc.
532
533  This file is free software; as a special exception the author gives
534  unlimited permission to copy and/or distribute it, with or without
535  modifications, as long as this notice is preserved.
536
537  This file is distributed in the hope that it will be useful, but
538  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
539  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.