don't assumes protocol errors are HTTP