BYTE GetPacketID ( Packet * p ) { if ( p == 0 ) return 255 ; if ( ( unsigned char ) p - > data [ 0 ] == ID_TIMESTAMP ) { assert ( p - > length > sizeof ( unsigned char ) + sizeof ( unsigned long ) ) ; return ( unsigned char ) p - > data [ sizeof ( unsigned char ) + sizeof ( unsigned long ) ] ; } else { return ( unsigned char ) p - > data [ 0 ] ; } }