close_socket and Bad pwds AND hanging sockets

From: root (
Date: 08/06/95

        Well, here is my latest problem...
        I have done what Jeremy suggested with bpl8's socket_close function to
fix the fail-the-passwd-attempt-to-throw-off-players bug (by copying
close_socket, renaming it close_badpwd, removing the offending code at the end,
and setting up a CON_BADPWD state.)  Now I get another bug...
        I repeat the attack (I login in, pwd, in CON_PLAYING state), then login
in again and fail the passwd attempt.  Instead of closing the connection, the
connection is still ESTABLISHED (as per netstat), and the first bit of input I
give the hung socket throws me off.  Now the REAL bug.  If I just sit on the
hung socket, and when my legit player goes to quit, BAMN.  Instant socket
closure for both sessions.  The "legit" session does not get the 0-5 menu as
normal, just the cold "Connection closed by foreign host" thing.
        Now, is the code at the end of close_socket hiding a subtle bug, or did
I introduce one in my close_badpwd code (which is an *EXACT* copy of           eclose_socket, execept for the code after the comment at the end)?  This one bug
has REALLY got me stumped....

Mark Crichton

(Wow....just got an idea for the eq. globbing problem.  Got to check if it will
work now....)

This archive was generated by hypermail 2b30 : 12/18/00 PST