'Read per-channel data.
This requires the side-band-64k capability.
:param proto: Protocol object to read from
:param channel_callbacks: Dictionary mapping channels to packet
handlers to use. None for a callback discards channel data.'

def _read_side_band64k_data(self, proto, channel_callbacks):

    for pkt in proto.read_pkt_seq():
        channel = ord(pkt[:1])
        pkt = pkt[1:]
        try:
            cb = channel_callbacks[channel]
        except KeyError:
            raise AssertionError(('Invalid    sideband    channel    %d' % channel))
        else:
            if (cb is not None):
                cb(pkt)
