ChangeLog 62 KB
Newer Older
Niels Möller's avatar
Niels Möller committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
2001-07-04  Niels Möller  <nisse@cuckoo.hack.org>

	* src/command.h (command_2): Made invoke a method, not a function
	pointer. Updated users.
	(COMMAND_2_INVOKE): New macro.

	* src/channel_commands.h (install_info): Inherit command_2,
	instead of collect_info_2.

	* src/testsuite/functions.sh (spawn_lshd): Pass --no-syslog to
	lshd, not --log-file.

	* src/tcpforward_commands.c (open_forwarded_tcpip): Redefined
	using DEFINE_COMMAND2.
	(open_direct_tcpip): Likewise.
	(remote_listen_command): Likewise.
	(make_request_tcpip_forward_command): Deleted function. Moved code
	to remote_listen_command.
	(make_direct_tcpip_handler): Redefined using DEFINE_COMMAND.
	(make_tcpip_forward_handler): Likewise.
	
	* src/sexp_commands.c (sexp_print_raw_hash): Redefined using
	DEFINE_COMMAND3. 

	* src/proxy.c (chain_connections): Redefined using DEFINE_COMMAND3.

	* src/command.c (do_trace_continuation): Use trace(... %t ...).

	* src/werror.c (logfile_flag): Deleted global variable.
	(werror_vformat): Added %t, for printing the object type.

	* src/lshd.c: New option --no-syslog.

	* src/io_commands.c (listen_with_callback): Redefined using
	DEFINE_COMMAND3.

	* src/handshake.c (handshake_command): Redefined using
	DEFINE_COMMAND4. 

	* src/connection_commands.c (connection_if_srp): Redefined using
	DEFINE_COMMAND3. 
	(make_connection_if_srp): Use make_command_3_invoke_2.

	* src/combinators.c (command_Cp): Bugfix, changed argument order.

Niels Möller's avatar
Niels Möller committed
46
47
2001-07-03  Niels Möller  <nisse@ehand.com>

Niels Möller's avatar
Niels Möller committed
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
	* src/testsuite/runtests (srcdir): By default, use `pwd`, not ".". 

	* src/testsuite/functions.sh: Don't set srcdir here.
	(spawn_lshd): Send messages to lshd.log.

	* src/werror.c (logfile_flag): New global variable.
	(syslog_flag): Deleted.
	(werror_argp_parser): Set logfile_flag of a log file option is
	encountered. 

	* src/lshd.c (main): Don't use syslog if the user provided an
	explicit log-file option.

	* src/combinators.c (command_C): Redefined using DEFINE_COMMAND3.
	(command_Cp): Redefined using DEFINE_COMMAND4, but disabled the
	new version as it doesn't quite work.
	
	* src/testsuite/macros.m4: Include string.h.

Niels Möller's avatar
Niels Möller committed
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
	* src/combinators.c (command_Sp): Redefined using
	DEFINE_COMMAND4.
	(command_B): Redefined using DEFINE_COMMAND3.
	(command_Bp): Redefined using
	DEFINE_COMMAND4.

	* src/command.c (command_4_invoke_3): New class.
	(make_command_4_invoke_3): New function.
	(command_4_invoke_2): New class.
	(make_command_4_invoke_2): New function.
	(command_4_invoke): New class.
	(make_command_4_invoke): New function.

	* src/command.h (command_4): New class.
	(DEFINE_COMMAND4): New macro.

	* src/gateway_commands.c: Include string.h.

	* configure.in: Bumped version to 1.3.3.

Niels Möller's avatar
Niels Möller committed
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
2001-07-02  Niels Möller  <nisse@cuckoo.hack.org>

	* src/combinators.c (command_I): Redefined using DEFINE_COMMAND.
	Updated users as the type was changed in the process.
	(command_K): Redefined using DEFINE_COMMAND2.
	(command_S): Redefined using DEFINE_COMMAND3.

	* src/command.c: New class.
	(make_command_2_invoke): New function.
	(command_3_invoke_2): New class.
	(make_command_3_invoke_2): New function.
	(command_3_invoke): New class.
	(make_command_3_invoke): New function.
	(progn_command): Use DEFINE_COMMAND isntead of
	DEFINE_COMMAND_SIMPLE. 

	* src/command.h: Started replacing command_simple and the
	collect_info_n classes with simpler schemes.
	(command_2): New class.
	(DEFINE_COMMAND2): New macro.
	(command_3): New class.
	(DEFINE_COMMAND3): New macro.

	* src/connection_commands.c (connection_require_userauth): Changed
	invocation of DEFINE_COMMAND.
	* src/gateway_commands.c (gateway_init): Likewise.

	* src/command.h (DEFINE_COMMAND): Changed macro to not take the
	function arguments as arguments.

	* src/command.c (gaba_apply): Rewrote to not use
	COMMAND_SIMPLE_CALL. 
	(do_command_unimplemented): Deleted function.

Niels Möller's avatar
Niels Möller committed
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
2001-06-27  Niels Möller  <nisse@cuckoo.hack.org>

	* acinclude.m4: Added template for socklen_t definition.

	* acconfig.h: Deleted definitions, use AH_TEMPLATE in configure.in
	instead. Can this file be removed completely now?

	* configure.in: Added AH_TEMPLATE calls. Deleted test for
	offsetof. 

	* src/client_escape.c (newlinep): New function.
	Treat NL and CR equivalently.
	(scan_escape): Simplified. Also doesn't use memchr anymore. 

	* src/io.c (io_listen_local): Use plain offsetof.
	(io_connect_local): Likewise.

	* src/lsh_types.h (OFFSET_OF): Deleted definition, simply trust
	stddef.h. 

	* src/server_userauth.c (do_exc_userauth_handler): Let the
	connection's exception handler deal with EXC_PROTOCOL (fixed
	somewhat differently in the 1.2.x branch).

2001-06-26  Niels Möller  <nisse@cuckoo.hack.org>

	* configure.in: Deleted IDEA support.

	* src/process_atoms (atom2define): Changed invocation of tr to be
	compatible with the Solaris 8 tr.

Niels Möller's avatar
Niels Möller committed
152
153
154
155
156
157
158
159
160
2001-06-26  Niels Möller  <nisse@ehand.com>

	* src/client_escape.c (NEWLINE): New macro.
	(do_escape_handler): Reset state to GOT_NONE appropriately.

	* src/client.c (client_argp_parser): Added empty statement after
	label. 
	(make_client_session): Bind ^Z to suspend.

Niels Möller's avatar
Niels Möller committed
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
2001-06-24  Niels Möller  <nisse@cuckoo.hack.org>

	* src/xalloc.h (CHECK_TYPE) [DEBUG_ALLOC]: Added parentheses.
	* src/xalloc.h (CHECK_SUBTYPE) [DEBUG_ALLOC]: Likewise.

	* src/werror.c (werror_vformat): Implemented the 'p' (paranoia)
	modifier for %c.

	* src/client_escape.c (escape_dispatch): Use %pc with werror.

	* src/client.c (make_client_session): Check if stdin is a tty,
	when deciding on the default for escape char handling. 

2001-06-20  Niels Möller  <nisse@cuckoo.hack.org>

	* src/client_escape.c (do_escape_handler): Fixed the EOF case.

Niels Möller's avatar
Niels Möller committed
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
2001-06-19  Niels Möller  <nisse@cuckoo.hack.org>

	* src/client_session.c (client_read_stdin): New function, for
	installing the escape-char handler on stdin.
	(do_client_io): Use client_read_stdin.
	(make_client_session_channel): Added argument escape.

	* src/client_escape.c: Moved suspend-related code to suspend.c. 

	* src/client.c (client_escape_info): New function.
	(client_options): New option ---escape-char or 'e'.
	(make_client_session): Seet up escape char info.
	(client_argp_parser): Handle escape-char option. Call
	suspend_install_handler. 

	* src/Makefile.am.in (liblsh_a_SOURCES): Added suspend.c.

	* src/unix_interact.c: Moved suspend-related code to suspend.c. 

	* src/suspend.c, src/suspend.h: New files.

	* configure.in: Bumped version to 1.3.2.

Niels Möller's avatar
Niels Möller committed
201
202
2001-06-17  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
203
204
	* src/rsync/rsync.h: Include <inttypes.h>, not <stdint.h>.

Niels Möller's avatar
Niels Möller committed
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
	* src/channel.c (alloc_channel): Initialize new channel-entries to
	NULL. 

	* src/cast.c: Adapted to nettle.

	* Makefile.am.in (DOTDISTS): Deleted references to the symmetric
	subdirectory.
	(MAKEFILESAM): Likewise.
	* configure.in (AC_CONFIG_FILES): Likewise.

	* doc/HACKING (ROAD MAP): Updated to mention nettle.

	* doc/lsh.texinfo: Added @dircategory and @direntry.

	* src/twofish.c: Adapted to nettle.

Niels Möller's avatar
Niels Möller committed
221
222
2001-06-15  Niels Möller  <nisse@ehand.com>

Niels Möller's avatar
Niels Möller committed
223
224
225
	* src/blowfish.c: nettle updates.
	* src/serpent.c: Likewise.

Niels Möller's avatar
Niels Möller committed
226
227
228
229
	* configure.in: Configure in the src/nettle sub directory.

	* misc/bootstrap.sh: Invoke the nettle .bootstrap script.

Niels Möller's avatar
Niels Möller committed
230
231
232
233
234
235
236
237
238
2001-06-13  Niels Möller  <nisse@ehand.com>

	* misc/bootstrap.sh: Bootstrap the nettle subdirectory. 

	* src/rsync/: Updated to libnettle conventions.

	* configure.in (CPPFLAGS): Add -LSH and -I$srcdir/src, needed by
	src/rsync/.

Niels Möller's avatar
Niels Möller committed
239
240
241
242
243
244
245
2001-06-12  Niels Möller  <nisse@cuckoo.hack.org>

	* src/dsa.c, src/dsa_keygen.c, src/md5.c, src/rijndael.c,
	src/sha.c: Adapted to the nettle API.

	* configure.in: Use src/nettle instead of src/symmetric.
	* src/Makefile.am.in: Likewise.
Niels Möller's avatar
Niels Möller committed
246
	* src/testsuite/Makefile.am: Likewise.
Niels Möller's avatar
Niels Möller committed
247

Niels Möller's avatar
Niels Möller committed
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
2001-06-09  Niels Möller  <nisse@cuckoo.hack.org>

	* src/io.c (do_consuming_read): In the EOF case, call
	close_fd_read after A_WRITE.

2001-06-07  Niels Möller  <nisse@cuckoo.hack.org>

	* src/io.c (do_kill_io_backend): Let close_fd do it's work.

2001-06-06  Niels Möller  <nisse@cuckoo.hack.org>

	* src/io.c (close_fd): Really close the fd, and invoke any close
	callback. 
	(io_iter): Simplified handling of closed files. Simply unlink
	them, close_fd has to do the rest of the work.

Niels Möller's avatar
Niels Möller committed
264
265
266
267
268
269
270
271
272
273
274
275
276
277
2001-05-29  Niels Möller  <nisse@cuckoo.hack.org>

	* acinclude.m4: AC_CHECK_MEMBER: Deleted definition (a similar
	macro is included in autoconf-2.50).
	AC_CHECK_VAR: Deleted.
	(AC_CHECK_KRB_LIB): Don't use changequote.

	* configure.in: Set SRP_PROGRAM.
	Require autoconf-2.50.
	Use the new AC_CHECK_MEMBERS macro.

	* src/unix_user.c: Update for autoconf-2.50, changed HAVE_UT_NAME
	to HAVE_STRUCT_UTMP_NAME, and similarly for other defines.

Niels Möller's avatar
Niels Möller committed
278
279
280
281
282
2001-05-23  Niels Möller  <nisse@cuckoo.hack.org>

	* configure.in: Some cleanup, and update for autoconf-2.50. Some
	more work needed. 

Niels Möller's avatar
Niels Möller committed
283
284
285
286
287
288
289
290
291
292
293
294
295
296
2001-05-17  Niels Möller  <nisse@ehand.com>

	* configure.in: Set SRP_PROGRAM.

	* src/Makefile.am.in (EXTRA_PROGRAMS): Added srp-gen.
	(bin_PROGRAMS): Use SRP_PROGRAM, don't compile srp-gen if
	SRP-support is disabled.

	* src/testsuite/write-key-2-test: Fixed test; check for output
	files in the testhome directory.

	* src/unix_user.c: Fixed dummy definition of struct utmp (spotted
	by Tomi Ollila).

Niels Möller's avatar
Niels Möller committed
297
298
299
300
301
302
2001-05-16  Niels Möller  <nisse@cuckoo.hack.org>

	* configure.in: Bumped version to 1.3.1.

	* Released 1.3.0.

Niels Möller's avatar
Niels Möller committed
303
304
2001-05-15  Niels Möller  <nisse@ehand.com>

Niels Möller's avatar
Niels Möller committed
305
306
	* src/scm/gaba.scm: Some more cleanup.

Niels Möller's avatar
Niels Möller committed
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
	* src/lshd.c (do_exc_lshd_handler): Handle EXC_RESOLVE.

	* src/testsuite/functions.sh (spawn_lshd): Use 127.0.0.1 instead
	of localhost.

	* src/scm/gaba.scm (append-deep): Deleted.
	(type->category): Deleted.
	(type->declaration): Deleted.
	(type->mark): Deleted.
	(type->free): Deleted.
	(fix-method): Deleted.
	(do-instance-struct): Deleted.
	(do-struct): Deleted.
	(do-mark-function): Deleted.
	(do-free-function): Deleted.
	(do-struct-mark-function): Deleted.
	(do-struct-free-function): Deleted.
	(do-class): Deleted.

2001-05-15  Niels Möller  <nisse@ehand.com>

	* src/scm/gaba.scm: Rewrote the functions for generating C code.

Niels Möller's avatar
Niels Möller committed
330
331
332
333
334
335
336
337
2001-05-15  Niels Möller  <nisse@cuckoo.hack.org>

	* configure.in: Updated version number to 1.3.0.

2001-05-14  Niels Möller  <nisse@cuckoo.hack.org>

	* src/gc.c (gc) [!DEBUG_ALLOC]: Don't use number_of_strings.  

Niels Möller's avatar
Niels Möller committed
338
339
340
341
342
343
2001-05-11  Niels Möller  <nisse@cuckoo.hack.org>

	* src/testsuite/functions.sh (PIDFILE): New variable, with
	absolute path to the pid-file. FIXED in 1.2 branch.
	(spawn_lshd): $PIDFILE. FIXED in 1.2 branch.

Niels Möller's avatar
Niels Möller committed
344
345
346
2001-05-03  Niels Möller  <nisse@ehand.com>

	* src/lshd.c (main): Start the background randomness poll *after*
Niels Möller's avatar
Niels Möller committed
347
	forking into the background. FIXED in 1.2 branch.
Niels Möller's avatar
Niels Möller committed
348
349
350

	* src/testsuite/functions.sh (spawn_lshd): Use --daemon flag. 

Niels Möller's avatar
Niels Möller committed
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
2001-05-02  Niels Möller  <nisse@cuckoo.hack.org>

	* sexp_streamed_parser.c: Deleted file.

	* src/unix_user.c (format_env_pair): Return const char *.
	(format_env_pair_c): Likewise.
	(do_exec_shell): Use const char ** for argv and envp.

	* src/xalloc.c (lsh_free): Cast to void * before calling free, as
	free doesn't accept const void *.
	(lsh_string_free): Changed argument type to const struct
	lsh_string *.
	(lsh_space_free): Bug-fix.
	(lsh_space_alloc): Use lsh_malloc, not xalloc directly.
	(lsh_space_free): Changed argument type to const void *.

	* src/userauth.h (lsh_user): Use const char ** for argv. 

2001-05-01  Niels Möller  <nisse@cuckoo.hack.org>

	* src/unix_interact.c (unix_read_password): Use const prompt
	string. 
	(unix_yes_or_no): Likewise.

	* src/srp_exchange.c (make_srp_entry): Use const struct lsh_string
	for the salt.

	* src/spki_commands.c (do_spki_decrypt): Use const struct lsh_string.

	* src/spki.c (subject_match_hash): Use const struct lsh_string.
	(do_spki_tag_prefix_match): Likewise.
	(spki_subject_by_hash): Likewise.
	(do_spki_lookup): Likewise.

	* src/sexp_parser.c (skip_space): New function, skipping
	whitespace and comments.
	(sexp_parse_transport): Allow whitespace and comments.

	* src/sexp_commands.c: Don't use the streamed sexp parser.
	(sexp_parser): New class.
	(do_sexp_parse_once): New function.
	(do_sexp_parse_many): New function. 
	(do_read_sexp_continue): Deleted function.
	(make_read_sexp_continuation): Deleted function.
	(read_sexp_exception_handler): Deleted class.
	(do_read_sexp_exception_handler): Deleted function.
	(make_read_sexp_exception_handler): Deleted function.
	(make_sexp_parser): New function.
	(make_read_sexp_command): New argument MAX_SIZE.

	* src/sexp.c: Constification, use const struct lsh_string for all
	sexp-related strings. 

2001-04-26  Niels Möller  <nisse@cuckoo.hack.org>

	* src/scm/gaba.scm: Added const type modifier.

	* src/sexp-conv.c (MAX_SEXP_SIZE): New constant, used with
	make_read_sexp_command. 

	* src/server_session.c (do_spawn_exec): Use const char * for argv
	entries. 

	* src/server_keyexchange.c (MAX_SRP_SIZE): New constant, used with
	make_read_sexp_command. 

	* src/lsh-writekey.c (MAX_SEXP_SIZE): New constant. Used with
	STATIC_READ_SEXP. 

	* src/lsh-export-key.c (MAX_KEY_SIZE): New constant. Use with
	make_read_sexp_command. 

	* src/io.c (do_buffered_read): Call close_fd_read on error. This
	way, the user doensn't have to use an exception handler just for
	closing the file.

	* src/interact.h (interact): Use const for prompt arguments.

	* src/format.c (lsh_get_cstring): Use const for input and output.

	* src/pkcs5.c (pkcs5_derive_key): Declare password and salt input
	as const.

	* src/abstract_crypto.c (crypt_string): Declare the input string
	const. Nevertheless, reuse it for output in case FREE is true.
	(crypt_string_pad): Declare input string const.
	(crypt_string_unpad): Likewise.

	* src/Makefile.am.in (liblsh_a_SOURCES): Deleted
	sexp_streamed_parser.c. 

Niels Möller's avatar
Niels Möller committed
442
443
444
445
446
447
448
449
450
451
452
2001-04-25  Niels Möller  <nisse@ehand.com>

	* src/keyexchange.c (do_handle_newkeys): Added verbose message
	when receiving NEWKEYS.
	(do_handle_kexinit): Added verbose message when receiving KEXINIT
	message. 

	* src/parse.c (parse_next_atom): Tolerate empty atoms, for
	compatibility with "SSH-1.99-2.0.13 (non-commercial)". XXX Fix in
	1.2 branch? 

Niels Möller's avatar
Niels Möller committed
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
2001-04-17  Niels Möller  <nisse@cuckoo.hack.org>

	* src/testsuite/Makefile.am (TS_MORE_SH): Added tests
	lshg-cat-test, lshg-cat-2-test and ssh1-fallback-test.

	* src/testsuite/functions.sh: Renamed SERVERFLAGS to LSHD_FLAGS,
	CLIENTFLAGS to LSH_FLAGS, and added LSHG_FLAGS.

	* src/testsuite/lshg-cat-2-test: New test.

	* src/testsuite/lshg-cat-test: Sleep some, waiting for lsh to
	connect.

	* src/sftp/.bootstrap: Don't run ./configure.

	* src/werror.c (werror_argp_parser): Initialize program_name at
	ARGP_KEY_INIT time.

	* src/resource.c (dont_free_live_resource): Be more quiet during
	gc_final.

	* src/lshg.c (do_exc_lshg_handler): Fixed werror format string.
	Fixed in 1.2 branch.

	* src/lsh.c (do_lsh_lookup): If the user decides to trust the key,
	add it to the spki_context.

	* src/lcp: Replaced the bashism "==" with "=".

	* src/gc.c (gc_final_p): New variable, non-zero during gc_final().

	* src/client_session.c (make_client_session_channel): Register
	stdio files as resources.

2001-04-12  Niels Möller  <nisse@cuckoo.hack.org>

	* src/lshd.c (main_argp_parser): Bugfix: Use the supplied
	interface! Fixed in 1.2 branch.

	* src/testsuite/ssh1-fallback-test: New test.

	* src/testsuite/lshg-cat-test: New test.

	* src/testsuite/fake-sshd1: New file.

	* src/testsuite/functions.sh (spawn_lshd): Pass arguments to lshd.
	Fixed in 1.2 branch.
	(exec_lshg): New function.

	* src/ssh1_fallback.c (fall_back_to_ssh1): Reset the fd to
	blocking mode. Fixed in 1.2 branch.

	* src/io.c (io_set_blocking): New function. Added in 1.2 branch.
	(do_exc_finish_read_handler): Close fd immediately on
	EXC_FINISH_IO. Fixed in 1.2 branch.

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
2001-04-11  Niels Möller  <nisse@cuckoo.hack.org>

	* src/userauth.h (lsh_process): New class.
	(lsh_user): The fork_method now returns the child as an
	lsh_process.

	* src/unix_user.c (process_resource): Inherit lsh_process.
	(do_signal_process): New function.

	* src/unix_interact.c (install_suspend_handler): New function.
	(stop_handler): New signal handler for TSTP, that sets and resets
	the tty modes.

	* src/tty.c (tty_getwinsize): Take a struct terminal_dimensions *
	as argument. 
	(tty_setwinsize): Likewise.

	* src/server_session.c (server_session): Changed type of process
	attribute to lsh_process. Updated uses.
	(do_alloc_pty): Check request syntax in all cases, even if there's
	no pty. 
	(do_window_change_request): New function.

	* src/interact.h (struct terminal_dimensions): Moved definition...
	* src/tty.h (struct terminal_dimensions): ...to here.

	* src/client_pty.c: Include tty.h.

	* src/client.h (escape_info): New class.

	* src/Makefile.am.in (liblsh_a_SOURCES): Added client_escape.c.

	* src/client_escape.c: New file.

Niels Möller's avatar
Niels Möller committed
543
544
545
546
2001-04-10  Niels Möller  <nisse@ehand.com>

	* src/client.c (make_client_session): Use set_error_nonblocking.

Niels Möller's avatar
Niels Möller committed
547
548
549
2001-04-09  Niels Möller  <nisse@ehand.com>

	* src/werror.c (set_error_nonblocking): New function.
Niels Möller's avatar
Niels Möller committed
550
	(set_error_stream): Deleted WITH_POLL argument.
Niels Möller's avatar
Niels Möller committed
551
552
553
	(werror_options): Aded option --log-file.
	(werror_argp_parser): Process --log-file option.

Niels Möller's avatar
Niels Möller committed
554
555
	* ANNOUNCE: Changed "COPYRIGHT" to "LICENSE", by rms' request. 
	Fixed in 1.2 branch.
Niels Möller's avatar
Niels Möller committed
556

Niels Möller's avatar
Niels Möller committed
557
558
2001-04-08  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
	* src/lsh.c (main_argp_parser): Deleted old -L handling (moved to
	client.c).  

	* src/sexp_commands.c (do_print_raw_hash_simple): Deleted unused
	function. 

	* src/sexp.c (sexp_sn): Deleted unused function.

	* src/io.c (make_listen_callback_no_peer): Deleted unused function.

	* src/gc.c (gc): Display number of strings.

	* src/client_session.c (do_client_session_eof): Deleted old code
	that closed stdin here.

	* src/client.c (do_exit_status): Deleted old code sending
	CHANNEL_EOF here.
	(do_exit_signal): Likewise. 
	(do_exit_signal): Signals in the exit-signal message are no longer
	encoded as integers. XXX Fix in 1.2 branch?

	* src/channel.c (do_exc_finish_channel_handler): Deleted old
	(#if:ed out) code for raising EXC_FINISH_READ.
	(channel_close_handler): Deleted old code calling the channel's
	EOF handler here.

Niels Möller's avatar
Niels Möller committed
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
	* src/lsh.c (main): Call io_final.

	* src/io.h (lsh_fd): Added label attribute. 

	* src/io.c (kill_fd): Deleted.
	(io_backend): Inherit resource. 
	(do_kill_io_backend): New function.
	(make_io_backend): Call resource_init.
	(io_final): New function.
	(init_file): New argument LABEL.
	(make_lsh_fd): New rgument LABEL. Updated callers.
	(close_fd): Display label.
	(io_iter): Display label.

	* src/lsh-writekey.c (make_writekey): Deleted unneeded global
	definitions. 

	* src/resource.c (dont_free_live_resource): Changed again, to
	issue a fatal error.

	* src/sexp_parser.h: Deleted unused file.

Niels Möller's avatar
Niels Möller committed
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
	* src/testsuite/Makefile.am (TS_PROGS): Added string-test.

	* src/testsuite/macros.m4 (TS_CHECK): New macro.

	* src/testsuite/string-test.m4: New tests for string related
	functions, currently only lsh_get_cstring.

	* src/format.c (ssh_cformat): Deleted. Replaced all uses with
	ssh_format. 
	(make_cstring_l): Deleted.
	(make_cstring): Deleted.
	(lsh_get_cstring): New function.

	* src/werror.c (write_syslog): Don't use make_cstring_l.

	* src/unix_user.c (do_verify_password): Use lsh_get_cstring.
	(do_read_file): Likewise.
	(do_read_file): Likewise.
	(format_env_pair): Likewise.
	(do_exec_shell): Likewise.
	(make_unix_user): Likewise. 
	(do_lookup_user): Likewise.

	* src/unix_interact.c (unix_read_password): Use lsh_get_cstring.

	* src/server_session.c (do_spawn_exec): Use lsh_get_cstring.

	* src/lsh.h (NUL_TERMINATED): Deleted.

	* src/format.h (format_cstring, make_string): Renamed function.
	And made it a macro. Updated callers.

	* src/adns.c (do_resolve): Use lsh_get_cstring. Don't use
	NUL_TERMINATED. 
	* src/io.c (address_info2sockaddr): Likewise.
	(make_local_info): Likewise.
	(io_listen_local): Likewise.
	(io_connect_local): Likewise.

Niels Möller's avatar
Niels Möller committed
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
2001-04-05  Niels Möller  <nisse@ehand.com>

	* src/testsuite/functions.sh (run_lsh): Quote the command better.

	* src/xalloc.c (lsh_string_alloc): Fixes, now compiles both with
	and without DEBUG_ALLOC.

	* src/werror.c (werror_argp_parser): Added missing break.
	(werror): Handle the case where both verbose_flag and quiet_flag
	are set.

	* src/io.c (do_consuming_read): Free the string properly on EOF or
	error. XXX Fix in 1.2 branch? 

	* src/client_userauth.c (make_client_userauth): Convert username
	to utf8 once, here. Updated callers. Previously, the converted
	strings leaked.

	* src/client_session.c (do_client_session_eof): Use
Niels Möller's avatar
Niels Möller committed
665
	close_fd_nicely. Otherwise we lose data. FIXED in 1.2 branch.
Niels Möller's avatar
Niels Möller committed
666
667
668
669

	* src/Makefile.am.in (atoms_gperf.c): Massage gperf output to
	reduce the number of compilation warnings.

Niels Möller's avatar
Niels Möller committed
670
671
2001-04-05  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
672
673
674
675
676
677
678
679
680
681
682
	* src/gc.c (gc_final): Check for leaked strings, and write any
	clues. 

	* src/lsh.h (struct lsh_string_header): Added more debug info.

	* src/xalloc.c (all_strings): New variable, for debugging.
	(sanity_check_string_list): New function.
	(lsh_string_alloc_clue): New function, remembering allocated
	strings. 
	(lsh_string_free): Unregister string.

Niels Möller's avatar
Niels Möller committed
683
684
685
686
	* src/werror.c (werror_vformat): Pass arguments to werror_write in
	the correct order.
	(werror_vformat): Likewise.

Niels Möller's avatar
Niels Möller committed
687
688
2001-04-04  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
689
690
691
	* src/testsuite/Makefile.am (CFLAGS): Reintroduced -O0, to make
	compilation faster.

Niels Möller's avatar
Niels Möller committed
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
	* src/client.c, src/client_keyexchange.c, src/client_userauth.c,
	src/debug.c, src/disconnect.c, src/proxy.c,
	src/proxy_x11forward.c, src/server.c, src/server_keyexchange.c,
	src/server_userauth.c: Packet handlers should no longer free
	packets.

	* src/xalloc.c (number_of_strings): Define only if DEBUG_ALLOC. 
	(lsh_string_alloc): NUL-terminate strings, for simplicity.
	(lsh_string_free): Check that string is still NUL-terminated.

	* src/werror.c (program_name): New variable.
	(werror_argp_parser): Initialize program_name.
	(werror_vformat): Prefix messages with program_name.
	(werror_vformat): Simplified code in 'z' case.

	* src/proxy_userauth.c (do_forward_success): dup packet before
	forwarding it.
	Packet handlers should no longer free packets.

	* src/channel.c (RETURN, END): Deleted macros.
	Packet handlers should no longer free packets.

	* src/keyexchange.c (do_handle_kexinit): dup packet when storing
	it in the connection struct.
	(do_handle_newkeys): Packet handlers should no longer free packets.

	* src/write_buffer.c (make_write_buffer): Renamed
	write_buffer_alloc to make_write_buffer. Updated callers.

	* src/gc.c (gc_final): Check number_of_objects and
	number_of_strings. 

	* src/connection.c (connection_handle_packet): Always free the
	packet here. Packet handlers no longer needs to do that.
	(connection_handle_packet): Accept SSH_MSG_IGNORE and
	SSH_MSG_DEBUG in the KEX_STATE_NEWKEYS state.

	* configure.in: Bumped version to 1.3.

Niels Möller's avatar
Niels Möller committed
731
732
733
734
735
	* lsh-1.2 released.

	* distribution-key.gpg: Updated key, more signatures and later
	expiration date. 

Niels Möller's avatar
Niels Möller committed
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
	* src/sftp/Makefile.am (sftp_test_client_SOURCES): Added werror.c
	and client.c 

	* src/sftp/sftp-test-client.c (struct client_ctx): Moved to
	client.h 
	(werror_program_name): Defined here.

	* src/sftp/client.c, src/sftp/client.h, src/sftp/werror.c,
	src/sftp/werror.h:  New files.

2001-04-03  Niels Möller  <nisse@cuckoo.hack.org>

	* src/sftp/testsuite/put-1-test: Check that the new file exists.
	Use $TESTHOME for referring to the local file.

	* src/sftp/sftp-test-client.c (do_put): Fixes and simplifications. 

Niels Möller's avatar
Niels Möller committed
753
754
755
756
757
758
2001-04-03  Niels Möller  <nisse@ehand.com>

	* src/sftp/sftp-test-client.c (do_open): New function.
	(do_close): New function.
	(do_get): Use do_open and do_close.

Niels Möller's avatar
Niels Möller committed
759
760
761
762
763
764
765
766
767
2001-04-02  Niels Möller  <nisse@cuckoo.hack.org>

	* configure.in: Bumped version to 1.2.

	* src/Makefile.am.in (EXTRA_DIST): Added lcp.

	* src/Makefile.am.in (noinst_SCRIPTS): Added the experimental lcp
	script.

Niels Möller's avatar
Niels Möller committed
768
769
770
771
772
773
774
2001-04-02  Niels Möller  <nisse@ehand.com>

	* src/sftp/sftp-server.c (sftp_process_read): Fixed size passed to
	pread. 
	(debug): Added a prototype saying that it takes printf-style
	arguments. 

Niels Möller's avatar
Niels Möller committed
775
776
777
778
779
780
781
782
783
784
785
786
787
2001-04-02  Niels Möller  <nisse@lysator.liu.se>

	* src/sftp/sftp-server.c (sftp_process_realpath): Fixed invocation
	of pathconf().
	Include stdarg.h.

	* src/sftp/testsuite: Adapted shell scripts to /bin/sh. Removed
	uses of the "function" keyword, and use a full path when sourcing
	common.sh.

	* src/sftp/testsuite/run-tests: Use /bin/bash, as we use
	bash-specific parameter expansion.

Niels Möller's avatar
Niels Möller committed
788
789
2001-04-01  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
	* src/sftp/Makefile.am (sftp_server_SOURCES,
	sftp_test_client_SOURCES): Added xmalloc.c.

	* src/sftp/xmalloc.c: New file. Defines xmalloc, xrealloc and
	xstrdup. 

	* src/sftp/sftp-test-client.c (do_put): Use xmalloc.

	* src/sftp/sftp-server.c (sftp_get_user): New function.
	(sftp_get_group): Likewise.
	(struct sftp_ctx): Added user_cache and group_cache.
	(sftp_init): Initialize user_cache and group_cache.
	(sftp_put_longname): Take a sftp_ctx * as argument. Use
	sftp_get_user and sftp_get_group.

	* src/sftp/buffer.c: Use xmalloc and xrealloc.

	* src/sftp/idcache.c: Rewrite.

Niels Möller's avatar
Niels Möller committed
809
810
811
812
813
814
815
816
817
	* src/sftp/Makefile.am (sftp_server_SOURCES): Added idcache.c.

	* src/sftp/sftp-server.c: Use the functions from idcache.c.

	* src/sftp/idcache.c: #include idcache.h. #if:ed out prototypes
	and functions that aren't needed. Use malloc instead of xmalloc.

	* src/sftp/idcache.h: New file.

Niels Möller's avatar
Niels Möller committed
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
	* src/sftp/testsuite/setup-env: Clean up first.

	* src/sftp/testsuite/get-1-test: New testcase.
	* src/sftp/testsuite/ls-1-test: Likewise.
	* src/sftp/testsuite/ls-2-test: Likewise
	
	* src/sftp/testsuite/common.sh (PROGRAMDIR): New variable, holding
	an absolute path to the directory where the programs are.

	* src/sftp/sftp-test-client.c (sftp_client_get_id): New function. 
	(do_ls): Fixes and some simplification.
	(do_get): Simplified. The old more featureful implementation left
	#if:ed out.

	* src/sftp/sftp-server.c (debug): New function.
	(sftp_get_name): New function.
	(struct sftp_dir): New struct.
	(sftp_lstat_in_dir): New function.
	(sftp_process_readdir): Handle directories that are not our
	current working directory.  
	(parse_options): New function, currently only handling -d.

	* src/sftp/buffer.c (sftp_check_input): Don't modify i->left here.
	(sftp_get_data): ...but do it here instead.
	(sftp_free_string): Reintroduced this function.
	(sftp_get_string): This function now requires the user to
	deallocate the string.
	(sftp_get_string_auto): Simpler function, that deallocates strings
	automatically. 
	(sftp_read_packet): Return failure (0), rather than crashing, if
	there is data leftover from the previous packet.
	(sftp_put_final_length): Calculate the length correctly.
	(sftp_put_reset): Fixed assertion.
	(sftp_put_attrib): Likewise.

	* src/sftp/Makefile.am (noinst_PROGRAMS): Added dump-hex.

	* src/sftp/sftp.h: Converted from #define:s to enums.

	* src/sftp/dump-hex.c: New program that copies data from stdin to
	stdout, and writes a hex dump to stderr in the process.

	* src/sftp/debug-server: New script to dump communication between
	sftp-server and sftp-test-client.

	* src/sftp/configure.in: Added to cvs.

2001-03-31  Niels Möller  <nisse@cuckoo.hack.org>

	* src/sftp/acconfig.h: Added HAVE_GCC_ATTRIBUTE.

	* src/sftp/.bootstrap: New file.

Niels Möller's avatar
Niels Möller committed
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
2001-03-30  Niels Möller  <nisse@ehand.com>

	* src/sftp/sftp-test-client.c (do_ls): Print the long name.

	* src/sftp/sftp-server.c (sftp_get_name): New function.
	(HANDLE_TYPE, HANDLE_DIR, HANDLE_FD): New macros.
	Fixed handles. Simplified, deleting all sftp_free_string calls.
	Use pread and pwrite, where available.

	* src/sftp/buffer.c (struct sftp_input): Added array of strings,
	so that callers don't have to free them explicitly.
	(sftp_put_reset): New funtion.
	(sftp_get_uint64): Use off_t, conditionalized on its size.
	(sftp_put_uint64): Likewise.

	* src/sftp/Makefile.am: Use AUTOMAKE_OPTIONS = foreign, added
	sftp-test-client. 

Niels Möller's avatar
Niels Möller committed
889
890
891
892
893
894
895
896
897
898
2001-03-28  Niels Möller  <nisse@ehand.com>

	* src/lcp (split spec): New function for splitting arguments. 
	Checked in first working version.

2001-03-27  Niels Möller  <nisse@ehand.com>

	* doc/srp-spec.nroff: Bumped version number, updated dates, and
	added a section Further questions.

Niels Möller's avatar
Niels Möller committed
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
2001-03-26  Niels Möller  <nisse@cuckoo.localdomain>

	* Released lsh-1.1.9.

	* misc/Makefile.am.in (EXTRA_DIST): Added more files to the dist:
	libgcc2.c-patch, bootstrap.sh and make-dist.

	* configure.in: By default, disable debug-alloc and debug-trace.

	* src/testsuite/keygen-2-test: Use a smaller key size, 777 bits,
	for speed.

	* src/testsuite/keygen-1-test: Use NIST security level 2 (640
	bits), for speed.

	* src/argp/configure.in: Bumped argp version to standalone-1.1. 

Niels Möller's avatar
Niels Möller committed
916
917
918
919
2001-03-26  Niels Möller  <nisse@ehand.com>

	* src/argp/configure.in (CPPFLAGS): Added -D_GNU_SOURCE.

Niels Möller's avatar
Niels Möller committed
920
921
2001-03-25  Niels Möller  <nisse@cuckoo.localdomain>

Niels Möller's avatar
Niels Möller committed
922
923
924
	* src/testsuite/functions.sh (spawn_lshd): Use kill -9 to stop
	lshd; otherwise lshd catching SIGTERM leads to timing problems.

Niels Möller's avatar
Niels Möller committed
925
926
927
928
929
930
	* Released lsh-1.1.9.

	* misc/libgcc2.c-patch: gcc patch.

	* src/crypto.c: Deleted obsolete file.

Niels Möller's avatar
Niels Möller committed
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
	* src/testsuite/Makefile.am (CFLAGS): -O0 is not needed anymore,
	since most of the rijndael tests were deleted.

	* src/proxy_userauth.c (do_proxy_userauth_continuation): Don't use
	FORCE_APPLY. 

	* src/command.h (delayed_apply): Deleted class.

	* configure.in: Bumped version to 1.1.9.

	* src/testsuite/rijndael-test.m4: Deleted most tests, left 4 for
	each key size.

	* src/werror.c (fatal): If compiling with gcov, use exit(255)
	instead of abort.

	* src/spki_commands.c (parse_private_key): Use fatal instead of
	abort. 

	* src/sexp.c (sexp_sn): #if:ed out.

	* src/resource.c (dont_free_live_resource): Call werror, not
	fatal. Currently, this is normal iff it happens during
	gc_final.

	* src/proxy_userauth.c (do_handle_userauth): Don't use
	make_delay_continuation. 

	* src/lshg.c (main): Call gc_final.

	* src/lshd.c (main): Call gc_final. When compiling with gcov,
	catch the TERM signal and call exit() sometime later.

	* src/lsh.c: Call gc_final().

	* src/lsh-keygen.c: Use fatal(), not abort().

	* src/io_commands.c (remember_continuation): Deleted class.
	(do_remember_continuation): Deleted function.
	(make_remember_continuation): Deleted function.
	(do_listen): Deleted arguments resources and lookup. Updated
	callers. 
	(do_simple_listen): Deleted function.
	(make_simple_listen): Deleted function.

	* src/gc.c (gc_final): New function.

	* src/command.c (make_delayed_apply): Deleted function.
	(delay_continuation): Deleted class.
	(do_delay_continuation): Deleted function.
	(make_delay_continuation): Deleted function.

	* src/channel.c (connection_service): Deleted class.

	* doc/lsh.texinfo (Invoking lsh): Added a note saying that
	ordering is important. 

	* doc/TODO (TESTING): Added info on missing tests.

	* configure.in: Define WITH_GCOV when compiling for gcov. 

	* acconfig.h (WITH_GCOV): New symbol.

2001-03-24  Niels Möller  <nisse@cuckoo.localdomain>

	* src/lsh_proxy.c (main): Use listen_callback instead of
	simple_listen. 

Niels Möller's avatar
Niels Möller committed
999
1000
2001-03-22  Niels Möller  <nisse@ehand.com>

For faster browsing, not all history is shown. View entire blame