I am implementing tcp conections using boost asio. I don't see in the documentation anything that says which error code could result from the various asynchronous calls. Obviously, I would have to identify all connection related error codes and set the state of my process such that a reconnect was the way to handle it. In some cases a retry might be needed. However, I don't see a way to get a list of the possible error codes that need to get checked for aside from hours and hours of debugging trial and error. Does there exist somewhere a list of error codes that could result from async_read? which would I get from async_write?, async_accept? etc..etc. I see it is a sytem::error_code, and I can look at the header, I can even find a doc that lists all of them and see asio has a group, but I can't tell which might occur when.