<<<<<<<<<<<<<<<<<<<< scanp.c >>>>>>>>>>>>>>>>>>>>
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <sys/types.h>
#define MAX 30
int main(int argc, char *argv[]) {
if (argc!=4 || atoi(argv[argc-2])>=atoi(argv[argc-1])) {
printf("[!] Usage: %s hostip lowport highport\r\n",argv[0]);
exit(1);
}
printf("HI, im %s and im going to scan-port %s from %s to %s. Lets go!\r\n",argv[argc-4],argv[argc-3],argv[argc-2],argv[argc-1]);
int i=0,sock=0,aplist[MAX],cont=0;
struct sockaddr_in sckadr;
sckadr.sin_family = AF_INET;
sckadr.sin_addr = inet_addr(argv[argc-3]);
for (i=atoi(argv[argc-2]); i<=atoi(argv[argc-1]); i++) {
sckadr.sin_port = htons(i);
printf("%i,",i);
if ((sock=socket(AF_INET,SOCK_STREAM,0)) == -1) {
printf("[!] ERROR: Failure at socket().");
exit(1);
}
else if (connect(sock,(struct sockaddr_in *)&sckadr,sizeof(sckadr)) == -1) {
closesocket(sock);
continue;
}
printf("[*] Port %i ACTIVE!",i);
aplist[cont++] = i;
closesocket(sock);
}
printf("List of active ports:\r\n");
for (i=0; i<cont; i++) {
printf("%i,",aplist[i]);
}
printf("EOF\r\n");
return 0;
}
<<<<<<<<<<<<<<<<<<<< scanp.c >>>>>>>>>>>>>>>>>>>>
<<<<<<<<<<<<<<<<<<<< compile >>>>>>>>>>>>>>>>>>>>
$ gcc -o scanp scanp.c
<<<<<<<<<<<<<<<<<<<< compile >>>>>>>>>>>>>>>>>>>>
<<<<<<<<<<<<<<<<<<<< THE ERROR >>>>>>>>>>>>>>>>>>>>
scanp.c: In function 'main':
scanp.c:26: error: storage size of 'sckadr' isn't known
<<<<<<<<<<<<<<<<<<<< THE ERROR >>>>>>>>>>>>>>>>>>>>
<<<<<<<<<<<<<<<<<<<< THE ERROR v0a (removing struct) >>>>>>>>>>>>>>>>>>>>
scanp.c: In function 'main':
scanp.c:26: error: 'sockaddr_in' undeclared (first use in this function)
scanp.c:26: error: (Each undeclared identifier is reported only once
scanp.c:26: error: for each function it appears in.)
scanp.c:26: error: expected ';' before 'sckadr'
scanp.c:28: error: 'sckadr' undeclared (first use in this function)
<<<<<<<<<<<<<<<<<<<< THE ERROR v0a (removing struct) >>>>>>>>>>>>>>>>>>>>