Agreed, an older version of my server implementation allocated numbers with at least 24 significant bits by default and it worked perfectly. Limiting the disconnect to just a signed byte just makes no sense as long as it uses the full int everywhere else.