eko2:(genera.c):13/05/2001 << Back To eko2


/* coded by polos */ #include <stdio.h> FILE *iplist; char buffer[200]; main(int argc,char *argv[]) { if(argc<2) { ayuda(); } if(argc<3) { printf("Falta selecciona la clase: -a , -b o -c "); exit(1); } if(argc<4) { printf("Falta seleccionar un archivo de salida\n"); exit(1); } if(strlen(argv[3])>20) { printf("Elija un nombre de archivo mas corto\n"); exit(1); } if(strlen(argv[2])>4) { printf("No es una opcion disponible\n"); exit(1); } if(strlen(argv[1])>16) { printf("Verifique la ip ingresada\n"); exit(1); } iplist=fopen(argv[3],"w"); if(strstr(argv[2],"-c")) { sprintf(buffer,"%s",argv[1]); checkea(buffer,2); generador(argv[1],1); } else if (strstr(argv[2],"-b")) { sprintf(buffer,"%s",argv[1]); checkea(buffer,1); generador(argv[1],2); } else if (strstr(argv[2],"-a")) { sprintf(buffer,"%s",argv[1]); checkea(buffer,0); generador(argv[1],0); } } generador(char getip[100],int a) { int i; printf("Generando ip..... Espere\n"); if(a==1) { for(i=0;i<255;i++) { sprintf(buffer,"%s.%d",getip,i); fprintf(iplist,"%s\n",buffer); } } if(a==2) { int e=0; while(e<255) { for(i=0;i<255;i++) { sprintf(buffer,"%s.%d.%d",getip,e,i); fprintf(iplist,"%s\n",buffer); } e++; } } if(a==0) { int e=0; int s=0; while(s!=255) { for(e=0;e<255;e++) { for(i=0;i<255;i++) { sprintf(buffer,"%s.%d.%d.%d",getip,s,e,i); fprintf(iplist,"%s\n",buffer); } } s++; } } fclose(iplist); } ayuda() { printf("IP Generator ........ C0ded by polos\n"); printf("Clase A: ./genera 200 -a output-file\n "); printf("Clase B: ./genera 200.10 -b output-file\n"); printf("Clase C: ./genera 200.10.23 -c output-file\n"); exit(1); } checkea(char *buffe,int test) { int e=0; int a=0; for(a=0;a<(strlen(buffer));a++) { if(buffer[a]=='.') { e++; } } if(test == e) { return 1; } else { printf("La ip dada no corresponde con la clase seleccionada\n"); exit(1); } }