I don't think this is going to work with async io (i.e., it won't detect if the server doesn't support it)