/******************************************************************************** $Id: crypt.c,v 1.1 2003/10/27 00:00:00 Artis Exp $ to compile: gcc -Wall -o crypt crypt.c -lcrypt to use: crypt ********************************************************************************/ #include #include #include #include #include void usage(char *); int main (int argc, char *argv[]) { char salt[24]; int i, r, r1, r2; if (argc != 2) usage(argv[0]); srand(time(0)); for(i=0; i <= 1; i++) { r = rand(); r = r & 127; if (r < 46) r += 46; if (r > 57 && r < 65) r += 7; if (r > 90 && r < 97) r += 6; if (r > 122) r -= 5; if (i == 0) r1 = r; if (i == 1) r2 = r; } sprintf(salt, "%c%c", r1, r2); printf("%s\n", crypt(argv[1], salt)); exit(EX_OK); } void usage(char *progname) { fprintf(stderr, "usage: '%s '\n", progname); exit(EX_USAGE); }