A client sends a message to a server computer system over a network. Upon receiving
the message either from the client or from a local process, the server passes the
message down through a software stack to a lower layer module that is capable of
detecting errors in the message. That lower layer module then detects an error
and inserts error information that represents the error into an error reporting
data structure. The lower layer also inserts potential text remedy information
on how to correct the error. The module that detected the error then returns and
passes the error reporting data structure back up through the software stack. The
server then sends the response to the message along with the text field that includes
the text error information back to the client computing system or other local requesting process.