i now want my software to be robust to server deconnexion/reset so i simulate it by shuting down the server equipment (which is an external hardware equipement)

i would expect such operation to interrupt any pending async_read_some operation with an error code, but it doesn't

is there some way to have the expected behaviour ?
 
If your server closes the socket gracefully, then your client's completion handler gets called with some error code (end of file or something like that).