summaryrefslogtreecommitdiff
path: root/usr.bin
diff options
context:
space:
mode:
authorMarkus Friedl <markus@cvs.openbsd.org>1999-10-25 21:05:21 +0000
committerMarkus Friedl <markus@cvs.openbsd.org>1999-10-25 21:05:21 +0000
commitfaae27ede013adc82cda9ed80626a89f3d9ef6fb (patch)
tree8cf54b4380351ffb43af02b7f81689397040c2e2 /usr.bin
parent5fdcd0566c12309fddf4fb53c0fd5da4ac35803a (diff)
document nchan.c (proto1.5)
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/ssh/OVERVIEW8
-rw-r--r--usr.bin/ssh/nchan.ms25
2 files changed, 29 insertions, 4 deletions
diff --git a/usr.bin/ssh/OVERVIEW b/usr.bin/ssh/OVERVIEW
index 7da8caf9912..7a8219223e7 100644
--- a/usr.bin/ssh/OVERVIEW
+++ b/usr.bin/ssh/OVERVIEW
@@ -3,6 +3,7 @@ code. This tries to give an overview of the structure of the code.
Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>
Updated 17 Nov 1995.
+Updated 19 Oct 1999 for OpenSSH-1.2
The software consists of ssh (client), sshd (server), scp, sdist, and
the auxiliary programs ssh-keygen, ssh-agent, ssh-add, and
@@ -70,11 +71,11 @@ these programs.
channels inside the secure channel, and uses this framework to
implement X11 forwarding, TCP/IP forwarding, and authentication
agent forwarding.
+ The new, Protocol 1.5, channel close implementation is in nchan.c
Authentication agent
- - Code to communicate with the authentication agent is in
- authfd.c. The files gen-minfd.c, minfd.h, minfd.c
+ - Code to communicate with the authentication agent is in authfd.c.
Authentication methods
@@ -83,8 +84,7 @@ these programs.
code is linked into the server. The routines also manipulate
known hosts files using code in hostfile.c. Code in canohost.c
is used to retrieve the canonical host name of the remote host.
- Code in match.c is used to match host names. Code for osf C2
- extended security is in osfc2.c.
+ Code in match.c is used to match host names.
- In the client end, authentication code is in sshconnect.c. It
reads Passwords/passphrases using code in readpass.c. It reads
diff --git a/usr.bin/ssh/nchan.ms b/usr.bin/ssh/nchan.ms
index 642e07eefe6..b01512f780d 100644
--- a/usr.bin/ssh/nchan.ms
+++ b/usr.bin/ssh/nchan.ms
@@ -44,3 +44,28 @@ box invis "rcvd IEOF/" "-" with .w at last arrow.c
ellipse wid .9*ellipsewid ht .9*ellipseht at S4
arrow "start" "" from S1.w+(-0.5,0) to S1.w
.PE
+.SH
+Notes
+.PP
+The input buffer is filled with data from the socket
+(the socket represents the local comsumer/producer of the
+forwarded channel).
+The data is then sent over the INPUT-end of the channel to the
+remote peer.
+Data sent by the peer is received on the OUTPUT-end,
+saved in the output buffer and written to the socket.
+.PP
+If the local protocol instance has forwarded all data on the
+INPUT-end of the channel, it sends an IEOF message to the peer.
+If the peer receives the IEOF and has comsumed all
+data he replies with an OCLOSE.
+When the local instance receives the OCLOSE
+he considers the INPUT-half of the channel closed.
+The peer has his OUTOUT-half closed.
+.PP
+A channel can be deallocated by a protocol instance
+if both the INPUT- and the OUTOUT-half on his
+side of the channel are closed.
+Note that when an instance is unable to comsume the
+received data, he is permitted to send an OCLOSE
+before the matching IEOF is received.