Mostly there. Final note: On Sun, Apr 10, 2016 at 01:47:32PM +0100, Alex Bligh wrote: > diff --git a/doc/proto.md b/doc/proto.md > index f117394..5005552 100644 > --- a/doc/proto.md > +++ b/doc/proto.md > @@ -195,6 +195,13 @@ request before sending the next one of the same type. > The server MAY > send replies in the order that the requests were received, but is not > required to. > > +There is no requirement for the client or server to complete a negotiation > +if it does not wish to do so. If the client does not find an export it > +is looking for (for instance) it may simply close the TCP connection. > +Under certain circumstances either the client or the server may be required > +by this document to close the TCP connection. In each case, this is > +referred to as 'terminate the session'. > + > ### Transmission
NAK. If we have disconnect messages (NBD_OPT_ABORT and NBD_CMD_DISC), it makes sense to say that clients should use them. Protocol violations by peers are a different matter; but in the general case you should drop a connection properly, i.e., by using the relevant "close the connection" command. (I realize I didn't comment on this earlier, but I changed my mind during the discussion about DISC). -- < ron> I mean, the main *practical* problem with C++, is there's like a dozen people in the world who think they really understand all of its rules, and pretty much all of them are just lying to themselves too. -- #debian-devel, OFTC, 2016-02-12