Up to [cvs.NetBSD.org] / pkgsrc / math / ltm
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
ltm: update to 1.3.0. This release is done in preparation for libtommath 2.0.0 which will deprecate multiple public parts of the API, both functions and macros. Additionally we’ve included CMake as build system and use GitHub Actions to verify that everything works as expected. All to-be-deprecated parts are marked as either MP_DEPRECATED() for functions or MP_DEPRECATED_PRAGMA() for macros. Your compiler should complain if you use those to-be-deprecated parts, if not it’s most likely a pretty old version of the compiler or not correctly configured.
ltm: update to 1.2.1. Sep 04th, 2023 v1.2.1 -- Bugfix release because of potential integer overflow c.f. PR #546 resp. CVE-2023-36328
math: Replace RMD160 checksums with BLAKE2s checksums All checksums have been double-checked against existing RMD160 and SHA512 hashes
math: Remove SHA1 hashes for distfiles
Assume non-VAX uses IEEE754 floats. While it doesn't make a difference for GCC here, clang doesn't define the same macros by default. Bump revision.
ltm: update to 1.2.0. Partially based on diff sent by Kai-Uwe Eckhardt in private mail. v1.2.0 -- A huge refactoring of the library happened - renaming, deprecating and replacing existing functions by improved API's. All deprecated functions, macros and symbols are only marked as such so this version is still API and ABI compatible to v1.x. -- Daniel Mendler was pushing for those changes and contributing a load of patches, refactorings, code reviews and whatnotelse. -- Christoph Zurnieden re-worked internals of the library, improved the performance, did code reviews and wrote documentation. -- Francois Perrad did some refactoring and took again care of linting the sources and provided all fixes. -- Jan Nijtmans, Karel Miko and Joachim Breitner contributed various patches. -- Private symbols can now be hidden for the shared library builds, disabled by default. -- All API's follow a single code style, are prefixed the same etc. -- Unified, safer and improved API's -- Less magic numbers - return values (where appropriate) and most flags are now enums, this was implemented in a backwards compatible way where return values were int. -- API's with return values are now by default marked as "warn on unsused result", this can be disabled if required (which will most likely hide bugs), c.f. MP_WUR in tommath.h -- Provide a whole set of setters&getters for different primitive types (long, uint32_t, etc.) -- All those primitive setters are now optimized. -- It's possible to automatically tune the cutoff values for Karatsuba&Toom-Cook -- The custom allocators which were formerly known as XMALLOC(), XFREE() etc. are now available as MP_MALLOC(), MP_REALLOC(), MP_CALLOC() and MP_FREE(). MP_REALLOC() and MP_FREE() now also provide the allocated size to ease the usage of simple allocators without tracking. -- Building is now also possible with MSVC 2015, 2017 and 2019 (use makefile.msvc) -- Added mp_decr() and mp_incr() -- Added mp_log_u32() -- Improved prime-checking -- Improved Toom-Cook multiplication -- Removed the LTM book (`make docs` now builds the user manual)
ltm: Update to 1.1.0 Jan 28th, 2019 v1.1.0 -- Christoph Zurnieden contributed FIPS 186.4 compliant prime-checking (PR #113), several other fixes and a load of documentation -- Daniel Mendler provided two's-complement functions (PR #124) and mp_{set,get}_double() (PR #123) -- Francois Perrad took care of linting the sources, provided all fixes and a astylerc to auto-format the sources. -- A bunch of patches by Kevin B Kenny have been back-ported from TCL -- Jan Nijtmans provided the patches to `const`ify all API function arguments (also from TCL) -- mp_rand() has now several native random provider implementations and doesn't rely on `rand()` anymore -- Karel Miko provided fixes when building for MS Windows and re-worked the makefile generating process -- The entire environment and build logic has been extended and improved regarding auto-detection of platforms, libtool and a lot more -- Prevent some potential BOF cases -- Improved/fixed mp_lshd() and mp_invmod() -- A load more bugs were fixed by various contributors
Update ltm (libtommath) to 1.0.1 to get MP_GEN_RANDOM_MAX etc v1.0.1 -- Dmitry Kovalenko provided fixes to mp_add_d() and mp_init_copy() -- Matt Johnston contributed some improvements to mp_div_2d(), mp_exptmod_fast(), mp_mod() and mp_mulmod() -- Julien Nabet provided a fix to the error handling in mp_init_multi() -- Ben Gardner provided a fix regarding usage of reserved keywords -- Fixed mp_rand() to fill the correct number of bits -- Fixed mp_invmod() -- Use the same 64-bit detection code as in libtomcrypt -- Correct usage of DESTDIR, PREFIX, etc. when installing the library -- Francois Perrad updated all the perl scripts to an actual perl version
math/ltm: Fix build caused by improper use of $(PREFIX). The makefile.include fragment included by all of the project makefiles unconditionally sets $(CC), $(LD), $(AR) and $(RANLIB) to $(PREFIX){gcc,ld,ar,ranlib}. Their intent was to provide a facility for cross-compiling the code, but the use of $(PREFIX) for this purpose was unfortunate. This change adds a patch to set $(PREFIX) to the empty string in the makefiles, which should fix the problem with the smallest set of changes.
Updated ltm to 1.0. Feb 5th, 2016 v1.0 -- Bump to 1.0 -- Dirkjan Bussink provided a faster version of mp_expt_d() -- Moritz Lenz contributed a fix to mp_mod() and provided mp_get_long() and mp_set_long() -- Fixed bugs in mp_read_radix(), mp_radix_size Thanks to shameister, Gerhard R, -- Christopher Brown provided mp_export() and mp_import() -- Improvements in the code of mp_init_copy() Thanks to ramkumarkoppu, -- lomereiter provided mp_balance_mul() -- Alexander Boström from the heimdal project contributed patches to mp_prime_next_prime() and mp_invmod() and added a mp_isneg() macro -- Fix build issues for Linux x32 ABI -- Added mp_get_long_long() and mp_set_long_long() -- Carlin provided a patch to use arc4random() instead of rand() on platforms where it is supported -- Karel Miko provided mp_sqrtmod_prime()
Add SHA512 digests for distfiles for math category Problems found locating distfiles: Package dfftpack: missing distfile dfftpack-20001209.tar.gz Package eispack: missing distfile eispack-20001130.tar.gz Package fftpack: missing distfile fftpack-20001130.tar.gz Package linpack: missing distfile linpack-20010510.tar.gz Package minpack: missing distfile minpack-20001130.tar.gz Package odepack: missing distfile odepack-20001130.tar.gz Package py-networkx: missing distfile networkx-1.10.tar.gz Package py-sympy: missing distfile sympy-0.7.6.1.tar.gz Package quadpack: missing distfile quadpack-20001130.tar.gz Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
build shared lib, bump PKGREV
Update Libtommath to version 0.42.0 pkgsrc changes: + Add license + Update master site Changes since last pkgsrc version (0.39): July 23rd, 2010 v0.42.0 -- Fix for mp_prime_next_prime() bug when checking generated prime -- allow mp_shrink to shrink initialized, but empty MPI's -- Added project and solution files for Visual Studio 2005 and Visual Studio 2008. March 10th, 2007 v0.41 -- Wolfgang Ehrhardt suggested a quick fix to mp_div_d() which makes the detection of powers of two quicker. -- [CRI] Added libtommath.dsp for Visual C++ users. December 24th, 2006 v0.40 -- Updated makefile to properly support LIBNAME -- Fixed bug in fast_s_mp_mul_high_digs() which overflowed (line 83), thanks Valgrind!
Update to 0.39. April 4th, 2006 v0.39 -- Jim Wigginton pointed out my Montgomery examples in figures 6.4 and 6.6 were off by one, k should be 9 not 8 -- Bruce Guenter suggested I use --tag=CC for libtool builds where the compiler may think it's C++. -- "mm" from sci.crypt pointed out that my mp_gcd was sub-optimal (I also updated and corrected the book) -- updated some of the @@ tags in tommath.src to reflect source changes. -- updated email and url info in all source files Jan 26th, 2006 v0.38 -- broken makefile.shared fixed -- removed some carry stores that were not required [updated text] November 18th, 2005 v0.37 -- [Don Porter] reported on a TCL list [HEY SEND ME BUGREPORTS ALREADY!!!] that mp_add_d() would compute -0 with some inputs. Fixed. -- [rinick@gmail.com] reported the makefile.bcc was messed up. Fixed. -- [Kevin Kenny] reported some issues with mp_toradix_n(). Now it doesn't require a min of 3 chars of output. -- Made the make command renamable. Wee August 1st, 2005 v0.36 -- LTM_PRIME_2MSB_ON was fixed and the "OFF" flag was removed. -- [Peter LaDow] found a typo in the XREALLOC macro -- [Peter LaDow] pointed out that mp_read_(un)signed_bin should have "const" on the input -- Ported LTC patch to fix the prime_random_ex() function to get the bitsize correct [and the maskOR flags] -- Kevin Kenny pointed out a stray // -- David Hulton pointed out a typo in the textbook [mp_montgomery_setup() pseudo-code] -- Neal Hamilton (Elliptic Semiconductor) pointed out that my Karatsuba notation was backwards and that I could use unsigned operations in the routine. -- Paul Schmidt pointed out a linking error in mp_exptmod() when BN_S_MP_EXPTMOD_C is undefined (and another for read_radix) -- Updated makefiles to be way more flexible March 12th, 2005 v0.35 -- Stupid XOR function missing line again... oops. -- Fixed bug in invmod not handling negative inputs correctly [Wolfgang Ehrhardt] -- Made exteuclid always give positive u3 output...[ Wolfgang Ehrhardt ] -- [Wolfgang Ehrhardt] Suggested a fix for mp_reduce() which avoided underruns. ;-) -- mp_rand() would emit one too many digits and it was possible to get a 0 out of it ... oops -- Added montgomery to the testing to make sure it handles 1..10 digit moduli correctly -- Fixed bug in comba that would lead to possible erroneous outputs when "pa < digs" -- Fixed bug in mp_toradix_size for "0" [Kevin Kenny] -- Updated chapters 1-5 of the textbook ;-) It now talks about the new comba code! February 12th, 2005 v0.34 -- Fixed two more small errors in mp_prime_random_ex() -- Fixed overflow in mp_mul_d() [Kevin Kenny] -- Added mp_to_(un)signed_bin_n() functions which do bounds checking for ya [and report the size] -- Added "large" diminished radix support. Speeds up things like DSA where the moduli is of the form 2^k - P for some P < 2^(k/2) or so Actually is faster than Montgomery on my AMD64 (and probably much faster on a P4) -- Updated the manual a bit -- Ok so I haven't done the textbook work yet... My current freelance gig has landed me in France till the end of Feb/05. Once I get back I'll have tons of free time and I plan to go to town on the book. As of this release the API will freeze. At least until the book catches up with all the changes. I welcome bug reports but new algorithms will have to wait. December 23rd, 2004 v0.33 -- Fixed "small" variant for mp_div() which would munge with negative dividends... -- Fixed bug in mp_prime_random_ex() which would set the most significant byte to zero when no special flags were set -- Fixed overflow [minor] bug in fast_s_mp_sqr() -- Made the makefiles easier to configure the group/user that ltm will install as -- Fixed "final carry" bug in comba multipliers. (Volkan Ceylan) -- Matt Johnston pointed out a missing semi-colon in mp_exptmod October 29th, 2004 v0.32 -- Added "makefile.shared" for shared object support -- Added more to the build options/configs in the manual -- Started the Depends framework, wrote dep.pl to scan deps and produce "callgraph.txt" ;-) -- Wrote SC_RSA_1 which will enable close to the minimum required to perform RSA on 32-bit [or 64-bit] platforms with LibTomCrypt -- Merged in the small/slower mp_div replacement. You can now toggle which you want to use as your mp_div() at build time. Saves roughly 8KB or so. -- Renamed a few files and changed some comments to make depends system work better. (No changes to function names) -- Merged in new Combas that perform 2 reads per inner loop instead of the older 3reads/2writes per inner loop of the old code. Really though if you want speed learn to use TomsFastMath ;-) August 9th, 2004 v0.31 -- "profiled" builds now :-) new timings for Intel Northwoods -- Added "pretty" build target -- Update mp_init() to actually assign 0's instead of relying on calloc() -- "Wolfgang Ehrhardt" <Wolfgang.Ehrhardt@munich.netsurf.de> found a bug in mp_mul() where if you multiply a negative by zero you get negative zero as the result. Oops. -- J Harper from PeerSec let me toy with his AMD64 and I got 60-bit digits working properly [this also means that I fixed a bug where if sizeof(int) < sizeof(mp_digit) it would bug]
Add RMD160 digests in addition to SHA1 ones.
Initial import of ltm-0.30: LibTomMath provides highly optimized and portable routines for a vast majority of integer based number theoretic applications (including public key cryptography). LibTomMath is not a cryptographic toolkit itself but it can be used to write one [Used in LibTomCrypt for RSA, DH and ECC public key routines].
Initial revision