sendmsg and recvmsg don't modify the state and shoud always go through the engine