[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: login an console



Rainer Bendig aka Ny <lists@unresolvedissue.org> writes:

> Heike C. Zimmerer wrote on Feb 21, 2005 at 10:33AM +0100:
>> es ist toupper("root"), wenn es diese Funktion in C gäbe.  Die Ausgabe
>> von "ID > FILE", auf einer "normalen" Konsole betrachtet, sollte
>> ausreichen.
> Gut. Ich habe Systembenutzer anglegt mit gross/klein schreibung (via
> --force-badname).
> zum Beispiel "RoOt" ein anderer kann sich in meinen faellen nicht am
> System anmelden und via su - zum root werden.
>
> getty nimmt nun aber immer "root" und nicht "RoOt" an und leitet ihn
> an login weiter...

Genau so ist es.  Beim Input wird tolower() gemacht und beim Output
toupper().  Das gilt global für alle Eingaben; getty setzt nur dieses
Verhalten.  Auf die zugehörigen Optionen bei stty habe ich verwiesen
(samt einem Tippfehler dort).

Vielleicht wird es so deutlicher:

> ROOT != root

         roOt  =>
Input:   ROOT  => root
         RooT  =>
(Wandlung bei der Eingabe; beim Programm kommt immer "root" an.  Als
Echo kommen beim Anwender Großbuchstaben (Ausgabewandlung, auch
getrennt schaltbar).)


         roOt  =>
Output:  ROOT  => ROOT
         root  =>
(Wandlung bei der Ausgabe; beim Anwender kommt immer "ROOT" an)


> ROOT != vermurkstes_getty(root)

getty sowieso nicht.  In seiner Man-Page steht sicher drin, dass der
Username an login übergeben wird.  Und das erhält dann nur
Kleinbuchstaben.  Daraus ergibt sich das von dir beobachtete Verhalten.

Gruß,

 Heike



Reply to: