Server sends an Abort Message instead of Service Fault Message in case of ResponseTooLarge error
Description
Server sends an Abort Message instead of Service Fault Message in case of BadResponseTooLarge error detected in the services layer.
Analysis
Regarding the specification part 4, the Bad_ResponseTooLarge error should be returned as a ServiceFault and not an Abort Message: Part 4 (1.03) §5.3:
The Server should return a Bad_ResponseTooLarge fault if a serialized response message exceeds the message size specified by the Client.
Part 4 (1.03) Table 172:
The response message size exceeds limits set by the client.
It might be possible to send a Bad_ResponseTooLarge in an Abort message at chunk manager level if error occurs in the Secure Channel layers according to part 6. But this case does not occurs with current implementation and moreover it is not possible to send it as a status code at TCPUA level according to part 6 table 38.
Implementation
From the service layer no abort message shall be sent since the client returns status code to the application without sending message and the server shall send a ServiceFault in case of encoding issue. In case of failure to encode a ServiceFault an Error Message should be requested to be sent which will lead to close the connection instead of an Abort message.