Perhaps this will help: Have a dozen lockfiles per interface (console, IP address, whatever), or per user, or per interface+user pair.
Each attempt must take a lock on just one of the available files. Each success immediately releases a lock. Each failure waits 5 seconds AS A BACKGROUND PROCESS before releasing a lock. Locking a file must be privileged of course, to reduce local denial-of-service annoyances. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]