DemuxConn.__init__: you can't assume the *last* 6 bytes are BUPMUX.
DemuxConn.__init__: you can't assume the *last* 6 bytes are BUPMUX.

The actual muxed data might arrive immediately after it, and since we're not
buffering that, we have to read one byte at a time.

(Buffering would be more efficient if we expected this to happen frequently,
but it shouldn't.)

Signed-off-by: Avery Pennarun <e03ccfb89d416c4697ad6970ce86a92c1c28a78e@gmail.com>

jbaber/bup,pombredanne/bup,gevaerts/bup,pombredanne/bup,tjanez/bup,tjanez/bup,apenwarr/bup,ToxicFrog/bup,mhoeher/bup,tjanez/bup,pombredanne/bup,pombredanne/bup,jbaber/bup,gevaerts/bup,gevaerts/bup,mhoeher/bup,jbaber/bup,apenwarr/bup,gevaerts/bup,ToxicFrog/bup,jbaber/bup,apenwarr/bup,mhoeher/bup,tjanez/bup,pombredanne/bup,mhoeher/bup,ToxicFrog/bup,ToxicFrog/bup,mhoeher/bup,apenwarr/bup,gevaerts/bup,ToxicFrog/bup,tjanez/bup,jbaber/bup,mhoeher/bup,jbaber/bup,tjanez/bup,pombredanne/bup