Adjust ACK handling to truncate too long packets.
Adjust ACK handling to truncate too long packets.

It appears (at least) a Dell PowerConnect 6248 will send ACK packets that are
29 bytes long.  The first 4 match the correct format (2b opcode, 2b block),
and it appears the rest of the message is padding with null bytes (at least
via some cursory debugging).

By default, tftpy will barf when this happens complaining it can't unpack 29
bytes with a format of "!HH".

This change will ignore anything not "in spec" for an ACK packet by truncating
the message ro 4 bytes before continuing.

This causes tftpy to work fine for my PC6248 switch.

guillon/tftpy,guillon/tftpy,msoulier/tftpy,guillon/tftpy