From owner-freebsd-hackers Tue Feb 7 09:59:59 1995 Return-Path: hackers-owner Received: (from root@localhost) by freefall.cdrom.com (8.6.9/8.6.6) id JAA00646 for hackers-outgoing; Tue, 7 Feb 1995 09:59:59 -0800 Received: from irz301.inf.tu-dresden.de (irz301.inf.tu-dresden.de [141.76.1.11]) by freefall.cdrom.com (8.6.9/8.6.6) with SMTP id JAA00629 for ; Tue, 7 Feb 1995 09:59:34 -0800 Received: from sax.sax.de by irz301.inf.tu-dresden.de with SMTP (5.67b+/DEC-Ultrix/4.3) id AA14739; Tue, 7 Feb 1995 17:06:37 +0100 Received: by sax.sax.de (8.6.9/8.6.9-s1) with UUCP id RAA03194 for freebsd-hackers@freefall.cdrom.com; Tue, 7 Feb 1995 17:06:36 +0100 Received: by bonnie.tcd-dresden.de (8.6.8/8.6.6) id QAA23634; Tue, 7 Feb 1995 16:58:58 +0100 From: j@uriah.sax.de (J Wunsch) Message-Id: <199502071558.QAA23634@bonnie.tcd-dresden.de> Subject: Re: user id's To: dgy@seagull.rtd.com (Don Yuniskis) Date: Tue, 7 Feb 1995 16:58:58 +0100 (MET) Cc: freebsd-hackers@freefall.cdrom.com In-Reply-To: <199501310235.TAA21841@seagull.rtd.com> from "Don Yuniskis" at Jan 30, 95 07:35:00 pm X-Phone: +49-351-8141 137 Reply-To: joerg_wunsch@uriah.sax.de X-Mailer: ELM [version 2.4 PL23] Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 1687 Sender: hackers-owner@FreeBSD.org Precedence: bulk As Don Yuniskis wrote: | | Re: FBSD 1.1.5.1R (but I suspect *all* *BSD's) | I (unfortunately) mix upper and lower case in user id's. | I've noticed that a few id's which consist solely of uppercase | characters are prompted for a password (even tho' a password is | not required for the user) ONLY ON THE FIRST ATTEMPT. A subsequent | attempt (after "illegal password") will accept the uppercase login. | I imagine this is due to the support for "single-case" only | terminals (in which the uppercase chars are converted to lowercase | and, since no such user exists, the "Password:" prompt is issued). Yes, it is. It's one of the biggest bogosities of 4.4BSD that the whole kernel has been moved towards termios, but getty still remained using sgtty-style. The above behaviour is intention, look around line 338 in /usr/src/libexec/getty/main.c. If the incoming name has been found to be all upper-case, it's converted to all lower-case unless the LC option is set in gettytab (meaning the terminal is *known* to support lower-case). The sgtty flag LCASE is set, but since the kernel operates at termios level which doesn't know about such old braindeadness, this flag is dropped from the terminal setting quickly. Any subsequent user login works since only the first query is done by getty, then control is being passed to the login program. The whole mess should be rewritten... (should you volunteer, i'm glad to commit your stuff, Don :--) -- cheers, J"org work: --- no longer --- private: joerg_wunsch@uriah.sax.de Never trust an operating system you don't have sources for. ;-)