hacking around and dealing with empty packets and over-sized packets