#include <stdio.h> #include <sys/types.h> #include <unistd.h> #include <sys/time.h> #include <string.h> #include <errno.h> #include <stdlib.h> char chars[]="!\"#$%&'()*+,-./0123456789:;<=>?@" "[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; char charsa[]="abcdefghijklmnopqrstuvwxyz"; char charsA[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ"; char charsn[]="0123456789"; char charss[]="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~"; char *spw; main(int argc, char **argv, char **envp) { spw=calloc(64,1); pw1(spw, atoi(argv[1])); } int pw1(char *pw, int l) { int j; pw[0]=0x00; printf("%s\n",spw); for(j=0; j<sizeof(chars)-1; j++) { pw[0]=chars[j]; if (l==1) { printf("%s\n",spw); } else pw1(pw+1,l-1); } }