diff --git a/ChangeLog b/ChangeLog index e9271d058a737cd0c78d4313de870cee274d11b9..46f0ae5603df945d3771fe95bc86803972a70d8d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,86 @@ +2000-11-15 Niels M�ller <nisse@cuckoo.localdomain> + + * src/unix_user.c (make_process_resource): Use resource_init(). + + * src/server_session.c (make_pty): assert that the pty is alive. + (do_alloc_pty): Likewise. + + * src/server_pty.c (do_kill_pty_info): Check that fd:s are >= + before closing them. + (make_pty_info): Use resource_init(). Bugfix: Don't initialize + alive to 0; that would cause the pty to be dropped from resource + lists where it is inserted. Instead, set the fd:s to -1 to + indicate that no pty has been allocated yet. + (pty_allocate): Set fd:s to -1 if they are closed. + + * src/resource.c (do_resource_kill): New function. + (resource_init): New function. + (empty_resource_list): Use resource_init(). + + * src/reaper.c (reaper_callback): New class. + (do_reaper_callback): Moved the waitpid() logic into a callback, + that is used as an lsh signal handler. + (reaper_install_handler): New function. + (make_reaper): Install lsh signal handler (by calling + reaper_install_handler). + (reaper_run): Obsoleted, #if:ed out. + + * src/lshg.c: New file (actually introduced already in 1.1.1). + + * src/lsh.h: Forward declare struct io_backend. + + * src/lsh_proxy.c (main): Use make_io_backend(). Pass backend to + make_reaper(). Use io_run rather than reaper_run. + * src/lshd.c (make_lshd_options): Likewise. + + * src/lsh-decode-key.c (main): Use make_io_backend(). + * src/lsh.c (main): Likewise. + * src/lsh-writekey.c (main): Likewise. + * src/lsh-export-key.c (main): Likewise. + * src/sexp-conv.c (main): Likewise. + * src/srp-gen.c (main): Likewise. + + * src/io.h (close_callback): Deleted old close_callback code. + Moved classes io_backend and callout to io.c. + + * src/io.c (lsh_signal_handler): New class. + (lsh_callout): Renamed the callout class, and made it inherit + resource. + (io_iter): Call signal handlers. + (make_io_backend): New function. + (init_backend): Deleted function. + (io_signal_handler): New function. + (io_callout): New function. + (init_file): Use resource_init(). + + * src/interact.h (window_change_callback): New class. + (abstract_interact): Replaced the window_change method with to + methods, window_size and window_change_subscribe. + + * src/interact.c: Moved unix_interact class to unix_interact.c. + + * src/gateway_commands.c (do_gateway_accept): Use + connection_command. + + * src/connection_commands.h (connection_command): New class, for + simple connection related commands. + Moved a lot of code to handshake.h. + + * src/connection_commands.c: Moved a lot of code to handshake.c. + + * src/connection.c (connection_close_handler): Moved from + connection_commands.c + (make_connection_close_handler): Likewise. + + * src/Makefile.am.in (liblsh_a_SOURCES): Added handshake.c. + (lshg_LDADD): Don't link lshg with symmetric/libsymmetric.a. + + * src/handshake.c: New file, with ssh handshake logic extracted + from connection_commands.c. This way, it is possible to link lshg + without dragging in the keyexchange and crypto code. + + * configure.in: Bumped version to 1.1.2. + 2000-11-14 Niels M�ller <nisse@cuckoo.localdomain> * src/testsuite/macros.m4(TS_TEST_VERIFY): Use make_bad_random(). diff --git a/src/.cvsignore b/src/.cvsignore index 3a56de1e91f2586392c6d04d70a284774da9a1cb..a7ae8b21484cf49ea4d04efa6b9fd8922054e2cc 100644 --- a/src/.cvsignore +++ b/src/.cvsignore @@ -27,6 +27,7 @@ lsh-krb-checkpw lsh-writekey lsh_proxy lshd +lshg packet_types.h pkcs5-test prime_table diff --git a/src/.gitignore b/src/.gitignore index 1eaec2bbee9c4e55999de49c7fd9d4072a6029c5..d9052e009f988b41e72f23344d05d2bc045ca788 100644 --- a/src/.gitignore +++ b/src/.gitignore @@ -27,6 +27,7 @@ /lsh-writekey /lsh_proxy /lshd +/lshg /packet_types.h /pkcs5-test /prime_table