Commit Graph

179 Commits

Author SHA1 Message Date
Daniel Mendler
f6a7bedb95 suffix _u32 -> _n of mp_(expt|log|root) functions, use int for now 2019-11-14 09:16:00 +01:00
Daniel Mendler
4f00e75b8f
make mp_div_3 private 2019-11-09 06:43:58 +01:00
Daniel Mendler
0fa802f24b
make mp_sqr private (optimization of mp_mul) 2019-11-09 06:43:58 +01:00
Francois Perrad
146becbd9a literal suffix 2019-11-05 18:43:37 +01:00
Daniel Mendler
5c335f8407
rename mul/sqr functions for consistency, comba instead of fast suffix 2019-11-04 15:41:33 +01:00
Daniel Mendler
e60149dec7
simplifications: replace mp_mod_d by macro 2019-11-04 15:41:31 +01:00
Daniel Mendler
b9977adfb8
use uint8_t instead of unsigned char 2019-10-29 17:40:59 +01:00
Steffen Jaeckel
8456782cc5 don't allow disabling of WUR checks 2019-10-29 15:40:47 +01:00
Steffen Jaeckel
e95dd24e4f introduce MP_NO_DEPRECATED_PRAGMA 2019-10-29 15:39:00 +01:00
Steffen Jaeckel
b250ec44e0 clean-up test.c
* no more `MP_WUR` in test.c
* clean-up console output
2019-10-29 13:24:34 +01:00
Daniel Mendler
cf0042654e
define mp_isodd in terms of mp_iseven 2019-10-27 18:36:56 +01:00
Daniel Mendler
17a846f2bc
add "make c99" to convert back 2019-10-27 18:36:56 +01:00
Daniel Mendler
bf9507a9d4
replace mp_bool by stdbool
* This gives the advantage that static analysis **understands** bool,
  but complains about using an enum type instead of bool.

* If stdbool.h is not desired, true/false/bool can be replaced using sed
  as in the no-stdint-h branch.

* We already include stdint.h and stdbool.h is not more harmful than
  this header
2019-10-27 18:36:56 +01:00
Daniel Mendler
27e142bc43
remove unnecessary == MP_YES/MP_NO comparisons 2019-10-27 18:36:55 +01:00
Daniel Mendler
eb70378bfb
mp_iseven/mp_isodd should be inline 2019-10-27 18:36:55 +01:00
Daniel Mendler
f21ea6ce18
add fast path to mp_add_d and mp_sub_d 2019-10-27 18:36:53 +01:00
Daniel Mendler
14642642f9
add prefix to cutoff variables 2019-10-23 18:21:57 +02:00
Daniel Mendler
00b263f303
remove private_mp_word 2019-10-23 18:19:16 +02:00
Daniel Mendler
31e64aa640
mp_prime_next_prime: use mp_bool for bbs_style 2019-10-23 18:14:55 +02:00
Daniel Mendler
a29aa59baa
use size_t for mp_radix_size 2019-10-22 14:25:58 +02:00
Daniel Mendler
5c6391dd7c
remove some MP_8BIT remnants 2019-10-20 15:39:09 +02:00
Francois Perrad
b34aac09cb remove extraneous comma 2019-10-20 14:34:05 +02:00
Steffen Jaeckel
7a68f12873 Execute move.sh - Rename files from bn_* to match the function names.
* git blame <renamed-file> is not affected
* git log --follow <renamed-file> can be used to show log across renames
2019-10-19 16:24:39 +02:00
czurnieden
36fca2f9a0
remove support for 8-bit (MP_8BIT) 2019-10-19 16:03:26 +02:00
Daniel Mendler
45a3bf7694
remove deprecated functions 2019-10-17 16:56:27 +02:00
Daniel Mendler
fce429d08b
tommath.h: do not expose limits.h 2019-10-16 14:42:21 +02:00
Daniel Mendler
554310847a
tommath.h: use enums 2019-10-16 09:32:37 +02:00
Daniel Mendler
cb1b2dc879
mp_log_u32: return uint32_t 2019-10-15 14:47:43 +02:00
Steffen Jaeckel
c9d41fba73
rename mp_ilogb() to mp_log_u32() 2019-10-15 14:47:43 +02:00
Francois Perrad
e3eb13e4b6 use same parameter name as in the prototype 2019-10-10 20:32:57 +02:00
Daniel Mendler
fe2f91a1b8
to_sbin/to_ubin/pack: don't write anything in case of buffer overflow 2019-10-09 20:46:41 +02:00
Daniel Mendler
6e3dae5625
add MP_BUF error 2019-10-08 22:30:29 +02:00
czurnieden
b6813a4122
replace mp_export/import by mp_pack/unpack 2019-10-08 22:30:25 +02:00
czurnieden
71d1b7b9d8 make mp_to_radix return the count of characters of the converted number 2019-10-06 21:26:49 +02:00
czurnieden
abdb033402 Refactored functions to read and write binaries and added "maxlen" 2019-10-06 03:38:16 +02:00
czurnieden
6b0caef471 add message that MP-8BIT is deprecated 2019-09-09 15:55:45 +02:00
nijtmans
bbe268ebd2 Fix deprecation messages and unnecessary includes 2019-09-03 10:53:40 +02:00
Steffen Jaeckel
684426b670 add new conversion macros 2019-09-02 18:25:44 +02:00
Steffen Jaeckel
f0e6ae59ab add mp_to_radix()
...a 100% copy&paste of `mp_toradix_n()` besides the changed API signature
2019-09-02 18:25:44 +02:00
Daniel Mendler
625defdcff
fix gcc version check for deprecations 2019-07-24 11:09:44 +02:00
Daniel Mendler
ca89e9c0ef
rename mp_root/mp_expt to mp_*_u32 2019-07-17 15:45:04 +02:00
Daniel Mendler
71696549a8
deprecate mp_expt_d and mp_n_root in favor of mp_expt and mp_root 2019-07-17 15:45:04 +02:00
Joachim Breitner
6c35dd7e11
Import stddef in tommath.h
At least here (compiling for WebAssembly
(`wasm32-unknown-unknown-wasm`), I need this, otherwise `size_t` is not
available.
2019-07-17 15:39:57 +02:00
nijtmans
0db64fc83c Rename bn_get_magxx -> bn_get_mag_uxx. Documentation updated too 2019-07-03 14:45:14 +02:00
nijtmans
fde8524945 @minad 's suggestions 2019-07-03 12:49:19 +02:00
nijtmans
db4afb3d5e Provide explicit symbols for bn_xxx_l and bn_xxx_ll functions. 2019-07-03 12:49:19 +02:00
nijtmans
a911999db9 Better interoperability between MSVC and mingw-w64, 3 2019-06-06 10:30:00 +02:00
nijtmans
ab309de02f Fix MSVC warning: bn_mp_rand.c(9): warning C4028: formal parameter 1 different from declaration 2019-06-05 14:50:12 +02:00
H.Merijn Brand - Tux
f5b6cd079e Fix building on HP-UX 11.11 / PA-RISC
$ perl -v
This is perl 5, version 28, subversion 2 (v5.28.2) built for PA-RISC2.0-thread-multi-LP64

$ perl Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for CryptX
Writing MYMETA.yml and MYMETA.json

$ make
:
:
gcc64 -Iltm -Iltc/headers -DLTC_SOURCE -DLTC_NO_TEST -DLTC_NO_PROTOTYPES -DLTM_DESC -D_POSIX_C_SOURCE=199506L -D_REENTRANT -mpa-risc-2-0 -fPIC -D_HPUX_SOURCE -fwrapv -fno-strict-aliasing -pipe -I/usr/local/pa20_64/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -fPIC -g -O -DARGTYPE=4 -c ltc/math/ltm_desc.c -o ltc/math/ltm_desc.o
In file included from ltc/math/ltm_desc.c:15:0:
ltm/tommath.h:74:1: error: unable to emulate 'TI'
make[1]: *** [ltc/math/ltm_desc.o] Error 1
make[1]: Leaving directory `/data/cpan-build/CryptX-0.063-0/src'
make: *** [src/liballinone.a] Error 2

$ gcc64 --version
gcc64 (GCC) 4.6.1
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ perl -V:cppsymbols
cppsymbols='_FILE_OFFSET_BITS=64 _HPUX_SOURCE=1 _LARGEFILE_SOURCE=1 _LFS64_LARGEFILE=1 _LFS_LARGEFILE=1 _LP64=1 _PA_RISC2_0=1 _POSIX_C_SOURCE=199506L _PROTOTYPES= _REENTRANT=1 _XOPEN_SOURCE_EXTENDED=1 _XPG4= _XPG4_EXTENDED= __BYTE_ORDER__=4321 __ELF__=1 __GNUC_MINOR__=6 __GNUC__=4 __LP64__=1 __PIC__=2 __STDC_EXT__=1 __STDC__=1 __hp9000s700=1 __hp9000s700__=1 __hp9000s800=1 __hp9000s800__=1 __hppa=1 __hppa__=1 __hpux=1 __hpux__=1 __pic__=2 __unix=1 __unix__=1';
2019-06-05 09:40:33 +02:00
Steffen Jaeckel
0ebc4f9268 fix MP_DEPRECATED for non-gcc, -clang or -msvc 2019-06-05 09:40:10 +02:00