def read_short(self, unpacker=Struct('>H').unpack_from,
                   size=Struct('>H').size):
        """
        Read an unsigned 16-bit integer

        Will raise BufferUnderflow if there's not enough bytes in the buffer.
        Will raise struct.error if the data is malformed
        """
        self._check_underflow(size)
        rval = unpacker(self._input, self._pos)[0]
        self._pos += size
        return rval
Read an unsigned 16-bit integer

        Will raise BufferUnderflow if there's not enough bytes in the buffer.
        Will raise struct.error if the data is malformed