ChangeLog 201 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
46
2004-02-08  Niels Möller  <nisse@lysator.liu.se>

	Implemented flow control for the connections write_buffer. The
	buffer is now of limited size. When it starts to get large, channel
	i/o is disabled. If it hits the limit, the connection is closed.

	* src/connection.c (WRITE_BUFFER_MAX, WRITE_BUFFER_MARGIN): New
	constants.
	(connection_flow_controlled): New class.
	(do_connection_flow_controlled): Reenable channel i/o when we have
	room in the write buffer.
	(make_ssh_connection): Initialize ssh_connection attributes
	wakeup, soft_limit and hard_limit.
	(connection_init_io): Changed argument type from struct
	abstract_write to struct lsh_fd. Install flow control on the
	socket's write_buffer. Deleted the randomness argument, and don't
	call make_packet_write. This way, both handshake_command and
	gateway_make_connection can call this function.
	(connection_wakeup): New function, which installs a wakeup
	callback on the connection.
	(connection_send_kex): Compare the size of the write_buffer to the
	soft and hard limits.
	(connection_send_kex_end): Invoke wakeup callback, if it's
	non-NULL.

	* src/connection.h (ssh_connection): New attribute socket,
	replaces old attribute raw. New attributes hard_limit and
	soft_limit. 

	* src/read_data.c (do_read_data_query): Stop reading, if
	connection->hard_limit is set, indicating an almost full
	write_buffer for the connection.

	* src/handshake.c (handshake_command): Adapt to changed
	connection_init_io. Use connection->socket instead of
	connection->raw. 

	* src/gateway_commands.c (gateway_make_connection): Use
	connection_init_io, so that flow control is set up properly.

	* src/channel.c (window_adjust_handler): Deleted redundant assert.
	(do_channels_after_keyexchange): Renamed to do_channels_wakeup. No
	longer needs to reinstall the handler.
	(init_connection_service): Use connection_wakeup, not
	connection_after_keyexchange. 

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

Niels Möller's avatar
Niels Möller committed
49
50
	* install-sh: Removed from CVS repository. Let automake supply it.

51
52
53
	* acinclude.m4 (LSH_FUNC_ALLOCA): Include <alloca.h>, if
	available, also when compiling with gcc.

Niels Möller's avatar
Niels Möller committed
54
55
2004-01-08  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
56
57
58
	* src/rsync/rsync.h: Don't include inttypes.h, just let
	<nettle/md5.h> define uint8_t and other types.

Niels Möller's avatar
Niels Möller committed
59
60
61
62
63
64
65
66
	* src/Makefile.am (AM_CPPFLAGS): Added -I./nettle. Needed to find
	the nettle-types.h include file when building outside of the
	source directory.
	(packet_types.h): Changed rule to use $< to refer to the input
	file. 
	* src/testsuite/Makefile.am (AM_CPPFLAGS): Added -I../nettle.
	* src/rsync/Makefile.am (AM_CPPFLAGS): Added -I../nettle.

Niels Möller's avatar
Niels Möller committed
67
68
69
70
71
72
2004-01-08  Niels Möller  <niels@s3.kth.se>

	* src/tcpforward.c (do_channel_open_direct_tcpip): Log
	direct-tcpip request.
	(do_tcpip_forward_request): Log forward-tcpip request.

Niels Möller's avatar
Niels Möller committed
73
74
75
76
2004-01-08  Niels Möller  <nisse@harpo.hack.org>

	* configure.ac: No space between "-L" and library directories.

Niels Möller's avatar
Niels Möller committed
77
78
79
80
81
2004-01-07  Niels Möller  <nisse@harpo.hack.org>

	* acinclude.m4 (AX_CREATE_STDINT_H): Copied macro definition from
	http://ac-archive.sourceforge.net/guidod/ax_create_stdint_h.html.

Niels Möller's avatar
Niels Möller committed
82
83
84
85
86
2003-11-18  Niels Möller  <niels@s3.kth.se>

	* src/unix_process.c (utmp_book_keeping) [UTMPX_UT_SYSLEN]: Use
	lsh_string_length. 

Niels Möller's avatar
Niels Möller committed
87
88
89
90
91
92
93
94
95
96
97
98
2003-11-17  Niels Möller  <nisse@harpo.hack.org>

	* src/read_packet.c (class read_packet): New attribute
	mac_computed.
	(lsh_string_realloc): Deleted function.
	(do_read_packet, make_read_packet): Allocate block_buffer,
	mac_buffer and mac_computed at creation time, using
	SSH_MAX_BLOCK_SIZE and SSH_MAX_MAC_SIZE.

	* src/ssh.h (SSH_MAX_BLOCK_SIZE, SSH_MAX_MAC_SIZE): New constants,
	with the implementations's maximum block size and mac size.

Niels Möller's avatar
Niels Möller committed
99
100
2003-11-16  Niels Möller  <nisse@harpo.hack.org>

101
102
103
	* src/lsh-writekey.c (main_argp_parser): Move declaration to
	support C90.

Niels Möller's avatar
Niels Möller committed
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
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
152
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
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
	* src/Makefile.am (liblsh_a_SOURCES): Added lsh_string.c.

	* src/lsh_string.c, src/lsh_string.h: New files, with a private
	string implementation. The point is that no other code should
	write directly into strings or other buffers.

	* src/gateway_commands.c (class read_gateway_packet): Use an
	lsh_string for the header buffer, not a plain char array.
	* src/read_line.c (class read_line): Likewise, for the line buffer.
	* src/write_buffer.h, src/write_buffer.c (class write_buffer):
	Likewise for the output buffer.

	* src/pkcs5.c (pkcs5_derive_key): Take lsh_string arguments, and
	return key as an lsh_string. Also use lsh_strings internally,
	instead of plain char buffers.

	* src/format.c (ssh_format_write, ssh_vformat_write)
	(format_hex_string, format_decimal, write_decimal_length): Take a
	lsh_string and position for the destination. Updated to use
	functions from lsh_string.c. Moved some functions to lsh_string.c.
	(lsh_string_colonize): Use const for input string. Use
	lsh_string_putc.
	(lsh_string_bubblebabble): Use lsh_string_putc. No need for
	explicit NUL-termination. Use const for input string.
	
	* src/format.c (ssh_format): Changed definition of %r, now stores
	the start position of the reserved area, not a pointer. Updated
	all callers.

	* src/lock_file.c, src/lsh-make-seed.c, src/server_session.c,
	src/server_x11.c: #include lsh_string.h.

	* src/spki.c (spki_hash_data): Rewritten to use hash_digest_string
	instead of hash_digest.

	* src/testsuite/testutils.c (decode_hex): Use const for input.
	Also other updates for lsh_string changes.
	
	* src/zlib.c (do_zlib): Use lsh_string_zlib. Updated for
	lsh_string changes.

	* src/werror.c (werror_decimal): Rewrote to not use
	format_decimal.
	(werror_hexdump): Use const for input.
	(werror_vformat): Updated for lsh_string changes.

	* src/unix_user.c (kerberos_check_pw, do_verify_password): Updated
	for lsh_string changes.

	* src/unix_interact.c (unix_yes_or_no): Updated for lsh_string
	changes.

	* src/string_buffer.h (struct string_buffer): Replaced current
	pointer with an integer position.
	* src/string_buffer.c: Updated for lsh_string changes.

	* src/spki.c (spki_pkcs5_encrypt): Use const for input argument.

	* src/server_userauth.c (do_handle_userauth): Updated for
	lsh_string changes.

	* src/server_publickey.c (do_authenticate): Updated for lsh_string
	changes. 

	* src/server_pty.c (pty_open_slave): Updated for lsh_string changes.

	* src/read_file.c (do_read_file): Updated for lsh_string changes.

	* src/parse_config.c: #include lsh_string.h.

	* src/lsh.h: Removed declarations for lsh_string. This is now
	provate to lsh_string.c. Only kept a forward declaration of struct
	lsh_string, and a declaration of lsh_string_free.

	* src/lsh-export-key.c (encode_base64): Use lsh_string.c functions.

	* src/lsh-decrypt-key.c (main): Updated for lsh_string changes.

	* src/lsh-decode-key.c (main): Use lsh_string_base64_decode.

	* src/io.c (do_consuming_read, io_read_file_raw): Use lsh_string_read.
	(do_write_callback): Updated for lsh_string changes.
	(sockaddr2info): Use lsh_string_ntop.

	* src/handshake.c (compat_peer_flags, split_version_string) 
	(do_line): Use const for input strings.

	* src/read_line.h (class line_handler): Use a const for the
	handler method.

	* src/dsa.c (make_ssh_dss_verifier): Use a lsh_string for the
	input. Updated for lsh_string changes.
	* src/rsa.c (make_ssh_rsa_verifier): Likewise.
	* src/publickey_crypto.h: Updated prototypes.

	* src/sexp.c (lsh_sexp_format): Function renamed to
	lsh_string_format_sexp, and moved to lsh_string.c. Updated
	callers.

	* src/daemon.c (daemon_pidfile): Updated for lsh_string changes.

	* src/client_keyexchange.c (do_handle_dh_reply): Updated for
	lsh_string changes. 

	* src/client.c (rebuild_command_line): Use lsh_string_write.

	* src/charset.c: Updated for lsh_string changes.
	(low_utf8_to_local): Use const for input.

	* src/xalloc.c: Removed string related functions. Moved to
	lsh_string.c. 

	* src/gc.c (gc): Use lsh_get_number_of_strings to access string
	counter. 
	(gc_final): Call lsh_string_final_check. 

	* src/abstract_crypto.h (CRYPT): Changed method to take an
	lsh_string and an index for source and destination. Also changed
	the order of source and destination arguments.
	(MAC_DIGEST): Take a lsh_string and index for the destination.

	* src/crypto.c: Rewrote cipher classes to use functions in
	lsh_string.c, instead of writing directly into the output string.
	(hash_digest_string): New function.
	(hash_digest): New function.
	(do_hmac_digest): Use lsh_string_write_hmac.

	* src/channel.c: Updated for lsh_string changes.
	* src/client_escape.c: Likewise.
	* src/client_userauth.c: Likewise.
	* src/client_x11.c: Likewise.
	* src/connection.c: Likewise.
	* src/debug.c: Likewise.
	* src/dh_exchange.c: Likewise.
	* src/keyexchange.c: Likewise.
	* src/lsh-writekey.c: Likewise.
	* src/lsh.c: Likewise.
	* src/read_packet.c: Likewise.
	* src/server.c: Likewise.
	* src/spki.c: Likewise.
	* src/srp-gen.c: Likewise.
	* src/srp_exchange.c: Likewise.
	* src/tcpforward.c: Likewise.
	* src/tty.c: Likewise.
	* src/unix_process.c: Likewise.
	* src/unix_random.c: Likewise.
	* src/write_packet.c: Likewise.
	* src/xauth.c: Likewise.

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
2003-11-11  Niels Möller  <nisse@harpo.hack.org>

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

	* src/xalloc.c (lsh_object_free): Changed to take a const argument.

	* src/read_packet.c (do_read_packet): Moved code for stripping
	padding and inflating read packets to this function.
	* src/handshake.c (do_line): Deleted calls to make_packet_unpad
	and make_packet_inflate. 
	* src/unpad.c, src/unpad.h: Deleted files.
	* src/compress.c (class packet_compressor): Deleted class.
	(make_packet_codec): Deleted function.
	* src/compress.h (make_packet_deflate, make_packet_inflate):
	Deleted macros.

Niels Möller's avatar
Niels Möller committed
269
270
271
272
273
274
275
276
277
278
279
280
281
2003-11-10  Niels Möller  <nisse@harpo.hack.org>

	* src/connection.c (connection_send_kex): New function, replacing
	macro C_WRITE_NOW. Updated all callers.

	* src/read_file.h: Deleted file. Moved declarations to...
	* src/abstract_io.h: ... here. Deleted all inclusions of read_file.h.

2003-11-09  Niels Möller  <nisse@harpo.hack.org>

	* src/debug.h: Deleted file. Moved declarations to...
	* src/connection.h: ... here. Deleted all inclusions of debug.h.

Niels Möller's avatar
Niels Möller committed
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
2003-11-08  Niels Möller  <nisse@harpo.hack.org>

	* src/Makefile.am (liblsh_a_SOURCES): Removed pad.c, encrypt.c.
	Added write_packet.c. 

	* src/compress.c (do_packet_inflate): Keep sequence number.

	* src/pad.c, src/pad.h, src/encrypt.c, src/encrypt.h: Deleted
	files.
	* src/write_packet.c: New file and function, to replace pad.c and
	encrypt.c. 	
	* src/client.c, src/connection.c: Don't include pad.h and encrypt.h.
	* src/connection.h: Prototype for make_write_packet.

	* src/connection.c (connection_init_io): Use make_write_packet.

Niels Möller's avatar
Niels Möller committed
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
2003-10-30  Niels Möller  <nisse@harpo.hack.org>

	* src/connection.h (C_WRITE): Deleted macro. Updated all callers
	to use connection_send directly.

	Changed gateway protocol, to not use any extra padding.
	* src/gateway_commands.c (do_read_gateway): New function
	(make_read_gateway): New function.
	(do_gateway_pad): New extra padding.
	(gateway_make_connection): No need to call make_packet_unpad.

	* src/abstract_io.h (class read_handler): Use a const uint8_t *
	argument for the handler method.
	* src/read_file.c (do_read_file): Const argument.
	* src/read_line.c (do_read_line): Likewise.
	* src/read_packet.c (do_read_packet): Likewise.

Niels Möller's avatar
Niels Möller committed
315
316
2003-10-23  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
317
318
319
320
321
322
323
324
325
326
327
	* src/server_userauth.c: Rewrote comment about userauth
	serialization. 

	* src/io.c (close_fd): Deleted fd = -1 special case. 

	* src/connection.c (connection_lock, connection_unlock): Simplified.
	(do_exc_connection_handler): Deleted handling of
	EXC_PAUSE_CONNECTION and EXC_PAUSE_START_CONNECTION.
	* src/exception.h (EXC_PAUSE_CONNECTION) 
	(EXC_PAUSE_START_CONNECTION): Deleted exception types.

Niels Möller's avatar
Niels Möller committed
328
329
330
331
332
333
334
	* src/dsa_keygen.c, src/rsa_keygen.c: Deleted files. Moved the
	dsa_generate_key and rsa_generate_key functions to ...
	* src/lsh-keygen.c: ... here.

	* src/dsa.c (generic_dsa_verify): Deleted function.
	(generic_dsa_sign): Likewise.

Niels Möller's avatar
Niels Möller committed
335
336
2003-10-22  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
337
338
339
	* src/client_x11.c (client_x11_auth_info): Deleted commented out
	class.

Niels Möller's avatar
Niels Möller committed
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
	* src/server_session.c (do_alloc_pty): Return channel in question.
	(do_window_change_request): Likewise.
	(do_spawn_subsystem): Likewise.

	* src/gateway_channel.c (do_gateway_channel_request): Added FIXME
	on returned value.
	* src/server_x11.c (do_xauth_exit): Likewise.

	* src/client.c (do_exit_status): Return the channel in question to
	the continuation.
	(do_exit_signal): Likewise.

	* src/channel.c (channel_request_continuation): Expanded FIXME
	comment. 

Niels Möller's avatar
Niels Möller committed
355
356
357
358
359
360
361
362
363
364
365
366
367
	* src/parse.h: Include nettle/bignum.h instead of bignum.h.

	* src/format.h: Don't include bignum.h.
	* src/keyexchange.h: Likewise.
	* src/publickey_crypto.c: Likewise.
	* src/werror.h: Likewise.

	* src/dh_exchange.c (dh_generate_secret): Use nettle_mpz_random.
	Needs inclusion of nettle/bignum.h.

	* src/bignum.c, src/bignum.h: Deleted files.
	* src/Makefile.am (liblsh_a_SOURCES): Deleted bignum.c

Niels Möller's avatar
Niels Möller committed
368
369
	* configure.ac: Bumped version to 1.5.4.

Niels Möller's avatar
Niels Möller committed
370
371
372
373
374
375
	* src/interact.h (INTERACT_READ_PASSWORD): Deleted the forth
	argument FREE. Now the prompt string is always consumed. Updated
	all callers.
	* src/unix_interact.c (unix_read_password): Deleted fourth
	argument FREE.

Niels Möller's avatar
Niels Möller committed
376
377
378
379
380
381
382
383
384
385
	* src/lsh.h: Forward declaration of catch_report_collect.
	* src/channel_forward.h: ... and deleted corresponding declaration
	here. 

	* src/abstract_compress.c, src/abstract_compress.h: Deleted files.
	Moved contents to...
	* src/compress.c, src/compress.h: ... here. Updated users.

	* src/Makefile.am (liblsh_a_SOURCES): Removed abstract_compress.

Niels Möller's avatar
Niels Möller committed
386
387
388
389
390
391
392
393
2003-10-10  Niels Möller  <niels@s3.kth.se>

	* src/unix_user.c (do_read_file_fail): Return the created
	exception. 

	* src/lshd.c (main_argp_parser): Use getenv(ENV_LOGNAME), not
	getenv("LOGNAME"). 

Niels Möller's avatar
Niels Möller committed
394
395
396
397
398
399
2003-10-05  Niels Möller  <nisse@cuckoo.hack.org>

	* src/lsh.c (read_user_keys): Display error message for missing
	identity file only in verbose mode. Suggested by Thomas
	Krennwallner.

Niels Möller's avatar
Niels Möller committed
400
401
402
403
404
405
406
407
408
409
2003-09-27  Niels Möller  <nisse@cuckoo.hack.org>

	* src/gateway_channel.c (do_channel_open_forward): Moved creation
	of ORIGIN channel object from here...
	(do_gateway_channel_open_continuation): ... to here.
	(make_gateway_channel_open_continuation): Deleted ORIGIN argument.

	* src/channel.c (channel_open_handler): Bugfix for the case that
	alloc_channel fails.

Niels Möller's avatar
Niels Möller committed
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
442
443
444
445
2003-09-26  Niels Möller  <nisse@cuckoo.hack.org>

	* src/channel.c (login_service_command): Deleted redundant command.

	* src/lshd.c (main_options): #if:ed out login-auth-mode-user.
	(main_argp_parser): For login-auth-mode, we don't need a user
	database. Instead use make_unix_user_self and
	make_userauth_none_permit. 
	(install_session_handler): New command.
	(lshd_login_service): Take the "session" channel open handler as
	argument. We don't need a general list of connection hooks. Use
	init_connection_service, not the reduntant init_login_service.
	(make_lshd_login_service): Simplified a little.

	* src/server_userauth.c (do_none_preauth,
	server_userauth_none_preauth):  Userauth "none" handler which
	succeeds only if the user was authenticated during key exchange.	
	(userauth_none_permit): New class.
	(do_none_permit): Userauth "none" handler which always succeeds.
	(make_userauth_none_permit): New function.
	(userauth_none): Deleted class.
	(do_none_authenticate, make_userauth_none): Deleted functions.

	* src/unix_user.c (chdir_home): Deleted function.
	(exec_shell): Take separate arguments for shell, home, name, uid
	and gid, not a struct unix_user.
	(spawn_error, spawn_parent, spawn_child): New helper functions,
	broken out of do_spawn.
	(do_spawn): Use helper functions.
	(unix_user_self): New class.
	(do_verify_password_fail, do_file_exists_fail, do_read_file_fail):
	Dummy methods. 
	(do_spawn_self): Spawn method for unix_user_self class. 
	(make_unix_user_self): New function.
	(unix_current_user): Deleted function.

Niels Möller's avatar
Niels Möller committed
446
447
448
449
450
2003-09-25  Niels Möller  <niels@s3.kth.se>

	* src/io.c (do_connect_list_callback): Fixed error message. errno
	is not valid here.

Pontus Freyhult's avatar
Pontus Freyhult committed
451
452
453
454
455
456
2003-09-25  Pontus Sköld  <pont@soua.net>

	* src/channel.c (login_service_command): Use
	init_connection_service instead of init_login_service.
	(init_login_service): Removed redundant function.
	
457
458
459
460
461
2003-09-22  Niels Möller  <nisse@cuckoo.hack.org>

	* README: Updated the instructions for building from CVS. List
	tcputils as a program needed for the testsuite.

Niels Möller's avatar
Niels Möller committed
462
463
464
465
2003-09-20  Niels Möller  <nisse@cuckoo.hack.org>

	* misc/mkdiff: Copied mkdiff script from the old lsh_1_2_BRANCH.

Niels Möller's avatar
Niels Möller committed
466
467
468
469
470
471
472
473
474
2003-09-19  Niels Möller  <nisse@cuckoo.hack.org>

	* Released lsh-1.5.3.

	* src/channel.c (init_login_service): Added FIXME: for the purpose
	of this function.

	* src/io.c (close_fd): Added FIXME: on the fd->fd == -1 hack.

Niels Möller's avatar
Niels Möller committed
475
476
2003-09-19  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
477
478
	* configure.ac: Bumped version to 1.5.3.

Niels Möller's avatar
Niels Möller committed
479
480
481
482
483
484
485
486
487
488
489
490
491
492
	* src/client_keyexchange.c (do_handle_srp_reply): Fixed missing
	returns after disconnect_kex_failed and PROTOCOL_ERROR.

	* src/client_userauth.c (do_exc_userauth_disconnect): Clarified
	comment. 

	* src/channel_commands.c (do_channel_open_command): Added missing
	return EXCEPTION_RAISE. Fixed also in 1.4.3.

	* src/testsuite/Makefile.am (TS_SH): Fixed syntax error.

	* src/testsuite/lshd-random-input-test: New test case that
	connects to lshd and sends some random data.

Niels Möller's avatar
Niels Möller committed
493
494
495
496
497
2003-09-18  Niels Möller  <nisse@cuckoo.hack.org>

	* src/read_line.c (do_read_line): Fixed buffer overrun bug,
	initially reported by Bennett Todd. Fixed also in stable branch.

498
499
500
501
502
2003-09-18  Niels Möller  <nisse@lysator.liu.se>

	* distribution-key.gpg: Updated key, new signatures and new expire
	date. 

Pontus Freyhult's avatar
Pontus Freyhult committed
503
504
2003-09-16  Pontus Sköld  <pont@soua.net>

Pontus Freyhult's avatar
Pontus Freyhult committed
505
506
507
508
509
510
511
512
513
514
515
	* src/lsh-writekey.c (main): Check that the given key isn't empty.

	* src/lsh-upgrade-key: Set a restrictive umask. Encrypted keys are
	no longer stored unencrypted in a temporary file, just piped
	through the conversion chain like unencrypted keys are.
 
	* src/lsh-writekey.c (process_private): Moved reading of
	passphrase here.
	(main_argp_parser): Reading of passphrase from tty is now done in
	process_private if required.

Pontus Freyhult's avatar
Pontus Freyhult committed
516
517
518
519
520
	* src/testsuite/lshd-no-auth-test: New test to verify lshd fails
	gracefully when it may use no authentication method.

	* src/testsuite/Makefile.am (TS_SH): Use new lshd-no-auth-test.

Pontus Freyhult's avatar
Pontus Freyhult committed
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
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
2003-09-15  Pontus Sköld  <pont@soua.net>

	* src/testsuite/Makefile.am (TS_SH): Use new test for login-auth
	mode.

	* src/testsuite/login-auth-test: New test for login-auth mode.

	* src/lshd.c: New defines OPT_LOGIN_AUTH_USER,
	OPT_OPT_NO_LOGIN_AUTH_MODE, OPT_LOGIN_AUTH_USER and
	OPT_BANNER_FILE.
	(lshd_options): New attributes with_loginauthmode,
	loginauthmode_user and banner_file.
	(make_lshd_options): Initialize new attributes.
	(main_options): New options for login-auth-mode and banner-file.
	(main_argp_parser): Make a userdb if using login-auth-mode too.
	Bugfix; make sure self->userauth_algorithms is initialized, even
	if we're using srp. Add a permissive userauth_none to
	self->userauth_algorithms if using login-auth mode. Handle new
	options.
	(lshd_login_service): New class.
	(make_lshd_login_service): New function.
	(make_lshd_listen_callback): Read banner-file and pass as a string
	to make_handshake_info is desired.
	(main): Use the login service in login-auth mode.

	* src/server_userauth.c (userauth_none): New class.
	(do_none_authenticate): Added code for login-auth-mode to
	auto login a specific user.
	(make_userauth_none): New function.

	* src/server_userauth.h (make_userauth_none): Declaration, removed
	static userauth_none.

	* src/unix_user.c (unix_current_user): New function, return
	username of current user.

	* src/lsh.c (main): Pass extra NULL to make_handshake_info.

	* src/handshake.c (make_handshake_info): New parameter
	banner_text, init attribute.

	* src/handshake.h (handshake_info): New attribute banner_text. 
	(make_handshake_info): New parameter.

	* src/channel.h: Declarataions for init_login_service,
	login_service_command annd INIT_LOGIN_SERVICE.

	* src/channel.c (init_login_service): New function to setup a
	login service.
	(login_service_command): Command to setup a connection for login
	service.

Niels Möller's avatar
Niels Möller committed
573
574
575
576
577
578
579
580
581
582
583
2003-08-17  Niels Möller  <nisse@cuckoo.hack.org>

	* src/scm/gaba.scm (out): Ignore #f entries.
	(process-class): New keyword condition, for preprocessor
	conditionals. 

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

	* src/zlib.c (do_zlib): Changed messages from verbose to debug, to
	reduce clutter.

Niels Möller's avatar
Niels Möller committed
584
585
586
587
2003-06-12  Niels Möller  <nisse@cuckoo.hack.org>

	* Released lsh-1.5.2

Niels Möller's avatar
Niels Möller committed
588
589
2003-06-10  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
590
591
592
	* src/lsh.c (read_known_hosts): Fixed error message when host-acls
	doesn't exist.

Niels Möller's avatar
Niels Möller committed
593
594
595
	* src/testsuite/lsh-decrypt-key-test (fname, keyname): Store files
	in $TEST_HOME.

Niels Möller's avatar
Niels Möller committed
596
597
598
599
2003-06-06  Niels Möller  <nisse@cuckoo.hack.org>

	* src/Makefile.am (EXTRA_DIST): Added lsh-upgrade-key.

Pontus Freyhult's avatar
Pontus Freyhult committed
600
601
602
603
604
605
2003-06-06  Pontus Sköld  <pont@soua.net>

	* src/lsh-upgrade-key: New script to upgrade keys.

	* src/Makefile.am (bin_SCRIPTS): Added lsh-upgrade-key.

Niels Möller's avatar
Niels Möller committed
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
2003-06-05  Niels Möller  <nisse@lysator.liu.se>

	* src/testsuite/lsh-encrypted-key-test: The lsh-authorize script
	is located in the source directory.

	* src/unix_interact.c (unix_read_password): Added trace messages.
	(unix_set_askpass): Added trace message. Assert that askpass is
	non-NULL.

	* src/spki.c (spki_pkcs5_decrypt): Cosmetic fix of warning message.

	* src/lsh.c (read_user_keys): Cosmetic fix of trace message.

	* src/client.c (client_argp_parser): Fixed --askpass option. The
	argp parser should never use optarg.

Niels Möller's avatar
Niels Möller committed
622
623
624
625
626
2003-06-05  Niels Möller  <niels@s3.kth.se>

	* src/unix_interact.c (unix_read_password): Prompt for password
	only if we have a tty, and the quiet flag is unset.

Pontus Freyhult's avatar
Pontus Freyhult committed
627
628
629
630
631
632
633
634
635
636
637
638
639
2003-06-05  Pontus Sköld  <pont@soua.net>

	* src/lsh-decrypt-key.c: New file to provide new utility
	lsh-decrypt-key.

	* src/Makefile.am (bin_PROGRAMS): Added new utility
	lsh-decrypt-key.

	* src/testsuite/lsh-decrypt-key-test: New test to test
	lsh-decrypt-key.

	* src/testsuite/Makefile.am (TS_SH): Use new lsh-decrypt-key-test.
	
Niels Möller's avatar
Niels Möller committed
640
641
642
643
644
645
646
2003-06-05  Niels Möller  <nisse@lysator.liu.se>

	* src/io.c (io_resolv_address): In the code using getaddrinfo,
	zero the sockaddr_in first using memset, to ensure that
	sockaddr_in.sin_zero really is zero, on the systems (e.g. AIX)
	that need that.

Niels Möller's avatar
Niels Möller committed
647
648
2003-06-04  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
649
650
651
652
	* src/testsuite/lsh-encrypted-key-test: Use printf instead of echo
	in the askpass helper program. There should be no trailing newline
	character. 

Niels Möller's avatar
Niels Möller committed
653
654
655
656
657
658
659
660
	* src/lsh-krb-checkpw.c: Include <string.h>.

	* src/unix_interact.c (unix_read_password): The askpass code
	leaked the prompt string. Fixed.

	* src/spki.c (spki_pkcs5_decrypt): The label string was leaked.
	Fixed. 

Niels Möller's avatar
Niels Möller committed
661
662
663
664
665
666
667
668
2003-06-04  Niels Möller  <nisse@cuckoo.hack.org>

	* src/spki.c (spki_pkcs5_encrypt): The method identifier is
	"Xpkcs5v2", not "xpkcs5v2".
	(spki_pkcs5_decrypt): Rewrote function.
	(parse_pkcs5, parse_pkcs5_payload): New helper functions for
	spki_pkcs5_decrypt.

Pontus Freyhult's avatar
Pontus Freyhult committed
669
670
671
672
673
674
675
2003-06-03  Pontus Sköld  <pont@soua.net>

	* src/testsuite/Makefile.am (TS_SH): Added lsh-encrypted-key-test.

	* src/testsuite/lsh-encrypted-key-test: Test for encrypted
	(password protected) key functionality in lsh.

Niels Möller's avatar
Niels Möller committed
676
677
678
679
680
681
2003-06-01  Niels Möller  <nisse@cuckoo.hack.org>

	* src/io.c (do_listen_callback): To get enough space, PEER must be
	a sockaddr_in (if the IPv6 type sockaddr_storage isn't available).
	(fd2info): Likewise.

Niels Möller's avatar
Niels Möller committed
682
683
2003-05-24  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
684
685
686
	* src/lsh-make-seed.c: Fixed nesting of WITH_ZLIB #if:s. Also
	disable the zlib code.

Niels Möller's avatar
Niels Möller committed
687
688
689
	* misc/xenofarm.sh: Use cp in stead of mv, when putting files into
	the result package.

Niels Möller's avatar
Niels Möller committed
690
691
692
	* src/server_x11.c (server_x11_setup): Don't use non-constant
	initializer. Sun cc doesn't support it.

Niels Möller's avatar
Niels Möller committed
693
694
695
696
697
2003-05-22  Niels Möller  <niels@s3.kth.se>

	* src/testsuite/Makefile.am: Don't use -O0 in AM_CFLAGS, as it
	breaks the AIX build.

Niels Möller's avatar
Niels Möller committed
698
699
700
701
702
2003-05-21  Niels Möller  <niels@s3.kth.se>

	* src/reaper.c (do_reaper_callback): Check if WCOREDUMP is defined
	before using it.

Niels Möller's avatar
Niels Möller committed
703
704
2003-05-20  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
705
706
707
	* src/unix_interact.c (unix_read_password): Fixed argv bug for the
	askpass program.

Niels Möller's avatar
Niels Möller committed
708
709
710
711
712
713
714
715
716
717
718
	* src/client.c: Implemented --askpass option.

	* src/unix_interact.c (unix_read_password): Use any specified
	askpass program. Deleted the password_fd code.
	(unix_set_askpass): New function.
	(make_unix_interact): Initialize askpass and set_askpass.

	* src/interact.h (INTERACT_SET_ASKPASS): New method.

	* src/io.c (lsh_popen_read): Improved warning messages.

Niels Möller's avatar
Niels Möller committed
719
720
721
	* configure.ac: If seteuid is not available, but setresuid is,
	let config.h #define seteuid in terms of setresuid.

Niels Möller's avatar
Niels Möller committed
722
723
724
725
726
727
728
2003-05-19  Niels Möller  <nisse@cuckoo.hack.org>

	* src/unix_user.c (do_read_file): Set the process gid, and reset
	the supplimentary groups list, before opening the file.

	* configure.ac: Check for seteuid and setresuid.

Niels Möller's avatar
Niels Möller committed
729
730
731
732
733
734
735
736
2003-05-16  Niels Möller  <niels@s3.kth.se>

	* configure.ac: Check for struct utmp.ut_exit.e_termination and
	struct utmpx.ut_exit.e_termination.

	* src/unix_process.c (do_utmp_cleanup): Fix for HPUX, which uses
	non-standard names for the fields of struct utmpx's ut_exit.

Niels Möller's avatar
Niels Möller committed
737
738
739
740
741
2003-05-14  Niels Möller  <niels@s3.kth.se>

	* src/io.c (io_resolv_address): More fixes for the non getaddrinfo
	code.

Niels Möller's avatar
Niels Möller committed
742
743
744
745
746
747
748
2003-05-14  Niels Möller  <nisse@cuckoo.hack.org>

	* src/unix_interact.c (unix_interact): New attribute password_fd.
	(unix_read_password): Read password from password_fd, unless it's
	-1. 
	(make_unix_interact): Initialize password_fd to -1.

Niels Möller's avatar
Niels Möller committed
749
750
751
752
753
2003-05-13  Niels Möller  <nisse@cuckoo.hack.org>

	* src/io.c (io_resolv_address): Fixes for the non getaddrinfo
	code. 

Niels Möller's avatar
Niels Möller committed
754
755
756
757
758
759
760
2003-05-13  Niels Möller  <niels@s3.kth.se>

	* acinclude.m4 (LSH_FUNC_STRSIGNAL): Use a dummy STRSIGNAL if none
	of strsignal, sys_siglist or _sys_siglist exists.

	* src/io.c (lsh_popen_read): Use STRSIGNAL macro.

761
762
2003-05-12  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
763
764
	* src/crypto.h (FOR_BLOCKS): Deleted unused macro.

Niels Möller's avatar
Niels Möller committed
765
766
767
768
769
770
	* src/lsh-execuv.c: Don't include lsh_types.h.
	* src/lsh-krb-checkpw.c: Likewise.

	* src/lsh.c (do_lsh_lookup): Fix syntax of generated ACL entries
	(bug 1030).

Niels Möller's avatar
Niels Möller committed
771
772
773
774
775
776
	* misc/make-am (environ_deps): Deleted code for generating
	.dist_deps. 

	* src/.dist_headers: Deleted memxor.h and lsh_types.h. 
	* src/.dist_headers, src/.dist_classes: Deleted proxy-related
	files. 
Niels Möller's avatar
Niels Möller committed
777

778
779
780
	* configure.ac: Updated AC_CONFIG_SRCDIR, as lsh_types.h no longer
	exists. 

Niels Möller's avatar
Niels Möller committed
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
2003-05-12  Niels Möller  <niels@s3.kth.se>

	* configure.ac: Don't AC_REPLACE_FUNCS(memxor), just use the
	memxor function in nettle.

	* doc/HACKING: Documented current include file ordering rules.

	* src/lsh.h (MAX, MIN, SQR, STRING_LINE): Moved miscellaneous
	macros here. Used to be in lsh_types.h.

	* Reordered includes in most or all .c-files. All should now
	include config.h.

	* src/lsh_types.h: Deleted file.
	* src/.dist_deps: Deleted file.
	* src/memxor.h, src/memxor.c: Deleted files.

	* src/Makefile.am (BUILT_SOURCES): Use BUILT_SOURCES to get
	environ.h built. .dist_deps no longer needed.

	* acinclude.m4 (LSH_GCC_FUNCTION_NAME, LSH_FUNC_ALLOCA) 
	(LSH_FUNC_STRERROR, LSH_FUNC_STRSIGNAL): New macros.
	* configure.ac: Use them.

805
806
807
808
809
2003-05-12  Pontus Sköld  <pont@soua.net>

	* src/lsh-upgrade: Upgrade any authorized public keys and
	re-authorize them.

Niels Möller's avatar
Niels Möller committed
810
811
812
813
814
815
816
2003-04-23  Niels Möller  <niels@s3.kth.se>

	* src/Makefile.am (gcov-list): Don't include files with full code
	coverage in the list.

	* src/testsuite/Makefile.am (TS_SH): Added
	tcpip-local-in-use-test. 
Niels Möller's avatar
Niels Möller committed
817
818
	
2003-04-22  Niels Möller  <niels@s3.kth.se>
Niels Möller's avatar
Niels Möller committed
819

Niels Möller's avatar
Niels Möller committed
820
821
822
823
824
825
	* src/tcpforward_commands.c (forward_local_port): Use prog1 to
	delay bind call until the connection is established.

	* src/testsuite/tcpip-local-in-use-test: New test case, to check
	the error handling for "address already in use".

Niels Möller's avatar
Niels Möller committed
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
	* src/unix_user.c (exec_shell): Build the argument list for
	lsh-execuv only if we need to change uid. Include the name of the
	exec:ed program if exec fails.

	* src/lsh.c (main): Use addr_queue instead of sockaddr_list.
	* src/lshd.c: Likewise.

	* src/io_commands.c (connect_list_command): Take a
	connect_list_state as argument.

	* src/io.h (connect_list_state): Moved class definition to the
	header file.

	* src/io.c (sockaddr_cons): Deleted function.
	(io_resolv_address) Use addr_queue instead of sockaddr_list.
	(io_listen_list): Likewise.
	(connect_attempt): Likewise.
	(make_connect_list_state): Made non-static.
	(connect_list_callback): Moved c and e attributes here, from
	connect_list_state.
	(io_connect_list): Take a connect_list_state as argument.

	* src/queue.c (make_addr_queue_node): Initialize the size field. 

	* src/queue.h (struct lsh_queue): Added length field.

	* src/queue.c: New queue type addr_queue, for handling lists of
	sockaddr:esses. Let lsh_queue keep track of the length.

	* src/lsh.c (do_lsh_lookup): Deleted old code handling the
	ssh-rsa-pkcs1@lysator.liu.se algorithm id.

Niels Möller's avatar
Niels Möller committed
858
859
860
861
862
863
864
865
2003-04-22  Niels Möller  <nisse@cuckoo.hack.org>

	* src/lsh.c (lsh_verifier_command): Deleted command.
	(make_lsh_login): New function, replacing lsh_login_command.
	(make_lsh_userauth): Deleted GABA-expression.
	(make_lsh_connect): Take a login command as a parameter.
	(main): Updated calls to make_lsh_connect and make_lsh_login.

Niels Möller's avatar
Niels Möller committed
866
867
868
2003-04-21  Niels Möller  <nisse@cuckoo.hack.org>

	* src/lsh.c (make_lsh_connect): Take actions as a parameter.
Niels Möller's avatar
Niels Möller committed
869
870
871
872
873
874
875
876
877
	(options2service): Deleted command.
	(lsh_options): Deleted service attribute. Always ask for the
	userauth service.
	(make_lsh_userauth): Deleted expression.
	(make_lsh_connect): Take keys as parameter. Always ask for
	userauth service.
	(main): Deleted call of make_lsh_userauth. Pass keys to
	make_lsh_connect instead.

Niels Möller's avatar
Niels Möller committed
878
879
880
881
882
883
884
885
	* src/lshg.c (make_lshg_connect): Likewise.

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

	* src/client.c (client_options2actions): Deleted command.

	* src/io.c (make_address_info_c): Deleted function.

Niels Möller's avatar
Niels Möller committed
886
887
2003-04-20  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
888
	* src/spki.c (make_ssh_hostkey_tag): Use a plain NUL-terminated
Niels Möller's avatar
Niels Möller committed
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
	string to identify the host.
	(spki_pkcs5_decrypt): Fixed string leak. The label string wasn't
	freed properly on failure.

	* src/lshd.c (do_exc_lshd_handler): It seems we need an exception
	handler after all, which catches and logs i/o errors.

	* src/lsh.c (options2identities): Deleted command.
	(lsh_host_db): Use a NUL-terminated string to identify the host.
	(do_lsh_lookup): Likewise.
	(make_lsh_host_db): Likewise.
	(make_lsh_userauth): Take keys as a parameter. Don't use
	options2identities. 
	(make_lsh_connect): Take options as a parameter, and the remote
	address list as argument. Use connect_list.
	(main): Call io_resolv_address, read_known_hosts, read_user_keys
	and make_lsh_userauth here.

	* src/io_commands.c (connect_list_command): New command.

	* src/io.c (do_connect_list_callback): Update fd->label.

	* src/handshake.c (handshake_command): Allow a NULL lv->peer.

	* src/gateway.c (make_gateway_address): Take a plain
	NUL-termianted string to identify the target.

	* src/client.c (client_options2remote): Deleted command.
	(client_argp_parser): Don't call make_address_info_c.

	* src/client.h (client_options): Replaced remote attribute with a
	plain NUL-termianted string, and renamed to target.
	* src/lshg.c: Updated for the struct client_options renaming
	remote->target. 

	* src/testsuite/functions.sh (spawn_lshd): Reduced sleep.

Niels Möller's avatar
Niels Möller committed
926
927
2003-04-16  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
928
929
930
	* src/lshd.c (main): No need to check for make_lshd_options
	returnning NULL.

Niels Möller's avatar
Niels Möller committed
931
932
933
934
935
	* src/.dist_classes (dist_classes): Deleted io_commands.h.x.
	* src/io_commands.h (io_write_file_info): Deleted class.
	* src/io_commands.c (io_write_file_command) 
	(make_io_write_file_info): Deleted unused functions.

Niels Möller's avatar
Niels Möller committed
936
937
938
939
940
941
942
943
	* src/lshd.c (do_exc_lshd_handler, make_lshd_exception_handler):
	Deleted functions.

	* src/exception.h (EXC_RANDOMNESS_LOW_ENTROPY, EXC_APP): Deleted
	unused exceptions.

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

Niels Möller's avatar
Niels Möller committed
944
945
946
947
948
949
950
	* src/testsuite/functions.sh (spawn_lshd): Check exit code from
	lshd. Print out the lshd pid.
	(spawn_lsh): Print out the lsh pid.

	* src/Makefile.am (gcov-list): New target for running gcov.

	* src/io_commands.c (listen_list_command): Deleted command.
Niels Möller's avatar
Niels Möller committed
951
	Replaced by the io_listen_list function.
Niels Möller's avatar
Niels Möller committed
952

Niels Möller's avatar
Niels Möller committed
953
	* src/lshd.c (options2local, options2keys, options2tcp_wrapper)
Niels Möller's avatar
Niels Möller committed
954
955
956
957
	(close_on_sighup): Deleted commands.

	* src/keyexchange.c (kexinit_filter): Deleted command.

Niels Möller's avatar
Niels Möller committed
958
	* src/lshd.c (main): Reorganization, do more work before io_run,
Niels Möller's avatar
Niels Möller committed
959
960
961
962
963
964
965
966
967
968
969
970
971
972
	including reading host keys and binding sockets directly in main.
	Moved the daemonization later, so that the forground process
	doesn't exit until after the ports are bound.

	Fixed an fd leak in the server tcpip-forwarding code.
	* src/tcpforward.c (do_tcpip_forward_request_continuation): Use
	remember_resource to associate the bound fd to the connection.
	(make_tcpip_forward_request_continuation): New argument,
	connection. 
	(do_tcpip_forward_request): Pass the connection to
	make_tcpip_forward_request_continuation.

	* src/io.c (io_listen_list): New function.

Niels Möller's avatar
Niels Möller committed
973
974
975
976
977
978
979
980
981
982
983
984
985
986
2003-04-15  Niels Möller  <niels@s3.kth.se>

	* src/testsuite/functions.sh (spawn_lshd): Use -HUP, not -9, for
	killing lshd.

	* src/werror.c (fatal) [WITH_GCOV]: Call fork, so that we can
	call exit() and also dump core.

	* src/server.c (read_host_key): Fixed string leak.

	* src/io.c (make_connect_callback): Made non-static.
	(io_connect): Changed interface, to take an io_callback instead of
	a continuation. The caller has to use make_connect_callback to get
	the old functionality.
Niels Möller's avatar
Niels Möller committed
987
	(io_connect_local): Adapted to new io_connect interface, and call
Niels Möller's avatar
Niels Möller committed
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
	make_connect_list_callback. 
	* src/client_x11.c (channel_open_x11): Likewise.
	* src/io_commands.c (do_connect): Likewise.

	* src/io.c (connect_list_state): New class.
	(do_connect_list_kill): New function.
	(make_connect_list_state): New function.
	(connect_attempt): New function.
	(connect_list_callback): New class.
	(do_connect_list_callback): New function.
	(make_connect_list_callback): New function.
	(io_connect_list): New function. 

	* src/io.h (sockaddr_list): Renamed attribute, addr -> address.

	* configure.ac: New option --enable-profiling.

	* src/.gdbinit: New file.

Niels Möller's avatar
Niels Möller committed
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
2003-04-14  Niels Möller  <nisse@cuckoo.hack.org>

	* src/io.c (io_resolv_address): Changed interface, to avoid local
	conversion of service names to port numbers. This way, all that's
	needed for SRV-records is proper support in getaddrinfo.

	* src/lshd.c (parse_interface): Changed interface to use plain
	NUL-terminated strings.
	(main_argp_parser): Updated for new io_resolv_address interface.

Niels Möller's avatar
Niels Möller committed
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
2003-04-14  Niels Möller  <niels@s3.kth.se>

	* src/testsuite/functions.sh: Use INTERFACE=localhost, as we now
	support non-numerical interface names.
	(spawn_lshd): Must put -p option before --interface.

	* src/lshd.c (parse_interface): New function.
	(main_argp_parser): Implemented multiple --interface options.
	(make_lshd_listen): Use listen_list, to list on severala ddresses
	in parallel. Don't use the bind command.

	* src/io.c (io_resolv_address): Changed return type, now returns
	the number of resolved addresses.

	* doc/lsh.texinfo (Invoking lshd): Document the use of multiple
	--interface options.

Niels Möller's avatar
Niels Möller committed
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
2003-04-13  Niels Möller  <nisse@cuckoo.hack.org>

	* src/testsuite/Makefile.am (EXTRA_PROGRAMS): Added testutils, as
	a kludge to get automake to track dependencies for testutils.o.

	* src/io_commands.c (listen_list_command): New command.

	* src/io.h (sockaddr_list): New class.

	* src/io.c (io_resolv_address): New function.
	(sockaddr_cons): New function. 

	* src/client_session.c (make_client_session_channel): Added place
	holder for send break escape handler (#if:ed out for now)

Niels Möller's avatar
Niels Möller committed
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
2003-04-11  Niels Möller  <niels@s3.kth.se>

	* src/client_pty.c (do_kill_client_tty_resource): Call
	set_error_raw. 
	(do_pty_continuation): Likewise.

	* src/client_escape.c (escape_help): New class.
	(do_escape_help): Escape function that lists all defined escapes. 
	(make_escape_help): New function.
	(make_escape_info): Install help.
	(escape_dispatch): Updated to use the escape_callback type.

	* src/client.c: Use DEFINE_ESCAPE.
	* src/suspend.c (suspend_callback): Likewise.

	* src/client.h (escape_callback): New class, which inherits
	lsh_callback and adds a help string.
	(class escape_info): Use it.
	(DEFINE_ESCAPE): New macro.

	* src/werror.c (set_error_raw): New function, for telling the
	werror functions when the tty is set to raw mode.
	(werror_putc): In raw mode, add a \r before each \n.
	(werror_write_raw): Renamed the old werror_write function.
	(werror_write): New function that inserts \r in the output when
	approrpriate.

	* src/Makefile.am (MAINTAINERCLEANFILES, class-map): Updated to
	use dist_classes, not dist_x_files.

Pontus Freyhult's avatar
Pontus Freyhult committed
1079
1080
1081
1082
1083
1084
1085
1086
1087
2003-03-24  Pontus Sköld  <pont@soua.net>

	* contrib/solpkg.sh.in: Added my script to create Solaris
	packages.

	* contrib/Makefile.am: Include script in EXTRA_DIST

	* configure.ac: Added hooks for Solaris package script. 

Niels Möller's avatar
Niels Möller committed
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
2003-03-14  Niels Möller  <nisse@cuckoo.hack.org>

	* src/io.c (handle_nonblock_error): New function, ignoring ENODEV
	errors. Needed for freebsd, where setting the non-block flag on
	/dev/null fails. 
	(io_set_nonblocking, io_set_blocking): Use handle_nonblock_error.

2003-03-13  Niels Möller  <nisse@cuckoo.hack.org>

	* src/io.c (io_set_nonblocking, io_set_blocking) 
	(io_set_close_on_exec): Fixed error messages.

1100
1101
1102
1103
1104
1105
1106
1107
1108
2003-03-05  Niels Möller  <nisse@cuckoo.hack.org>

	* configure.ac: Bumped version to 1.5.2.

	* src/testsuite/Makefile.am (LDADD): Use DOTDOT_LIBARGP, instead
	of the GNU make specific addprefix function.

	* configure.ac (DOTDOT_LIBARGP): New substitution

Niels Möller's avatar
Niels Möller committed
1109
1110
1111
1112
1113
1114
1115
1116
2003-03-04  Niels Möller  <nisse@cuckoo.hack.org>

	* misc/xenofarm.sh (make): Don't use -k flag, it seems to mask
	errors. 

	* src/Makefile.am (environ.h): Avoid requiring GNU make for this
	rule. 

Niels Möller's avatar
Niels Möller committed
1117
1118
1119
1120
1121
1122
2003-03-02  Niels Möller  <nisse@cuckoo.hack.org>

	* src/unix_random.c: Include <sys/time.h> before <sys/resource.h>. 

	* src/io.c: Include <sys/wait.h>, not <wait.h>.

Niels Möller's avatar
Niels Möller committed
1123
1124
1125
1126
2003-03-01  Niels Möller  <nisse@cuckoo.hack.org>

	* src/lsh-upgrade: Note that we need to upgrade private keys too. 

Niels Möller's avatar
Niels Möller committed
1127
1128
2003-02-28  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1129
1130
	* Released lsh-1.5.1.
	
Niels Möller's avatar
Niels Möller committed
1131
1132
1133
	* src/spki.c (spki_pkcs5_decrypt): Typo fix, it's
	"password-encrypted", not "password_encrypted".

Niels Möller's avatar
Niels Möller committed
1134
1135
1136
1137
1138
2003-02-27  Niels Möller  <nisse@cuckoo.hack.org>

	* src/testsuite/rapid7-lsh-test: ln -sf is not portable, so delete
	the symlink "current" explicitly using rm.

Niels Möller's avatar
Niels Möller committed
1139
1140
1141
1142
1143
2003-02-27  Niels Möller  <niels@s3.kth.se>

	* src/testsuite/rapid7-lsh-test: Skip test if tcputils is missing.
	* src/testsuite/rapid7-lshd-test: Likewise.	

Niels Möller's avatar
Niels Möller committed
1144
1145
1146
1147
1148
1149
2003-02-27  Niels Möller  <nisse@cuckoo.hack.org>

	* src/testsuite/rapid7-lshd-test: Use $srdir for locating the test
	pdu:s. 
	* src/testsuite/rapid7-lsh-test: Likewise.

Niels Möller's avatar
Niels Möller committed
1150
1151
1152
1153
1154
1155
1156
1157
2003-02-26  Niels Möller  <nisse@cuckoo.hack.org>

	* src/testsuite/rapid7-lsh-test: Bugfixes, and some adaption to
	the lsh testsuite framework.
	* src/testsuite/rapid7-lshd-test: Likewise.

	* src/testsuite/functions.sh (werror, die): New functions.

1158
1159
1160
1161
2003-02-26  Pontus Sköld  <pont@soua.net>

	* src/lsh-krb-checkpw.c: Include config.h if available.

Niels Möller's avatar
Niels Möller committed
1162
1163
2003-02-25  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
1164
1165
	* src/testsuite/Makefile.am (AM_CPPFLAGS): Use $(srcdir)/..

Niels Möller's avatar
Niels Möller committed
1166
1167
	* src/testsuite/.dist_rapid7: Typo fix.

Niels Möller's avatar
Niels Möller committed
1168
1169
1170
1171
2003-02-25  Niels Möller  <nisse@cuckoo.hack.org>

	* src/rsync/Makefile.am (AM_CPPFLAGS): Use $(srcdir)/..

Niels Möller's avatar
Niels Möller committed
1172
1173
2003-02-24  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1174
1175
1176
1177
1178
1179
1180
1181
1182
	* src/testsuite/Makefile.am (TS_SH): Added rapid-7-lsh-test and
	rapid-7-lshd-test.
	(EXTRA_DIST): Use $(dist_rapid7), and include .dist_rapid7 which
	defines it. 

	* src/testsuite/.dist_rapid7: New file, listing rapid7 files.

	* rapid7-ssh-pdu: New directory, containing rapid7's testsuite.

1183
1184
	* configure.ac: Bumped version to 1.5.1.

Niels Möller's avatar
Niels Möller committed
1185
1186
1187
1188
1189
1190
1191
	* src/rsync/Makefile.am: Use AM_CPPFLAGS = -I.. to get include
	files in the main src directory.
	* src/testsuite/Makefile.am: Likewise.

	* configure.ac: Use AC_GNU_SOURCE. Don't add -I$srcdir/src -DLSH
	to CPPFLAGS.

Niels Möller's avatar
Niels Möller committed
1192
1193
1194
	* src/lsh.c (read_known_hosts): Fixed the message about old
	known_hosts files.

Niels Möller's avatar
Niels Möller committed
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
2003-02-23  Niels Moller  <nisse@carduelis>

	* src/scm/gaba.scm (main): Simplified. Explicitly use echo,
	otherwise scsh-0.6 seems to return a non-zero exit code.

	* acinclude.m4 (LSH_GCC_ATTRIBUTES): New macro, copied from lsh's
	configure.ac. 
	* configure.ac: Use it.

	* .bootstrap: Link acinclude.m4 to argp and sftp subdirectories.

1206
1207
2003-02-19  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
	* src/nettle/acinclude.m4, src/spki/acinclude.m4: Deleted files,
	let .bootstrap make links to the top-level acinclude.m4 instead.

	* acinclude.m4: Renamed macros to start with the LSH_-prfix.
	Deleted unused code. Updated configure.ac to match.
	(LSH_TYPE_SOCKLEN_T): Moved AH_TEMPLATE into the macro body.

	* .bootstrap: Link acinclude.m4 into the src/nettle and src/spki
	directories. Added command line option "links", that skips the
	autoconf and automake bootstrap.

1219
1220
1221
1222
1223
	* misc/Makefile.am (EXTRA_DIST): Removed bootstrap.sh. Added
	make-am. 

	* Makefile.am (EXTRA_DIST): Added .bootstrap.

1224
	* doc/Makefile.am (EXTRA_DIST): Don't distribute Makefile.am.in.
Niels Möller's avatar
Niels Möller committed
1225
1226
1227
	(%.txt): Resurrected the rule for building txt from nroff. Needed
	for srp-spec.txt.

1228
1229
	* src/Makefile.am (EXTRA_DIST): Likewise.

1230
1231
	* .bootstrap: New link from src/nettle/examples and
	src/sftp/testsuite to run-tests.
1232

Niels Möller's avatar
Niels Möller committed
1233
1234
2003-02-18  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1235
1236
1237
1238
1239
1240
	* src/Makefile.am (bootstrap): Bootstrap the spki dirctory too.
	(EXTRA_DIST): dist_x_files and cvs_headers renamed to dist_classes
	and dist_headers.

	* doc/Makefile.am (EXTRA_DIST): Deleted man_MANS.

Niels Möller's avatar
Niels Möller committed
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
	* misc/bootstrap.sh: Deleted old bootstrap file.

	* src/.dist_classes, src/.dist_headers: Reformatted so that they
	can be included directly in the Makefile.

	* src/.dist_deps: Dependencies on environ.h.

	* misc/run-tests: Moved testsuite driver here, and symlink it from
	all directories that need it.

	* misc/make-am: New script, for generating the files
	src/.dist_headers, src/.dist_classes and src/.dist_deps. Replaces
	* make_am, src/used_headers, src/cvs_headers: Deleted files.

	* .bootstrap: Bugfixes.
	
	* Makefile.am.in: Removed all these files. Use plain Makefile.am
	instead. 

1260
1261
1262
2003-02-18  Niels Möller  <niels@s3.kth.se>

	* configure.ac: Added check for inet_ntop in -lnsl.
1263
1264
	Check for -lnsl before checking for -lsocket, to avoid strange
	confusion with Solaris' library dependencies.
1265

Niels Möller's avatar
Niels Möller committed
1266
1267
1268
1269
2003-02-17  Niels Möller  <nisse@cuckoo.hack.org>

	* misc/xenofarm.sh: Fixed make --version test.

Niels Möller's avatar
Niels Möller committed
1270
1271
1272
2003-02-17  Niels Möller  <niels@s3.kth.se>

	* misc/xenofarm.sh: Make sure PATH is exported.
Niels Möller's avatar
Niels Möller committed
1273
	Redirect stderr output from make --version.
Niels Möller's avatar
Niels Möller committed
1274

Niels Möller's avatar
Niels Möller committed
1275
1276
2003-02-17  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1277
	* src/testsuite/testutils.c: Use uint32_t and friends, not UINT32.
Niels Möller's avatar
Niels Möller committed
1278

Niels Möller's avatar
Niels Möller committed
1279
1280
	* misc/xenofarm.sh (cfgwarn): Fixed sed expression.

1281
1282
2003-02-16  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1283
1284
1285
	* src/.dist_classes: Deleted read_base64.c.x.
	* src/.dist_headers: Deleted digits.h

Niels Möller's avatar
Niels Möller committed
1286
1287
	* src/debug.c (send_debug, send_verbose): Deleted unused funtions.

1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
	* .bootstrap: New file, to replace misc/bootstrap.sh.

	* General cleanup. Use types uint32_t and friends instead of
	UINT32. Include files in the order config.h, C headers, system
	headers, lsh headers. Deleted RCS id strings. Affects most files.

	* src/digits.h, src/read_base64.c: Deleted obsolete file.
	
	* src/Makefile.am.in (liblsh_a_SOURCES): Removed read_base64.c. 

	* configure.ac: Added missing LSH_RPATH_FIX between the checks for
	gmp and liboop.
	Use AH_BOTTOM to define NORETURN, PRINTF_STYLE and UNUSED.

Niels Möller's avatar
Niels Möller committed
1302
1303
2003-02-15  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1304
1305
1306
1307
1308
1309
1310
1311
	* src/io.h (lsh_fd): Deleted old hanged_up attribute.
	* src/gateway_commands.c (gateway_setup_command): Deleted old
	#if:ed out command.
	* src/format.c (ssh_vformat_length): Deleted some old #if:ed out
	code. 
	* src/io.c (do_buffered_read): Likewise.
	* src/xalloc.c (lsh_object_free): Likewise.
	* src/proxy.c (do_proxy_offer_service): Likewise.
Niels Möller's avatar
Niels Möller committed
1312
1313
1314
	* src/io_commands.h: Deleted old prototypes make_listen_local and
	make_connect_local. 

Niels Möller's avatar
Niels Möller committed
1315
1316
1317
1318
2003-02-14  Niels Möller  <niels@s3.kth.se>

	* src/Makefile.am.in (bin_SCRIPTS): Added lsh-upgrade.

1319
1320
2003-02-12  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
1321
1322
	* src/unix_user.c (do_spawn): Added FIXME on error reporting.

1323
1324
1325
	* misc/xenofarm.sh (cfgwarn): Delete warning about using an
	absolute path for srcdir.

Niels Möller's avatar
Niels Möller committed
1326
1327
1328
1329
2003-02-11  Niels Möller  <niels@s3.kth.se>

	* misc/xenofarm.sh: Compile with make -k.

Niels Möller's avatar
Niels Möller committed
1330
1331
2003-02-10  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1332
1333
	* src/.dist_classes: Deleted lsh_proxy.c.x and sexp-conv.c.x.

Niels Möller's avatar
Niels Möller committed
1334
1335
1336
1337
1338
1339
1340
	* src/dsa.c (do_dsa_sign): Use tokens in format string to
	lsh_sexp_format. 
	* src/dsa_keygen.c (dsa_generate_key): Likewise.
	* src/lsh.c (do_lsh_lookup): Likewise.
	* src/srp_exchange.c (srp_make_verifier): Likewise.
	* src/rsa_keygen.c (rsa_generate_key): Likewise.
	* src/rsa.c (do_rsa_public_spki_key): Likewise.
Niels Möller's avatar
Niels Möller committed
1341
1342
	* src/spki.c (spki_pkcs5_encrypt, make_ssh_hostkey_tag) 
	(spki_hash_data): Likewise.
Niels Möller's avatar
Niels Möller committed
1343
1344
1345
1346

	* src/sexp-conv.c, src/sexp_test.c: Deleted file, not used
	anymore.

Niels Möller's avatar
Niels Möller committed
1347
1348
	* misc/xenofarm.sh: Collect config.h files from subdirectories. 

Niels Möller's avatar
Niels Möller committed
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
2003-02-09  Niels Möller  <nisse@cuckoo.hack.org>

	* src/testsuite/Makefile.am (TS_PROGS): Added sockaddr2info-test.

	* src/testsuite/testutils.h: Include io.h.

	* src/testsuite/sockaddr2info-test.c: New test case.

	* src/io.c (sockaddr2info): Use inet_ntop for formatting AF_INET6
	addresses.

Niels Möller's avatar
Niels Möller committed
1360
1361
1362
1363
1364
1365
1366
2003-02-07  Niels Möller  <nisse@cuckoo.hack.org>

	* src/lsh.c (do_lsh_lookup): The public key should be wrapped in a
	subject expression in the generated acl:s.

	* src/io.c (sockaddr2info): #ifed out broken IPv6 code.

Niels Möller's avatar
Niels Möller committed
1367
1368
2003-02-06  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
1369
1370
	* src/Makefile.am.in (DISTCLEANFILES): Delete environ.h.

Niels Möller's avatar
Niels Möller committed
1371
1372
1373
1374
1375
	* src/testsuite/conv-3-test: Updated test for current sexp-conv. 

	* misc/xenofarm.sh: Try to add /usr/local/bin and /usr/ccs/bin to
	PATH, if needed.

Niels Möller's avatar
Niels Möller committed
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
2003-02-05  Niels Möller  <nisse@cuckoo.hack.org>

	* src/keyexchange.c (KEXINIT_MAX_ALGORITMS_SUN): New constant.
	(parse_kexinit): Added argument peer_flag. Use larger list limit
	than parsing the language lists from Sun's sshd.
	(do_handle_kexinit): Updated call to parse_kexinit.

	* src/handshake.c: Added workaround for "Sun_SSH_1.0".

	* src/connection.h: New constant PEER_KEXINIT_LANGUAGE_KLUDGE.

Niels Möller's avatar
Niels Möller committed
1387
1388
1389
1390
2003-02-04  Niels Möller  <nisse@cuckoo.hack.org>

	* Moved argp-related entries from this file to src/argp/ChangeLog. 

Niels Möller's avatar
Niels Möller committed
1391
1392
1393
1394
1395
1396
1397
2003-01-27  Niels Möller  <nisse@cuckoo.hack.org>

	* src/rsa_keygen.c, src/rsa.c: Updated for nettle rsa renaming.

	* configure.ac: Fixed syntax error when testing $x_includes and
	$x_libraries.

Niels Möller's avatar
Niels Möller committed
1398
1399
2003-01-24  Niels Möller  <nisse@cuckoo.hack.org>

1400
1401
1402
	* configure.ac: --with-lib-path should add to LDFLAGS, not replace
	it. 

Niels Möller's avatar
Niels Möller committed
1403
1404
1405
1406
	* misc/xenofarm.sh (dotask cfg): Pass --with-include-path and
	--with-lib-path to configure. On some systems /usr/local/lib and
	/usr/local/include are not searched by default.

Niels Möller's avatar
Niels Möller committed
1407
1408
1409
1410
1411
1412
2003-01-22  Niels Möller  <nisse@cuckoo.hack.org>

	* src/spki.c (spki_add_acl): Use spki_acl_process.
	(spki_authorize): Adapted to changed spki_acl_by_subject_first and
	spki_acl_by_subject_next. 

Niels Möller's avatar
Niels Möller committed
1413
1414
1415
1416
1417
2003-01-21  Niels Möller  <niels@s3.kth.se>

	* misc/xenofarm.sh: Don't run make distcheck, as it leaves some
	write-protected directories in the tree. 

Niels Möller's avatar
Niels Möller committed
1418
1419
2003-01-20  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
1420
1421
1422
	* misc/xenofarm.sh: Dont cd into src before running make check and
	make distcheck.

Niels Möller's avatar
Niels Möller committed
1423
1424
	* src/testsuite/functions.sh (need_tcputils): Use test_skip.

Niels Möller's avatar
Niels Möller committed
1425
1426
	* misc/xenofarm.sh (timeecho): Fixed typo.

Niels Möller's avatar
Niels Möller committed
1427
1428
1429
1430
1431
1432
1433
1434
2003-01-19  Niels Möller  <nisse@cuckoo.hack.org>

	* misc/xenofarm.sh (timeecho): Set LC_ALL=C before calling date.

	* src/testsuite/functions.sh (need_tcputils): New function. Use it
	in the testcases that depend on tcputils: tcpip-local-test,
	tcpip-remote-test, lshg-tcpip-test and ssh1-fallback-test.

Niels Möller's avatar
Niels Möller committed
1435
1436
1437
1438
1439
1440
2003-01-17  Niels Möller  <niels@s3.kth.se>

	* src/Makefile.am.in: Added explicit dependencies for objects
	depending on environ.h. Must figure out some better way to do
	that. 

Niels Möller's avatar
Niels Möller committed
1441
1442
2003-01-16  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
1443
	* src/Makefile.am.in (EXTRA_DIST): Added environ.h.in.
Niels Möller's avatar
Niels Möller committed
1444
1445
	(generated_sources): Don't list environ.h here, as it's system
	dependent. 
Niels Möller's avatar
Niels Möller committed
1446

Niels Möller's avatar
Niels Möller committed
1447
1448
	* misc/xenofarm.sh: Fixed invocation of dotask, which should take
	four arguments. 
Niels Möller's avatar
Niels Möller committed
1449
	(dotask): Don't create $task.pass, they're not used anymore.
Niels Möller's avatar
Niels Möller committed
1450

Niels Möller's avatar
Niels Möller committed
1451
1452
1453
1454
1455
2003-01-15  Niels Möller  <nisse@cuckoo.hack.org>

	* misc/xenofarm.sh: Updated to use new format for reporting the
	result. 

Niels Möller's avatar
Niels Möller committed
1456
1457
1458
1459
1460
1461
1462
2003-01-14  Niels Möller  <nisse@lysator.liu.se>

	* src/.dist_classes: sexp.h.x has disappeared.

	* misc/bootstrap.sh: Bootstrap spki subdir. Removed redundant
	automake calls. 

Niels Möller's avatar
Niels Möller committed
1463
1464
2003-01-14  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1465
1466
1467
	* misc/xenofarm.sh: New file.
	Added build instructions, following the lyskom-server example. 
	
Niels Möller's avatar
Niels Möller committed
1468
1469
1470
	* src/.dist_classes: hmac.c.x, md5.c.x and sha.c.x have
	disappeared. 

Niels Möller's avatar
Niels Möller committed
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
2003-01-14  Niels Möller  <nisse@lysator.liu.se>

	* configure.ac (AC_PATH_X): Check not only $no_x, also check if
	$x_includes and $x_libraries are empty before adding new flags.

	* src/scm/gaba.scm (nth): New function. The elisp/Common
	Lisp/MACLisp style function, which takes the index as the first
	argument. 
	(make-output): Updated call of nth.

	* src/scm/guile-compat.scm (nth): Deleted function. Needed for
	scsh, not just guile.

Niels Möller's avatar
Niels Möller committed
1484
1485
1486
1487
1488
2003-01-14  Niels Möller  <nisse@cuckoo.hack.org>

	* src/.dist_classes: sexp.c.x and spki.c.x have disappeared.
	* src/.dist_headers: dsa.h has disappeared.

Niels Möller's avatar
Niels Möller committed
1489
1490
1491
1492
1493
2003-01-13  Niels Möller  <nisse@cuckoo.hack.org>

	* src/.dist_headers, src/.dist_classes: Check into cvs, to make it
	easier for xenofarm to build a distribution directly from cvs.

Niels Möller's avatar
Niels Möller committed
1494
1495
2003-01-13  Niels Möller  <nisse@lysator.liu.se>

Niels Möller's avatar
Niels Möller committed
1496
1497
1498
	* src/scm/compiler.scm (let-and): Fixed syntax error in
	syntax-rules.  

Niels Möller's avatar
Niels Möller committed
1499
1500
	* misc/bootstrap.sh: Use plain automake -a, no extra arguments.

Niels Möller's avatar
Niels Möller committed
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
2003-01-12  Niels Möller  <nisse@cuckoo.hack.org>

	* src/unix_user.c: Use macros in environ.h, when defining
	environment veriables. 


	* src/lshd.c: Use PATH_KERBEROS_HELPER, defined in environ.h.

	* src/environ.h.in: Define a bunch of PATH_* and ENV_* constants. 

	* src/client.c: Include environ.h, and use those macros for all
	getenv calls.
	* src/client_pty.c: Likewise.
	* src/gateway.c: Likewise.
	* src/lsh-keygen.c: Likewise.
	* src/lsh-make-seed.c: Likewise.
	* src/lsh-writekey.c: Likewise.
	* src/lsh.c: Likewise.
	* src/server_session.c: Likewise.
	* src/server_x11.c: Likewise.
	* src/srp-gen.c: Likewise.
	* src/unix_random.c: Likewise.
	* src/xauth.c: Likewise.

	* src/Makefile.am.in (environ.h): Fixed commands.
	(generated_sources): Added environ.h.

	* doc/lsh.texinfo (Files and environment variables): Document
	POSIXLY_CORRECT. 

	* configure.ac: Don't try AC_DEFINE:ing PREFIX and SBINDIR. Those
	substitutions are now performed at make-time.

Niels Möller's avatar
Niels Möller committed
1534
1535
1536
1537
1538
1539
2003-01-10  Niels Möller  <nisse@cuckoo.hack.org>

	* src/lsh.c (read_known_hosts): Display upgrade message only if
	the --host-db option wasn't used.
	Changed user messages to say "host-acls" instead of "known_hosts". 

Niels Möller's avatar
Niels Möller committed
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
2003-01-10  Niels Möller  <niels@s3.kth.se>

	* src/lsh-upgrade: New shell script.

	* src/testsuite/testutils.c (test_spki_match): Rewrote to use the
	new spki functions. Always fail on parse errors.

	* src/testsuite/spki-tag-test.c (test_main): Include the leading
	"(tag ..." in the tested expressions.

	* src/testsuite/Makefile.am (LDADD): Added libspki.a.

	* src/spki.c (make_ssh_hostkey_tag): Include the outer "(tag ...)"
	expression.
	(spki_add_acl): New function.
	(spki_lookup): Fixed some compile time errors.
	(spki_authorize): Likewise.

	* src/lsh.c (read_known_hosts): Don't read known_hosts any more,
	just display a warning message saying that it needs conversion.
	(read_known_hosts): spki_add_acl now takes an spki_iterator.
	(do_lsh_lookup): The access expression includes the complete tag
	expression, not just the body of it.

	* src/lsh-pam-checkpw.c: Include config.h.

	* src/Makefile.am.in (LDADD): Add libspki.a.

Niels Möller's avatar
Niels Möller committed
1568
1569
2003-01-09  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1570
1571
1572
1573
1574
1575
	* src/lsh.c (read_known_hosts): Display a message if an old
	known_hosts file is used.

	* src/daemon.c (daemon_init): Fork once more, to lose process
	session leadership.

Niels Möller's avatar
Niels Möller committed
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
	* src/spki.c: Deleted old spki implementation.
	(spki_lookup, spki_authorize): New functions.
	(do_spki_acl_db_mark, do_spki_acl_db_free): New functions.

	* src/lsh.c (read_known_hosts): Read new known-hosts file as
	"~/.lsh/host-acls", and filter it through sexp-conv. Fall back to
	the old file name "~/.lsh/known_hosts" if the new file doesn't
	exist. 
	(do_lsh_lookup): Use the new spki_lookup function.
	(do_lsh_lookup): Use new spki_authorize function.
	(do_lsh_lookup): Disable spki fingerprinting for now.

	* src/io.c (lsh_popen): New argument for recording the child pid.
	(lsh_popen_read): New function.

	* doc/lsh.texinfo (Files and environment variables): Document
	SEXP_CONV. 

Niels Möller's avatar
Niels Möller committed
1594
1595
1596
1597
1598
2003-01-08  Niels Möller  <niels@s3.kth.se>

	* src/Makefile.am.in (environ.h): New rule for creating environ.h
	from environ.h.in.

Niels Möller's avatar
Niels Möller committed
1599
1600
1601
1602
1603
1604
2003-01-02  Niels Möller  <nisse@cuckoo.hack.org>

	* src/Makefile.am.in (SUBDIRS): Compile in spki subdir.

	* configure.ac: Configure subdir src/spki.

Niels Möller's avatar
Niels Möller committed
1605
1606
1607
1608
2003-01-02  Niels Möller  <niels@s3.kth.se>

	* src/io.c (lsh_popen): New function.

Pontus Freyhult's avatar
Pontus Freyhult committed
1609
1610
1611
1612
1613
1614
1615
1616
1617
2003-01-02  Pontus Sköld  <pont@soua.net>

	* configure.ac: Check for alarm.

	* src/lsh-pam-checkpw.c (main): Set an alarm to exit after TIMEOUT
	(currently 600) seconds.

	* src/lsh-krb-checkpw.c (main): Dito.

Niels Möller's avatar
Niels Möller committed
1618
1619
1620
1621
1622
2002-12-11  Niels Möller  <niels@s3.kth.se>

	* src/lsh-writekey.c (process_private): If no encryption, dup the
	input string.

Niels Möller's avatar
Niels Möller committed
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
2002-12-04  Niels Möller  <nisse@cuckoo.hack.org>

	* src/dsa.c (do_dsa_sign): Use %0s, not %z, when formatting
	s-expressions. 
	(do_dsa_public_spki_key): Likewise.
	* src/spki.c (spki_pkcs5_encrypt): Likewise.
	(make_ssh_hostkey_tag): Likewise.
	(spki_hash_data): Likewise.
	* src/rsa_keygen.c (rsa_generate_key): Likewise.
	* src/rsa.c (do_rsa_public_spki_key): Likewise.
	* src/lsh.c (do_lsh_lookup): Likewise.
	* src/dsa_keygen.c (dsa_generate_key): Likewise.

Niels Möller's avatar
Niels Möller committed
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
2002-11-16  Niels Möller  <nisse@cuckoo.hack.org>

	* src/testsuite/key-1.private, src/testsuite/key-2.private:
	Updated keys. 

	* src/testsuite/conv-1-test, src/testsuite/conv-2-test,
	src/testsuite/dsa-test.c, src/testsuite/export-1-test,
	src/testsuite/rsa-test.c: Updated key s-expressions to match new
	format. Positive numbers must start with an octed with the most
	significant bit zero.

	* src/srp_exchange.c (srp_hash_password): Use
	nettle_mpz_set_str_256_u. 
	(make_srp_entry): Check sign of verifier.

	* src/spki.c (spki_pkcs5_decrypt): Use sexp_iterator_get_uint32.

	* src/sexp.c (lsh_sexp_to_uint32): Deleted function (similar
	function added to nettle, sexp_iterator_get_uint32).

	* src/rsa.c (do_rsa_verify): Use nettle_mpz_set_str_256_u.

	* src/parse.c (parse_bignum): Use nettle_mpz_set_str_256_s.

	* src/format.c (ssh_vformat_length): Use nettle's bignum
	functions. 
	(ssh_vformat_write): Likewise.

	* src/dsa.c (do_dsa_verify): Use nettle_mpz_set_str_256_u.
	(dsa_blob_length): Use nettle_mpz_sizeinbase_256_u.
	(dsa_blob_write): Use nettle_mpz_get_str_256.

	* src/bignum.c (limbs_to_octets): Deleted function.
	(bignum_parse_s): Deleted function.
	(mpz_size_of_complement): Deleted function.
	(bignum_format_s_length): Deleted function.
	(bignum_format_s): Deleted function.
	(bignum_parse_u): Deleted function.
	(bignum_format_u_length): Deleted function.
	(bignum_write): Deleted function.
	(bignum_format_u): Deleted function.
	(bignum_random_size): Made static.
	(bignum_random_size): Use nettle_mpz_set_str_256_u.

	* src/Makefile.am.in (lshg_LDADD): lshg needs to be linked with
	nettle now, that the bignum functions used by ssh_format have
	moved there. It should be possible to get lshg to work without
	either nettle or gmp, currently it won't.

Niels Möller's avatar
Niels Möller committed
1685
1686
1687
1688
1689
2002-11-13  Niels Möller  <niels@s3.kth.se>

	* src/spki.c (do_spki_authorize): Need braces around
	FOR_OBJECT_QUEUE loop.

Niels Möller's avatar
Niels Möller committed
1690
1691
2002-11-11  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1692
1693
	* src/Makefile.am.in (noinst_PROGRAMS): Don't build prime_table.  

Niels Möller's avatar
Niels Möller committed
1694
1695
1696
	* src/digit_table.c: Deleted file.
	* src/prime_table.c: Deleted file.
	* src/sexp_parser.c: Deleted file.
Niels Möller's avatar
Niels Möller committed
1697
	* src/digits.c: Deleted file.
Niels Möller's avatar
Niels Möller committed
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
	
	* src/bignum.c (bignum_small_factor): Deleted function.
	(bignum_next_prime): Deleted function.
	(bignum_random_prime): Deleted function.

	* src/lsh-decode-key.c (main): Use nettle's functions for base64
	decoding. 

	* src/Makefile.am.in: Don't build digit_table.h.
	(liblsh_a_SOURCES): Removed digits.c.

Niels Möller's avatar
Niels Möller committed
1709
1710
2002-11-10  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1711
1712
1713
1714
1715
1716
	* src/lsh.c (do_lsh_default_handler): Deleted handling of obsolete
	exception types EXC_SEXP_SYNTAX and EXC_SPKI_TYPE.
	* src/lshd.c (do_exc_lshd_handler): Likewise.

	* src/srp_exchange.c (srp_make_verifier): Adapted to new sexp
	code.
Niels Möller's avatar
Niels Möller committed
1717
1718
	(make_srp_entry): Likewise.
	* src/srp-gen.c: Adapted to new sexp code.
Niels Möller's avatar
Niels Möller committed
1719
1720
1721
1722
	* src/server_keyexchange.c (do_server_srp_read_verifier):
	Adapted to new sexp code.
	* src/server_authorization.c (do_key_lookup): Adapted to new sexp
	code.
Niels Möller's avatar
Niels Möller committed
1723
	* src/server.c (read_host_key): Adapted to new sexp code.
Niels Möller's avatar
Niels Möller committed
1724
	* src/rsa_keygen.c (rsa_generate_key): Adapted to new sexp code.
Niels Möller's avatar
Niels Möller committed
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
	* src/lshd.c: Adapted to new sexp code.
	* src/lsh.c (read_known_hosts): Adapted to new sexp code.
	(read_user_keys): Likewise.
	(do_lsh_lookup): Likewise.
	* src/lsh-keygen.c: Adapted to new sexp code.
	* src/lsh-writekey.c: Likewise.
	* src/lsh-decode-key.c: Adapted to new sexp code.
	* src/testsuite/testutils.c (test_sign): Adapted to new sexp code.
	(test_spki_match): Likewise.

	* src/spki.h (spki_exception): Deleted class.

	* src/spki.c: Adapted to new sexp code.
	(make_spki_exception): Deleted function.
	(spki_make_public_key): Deleted function, the PUBLIC_SPKI_KEY
	method can be used directly.directly.
	(spki_hash_sexp): Deleted function.
	(subject_match_hash): #if:ed out function for now.
	(spki_subject_by_hash): Likewise.
	(do_spki_lookup): #if:ed out lookup by hash.
	(spki_algorithm_lookup): New function.
	(spki_get_type): Deleted, moved similar code to sexp.c.

	* src/exception.h (EXC_SEXP, EXC_SPKI): Deleted SEXP and
	SPKI-related exceptions.

	* src/sexp.c: Rewrote using nettle's sexp functions.
	* src/sexp.h: Matching rewrite of declarations.
	
	* src/rsa.c (encode_rsa_sig_val): Deleted function.
	(decode_rsa_sig_val): Deleted function.
	(spki_init_rsa_verifier): Deleted function.
	(make_rsa_verifier_internal): Deleted function.
	(do_rsa_verify): Adapted to new sexp code.
	(do_rsa_public_spki_key): Likewise.
	(do_rsa_sign): Likewise.
	(make_rsa_verifier): Use rsa_keypair_from_sexp_alist.
	(make_rsa_signer): Likewise.

	* src/publickey_crypto.h: Added dsa declarations (used to be in
	dsa.h). 

	* src/lsh.h: Removed forward declaration of sexp structs.

	* src/lsh-export-key.c (encode_base64): New function (was in
	sexp.c earlier).
	(sexp_to_ssh2_key): Adapted to new sexp code.

	* src/lsh-authorize: Use new sexp-conv program. Check exit status
	of sexp-conv.

	* src/dsa_keygen.c (dsa_generate_key): Adapted to new sexp code.

	* src/dsa.h: Deleted file.

	* src/dsa.c (make_dsa_verifier_internal): Deleted function.
	(encode_dsa_sig_val): Deleted function.
	(decode_dsa_sig_val): Deleted function.
	(do_dsa_verify): Adapted to new sexp code.
	(do_dsa_public_spki_key): Return a string, in canonical or
	transport syntax. 
	(make_dsa_verifier): Use nettle's dsa_keypair_from_sexp_alist.
	(make_dsa_signer): Likewise.

	* src/abstract_crypto.h (PUBLIC_SPKI_KEY): Changed method, now
	returns a string and takes an extra argument to say if it should
	use transport syntax.

	* src/Makefile.am.in (bin_PROGRAMS): Don't build sexp-conv.
	(sbin_PROGRAMS): Don't build lsh_proxy.

	* src/testsuite/lsh-6-test (LSHD_FLAGS): Bugfix, test_success was
	used improperly, making the testcase always succeed.

	* src/testsuite/keygen-1-test: Use $SEXP_CONV.
	* src/testsuite/keygen-2-test: Likewise.

	* src/testsuite/functions.sh (SEXP_CONV): Use nettle's sexp-conv
	program. 

	* src/testsuite/conv-1-test: Use $SEXP_CONV, with explicit line
	width. 
	* src/testsuite/conv-2-test: Use $SEXP_CONV.
	* src/testsuite/conv-3-test: Skip test for now, new sexp-conv
	doesn't support hex output.

	* src/testsuite/Makefile.am (check): Set LD_LIBRARY_PATH when
	running tests.

Niels Möller's avatar
Niels Möller committed
1814
1815
2002-11-07  Niels Möller  <niels@s3.kth.se>

Niels Möller's avatar
Niels Möller committed
1816
1817
1818
1819
	* configure.ac: Don't use quotes with AM_CONFIG_HEADER, it seems
	to confuse automake.
	Bugfix: Don't generate nettle/Makefile here.

Niels Möller's avatar
Niels Möller committed
1820
1821
	* src/testsuite/functions.sh: Tolerate unset failing.

1822
1823
2002-11-04  Pontus Sköld  <pont@soua.net>

1824
1825
	* src/testsuite/functions.sh: Unset LSHGFLAGS and LSHFLAGS.

1826
1827
1828
	* src/client.c (envp_parse): Certain versions of argp needs to be
	fed with ARGP_NO_ERRS for this to work.

1829
1830
1831
1832
1833
	* misc/Makefile.am.in: Removed obsolete reference to (and include
	of) ctags.mk.

	* doc/Makefile.am.in: Removed inclusion of ctags.mk.
	
Niels Möller's avatar
Niels Möller committed
1834
1835
2002-11-03  Niels Möller  <nisse@cuckoo.hack.org>

Niels Möller's avatar
Niels Möller committed
1836
1837
	* misc/Makefile.am.in: Don't include ctags.mk.

Niels Möller's avatar
Niels Möller committed
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
	* src/testsuite/testutils.c (test_sign): Use SIGN and VERIFY, not
	the obsolete methods SIGN_SPKI and VERIFY_SPKI.

	* src/testsuite/Makefile.am (AM_CFLAGS): Use AM_CFLAGS to disable
	optimization. Don't set CFLAGS explicitly.

	* misc/ctags.mk: Deleted file. Not needed anymore, since automake
	supports ctags it out of the box.
	* Makefile.am.in: Don't include ctags.mk.
	* src/Makefile.am.in: Likewise.

	* src/rsa_keygen.c (get_random): Deleted function. Replaced by ... 
	* src/randomness.c (lsh_random): New function.

	* src/rsa.c (do_rsa_verify): Recognize algorithm "spki".
	(do_rsa_sign): Likewise.
	(do_rsa_verify_spki): Deleted function.
	(do_rsa_sign_spki): Likewise.

	* src/dsa_keygen.c (dsa_generate_key): Rewrote to use nettle's
	dsa_generate_keypair function.

2002-11-02  Niels Möller  <nisse@cuckoo.hack.org>

	* src/dsa.c (dsa_hash): Deleted function.
	(generic_dsa_verify): Rewrote to use nettle's dsa_verify.
	(do_dsa_verify_spki, do_dsa_sign_spki): Deleted method.
	(generic_dsa_sign): Rewrote to use nettle's dsa_sign.
	(dsa_blob_length): Use struct dsa_signature for the argument.
	(dsa_blob_write): Likewise.
	(encode_dsa_sig_val): Likewise.
	(decode_dsa_sig_val): Likewise.
	(make_dsa_signer): Use dsa_private_key_init.
	(class dsa_verifier): Use nettle's struct dsa_public_key.
	(class dsa_signer): Use nettle's struct dsa_private_key.
	(do_dsa_verify): Recognize algorithm "spki".
	(do_dsa_sign): Likewise.

	* src/bignum.c (bignum_write): Use const.

	* src/atoms.in: New atom "spki", for generic spki operations.

	* src/abstract_crypto.h (SIGN_SPKI, VERIFY_SPKI): Deleted methods
	used only by the testsuite.

1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
2002-11-01  Pontus Sköld  <pont@soua.net>

	* src/testsuite/Makefile.am (TS_SH): New test lsh-9-test.

	* src/testsuite/lsh-9-test: Test for LSHFLAGS.
	
	* src/client.h (client_options): New attribute, inhibit_actions.
	Declaration of envp_parse.

	* src/client.c (envp_parse): New function envp_parse.
	(client_argp_parser): Honour inhibit_actions.
	(init_client_options): Initialize inhibit_actions.

	* src/lshg.c (main_argp_parser): Honour inhibit_actions.
	(main): Use envp_parse.

	* src/lsh.c (main_argp_parser): Honour inhibit_actions.
	(main): Use envp_parse.

1902
1903
2002-10-23  Pontus Sköld  <pont@soua.net>

Pontus Freyhult's avatar
Pontus Freyhult committed
1904
1905
1906
	* src/client_x11.c (parse_display): Handle special case
	DISPLAY=unix:x.y for local delivery.

1907
1908
1909
1910
1911
1912
1913
	* src/client.c (do_detach_cb): New function replacing
	do_detach_cb_first and do_detach_cb_second.
	(do_detach_cb_first): Deleted.
	(do_detach_cb_second): Deleted.
	(make_detach_callback): Use new function stead of
	do_detach_cb_first.

1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
2002-10-22  Pontus Sköld  <pont@soua.net>

	* src/client.c: Include io.h.
	(detach_callback): New class to handle detachment and
	synchronization with fds.
	(detach_resource): New class used for synchonization with channel
	disappearance.
	(do_detach_res_kill): Kill method for detach_resource.
	(make_detach_resource): New function.
	(do_detach_cb_second): New function that does the actual
	detaching.
	(do_detach_cb_first): Callback for synchronization with fds.
	(make_detach_callback): New function.
	(init_client_options): Set options->detach_end to 0 (detachment
	disabled by default).
	(client_options): Help message for detach and no-detach.
	(make_client_session): If options->detach_end, make a callback for
	stdout and set a resource on the channel to synchronize. Also
	reset options->detach_end to 0 (so it only affects one action).
	(client_argp_parser): Handle detach and no-detach.

	* src/client.h: New variable in client_options: detach_end.

1937
1938
1939
1940
1941
1942
1943
2002-10-03  Niels Möller  <nisse@cuckoo.hack.org>

	* configure.ac: Use AC_SEARCH_LIBS instead of AC_CHECK_LIB when
	looking for libnsl, so we don't pick it up unless it really is
	needed. 

2002-10-02  Pontus Sköld  <Pontus.Skold@dis.uu.se>
1944
1945
1946
1947
1948
1949
1950

	* src/lshd.c: Include <sys/resource.h> if it exists.
	(main): setrlimit to raise max number of open files
	if available.

	* configure.ac: Check for <sys/resource.h> and setrlimit.
	
1951
2002-10-02  Pontus Sköld  <Pontus.Skold@dis.uu.se>
1952
1953
1954
1955

	* configure.ac: Don't AC_PATH_PROG for bash, m4 and groff if
	given. Made them precious.

1956
2002-10-01  Niels Möller  <niels@s3.kth.se>
Niels Möller's avatar
Niels Möller committed
1957
1958
1959
1960

	* src/testsuite/run-tests (test_program): Use basename (fix copied
	from src/nettle/examples/).

1961
2002-09-12  Niels Möller  <nisse@cuckoo.hack.org>
Niels Möller's avatar
Niels Möller committed
1962

Niels Möller's avatar
Niels Möller committed
1963
1964
	* Released lsh-1.5.0.

Niels Möller's avatar
Niels Möller committed
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
	* misc/make-dist: Deleted obsolete make check-more call.

	* src/keyexchange.c (kex_make_encrypt, kex_make_decrypt): Changed
	interface so that we can both support the "none" cipher, and
	return failure for weak keys.
	(install_keys): Updated to the new kex_make_encrypt and
	kex_make_decrypt interface.

	* configure.ac: Deleted the ipv6 test that tried to create an ipv6
	socket. 

1976
2002-09-03  Pontus Sköld  <pont@soua.net>
Pontus Freyhult's avatar
Pontus Freyhult committed
1977

1978
1979
1980
	* src/server_x11.c (XAUTH_PROGRAM): Use predefined value if
	available and built in default if not.

Pontus Freyhult's avatar
Pontus Freyhult committed
1981
1982
	* configure.ac: Search for xauth.

1983
2002-09-02  Pontus Sköld  <pont@soua.net>
Pontus Freyhult's avatar
Pontus Freyhult committed
1984
1985
1986
1987

	* src/testsuite/lsh-8-test: New test. Check whatever unencrypted
	sessions work.

1988
2002-08-30  Pontus Sköld  <pont@soua.net>
1989
1990
1991
1992

	* src/testsuite/functions.sh: Defaults need to be quoted if they
	contain spaces.

1993
2002-08-29  Niels Möller  <nisse@cuckoo.hack.org>
Niels Möller's avatar
Niels Möller committed
1994

Niels Möller's avatar
Niels Möller committed
1995
1996
	* src/testsuite/x11-1-test: Renamed, was lshd-x11-1-test.

Niels Möller's avatar
Niels Möller committed
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
	* src/testsuite/functions.sh (test_fail, test_result): Call exit.
	(test_skip): New function.
	(check_x11_support): New function.

	* src/testsuite/Makefile.am (distclean-local): Delete files and
	directories created by the test cases.
	(EXTRA_DIST): Distribute key-2.private and fake-sshd1.

	* src/lsh.c (main_options, main_argp_parser): Handle X11 options
	only if WITH_X11_FORWARD is defined.

2008
2002-08-28  Niels Möller  <nisse@cuckoo.hack.org>
Niels Möller's avatar
Niels Möller committed
2009
2010
2011
2012
2013
2014

	* doc/lsh.texinfo (Top): Use @ififo around the @top directive, to
	get rid of the empty menu item inthe html output.

	* configure.ac: Bumped version to 1.5.

2015
2002-08-28  Niels Möller  <niels@s3.kth.se>
Niels Möller's avatar
Niels Möller committed
2016

Niels Möller's avatar
Niels Möller committed
2017
2018
2019
2020
	* doc/index.html: New file.

	* src/lsh-authorize: Use the construction ": ${var:=default}".

Niels Möller's avatar
Niels Möller committed
2021
2022
2023
2024
2025
	* src/testsuite/functions.sh: New variables TEST_HOME and
	SEXP_CONV. Changed the initialization of LSH_YARROW_SEED_FILE. Use
	TEST_HOME when running lsh and lshd. Should make the tests
	independent of our own ~/.lsh. Also updated comments in
	test-scripts that said they were dependent on ~/.lsh.
Niels Möller's avatar
Niels Möller committed
2026
	Use the construction ": ${var:=default}".
Niels Möller's avatar
Niels Möller committed
2027
2028
2029
2030
2031
2032
2033
2034
2035

	* src/testsuite/setup-env: New script to set up a HOME-directory
	for the tests.

	* src/testsuite/lshd-x11-1-test: New test.

	* src/lsh-authorize: Set SEXP_CONV to "sexp-conv", unless that
	variable is already defined by the caller.

Niels Möller's avatar
Niels Möller committed
2036
2037
	* src/server_x11.c (SUN_LEN): #define SUN_LEN if needed.

2038
2002-08-27  Niels Möller  <nisse@cuckoo.hack.org>
Niels Möller's avatar
Niels Möller committed
2039
2040
2041
2042

	* src/server_x11.c (new_x11_channel): We don't have any ip-address
	of the client, so send <"unix-domain", 0> as the peer address.

2043
2002-08-27  Niels Möller  <niels@s3.kth.se>
Niels Möller's avatar
Niels Möller committed
2044

Niels Möller's avatar
Niels Möller committed
2045
2046
2047
	* src/server_pty.c (pty_open_slave): Removed call to setsid(),
	moved to...
	* src/unix_user.c (do_spawn): Call setsid(). Was previously done by
Niels Möller's avatar
Niels Möller committed
2048
	the pty code, and only in the pty case. Fixed also in 1.4 branch.
Niels Möller's avatar
Niels Möller committed
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067

	* src/server_session.c (init_spawn_info): Save the SSH_CLIENT
	value in the session struct, so that it can be gc:ed properly.

	* src/charset.c (low_utf8_to_local): Use lsh_string_trunc.
	* src/digits.c (decode_base64): Likewise.
	* src/io.c (do_consuming_read): Likewise.
	* src/read_base64.c (do_read_base64): Likewise.
	* src/read_file.c (do_read_file): Likewise.
	* src/string_buffer.c (string_buffer_final_write): Likewise.
	(string_buffer_final): Likewise.
	* src/channel.c (channel_data_handler): Likewise.
	(channel_extended_data_handler): Likewise.
	* src/tty.c (tty_encode_term_mode): Likewise.

	* src/abstract_crypto.c (crypt_string): Check that input is a
	multiple of the block size.
	(crypt_string_unpad): Use lsh_string_trunc.

Niels Möller's avatar
Niels Möller committed
2068
2069
2070
	* src/format.c (lsh_string_trunc): New function, needed to get
	proper NUL-termination when strings are truncated.

Niels Möller's avatar
Niels Möller committed
2071
2072
2073
	* src/server_x11.c (do_xauth_exit): Fixed format strings for error
	messages. 

2074
2002-08-27  Niels Möller  <nisse@cuckoo.hack.org>
Niels Möller's avatar
Niels Möller committed
2075
2076
2077
2078

	* src/server_x11.c (server_x11_setup): Bugfix, really call
	server_x11_listen.

2079
2002-08-26  Niels Möller  <nisse@cuckoo.hack.org>
Niels Möller's avatar
Niels Möller committed
2080

Niels Möller's avatar
Niels Möller committed
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
	* src/server_x11.c (OPEN_FORWARDED_X11): Added forward
	declaration. 
	(server_x11_callback): Renamed (was server_x11_forward), and
	enabled.
	(server_x11_socket): New attribute display_number.
	(open_x11_socket): Pass an exception handler to io_bind_sockaddr.
	Start listening on the socket. Record the display_number.
	(server_x11_setup): Added argument single (and fail if it is
	non-zero). Updated caller in server_session.c. Call
	server_x11_setup. Ues the real display number when formatting the
	DISPLAY string.

	* src/channel_forward.c (catch_channel_open): Moved here...
	* src/tcpforward_commands.c: ...from here.

Niels Möller's avatar
Niels Möller committed
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
	* src/tcpforward_commands.c (tcpip_connect_io_command): Renamed,
	was tcpip_connect_io.
	(do_tcpip_start_io): Deleted, replaced by channel_forward_start_io.

	* src/tcpforward.c: No need to include string.h and errno.h.
	* src/tty.c: Likewise.

	* src/server_userauth.c: No need to include string.h.

	* src/randomness.c: No need to include errno.h.
	* src/read_packet.c: Likewise.

	* src/io_commands.h (make_listen_local, make_connect_local):
	Deleted prototypes.

	* src/werror.c (werror_vformat): Added %e specifier. Updated all
	errno printing functions to use it.
	(werror_format): New function.
	(fatal): Compile time flag to display pid and hang, instead of
	aborting. Useful for debugging.

2117
2002-08-25  Niels Möller  <nisse@cuckoo.hack.org>
Niels Möller's avatar
Niels Möller committed
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142

	* src/server_x11.c (new_x11_channel): New function.
	(open_forwarded_x11): New command.

	* src/lsh.c (main_argp_parser): Updated call of
	make_gateway_setup. 

	* src/io_commands.c (bind_local_command): New command.
	(do_listen_local): Deleted function.
	(make_listen_local): Deleted function.
	(do_connect_local): Deleted old #if:ed out function.
	(make_connect_local): Deleted old #if:ed out function.

	* src/gateway_commands.c (make_gateway_setup): Take a local_info
	as argument. Use the new bind_local command.

	* src/lsh.h: Added forward declarations for structs in command.h.
	Removed the inclusion of command.h from other header files.

	* src/channel_forward.c (start_io_command): New command, to
	replace tcpip_start_io.

	* src/lsh_proxy.c (lsh_proxy_listen): Replaced listen_callback
	with new bind and listen commands.

2143
2002-08-24  Niels Möller  <nisse@cuckoo.hack.org>
Niels Möller's avatar
Niels Möller committed
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169

	* src/io_commands.c (do_listen): Deleted function.
	(listen_with_callback): Deleted command.

	* src/lshd.c (make_lshd_listen): Replaced listen_callback with new
	bind and listen commands.

	* src/io_commands.c (listen_command): New command, to replace
	listen_with_callback. 
	(bind_address_command): New command.

	* src/io.c (make_listen_callback): Use a command, not a
	continuation, to represent the callback. Updated callers.

	* src/io_commands.c (do_listen): Use io_bind_sockaddr.
	(do_listen_local): Use io_bind_local.

	* src/io.c (io_bind_sockaddr): New function.
	(io_listen_fd): Take a struct lsh_fd * as argument, instead of an
	int. 
	(io_listen): Use io_bind_sockaddr.
	(io_listen, io_listen_fd): Deleted function io_listen. Renamed
	io_listen_fd to io_listen. 
	(io_bind_local): New function replacing io_listen_local. Updated
	callers.