Newer
Older
* configure.ac: Fixed copy-and-paste errors in shared library
name setup.
* config.make.in (LIBNETTLE_SONAME, LIBHOGWEED_SONAME): Define.
* Makefile.in (libnettle.so, libhogweed.so): Fixed rules.
* Makefile.in: Split nettle library into two files, libnettle.a
and libhogweed.a, and similarly for the shared libraries.
* configure.ac: Bumped nettle so-versions to 3.0. Set hogweed
so-versions to 1.0. New makefile conditionals IF_SHARED and
IF_HOGWEED. Renamed WITH_PUBLIC_KEY to WITH_HOGWEED. Deleted
SHLIBTARGET, SHLIBINSTALL, RSA_EXAMPLES and RSA_TOOLS.
* config.make.in: Updated for hogweed split.
* C source files: Don't use WITH_PUBLIC_KEY / WITH_HOGWEED, the
Makefile sorts out which files should be compiled.
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
* pgp.h: Include bignum.h, don't pretend to work without bignums.
* pgp-encode.c (pgp_put_mpi, pgp_put_public_rsa_key)
(pgp_put_rsa_sha1_signature): Define unconditionally. Removed the
checking of HAVE_LIBGMP and WITH_PUBLIC_KEY.
* examples/io.h: Use WITH_HOGWEED, not WITH_PUBLIC_KEY.
* examples/io.c (read_rsa_key): Deleted, moved to...
* examples/read_rsa_key.c: New file, extracted from io.c.
* examples/Makefile.in: Use IF_HOGWEED instead of RSA_EXAMPLES.
Link appropriate programs with -lhogweed.
(SOURCES): Added read_rsa_key.c.
* tools/Makefile.in (pkcs1-conv): Use IF_HOGWEED, not @RSA_TOOLS@,
for configuration. Link with -lhogweed.
* testsuite/testutils.h: Use WITH_HOGWEED, not WITH_PUBLIC_KEY.
* testsuite/testutils.c: Likewise.
* testsuite/Makefile.in (TS_NETTLE_SOURCES, TS_HOGWEED_SOURCES):
Separate test cases using nettle and those also using hogweed.
2007-04-05 Niels Möller <nisse@lysator.liu.se>
* Moved in CVS tree. Also renamed directory sparc to sparc32.
2007-02-24 Niels Möller <nisse@lysator.liu.se>
(distclean-here): Remove machine.m4.
2006-12-05 Niels Möller <nisse@lysator.liu.se>
* configure.ac: AC_PREREQ 2.61, for AC_PROG_MKDIR_P.
* config.make.in (datarootdir): New directory variable (for
autoconf-2.61).
2006-11-28 Niels Möller <nisse@lysator.liu.se>
2006-11-27 Niels Möller <nisse@lysator.liu.se>
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
* NEWS: New entry for nettle-1.15.
* configure.ac (SHLIBMINOR): Bumped version. Library name is now
libnettle.so.2.6.
* sha256.c: Changed copyright notice to use the LGPL.
* Makefile.in (DISTFILES): Added COPYING.LIB.
* COPYING.LIB: New file (previously only the plain GPL was
included in the distribution).
* nettle.texinfo: Updated vor nettle-1.15.
* testsuite/rsa-test.c (test_main): Use test_rsa_sha256.
* testsuite/testutils.c (test_rsa_sha256): New function.
* testsuite/Makefile.in (DISTFILES): Replaces rfc1750.txt by
gold-bug.txt.
* rsa.h (rsa_sha256_sign, rsa_sha256_verify)
(rsa_sha256_sign_digest, rsa_sha256_verify_digest): New declarations.
(RSA_MINIMUM_N_OCTETS, RSA_MINIMUM_N_BITS): Increased to
62 octets and 489 bits, respectively, for supporting sha256.
* pkcs1.h (pkcs1_rsa_sha256_encode)
(pkcs1_rsa_sha256_encode_digest): New declarations and name
mangling symbols.
* Makefile.in (nettle_SOURCES): Added pkcs1-rsa-sha256.c,
rsa-sha256-sign.c, rsa-sha256-verify.c.
* pkcs1-rsa-sha256.c, rsa-sha256-sign.c, rsa-sha256-verify.c: New
files.
* COPYING, INSTALL, install-sh, texinfo.tex: Updated files, from
automake-1.10.
* tools/Makefile.in (install): Use MKDIR_P to create installation
directory. Install only one file at a time.
* Makefile.in (MKDIR_P): Use MKDIR_P for creating installation
directories.
* configure.ac: Use AC_PROG_MKDIR_P.
2006-11-24 Niels Möller <nisse@lysator.liu.se>
* testsuite/yarrow-test.c (test_main): Use gold-bug.txt as input
file, instead of rfc1750.txt.
* testsuite/gold-bug.txt: New test input file for yarrow-test.
The copyright on this short story by Edgar Allan Poe has expired.
* testsuite/rfc1750.txt: Deleted file. Debian considers RFC:s
non-free, and it was expired anyway. Replaced by gold-bug.txt.
* Almost all header files: Added C++ guards.
* configure.ac: Test if the system has any C++ compiler.
* config.make.in (CXX, CXXFLAGS, COMPILE_CXX, LINK_CXX): New variables.
* testsuite/Makefile.in: New variables TS_C and TS_CXX. Setup for
compiling the C++ file cxx-test.cxx.
* testsuite/cxx-test.cxx: New testcase, trying to use nettle from
a C++ program.
* index.html: Added section on language bindings.
* configure.ac: Darwin shared library support, from Grant
Robinsson.
2006-05-18 Niels Möller <nisse@lysator.liu.se>
* src/nettle/x86/aes.asm: Deleted unused file.
* aes-decrypt.c (_aes_decrypt_table): Deleted the indexing array,
previously commented out.
* aes-encrypt-table.c (_aes_encrypt_table): Likewise.
* Makefile.in (.texinfo.info, .dvi.ps): Use more quotes with
basename.
(install-here, install-shared, install-info, install-headers): Use
plain mkdir, not $(INSTALL) -d.
Merged from the lsh experimental branch.
2006-04-26 Niels Möller <nisse@lysator.liu.se>
* examples/rsa-decrypt.c: Don't include "getopt.h", since it's not used.
* examples/nettle-benchmark.c: Include "getopt.h".
* examples/Makefile.in (GETOPT_OBJS): New variable.
(rsa-keygen, rsa-encrypt, nettle-benchmark): Depend on and link
with $(GETOPT_OBJS).
* x86/aes-decrypt-internal.asm: Use ALIGN.
* x86/aes-encrypt-internal.asm: Likewise.
* x86/arcfour-crypt.asm: Likewise.
* x86/md5-compress.asm: Likewise.
* x86/sha1-compress.asm: Likewise.
* config.m4.in (ASM_ALIGN_LOG): Substitute.
* configure.ac (ASM_ALIGN_LOG): Check if .align directive is
logarithmic.
* asm.m4 (ALIGN): New macro. Takes a logarithmic argument, and
expands to a .align directive.
2006-04-21 Niels Möller <nisse@lysator.liu.se>
* nettle.texinfo (Public-key algorithms): Say that the public key
operations are undocumented, not unsupported. Reported by Jeronimo
Pellegrini.
2006-04-08 Niels Möller <nisse@lysator.liu.se>
* tools/pkcs1-conv.c (read_pem): Fixed c99-style declaration.
* examples/rsa-verify.c: Fixed typo in usage message.
2005-12-05 Niels Möller <nisse@lysator.liu.se>
* NEWS: Updated for 1.14.
* configure.ac (SHLIBMINOR): Increased minor number. Library
version is now libnettle.so.2.5, soname still libnettle.so.2.
2005-11-28 Niels Möller <nisse@lysator.liu.se>
* config.make.in (INSTALL): Don't substitute INSTALL, INSTALL_DATA
and friends here, to get a correct a relative filename for
install-sh when used in tools/Makefile.
* tools/Makefile.in (INSTALL): Substitute INSTALL, INSTALL_DATA
and friends here.
* Makefile.in (INSTALL): Likewise.
2005-11-27 Niels Möller <nisse@lysator.liu.se>
* Makefile.in (.texinfo.pdf): New rule. Avoid dependency on
intermediate .dvi and .ps files.
* testsuite/Makefile.in (clean): Delete sha1-huge-test.
* Makefile.in (install-info, install-headers): Don't use $< and
$?; Solaris make doesn't support them in explicit rules.
2005-11-26 Niels Möller <nisse@lysator.liu.se>
* testsuite/Makefile.in: Include .test-rules.make, which contains
the rules for all the test executables.
(test-rules): New rule, to update this file.
(DISTFILES): Added $(EXTRA_SOURCES).
* testsuite/.test-rules.make: Automatically generated file for
building the test programs.
2005-11-25 Niels Möller <nisse@lysator.liu.se>
* configure.ac: Disable assembler when compiling with rntcl.
* tools/Makefile.in (pkcs1_conv_SOURCES): New variable.
(pkcs1-conv): Link with getopt.o and getopt1.o.
* Makefile.in (aesdata, desdata, shadata): Use explicit rules for
executables.
* testsuite/Makefile.in: Use %-rules for building the -test
executables, in addition to the suffix rules. Hopefully, this
should make all of GNU make, BSD make and Solaris make happy.
Use $(EXEEXT) and $(OBJEXT) more consistently.
* examples/Makefile.in: Use explicit rules for all executable
targets. Use $(EXEEXT) and $(OBJEXT) more consistently.
* testsuite/Makefile.in: Avoid using single-suffix rule to build
executables.
* Makefile.in (distdir): Use [ -f, not [ -e, since the latter
is less portable, and not supported by Solaris /bin/sh.
* testsuite/Makefile.in (DISTFILES): Added teardown-env.
* testsuite/teardown-env: New file. Delete files created by the
testsuite.
2005-11-21 Niels Möller <nisse@lysator.liu.se>
* testsuite/testutils.c (main): Fixed check for -v option. Spotted
* ctr.h (CTR_CTX, CTR_CRYPT): Fixed bugs, spotted by Goran K.
2005-11-20 Niels Möller <nisse@lysator.liu.se>
* Makefile.in (nettle_SOURCES): Added der2rsa.c.
* testsuite/Makefile.in (TS_SH): Added pkcs1-conv-test.
* tools/Makefile.in (TARGETS): Added @RSA_TOOLS@.
(SOURCES): Added pkcs1-conv.c.
(pkcs1-conv): New rule.
* tools/pkcs1-conv.c: New program.
* testsuite/pkcs1-conv-test: New file.
* examples/rsa-verify-test: Use rsa-sign to create signature.
* examples/io.c (read_file): Fixed spelling in error message.
* rsa.h (rsa_public_key_from_der_iterator)
(rsa_private_key_from_der_iterator, rsa_keypair_from_der): Declare
* der2rsa.c: New file.
* der-iterator.c (asn1_der_iterator_init): Initialize length and
data.
(asn1_der_iterator_next): Support for lengths >= 0x80.
(asn1_der_decode_constructed_last, asn1_der_decode_bitstring)
(asn1_der_decode_bitstring_last): New functions.
(asn1_der_get_bignum): Check for non-mininal encodings.
* configure.ac (RSA_TOOLS): New substituted variable. Includes
pkcs1-conv, when public-key support is enabled.
* bignum.h (nettle_asn1_der_get_bignum): Include nettle_-prefix in
declaration.
* asn1.h: Added name mangling defines, and a few new declarations.
2005-11-13 Niels Möller <nisse@lysator.liu.se>
* Makefile.in (nettle_SOURCES): Added der-iterator.c.
(HEADERS): Added asn1.h.
* bignum.h (asn1_der_get_bignum): Declare function.
* der-iterator.c: New file.
* asn1.h: New file.
2005-11-07 Niels Möller <nisse@lysator.liu.se>
* examples/nettle-benchmark.c: Check HAVE_UNISTD_H.
* examples/Makefile.in (TARGETS): Use $(EXEEXT).
* tools/Makefile.in (TARGETS, sexp-conv, nettle-lfib-stream): Likewise.
* configure.ac: Use $host_cpu, not $host, when setting up the
assembler path. Use $host_os, not uname, when setting up shared
library flags.
* config.guess, config.sub: In the CVS tree, moved files to the
lsh top-level directory.
2005-10-23 Niels Möller <nisse@lysator.liu.se>
* sparc64/arcfour-crypt.asm: New file, almost the same as
* examples/nettle-benchmark.c (display): Use two decimal places.
* sparc/arcfour-crypt.asm: Reorganized. Main loop unrolled four
times. Uses aligned 32-bit write accesses at DST. Still uses 8-bit
read accesses at SRC; could be improved int he case that SRC and
DST have compatible alignment.
* testsuite/arcfour-test.c (test_main): New testcase with 512
bytes of data.
2005-10-19 Niels Möller <nisse@lysator.liu.se>
* sparc/arcfour-crypt.asm: Fixed bug, spotted by Mikael Kalms. We
must order the store at [CTX+I] before the load of [CTX+SI+SJ].
2005-10-18 Niels Möller <nisse@lysator.liu.se>
* sparc/arcfour-crypt.asm: Special unrolled code if SRC and DST
have compatible alignment. Improves performance by 20%, but I'm
not sure it's worth the extra complexity.
* bignum.c (nettle_mpz_from_octets): Removed sign argument. If
mpz_import is available, define nettle_mpz_from_octets as a macro
calling mpz_import.
(nettle_mpz_from_octets): Start by setting x to zero; callers no
longer need to do that.
(nettle_mpz_set_str_256_s): New logic for the handling of negative
numbers. Convert in the same way as for positive numbers, and then
subtract the appropriate power of two.
2005-10-17 Niels Möller <nisse@lysator.liu.se>
* bignum.c (nettle_mpz_from_octets): Improved loop. Removed the
digit temporary (suggested by Torbjörn Granlund).
* sparc/arcfour-crypt.asm: Improved instruction scheduling.
* sparc/arcfour-crypt.asm: Bugfix, use lduh and stuh.
* sparc/arcfour-crypt.asm: New file.
* sparc64/aes.asm: Deleted unused file.
* x86/arcfour-crypt.asm: Use ARCFOUR_I and ARCFOUR_J
* asm.m4 (ARCFOUR): New struct.
* aes-internal.h (struct aes_table): Deleted idx and sparc_idx
* aes-encrypt-table.c (_aes_encrypt_table): Likewise.
* aes-decrypt.c (_aes_decrypt_table): Likewise.
* asm.m4 (AES): Likewise
2005-10-16 Niels Möller <nisse@lysator.liu.se>
* tools/input.c (sexp_get_char): Use unsigned for the done flag.
* sparc64/aes-encrypt-internal.asm: Include sparc/aes.m4.
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
* sparc64/machine.m4: Use .register pseudo op to say that we use
%g2 and %g3 as scratch registers.
* sparc/aes-encrypt-internal.asm: Explicitly include sparc/aes.m4.
* sparc/aes-decrypt-internal.asm: Likewise.
* sparc/aes.m4: New file. Moved aes-related macros here...
* sparc/machine.m4: ... removed aes macros.
* x86/aes-encrypt-internal.asm: Explicitly include x86/aes.m4.
* x86/aes-decrypt-internal.asm: Likewise.
* x86/aes.m4: New file. Moved aes-related macros here, from...
* x86/machine.m4: ... removed aes macros.
* sparc64/aes-encrypt-internal.asm: New file.
* sparc64/aes-decrypt-internal.asm: New file.
* sparc64/machine.m4: Include the same aes macros used for
sparc32.
(BIAS): Define magic stack bias constant.
* sparc/aes-encrypt-internal.asm, sparc/aes-decrypt-internal.asm:
Reduced frame size to 104 bytes, since we no longer need wtxt and
tmp on the stack.
* sparc/aes.asm: Deleted old aes implementation.
* sparc/aes-decrypt-internal.asm: New file.
* sparc/machine.m4: Don't use m4 eval, instead rely on the
assembler's arithmetic.
* sparc/machine.m4 (AES_FINAL_ROUND): Better scheduling, by
interleaving independent operations.
* sparc/machine.m4 (TMP3): A third temporary register.
(AES_FINAL_ROUND): Prepared for scheduling.
* sparc/machine.m4 (AES_ROUND): Deleted unused argument T. Updated
all calls in aes-encrypt-internal.asm.
* sparc/machine.m4 (AES_ROUND): New loop invariants T0-T3, to
avoid the additions of the AES_TABLEx constants in the inner loop.
* sparc/machine.m4 (AES_ROUND): Better scheduling, by
interleaving independent operations.
* sparc/machine.m4 (AES_ROUND): Alternate between using TMP1 and
TMP2, to prepare for scheduling.
* sparc/aes-encrypt-internal.asm: Renamed Ti -> Xi.
* sparc/aes-encrypt-internal.asm: Fixed bugs. Now passes the
testsuite.
* sparc/machine.m4 (AES_ROUND, AES_FINAL_ROUND): Bugfixes. Put
NOPs in the load dely slots.
* sparc/aes-encrypt-internal.asm: Implemented. Not yet working,
and not optimized.
* sparc/machine.m4: Use TMP1 and TMP2, so we don't need to pass
them as arguments.
(AES_FINAL_ROUND): New macro.
2005-10-15 Niels Möller <nisse@lysator.liu.se>
* configure.ac (OBJDUMP): Substitute the program false if objdump
is not found.
* asm.m4 (PROLOGUE): Use TYPE_FUNCTION.
* config.m4.in: Substitute ASM_TYPE_FUNCTION as TYPE_FUNCTION.
* configure.ac (ASM_ELF_STYLE): Check for %function and #function,
but not for @function.
(ASM_TYPE_FUNCTION): New substituted variable.
* configure.ac (ASM_ELF_STYLE): Fixed .type foo,@function statement
used when checking for pseudo operations.
* sparc/machine.m4 (AES_LOAD, AES_ROUND): Started writing new AES
macros.
* sparc/aes-encrypt-internal.asm: New file.
2005-10-14 Niels Möller <nisse@lysator.liu.se>
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
* x86/aes-decrypt.asm, x86/aes-encrypt.asm: Deleted files.
* x86/aes-decrypt-internal.asm: New file.
* x86/machine.m4: Changed AES macros, to handle a table register.
Also take more of the used registers as argument.
* x86/aes-encrypt-internal.asm: Rewritten to match new interface,
with the table pointer as an argument. Unlike the old code, this
should really be position independent.
* configure.ac: When looking for assembler files, link in
aes-encrypt-internal.asm and aes-decrypt-internal.asm. Don't look
for aes.asm, aes-encrypt.asm and aes-decrypt.asm.
* configure.ac (OBJDUMP): Use AC_CHECK_TOOL to check for objdump.
(ASM_MARK_NOEXEC_STACK): Use $OBJDUMP when examining the object file.
* Makefile.in (nettle_SOURCES): Removed aes.c,
aes-decrypt-table.c. Added aes-decrypt-internal.c and aes-encrypt-internal.c.
* aes.c, aes-decrypt-table.c: Deleted files.
* aes-decrypt.c (_aes_decrypt_table): Moved table here, and made
static.
* aes-internal.h (_aes_decrypt_table): Don't declare, it's no
longer globally visible.
* aes-decrypt-internal.c (_nettle_aes_decrypt): New AES decryption
function, analogous to _nettle_aes_encrypt.
* aes-internal.h (AES_ROUND, AES_FINAL_ROUND): New macros.
* aes-encrypt-internal.c (_nettle_aes_encrypt): New AES encryption
function, avoiding the table-based indexing.
* sha1-compress.c: Added debugging code.
* md5-compress.c: Likewise.
* config.m4.in (ASM_MARK_NOEXEC_STACK): Use a diversion, to
substitute the value of ASM_MARK_NOEXEC_STACK at the end of each
assembler file.
* configure.ac (ASM_MARK_NOEXEC_STACK): Check if the C compiler
generates a .note.GNU-stack section. If so, we should do the same
in our assembler files.
* sparc64/aes.asm: New file. Copy of sparc/aes.asm, with minor
changes to the stack frame layout. Patch contributed by Henrik
* x86/md5-compress.asm: Skip copying of input to the stack, and
don't allocate space for it.
(F1): Fixed bug.
* testsuite/md5-test.c: Document intermediate values for first
test case.
* configure.ac (asm_path): Check for sparc64, and use sparc64
subdirectory. Link in md5-compress.asm, if it exists.
2005-10-13 Niels Möller <nisse@lysator.liu.se>
* x86/md5-compress.asm (REF): Fixed calculation of offset.
2005-10-12 Niels Möller <nisse@lysator.liu.se>
* x86/machine.m4 (OFFSET): Moved macro, used to be in...
* x86/sha1-compress.asm (OFFSET): ... removed macro.
* x86/md5-compress.asm: New file, with first attempt at md5
assembler. Not yet working.
2005-10-11 Niels Möller <nisse@lysator.liu.se>
* Makefile.in (nettle_SOURCES): Added md5-compress.c.
* md5.c: Reorganized to use _nettle_md5_compress, in analogy with
sha1.c.
* md5-compress.c (_nettle_md5_compress): New file and new function.
* testsuite/Makefile.in (EXTRA_SOURCES, EXTRA_TARGETS): New
variables, for test cases that are not run by default.
* testsuite/sha1-huge-test.c (test_main): New test case, with a
very large sha1 input.
* testsuite/testutils.c (test_hash_large): New function.
* sha1.c (sha1_block): Deleted function; inlined where used.
(SHA1_INCR): New macro for incrementing the block count.
2005-10-06 Niels Möller <nisse@lysator.liu.se>
* configure.ac: Bumped version to 1.14.
* Released nettle-1.13.
* configure.ac: Check for openssl/aes.h.
* Makefile.in (distdir): Use a loop to pick up the contents of
$(DISTFILES) from source and build directories. For some reason,
$? failed to find stamp-h.in in the source directory.
2005-10-05 Niels Möller <nisse@lysator.liu.se>
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
* x86/aes-decrypt.asm: Use C_NAME(_nettle_aes_decrypt_table) when
using the AES_SUBST_BYTE macro. Use PROLOGUE and EPILOGUE.
* x86/sha1-compress.asm: Use PROLOGUE and EPILOGUE.
* x86/arcfour-crypt.asm: Likewise.
* x86/aes-encrypt.asm: Likewise.
* config.m4.in (ELF_STYLE): Substitute configure's ASM_ELF_STYLE.
* asm.m4 (PROLOGUE, EPILOGUE): New macros, checking the value of
ELF_STYLE. So far, used and tested only for the x86 assembler
files, and needed to make the assembler happy both with ELF
(linux, solaris) and COFF (windows).
* configure.ac (NM): Use AC_CHECK_TOOL to check for nm.
(ASM_SYMBOL_PREFIX): Use $NM when examining the object file.
(ASM_ELF_STYLE): New variable. Set to 'yes' if assembling a file
with ELF-style .type and .size pseudo ops works.
* Makefile.in (TARGETS, DISTFILES): Added nettle.pdf.
(.texinfo.dvi, .dvi.ps, .ps.pdf): New targets, to build nettle.pdf.
(DOCTARGETS): New variable with targets that shouldn't be deleted
by make clean.
(maintainer-clean-here): New target. Deletes generated
documentation files.
* nettle.texinfo: Define AUTHOR with accents, when running in TeX
mode, which doesn't handle latin-1 properly. Set UPDATED-FOR to
1.13. Updated copyright years, and introduced a COPYRIGHT-YEARS
symbol. Updated copyright section, to mention assembler
implementations.
(Cipher modes): Transformed the Cipher Block Chaining to a section
Cipher modes, describing both CBC and the new CTR mode.
* src/nettle/x86/aes_tables.asm: Deleted unused file.
* x86/aes.asm: Deleted contents. This file is needed just to
override aes.c, which isn't needed for the x86 implementation.
* configure.ac (SHLIBMINOR): Increased minor number. Library
version is now libnettle.so.2.4, soname still libnettle.so.2.
* examples/nettle-benchmark.c (main): Reordered hash benchmarks.
* x86/sha1-compress.asm (EXPAND): Use % 16 instead of & 15 to
compute offsets mod 16, since m4 on FreeBSD 49.RELEASE and NetBSD
doesn't implement & correctly in eval.
2005-10-03 Niels Möller <nisse@lysator.liu.se>
* x86/sha1-compress.asm (OFFSET): New macro.
(F3): Eliminated a movl.
(ROUND): New argument, for k. When using F3, it's TMP3, on the
stack, otherwise, it is kept in TMP2, a register.
* examples/nettle-openssl.c: Use correct block sizes for openssl
ciphers.
* examples/nettle-benchmark.c: Also display cycles per block.
2005-10-02 Niels Möller <nisse@lysator.liu.se>
* sha1-compress.c (_nettle_sha1_compress): Updated to new
interface. Now responsible for byte conversion.
* x86/sha1-compress.asm (_nettle_sha1_compress): Do byte order
conversion, and store the input data on the stack. This leaves one
more register free for other uses.
* examples/nettle-benchmark.c: Now display cycles/byte, if the -f
option is used to say what the clock frequency is.
* sha1.c (sha1_block): Don't convert data from uint8_t to
uint32_t, that's now the responsibility of _nettle_sha1_compress.
* sha.h (_nettle_sha1_compress): Changed interface. Second
argument is now a pointer to the input data in unaligned,
big-endian form.
* sha1.c (sha1_final): Call sha1_block, don't call the compression
function _nettle_sha1_compress directly.
* nettle-internal.h (nettle_openssl_md5)
(nettle_openssl_sha1): Declare.
* examples/nettle-benchmark.c (main): Benchmark openssl md5 and
sha1.
* examples/nettle-openssl.c (nettle_openssl_md5)
(nettle_openssl_sha1): Added glue for openssl hash functions.
* nettle-internal.h (nettle_openssl_aes128, nettle_openssl_aes192)
(nettle_openssl_aes256, nettle_openssl_arcfour128): Declare.
* examples/nettle-benchmark.c: Check WITH_OPENSSL, not
HAVE_LIBCRYPTO. Benchmark openssl's aes and arcfour code.
* examples/nettle-openssl.c: Updated openssl des glue to use the
new openssl des interface. Added glue for arcfour and aes.
2005-09-27 Niels Möller <nisse@lysator.liu.se>
* nettle.texinfo (RSA): Improved text about the RSA patent.
Use @documentencoding ISO-8859-1.
* tools/sexp-conv.c (parse_options): New option --raw-hash, for
compatibility with lsh-1.x. Equivalent to --hash.
* tools/sexp-conv.c (main): With --hash, output a newline after
each hash.
2005-07-02 Niels Möller <nisse@lysator.liu.se>
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
* testsuite/Makefile.in (TS_SOURCES): Added ctr-test.c.
* testsuite/testutils.c (test_cipher_ctr): New function.
* testsuite/ctr-test.c: New file.
* testsuite/cbc-test.c (test_main): Use static const for msg.
* Makefile.in (nettle_SOURCES): Added ctr.c.
(HEADERS): Added ctr.h.
(HEADERS): Added nettle-types.h.
(INSTALL_HEADERS): Install nettle-stdint.h.
(distclean-here): Delete nettle-stdint.h, not nettle-types.h.
* ctr.c (ctr_crypt): New file, new function.
* memxor.c (memxor3): New function, suggested by Adam Langley.
* nettle-internal.h (NETTLE_MAX_CIPHER_BLOCK_SIZE): New constant.
* nettle.texinfo (Cipher functions): Fixed typo in prototype for
arctwo_encrypt (noticed by Adam Langley).
* nettle-meta.h: No longer needs to include cbc.h.
* cbc.h (nettle_crypt_func): Moved typedef to nettle-types.h.
(CBC_ENCRYPT, CBC_DECRYPT): Deleted older #if:ed out versions.
* configure.ac (AX_CREATE_STDINT_H): Use the file name
nettle-stdint.h, not nettle-types.h.
* nettle-types.h: New file. Automatically generated declarations
are now in nettle-stdint.h.
* config.guess: Support Solaris on x86_64. Fix by Henrik
* examples/io.h: Include RSA declarations only when public key
algorithms are enabled. Problem reported by Meilof Veeningen
2004-12-07 Niels Möller <nisse@lysator.liu.se>
* Makefile.in: Install directories, using $(INSTALL) -d, only if
they don't exist already.
2004-12-05 Niels Möller <nisse@lysator.liu.se>
* config.make.in (.PRECIOUS): Reverted earlier change. We need
.PRECIOUS to stop GNU make from deleting object files for the test
programs.
2004-12-02 Niels Möller <nisse@lysator.liu.se>
* Makefile.in (.SUFFIXES): Moved from Makefile.in to...
* config.make.in (.SUFFIXES): ... here. This helps compilation
with BSD make.
* testsuite/Makefile.in (.SUFFIXES): Deleted target.
* config.make.in (.c): Disable default rule for BSD-make.
(clean distclean mostlyclean maintainer-clean): Don't use the -C
flag when invoking make, for compatibility with Solaris make.
* Makefile.in (aesdata, desdata): Commented out the explicit
targets.
(shadata): Avoid using $< in non-pattern rule.
2004-12-01 Niels Möller <nisse@lysator.liu.se>
* config.make.in: Added a default target.
2004-11-29 Niels Möller <nisse@lysator.liu.se>
* testsuite/Makefile.in: Use .$(OBJEXT). Explicitly set .SUFFIXES.
* Makefile.in: Use .$(OBJEXT).
2004-11-28 Niels Möller <nisse@lysator.liu.se>
* tools/Makefile.in (nettle-lfib-stream): Avoid using $< in
non-suffix rule.
* Makefile.in (distdir): Handle absolute $distdir.
Avoid using the GNU extension $^.
* examples/Makefile.in: Avoid using the GNU extension $^.
* tools/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* configure.ac: Fixed typo, preventing the creation of dependency
2004-11-23 Niels Möller <nisse@lysator.liu.se>
* Makefile.in: Use DEP_INCLUDE.
* tools/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* examples/Makefile.in: Likewise.
* configure.ac (dummy-dep-files): Generate only of dependency
tracking is enabled.
2004-11-18 Niels Möller <nisse@lysator.liu.se>
* Makefile.in (clean-here): The clean target should not delete the
dependency files. Moved to the distclean target.
* examples/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* tools/Makefile.in: Likewise.
* configure.ac (ASM_SYMBOL_PREFIX): Fixed test.
(dummy-dep-files): Added quotes to sed command.
2004-11-17 Niels Möller <nisse@lysator.liu.se>
* testsuite/symbols-test: Try plain nm if nm -g doesn't work.
* x86/sha1-compress.asm: Use C_NAME for global symbols.
* x86/aes-encrypt.asm: Likewise.
* x86/aes-decrypt.asm: Likewise.
* x86/arcfour-crypt.asm: Likewise.
* Makefile.in (config.m4): New rule.
* config.m4.in (C_NAME): New macro.
* configure.ac (ASM_SYMBOL_PREFIX): Check if global symbols have a
leading underscore.
2004-11-16 Niels Möller <nisse@lysator.liu.se>
* Deleted getopt.c, getopt.h and getopt1.c from the CVS tree. Link
them from shared copies in lsh/misc instead.
2004-11-14 Niels Möller <nisse@lysator.liu.se>
* Makefile.in (DEP_FILES): Try include with only one macro
argument to be expanted.
* configure.ac (dummy-dep-files): Create dummy dependency files,
so that they can be included by the makefiles.
2004-11-13 Niels Möller <nisse@lysator.liu.se>
* Makefile.in: Don't use -include, as it's GNU make specific.
* examples/Makefile.in, tools/Makefile.in, testsuite/Makefile.in:
* examples/nettle-openssl.c: Check WITH_OPENSSL, not HAVE_LIBCRYPTO.
* configure.ac: Check for individual openssl headers blowfish.h,
cast.h, des.h. Renamed symbol HAVE_LIBCRYPTO to WITH_OPENSSL. New
configure option --disable-openssl.
2004-11-04 Niels Möller <nisse@lysator.liu.se>
* nettle.texinfo (UPDATED-FOR): Bumped to 1.12.
2004-11-02 Niels Möller <nisse@lysator.liu.se>
* nettle.texinfo (Cipher functions): Updated AES documentation,
for aes_set_encrypt_key and aes_set_decrypt_key.
(UPDATED-FOR): Set to 1.11. I think the manual should be updated
with all user-visible changes.
* aclocal.m4 (LSH_DEPENDENCY_TRACKING): Need extra quoting in case
pattern. (This file really lives in the lsh tree, as
lsh/acinclude.m4. For a complete ChangeLog, see lsh/Changelog).
2004-10-26 Niels Möller <nisse@lysator.liu.se>
* Released nettle-1.11.
* Makefile.in (clean-here): Delete *.s files.
(PRE_CPPFLAGS): Use this variable, not INCLUDES. Removed
* x86/arcfour-crypt.asm: Use movzbl when extending %cl to 32 bits.
2004-10-24 Niels Möller <nisse@lysator.liu.se>
* x86/arcfour-crypt.asm: Reverted the latest two changes; update
bost src and dst pointers in the loop, and use plain addb when
updating j. These two previous changes slowed the code down on AMD
2004-10-21 Niels Möller <nisse@lysator.liu.se>
* Makefile.in (install-shared): Use $(INSTALL_PROGRAM).
* configure.ac (SHLIBMINOR): Updated, shared library version is
now libnettle.so.2.3, soname still libnettle.so.2.
* Makefile.in (DISTFILES): Added asm.m4.
* examples/Makefile.in: Deleted all configure-related rules,
except the one rebuilding this Makefile. One should run make at
top level if other configure related files change.
* tools/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* configure.ac: Replaced AC_OUTPUT(list...) with an AC_OUTPUT
without arguments, and AC_CONFIG_FILES listing the files.
* Makefile.in: Changed the assembler rules as suffix rules.
Rewrote the configure-related rules, mostly based on the example
in the autoconf manual.
2004-10-20 Niels Möller <nisse@lysator.liu.se>
* examples/nettle-openssl.c (NCOMPAT): Disable openssl backwards
compatibility.
* config.make.in: Insert $(PRE_CPPFLAGS) and $(PRE_LDFLAGS) before
$(CPPFLAGS) and $(LDFLAGS). This mechanism replaces $(INCLUDES).
* examples/Makefile.in (PRE_CPPFLAGS, PRE_LDFLAGS): Use these
flags to get -I.. and -L.. early on the command line.
* testsuite/Makefile.in: Likewise
* tools/Makefile.in: Likewise.
* Makefile.in: In the assembler rules, there's no need to look in
$(srcdir) for the input file.
* x86/arcfour-crypt.asm: Reduced inner loop by one instruction, by
precomputing the offset between src and dst.
* tools/Makefile.in (.c.$(OBJEXT)): Removed redundant -I.. flag.
* x86/arcfour-crypt.asm (nettle_arcfour_crypt): Replaced addb ->
addl + andl $0xff, improving speed on PPro by another 15%.
2004-10-20 Niels Möller <nisse@lysator.liu.se>