interface change to support infinite packet length