ChangeLog 113 KB
Newer Older
Niels Möller's avatar
Niels Möller committed
1
2
2005-10-15  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
3
4
5
6
7
8
9
10
11
12
	* 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.	
Niels Möller's avatar
Niels Möller committed
13

Niels Möller's avatar
Niels Möller committed
14
15
16
17
18
	* sparc/machine.m4 (AES_LOAD, AES_ROUND): Started writing new AES
	macros.

	* sparc/aes-encrypt-internal.asm: New file.

Niels Möller's avatar
Niels Möller committed
19
20
2005-10-14  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
	* 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.

Niels Möller's avatar
Niels Möller committed
39
40
41
42
43
44
45
46
47
48
49
50
51
52
	* 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.

Niels Möller's avatar
Niels Möller committed
53
54
55
56
57
2005-10-14  Niels Möller  <niels@s3.kth.se>

	* aes-internal.h (AES_ROUND, AES_FINAL_ROUND): New macros.

	* aes-encrypt-internal.c (_nettle_aes_encrypt): New AES encryption
Niels Möller's avatar
Niels Möller committed
58
	function, avoiding the table-based indexing.
Niels Möller's avatar
Niels Möller committed
59
60
61
62

	* sha1-compress.c: Added debugging code.
	* md5-compress.c: Likewise.

Niels Möller's avatar
Niels Möller committed
63
64
2005-10-13  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
65
66
67
68
69
70
71
72
	* 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.

Niels Möller's avatar
Niels Möller committed
73
74
75
76
77
78
79
80
81
82
83
84
85
86
	* sparc64/aes.asm: New file. Copy of sparc/aes.asm, with minor
	changes to the stack frame layout. Patch contributed by Henrik
	Grubbström. Not yet tested.

	* 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.

Niels Möller's avatar
Niels Möller committed
87
88
89
90
2005-10-13  Niels Möller  <nisse@lysator.liu.se>

	* x86/md5-compress.asm (REF): Fixed calculation of offset.

Niels Möller's avatar
Niels Möller committed
91
92
93
94
95
96
97
98
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.

Niels Möller's avatar
Niels Möller committed
99
100
101
102
103
104
105
106
107
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.

Niels Möller's avatar
Niels Möller committed
108
109
110
111
112
113
114
115
116
117
118
119
120
2005-10-10  Niels Möller  <niels@s3.kth.se>

	* 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.

121
122
2005-10-06  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
123
124
125
126
	* configure.ac: Bumped version to 1.14.

	* Released nettle-1.13.

Niels Möller's avatar
Niels Möller committed
127
128
	* configure.ac: Check for openssl/aes.h.

129
130
131
132
	* 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.

Niels Möller's avatar
Niels Möller committed
133
134
2005-10-05  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
	* 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.

Niels Möller's avatar
Niels Möller committed
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
	* 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.

Niels Möller's avatar
Niels Möller committed
178
179
180
181
	* 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.

Niels Möller's avatar
Niels Möller committed
182
183
184
185
186
187
188
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.

Niels Möller's avatar
Niels Möller committed
189
190
191
192
193
194
195
2005-10-03  Niels Möller  <niels@s3.kth.se>

	* examples/nettle-openssl.c: Use correct block sizes for openssl
	ciphers.

	* examples/nettle-benchmark.c: Also display cycles per block.

Niels Möller's avatar
Niels Möller committed
196
197
2005-10-02  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
198
199
200
	* sha1-compress.c (_nettle_sha1_compress): Updated to new
	interface. Now responsible for byte conversion.

Niels Möller's avatar
Niels Möller committed
201
202
203
204
205
206
207
208
209
210
211
212
213
214
	* 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.

Niels Möller's avatar
Niels Möller committed
215
216
2005-09-28  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
217
218
219
220
221
222
223
224
225
226
227
228
	* 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.

Niels Möller's avatar
Niels Möller committed
229
230
231
232
233
234
235
236
237
	* 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.

Niels Möller's avatar
Niels Möller committed
238
239
240
241
242
2005-09-27  Niels Möller  <nisse@lysator.liu.se>

	* nettle.texinfo (RSA): Improved text about the RSA patent.
	Use @documentencoding ISO-8859-1.

Niels Möller's avatar
Niels Möller committed
243
244
245
246
247
2005-09-07  Niels Möller  <niels@s3.kth.se>

	* tools/sexp-conv.c (parse_options): New option --raw-hash, for
	compatibility with lsh-1.x. Equivalent to --hash.

Niels Möller's avatar
Niels Möller committed
248
249
250
251
252
2005-09-06  Niels Möller  <niels@s3.kth.se>

	* tools/sexp-conv.c (main): With --hash, output a newline after
	each hash.

Niels Möller's avatar
Niels Möller committed
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
2005-07-02  Niels Möller  <nisse@lysator.liu.se>

	* 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.

289
290
291
292
293
2005-03-17  Niels Möller  <niels@s3.kth.se>

	* config.guess: Support Solaris on x86_64. Fix by Henrik
	Grubbström. 

294
295
296
297
298
299
2005-01-03  Niels Möller  <niels@s3.kth.se>

	* examples/io.h: Include RSA declarations only when public key
	algorithms are enabled. Problem reported by Meilof Veeningen
	<meilof@gmail.com>. 

300
301
302
303
304
2004-12-07  Niels Möller  <nisse@lysator.liu.se>

	* Makefile.in: Install directories, using $(INSTALL) -d, only if
	they don't exist already.

305
306
307
308
309
310
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.

Niels Möller's avatar
Niels Möller committed
311
312
2004-12-02  Niels Möller  <nisse@lysator.liu.se>

313
314
315
316
317
	* 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.

318
319
	* config.make.in (.c): Disable default rule for BSD-make.

Niels Möller's avatar
Niels Möller committed
320
321
322
323
	* Makefile.in (all check install uninstall) 
	(clean distclean mostlyclean maintainer-clean): Don't use the -C
	flag when invoking make, for compatibility with Solaris make.

324
325
326
327
328
329
2004-12-02  Niels Möller  <niels@s3.kth.se>

	* Makefile.in (aesdata, desdata): Commented out the explicit
	targets.
	(shadata): Avoid using $< in non-pattern rule.

Niels Möller's avatar
Niels Möller committed
330
331
332
333
2004-12-01  Niels Möller  <nisse@lysator.liu.se>

	* config.make.in: Added a default target.

Niels Möller's avatar
Niels Möller committed
334
335
336
337
338
339
2004-11-29  Niels Möller  <nisse@lysator.liu.se>

	* testsuite/Makefile.in: Use .$(OBJEXT). Explicitly set .SUFFIXES.

	* Makefile.in: Use .$(OBJEXT).

340
341
2004-11-28  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
342
343
344
	* tools/Makefile.in (nettle-lfib-stream): Avoid using $< in
	non-suffix rule.

345
346
347
348
349
350
351
	* 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.

352
353
354
355
356
2004-11-24  Niels Möller  <niels@s3.kth.se>

	* configure.ac: Fixed typo, preventing the creation of dependency
	files. 

357
358
359
360
361
362
363
364
365
366
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.

367
368
2004-11-18  Niels Möller  <nisse@lysator.liu.se>

369
370
371
372
373
374
	* 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.
	
375
	* configure.ac (ASM_SYMBOL_PREFIX): Fixed test.
376
	(dummy-dep-files): Added quotes to sed command.
377

Niels Möller's avatar
Niels Möller committed
378
379
2004-11-17  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
380
381
	* testsuite/symbols-test: Try plain nm if nm -g doesn't work.

Niels Möller's avatar
Niels Möller committed
382
383
384
385
386
387
388
389
390
391
392
393
	* 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.

394
395
396
397
398
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.

399
400
2004-11-14  Niels Möller  <nisse@lysator.liu.se>

401
402
403
	* Makefile.in (DEP_FILES): Try include with only one macro
	argument to be expanted.

404
405
406
	* configure.ac (dummy-dep-files): Create dummy dependency files,
	so that they can be included by the makefiles.

Niels Möller's avatar
Niels Möller committed
407
408
2004-11-13  Niels Möller  <nisse@lysator.liu.se>

409
410
411
412
	* Makefile.in: Don't use -include, as it's GNU make specific.
	* examples/Makefile.in, tools/Makefile.in, testsuite/Makefile.in:
	Likewise. 

Niels Möller's avatar
Niels Möller committed
413
414
415
416
417
418
	* 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.

Niels Möller's avatar
Niels Möller committed
419
420
2004-11-04  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
421
422
	* configure.ac: Bumped version to 1.13.

Niels Möller's avatar
Niels Möller committed
423
424
	* Released nettle-1.12.

425
426
427
428
2004-11-04  Niels Möller  <niels@s3.kth.se>

	* nettle.texinfo (UPDATED-FOR): Bumped to 1.12.

429
430
431
432
433
434
435
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.

436
437
438
439
	* 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).
	
Niels Möller's avatar
Niels Möller committed
440
441
2004-10-26  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
442
443
	* configure.ac: Bumped version to 1.12.

444
445
446
447
448
449
	* Released nettle-1.11.

	* Makefile.in (clean-here): Delete *.s files.
	(PRE_CPPFLAGS): Use this variable, not INCLUDES. Removed
	-I$(srcdir). 

Niels Möller's avatar
Niels Möller committed
450
451
452
453
454
455
456
457
458
	* 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
	Duron. 

Niels Möller's avatar
Niels Möller committed
459
460
2004-10-21  Niels Möller  <nisse@lysator.liu.se>

461
462
463
464
465
	* 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.

Niels Möller's avatar
Niels Möller committed
466
467
	* Makefile.in (DISTFILES): Added asm.m4.

468
469
470
2004-10-21  Niels Möller  <niels@s3.kth.se>

	* examples/Makefile.in: Deleted all configure-related rules,
471
472
	except the one rebuilding this Makefile. One should run make at
	top level if other configure related files change.
473
474
475
476
477
478
479
480
481
482
	* 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.

483
484
2004-10-20  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
485
486
487
	* examples/nettle-openssl.c (NCOMPAT): Disable openssl backwards
	compatibility.

488
489
490
491
492
493
494
495
	* 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.

Niels Möller's avatar
Niels Möller committed
496
497
498
499
500
501
502
503
504
505
506
507
508
2004-10-20  Niels Möller  <niels@s3.kth.se>

	* 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%.

Niels Möller's avatar
Niels Möller committed
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
2004-10-20  Niels Möller  <nisse@lysator.liu.se>

	* tools/Makefile.in (install): Support DESTDIR.
	(uninstall): New target.

	* testsuite/Makefile.in (uninstall): New dummy target.

	* config.sub: Copied from automake-1.8.5. 

	* examples/Makefile.in (SOURCES): Added rsa-sign.c and rsa-verify.c.
	(DISTFILES): Added getopt.h.
	(install uninstall): New dummy targets.

	* config.make.in (.PHONY): Added more targets.

	* Makefile.in (.texinfo.info, .texinfo.html): New targets. Added
	support for uninstall and DESTDIR. Various fixes to install and
	distcheck.

	* examples/Makefile.in (INCLUDES): Added -I flags.
	(distdir): Use $^ to refer to the files.
	(distclean): New target.
	* testsuite/Makefile.in: Likewise.
	* tools/Makefile.in: Likewise.

	* Makefile.in (INCLUDES): Need -I flags for VPATH build.
	(clean distclean mostlyclean maintainer-clean): Clean
	subdirectories first.
	(DISTFILES): Added a bunch of files.
	(des_headers): Added desCore rules.
	(install-here): Split off target install-headers, which uses $^ to
	refer to the files.
	(distdir): Use $^ to refer to the files.
	distcheck): Fixes.

	* config.make.in (COMPILE): Add $(INCLUDE) to the line.

Niels Möller's avatar
Niels Möller committed
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
2004-10-19  Niels Möller  <nisse@lysator.liu.se>

	Stop using automake. Replaced each Makefile.am with a hand-written
	Makefile.in.
	* configure.ac: New output variable CCPIC_MAYBE. New output file
	config.make. Replaced automake constructions.	
	* .bootstrap: Don't run aclocal and automake.
	* config.make.in: New file, with shared Makefile variables and rules.

2004-10-18  Niels Möller  <nisse@lysator.liu.se>

	* x86/arcfour-crypt.asm (nettle_arcfour_crypt): Replace incb ->
	incl + andl, to improve speed on PPro and PII. Suggested by
	Fredrik Olsson.

561
562
563
564
565
566
2004-10-08  Niels Möller  <niels@s3.kth.se>

	* examples/rsa-encrypt-test: Avoid reading and executing a file at
	the same time.
	* examples/setup-env: Likewise.

Niels Möller's avatar
Niels Möller committed
567
568
569
570
571
2004-10-06  Niels Möller  <niels@s3.kth.se>

	* testsuite/symbols-test: Ignore __i686.get_pc_thunk.bx and
	similar symbols.

Niels Möller's avatar
Niels Möller committed
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
2004-10-05  Niels Möller  <nisse@lysator.liu.se>

	* twofish.c (q_table): Use a const pointer array.

	* sexp2dsa.c (dsa_keypair_from_sexp_alist): Use a const pointer
	array for the keywords.
	(dsa_signature_from_sexp): Likewise.
	* sexp2rsa.c (rsa_keypair_from_sexp_alist): Likewise.
	(rsa_keypair_from_sexp): Likewise.

	* sexp.c (sexp_iterator_check_types): Use an argument of type
	"const uint8_t * const *" for the types list.
	(sexp_iterator_assoc): Likewise, for the keys list.

	* list-obj-sizes.awk: Fixes to handle multiple .data and .rodata
	sections. Also fixed to handle the last file correctly.

589
590
591
592
593
2004-09-23  Niels Möller  <nisse@lysator.liu.se>

	* configure.ac (SHLIBLINK, SHLIBLIBS): On cygwin, linking needs
	-Wl,--whole-archive $(OBJECTS) -Wl,--no-whole-archive $(LIBS). 

Niels Möller's avatar
Niels Möller committed
594
595
596
597
598
599
600
601
602
603
604
605
606
607
2004-09-22  Niels Möller  <niels@s3.kth.se>

	* configure.ac: Setup SHLIBFORLINK and friends for cygwin. 

	* list-obj-sizes.awk: Strip *_a-prefix from all file names.

	* Makefile.am (libnettle_a_SOURCES): List only .c files. Headers
	moved to noinst_HEADERS.
	(SHLIBOBJECTS): Substitute from libnettle_a_SOURCES, not
	am_libnettle_a_OBJECTS, since the latter includes
	libnettle_a-prefixes with some automake versions.
	(SHLIBSONAME): Check if this name is empty, which is the case on
	cygwin, before using it.

608
609
610
611
612
613
614
615
2004-08-31  Niels Möller  <nisse@lysator.liu.se>

	* configure.ac: New command line option --disable-pic. Use
	LSH_CCPIC. 

	* Makefile.am (libnettle_a_CFLAGS): Added $(CCPIC), to attempt to
	build also the static library as position independent code.

Niels Möller's avatar
Niels Möller committed
616
617
2004-08-24  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
618
	* des-compat.c (des_cbc_cksum): Pad input with NUL's, if it's not
Niels Möller's avatar
Niels Möller committed
619
620
	an integral number of blocks.

Niels Möller's avatar
Niels Möller committed
621
622
2004-08-24  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
623
624
625
	* testsuite/arctwo-test.c, arctwo.h, arctwo.c
	(arctwo_set_key_ekb): Fixed typo; it should be "ekb", not "ebk".

Niels Möller's avatar
Niels Möller committed
626
627
628
629
630
631
632
633
634
635
636
637
638
639
	Integrated arctwo patch from Simon Josefsson.
	* testsuite/Makefile.am (noinst_PROGRAMS): Added arctwo-test.

	* Makefile.am (libnettleinclude_HEADERS): Added arctwo.h.
	(libnettle_a_SOURCES): Added arctwo.c, arctwo.h and arctwo-meta.c.

	* nettle-meta.h (nettle_arctwo40, nettle_arctwo64)
	(nettle_arctwo64, nettle_arctwo_gutmann128): Declare ciphers.

	* arctwo-meta.c, arctwo.c, arctwo.h, testsuite/arctwo-test.c: New
	files.

	* macros.h (LE_READ_UINT16, LE_WRITE_UINT16): New macros.

Niels Möller's avatar
Niels Möller committed
640
641
642
643
644
2004-08-23  Niels Möller  <nisse@lysator.liu.se>

	* testsuite/md5-test.c (test_main): Added collision, found in 2004.
	(test_main): Added second collision.

Niels Möller's avatar
Niels Möller committed
645
646
647
648
649
650
651
652
653
654
655
2004-08-23  Niels Möller  <niels@s3.kth.se>

	* testsuite/md5-test.c (test_main): Added first half of a
	collision test case.

	* des-compat.c (des_cbc_cksum): Changed input argument to be of
	type const uint8_t * (was const des_cblock *).

	* des-compat.h (const_des_cblock): New bogus type. Disabled use of
	const, for compatibility with openssl.

Niels Möller's avatar
Niels Möller committed
656
657
658
659
2004-06-08  Niels Möller  <niels@s3.kth.se>

	* aesdata.c: Renamed log and ilog to gf2_log and gf2_exp.

Niels Möller's avatar
Niels Möller committed
660
661
662
663
664
665
666
2004-04-07  Niels Möller  <nisse@lysator.liu.se>

	* aes-set-encrypt-key.c (log, ilog): Deleted unused tables.

	* aes-set-decrypt-key.c (gf2_log, gf2_exp, mult): Renamed tables,
	were log and ilog.

667
668
669
670
2004-03-20  Niels Möller  <nisse@lysator.liu.se>

	* configure.ac: Use AC_CONFIG_AUX_DIR([.]).

Niels Möller's avatar
Niels Möller committed
671
672
673
674
2004-03-18  Niels Möller  <niels@s3.kth.se>

	* examples/io.c (read_file): Display a message if fopen fails.

Niels Möller's avatar
Niels Möller committed
675
676
677
678
679
680
2004-03-05  Niels Möller  <nisse@lysator.liu.se>

	* Released nettle-1.10.

	* configure.ac (SHLIBMINOR): Shared library version is now 2.2.

Niels Möller's avatar
Niels Möller committed
681
682
683
684
2004-03-04  Niels Möller  <nisse@lysator.liu.se>

	* testsuite/symbols-test: Pass -g flag to nm.

Niels Möller's avatar
Niels Möller committed
685
686
687
688
2004-03-02  Niels Möller  <nisse@lysator.liu.se>

	* configure.ac: Fixed EXEEXT workaround.

689
690
691
692
693
2004-03-02  Niels Möller  <niels@s3.kth.se>

	* configure.ac: Added workaround to get the correct $(EXEEXT)=''
	when compiling with rntcl.

694
695
2004-03-02  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
696
697
698
	* testsuite/Makefile.am (noinst_PROGRAMS): Put test program list
	here, to let automake add $(EXEEXT).

699
700
	* configure.ac (RSA_EXAMPLES): Append $(EXEEXT) to the filenames.

Niels Möller's avatar
Niels Möller committed
701
702
2004-03-01  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
703
704
705
706
707
708
709
710
711
	* examples/rsa-keygen.c, examples/rsa-encrypt.c,
	examples/rsa-decrypt.c: Include "getopt.h" instead of <unistd.h>.

	* examples/Makefile.am (rsa_encrypt_SOURCES, rsa_decrypt_SOURCES)
	(rsa_keygen_SOURCES): Added getopt.h, getopt.c and getopt1.c.

	* examples/getopt.h, examples/getopt.c, examples/getopt1.c: New
	files. 

Niels Möller's avatar
Niels Möller committed
712
713
714
715
716
	* testsuite/des-compat-test.c: Don't include <unistd.h>.

	* testsuite/testutils.c (main): Don't use getopt. Then we don't
	need to include <unistd.h>.

Niels Möller's avatar
Niels Möller committed
717
718
719
720
721
722
723
724
2004-03-01  Niels Möller  <niels@s3.kth.se>

	* config.guess: Copied from automake-1.8.2. Hacked to recognize
	Windows_NT (and Windows_95 and Windows_98) running on "x86" and
	"686".

	* install-sh: Removed from CVS repository. Let automake supply it.

Niels Möller's avatar
Niels Möller committed
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
2004-02-26  Niels Möller  <nisse@lysator.liu.se>

	* nettle-meta.h (nettle_crypt_func): Typedef moved to cbc.h.
	Include cbc.h instead.

	* des-compat.c: Reverted const change, now all the des_key_sched
	arguments are not const. This is also what openssl's interface
	looks like.
	(cbc_crypt_func): Deleted typedef, use nettle_crypt_func instead.	

	* cbc.h (nettle_crypt_func): Moved typedef here.	
	* cbc.c (cbc_encrypt, cbc_decrypt_internal, cbc_decrypt): Use it
	for typing the f argument. Reverted the const change, for
	compatibility with nettle_crypt_func.

Niels Möller's avatar
Niels Möller committed
740
741
2004-02-25  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
742
743
744
745
746
747
748
749
750
751
752
753
754
	* testsuite/des-compat-test.c: Use des_cblock for typing more of
	the variables. Use const. Got rid of most of the explicit casts.
	Disabled the input/output alignment tests.

	* des.c (des_encrypt, des_decrypt): Use a const context pointer.
	* des3.c (des3_encrypt, des3_decrypt): Likewise.

	* cbc.c (cbc_encrypt, cbc_decrypt): Use a _const_ void *ctx argument.

	* des-compat.c: Use const for all unchanged arguments.
	(des_key_sched): Use a copy of the key if we need to fix the
	parity.

Niels Möller's avatar
Niels Möller committed
755
756
757
758
759
	* testsuite/des-compat-test.c (C_Block, Key_schedule): Deleted
	defines. Deleted some of the explicit casts.

	* des-compat.c (des_cbc_cksum): Dereference DST pointer.

Niels Möller's avatar
Niels Möller committed
760
761
762
763
2004-02-25  Niels Möller  <niels@s3.kth.se>

	* pgp.h: Include nettle-types.h.

Niels Möller's avatar
Niels Möller committed
764
765
766
767
768
2004-02-24  Niels Möller  <nisse@lysator.liu.se>

	* testsuite/symbols-test: Allow symbols starting with double
	underscores, like on darwin.

Niels Möller's avatar
Niels Möller committed
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
2004-02-17  Niels Möller  <niels@s3.kth.se>

	* Makefile.am: Protected %-rules used for building pure objects,
	and for assembler files, by automake conditionals. Needed for
	makes such as tru64's, which tries to understand %-patterns, but
	doesn't get it right.
	(SUFFIXES): Added .html.
	(.texinfo.html): Rewrote rule to use a traditional suffix target.
	
	* configure.ac (enable_assembler): Explicitly set
	enable_assembler=no, on architectures where we have no assembler
	files. 
	(ENABLE_ASSEMBLER, ENABLE_SHARED): New automake conditionals.

	* testsuite/testutils.c (xalloc): xalloc(0) should work also on
	systems where malloc(0) returns NULL.

Niels Möller's avatar
Niels Möller committed
786
787
788
789
2004-02-16  Niels Möller  <niels@s3.kth.se>

	* Makefile.am (%.o: %.asm): Added comment about OSF1 make problem.

Niels Möller's avatar
Niels Möller committed
790
791
792
793
794
2004-02-15  Niels Möller  <nisse@lysator.liu.se>

	* testsuite/testutils.h: #include nettle-types.h instead of
	inttypes.h. 

Niels Möller's avatar
Niels Möller committed
795
796
797
798
799
800
2004-02-12  Niels Möller  <nisse@lysator.liu.se>

	* examples/rsa-encrypt-test: Use -r option when invoking
	rsa-encrypt. Needed for the test to work on systems with no
	/dev/urandom.

801
802
803
804
805
2004-02-12  Niels Möller  <niels@s3.kth.se>

	* configure.ac (CPPFLAGS, LDFLAGS): No spaces after -I and -L, as
	some C compilers, in particular True64 cc, don't like that.

Niels Möller's avatar
Niels Möller committed
806
807
808
809
2004-02-08  Niels Möller  <nisse@lysator.liu.se>

	* configure.ac: Bumped version number to 1.10.

810
811
2004-02-07  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
812
813
	* Released nettle-1.9.

814
815
	* configure.ac (SHLIBMINOR): Bumped, library version is now 2.1.

Niels Möller's avatar
Niels Möller committed
816
817
818
819
820
821
822
823
824
825
826
827
	* testsuite/sexp-format-test.c: Include bignum.h only if HAVE_LIBGMP.
	* testsuite/rsa-encrypt-test.c: Include rsa.h only if WITH_PUBLIC_KEY.
	* testsuite/pkcs1-test.c: Include pkcs1.h only if WITH_PUBLIC_KEY.

	* pgp-encode.c [!HAVE_LIBGMP]: Kludge around the pgp.h's
	dependency on gmp.h.
	(pgp_put_mpi): Condition on HAVE_LIBGMP.

	* pgp.h: Don't include bignum.h, to make it possible to compile
	the non-bignum parts of pgp-encode.c without bignum support. Needs
	to be fixed properly before the pgp interface is advertised.

Niels Möller's avatar
Niels Möller committed
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
	* tools/sexp-conv.c (xalloc): New function.
	(main): Use xalloc.

	* tools/output.c (sexp_put_digest): Use TMP_DECL instead of alloca.

	* testsuite/testutils.c (xalloc): New function. Made all other
	functions use xalloc instead of alloca.

	* examples/rsa-keygen.c (main): Use xalloc for allocation.
	* examples/rsa-encrypt.c (write_bignum): Likewise.
	* examples/rsa-decrypt.c (read_bignum): Likewise.
	* testsuite/yarrow-test.c (open_file): Likewise.
	* testsuite/rsa-encrypt-test.c (test_main): Likewise.
	* testsuite/bignum-test.c (test_bignum): Likewise.

	* examples/nettle-openssl.c: When calling des_key_sched and
	des_ecb_encrypt, cst arguments to (void *). Openssl's typedefs
	des_cblock and const_des_cblock are too broken.

	* examples/nettle-benchmark.c (xalloc): New function. Use instead
	of alloca, for better portability.

	* examples/io.c (xalloc): New function.

852
853
854
	* Makefile.am (nodist_libnettleinclude_HEADERS): nettle-types.h
	should not be distributed.

Niels Möller's avatar
Niels Möller committed
855
856
2004-02-06  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
857
858
	* x86/sha1-compress.asm: Rename round -> ROUND.

Niels Möller's avatar
Niels Möller committed
859
860
861
862
	* x86/sha1-compress.asm: Store the magic constants on stack.
	Accessing them via %esp should be a little faster than using large
	immediate operands.

Niels Möller's avatar
Niels Möller committed
863
864
865
866
867
868
869
870
	* Makefile.am (EXTRA_DIST, DISTCLEANFILES): Handle
	sha1-compress.asm.

	* configure.ac: Use assembler file sha1-compress.asm if available.

	* x86/sha1-compress.asm (EXPAND): Fixed the rotation part of the
	data expansion.

Niels Möller's avatar
Niels Möller committed
871
872
873
874
875
876
877
878
879
880
881
2004-02-06  Niels Möller  <nisse@lysator.liu.se>

	* x86/sha1-compress.asm: Assembler implementation of
	sha1_compress. (Not yet working).

	* Makefile.am (libnettle_a_SOURCES): Added sha1-compress.c.

	* sha1.c (sha1_transform): Function renamed to sha1_compress, and
	moved to... 
	* sha1-compress.c: ... New file.

882
883
2004-02-05  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
884
885
886
	* examples/rsa-encrypt.c (process_file): Copy the leftover to the
	start of the buffer, when preparing for the final processing.

Niels Möller's avatar
Niels Möller committed
887
888
889
890
891
892
893
894
895
896
	* examples/nettle-benchmark.c (bench_hash, time_hash): New functions.
	(main): Benchmark hash functions too.
	(BENCH_BLOCK): Increased 10K.
	(BENCH_INTERVAL): Decreased to 0.25s.

	* examples/nettle-benchmark.c (time_function): Loop around calling
	f, until 1s has elapsed. Returns seconds per call. Updated bench
	functions to not loop themselves.
	(display): Updated MB/s calculation.

897
898
899
900
901
902
903
904
905
906
907
	* testsuite/arcfour-test.c (test_main): Use test_cipher_stream.

	* testsuite/testutils.c (test_cipher_stream): New function, that
	tries dividing the input into varying size blocks before
	processing. 

	* x86/arcfour-crypt.asm (nettle_arcfour_crypt): Bug fix, half of
	the S array swap was forgotten.
	* arcfour.c (arcfour_stream): Likewise.
	* arcfour-crypt.c (arcfour_crypt): Likewise.

Niels Möller's avatar
Niels Möller committed
908
909
2004-02-05  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
910
911
912
	* x86/arcfour-crypt.asm (nettle_arcfour_crypt): Must store the new
	i, j at the end of the loop.

Niels Möller's avatar
Niels Möller committed
913
914
915
916
	* Makefile.am (EXTRA_DIST): Make sure x86 assembler files are
	distributed. 
	(DISTCLEANFILES): And that the symlinks and .s files are deleted.

Niels Möller's avatar
Niels Möller committed
917
918
	* x86/aes-encrypt.asm, x86/aes-decrypt.asm, x86/arcfour-crypt.asm:
	Fixed debug information.
Niels Möller's avatar
Niels Möller committed
919
920
921
922
923
924
925
926
927

	* x86/arcfour-crypt.asm: New file. About three times faster than
	the optimized C code.

	* configure.ac: Use assembler file arcfour-crypt.asm if available.

	* arcfour.c (arcfour_crypt): Moved function too...
	* arcfour-crypt.c (arcfour_crypt): New file.

Niels Möller's avatar
Niels Möller committed
928
929
930
931
	* arcfour.c (arcfour_crypt): Optimization suggested by Jonas
	Walldén. Makes arcfour up to 50% faster on x86 and ppc, and
	probably on other architectures as well.

Niels Möller's avatar
Niels Möller committed
932
933
934
935
936
2004-01-31  Niels Möller  <nisse@lysator.liu.se>

	* configure.ac (AX_CREATE_STDINT_H): Also look for uint32_t and
	friends in sys/types.h.

Niels Möller's avatar
Niels Möller committed
937
938
2004-01-11  Niels Möller  <nisse@harpo.hack.org>

939
940
941
	* Makefile.am (libnettleinclude_HEADERS): Added bignum.h,
	memxor.h, pkcs1.h and rsa-compat.h.

Niels Möller's avatar
Niels Möller committed
942
943
	* configure.ac: Bumped version to 1.9.

Niels Möller's avatar
Niels Möller committed
944
945
2004-01-10  Niels Möller  <nisse@harpo.hack.org>

Niels Möller's avatar
Niels Möller committed
946
947
	* Released nettle-1.8.

Niels Möller's avatar
Niels Möller committed
948
949
	* examples/teardown-env: Delete more test files.

Niels Möller's avatar
Niels Möller committed
950
951
952
953
	* nettle.texinfo (Hash functions): Documented md2 and md4.

	* configure.ac (SHLIBMAJOR): Bumped to 2.

954
955
2004-01-09  Niels Möller  <nisse@harpo.hack.org>

Niels Möller's avatar
Niels Möller committed
956
957
	* examples/rsa-encrypt-test: New testcase.

Niels Möller's avatar
Niels Möller committed
958
959
	* examples/rsa-encrypt.c, examples/rsa-session.h: Expanded the
	comment describing the file format, and moved to rsa-session.h.
960
961
962
963
964
965
966

	* examples/rsa-decrypt.c (process_file): Finished this function.
	(main): Initialize x. Check the size of the session key after rsa
	decryption. 

	* examples/io.c (write_string): Treat short item count as an error.

Niels Möller's avatar
Niels Möller committed
967
968
2004-01-08  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
969
	* index.html: Added instructions for CVS access.
970

971
972
	* dsa-keygen.c (dsa_nist_gen): Fixed declaration/statement order.

Niels Möller's avatar
Niels Möller committed
973
974
975
976
977
978
979
980
981
	* rsa-keygen.c (bignum_next_prime): Fixed off-by-one error when
	comparing input to the largest listed prime. General cleanup, as
	prime_limit > 0 always. Use TMP_DECL and TMP_ALLOC.

	* nettle-internal.h (TMP_DECL, TMP_ALLOC): New macros. When alloca
	is unavailable, they work by allocating a fix amount of stack and
	imposing a hard limit on what can be allocated. Updated all users
	of alloca.

Niels Möller's avatar
Niels Möller committed
982
983
984
985
986
987
988
989
990
991
2004-01-07  Niels Möller  <nisse@harpo.hack.org>

	* nettle-types.h: New (generated) file, to be used instead of
	including <inttypes.h> directly. Updated all users of inttypes.h.
	
	* Makefile.am (DISTCLEANFILES, libnettleinclude_HEADERS): Added
	nettle-types.h. 

	* configure.ac (AX_CREATE_STDINT_H): Create nettle-types.h.

992
993
994
995
2003-11-16  Niels Möller  <nisse@harpo.hack.org>

	* yarrow256.c (yarrow256_seed): Use const for the seed_file input.

996
997
998
999
1000
2003-11-12  Niels Möller  <niels@s3.kth.se>

	* list-obj-sizes.awk: New function for decoding hex values, with a
	new function hex2int. Also implemented calculation of total
	storage, removed the dependence on the .comment section, and use
For faster browsing, not all history is shown. View entire blame