linux-l: crypt() problem

tho at thomsen.isdn.cs.tu-berlin.de tho at thomsen.isdn.cs.tu-berlin.de
So Apr 25 23:35:48 CEST 1999


In message <19990425180018.B31741 at lnx01.tfh-berlin.de>, JSC writes:
> hallo,
> 
> das folgende problem entsteht auf ein und demselben rechner.
> 
> ich erzeuge mir ein passwort aus 3 zeichen: key
> und einem definierten salt: rt
> 
> perl -e 'print crypt($ARGV[0],$ARGV[1]),"\n"' key rt
> => rtsIDodDuGqhM
 Das ist auch, was ich von einem aufruf von crypt() (debian 2.1/slink)
erhalte. crypt() sollte auch auf verschiedenen *nixen das gleiche er-
gebnis liefern.

> 
> das ergebnis trage ich in eine radiusd config und in
> /etc/passwd ein.
> 
> der radiusd kann mit diesem passwort arbeiten:
> code:
> #define __USE_XOPEN 
> #include        <unistd.h>
> ...strcmp(a,crypt(real,a))...
> 
> dasselbe passwort via /etc/passwd auf redhat 3.0.4
um es kurz zu machen: eine Erklaerung habe ich nicht, aber redhat 3 hat
ja schon fast historische Wert. Womoeglich mit einem Kernel < 2.0 und
libc4 ?
folgendes prograemmchen, sollte klaeren, ob die libc oder perl auf dem
Rechner kaputt sind:
--8<--
/* user interface for stdlib call 'crypt'
 * usage: crypt Key salt
 * see:  man 3 crypt */

#include <stdio.h>
#include <unistd.h>

int main(int argc, char **argv) {
  if(argc!=3) {
    fprintf(stderr, "Usage: %s key(up to 8char) salt(2char)\n", argv[0]);
    exit(1);
  }
  printf("%s", crypt(argv[1], argv[2]));
  exit(0);
}  
-->8--


[..]
> 
> warum, und wo ist mein denkfehler ?????????????????????
 probier bitte obiges aus (cut'n'paste), bevor wir unser Hirnwindungen
verrenken.

> 
> phaenomen 2: auf demselben rechner tritt dieses problem 
> mit einem 8 zeichen langen passwort nicht auf.
bug?

Guenther

PS: juengere RedHats setzen schwer auf die PAM, auch schon RH3? Vielleicht
gibt`s da ein Problem?



Mehr Informationen über die Mailingliste linux-l