DataLength is actually the entire packet's size. Adjusted the code to reflect this.