Socket::Listen() called twice in unexpected request

Listen() should only be called once for a socket. It gets called a second time when `shouldDisconnect` is true, throwing an exception. Since there is no catch-clause, it crashes the server.

This makes it trivially easy to crash the server for unauthenticated users, even
by accident.