18.104.22.168.13 Connection Close, Connection Error, and Protocol Error Encountered
Connection close and connection error encountered MUST be handled identically by implementations of this protocol. This section discusses connection close only. Implementations of this protocol MUST handle connection errors that it encounters in the same way. A connection close can come from either the inbound or outbound proxy. Processing is equivalent in both cases. This section discusses connection close from the inbound proxy, but all parts of the specification in this section apply equally to connection close received from the outbound proxy. If a connection close comes from the inbound proxy, the server implementation MUST find the virtual connection to which the IN channel belongs, and unless the IN channel is in state opened and the connection close comes from a predecessor inbound proxy, the server implementation MUST take the following actions:
Free any data structures associated with it.
Close all the channels that belong to this virtual connection.
Transition to the finished state.
If the connection close comes in state opened and the connection close comes from a predecessor inbound proxy, the server implementation MUST ignore this event.
Protocol error MUST be handled by the server implementation by closing all channels to the inbound proxy and the outbound proxy for the virtual connection on which the error was encountered, free all data structures associated with the virtual connection, and transition to the finished state.