rcvlen doesn't need to be global