#include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <sys/types.h> #define TIMEOUT 60 #define FILTERED 61 int main(int argc, char **argv) { int cSock; struct sockaddr_in sSock; int port; char ip[50]; int result; if(argc > 3) { printf("## SakiiR Port Scanner ##\n"); printf("## http://sakiir.fr ##\n"); printf("## Usage : %s ip port ##\n",argv[0]); exit(0); } strncpy(ip, argv[1] , 49); port = atoi(argv[2]); cSock = socket(PF_INET, SOCK_STREAM, 0); memset((char *) &sSock, 0, sizeof(struct sockaddr_in)); sSock.sin_family = AF_INET; sSock.sin_port = htons(port); inet_aton(ip, &(sSock.sin_addr)); result = connect(cSock,(struct sockaddr *) &sSock, sizeof(struct sockaddr_in)); switch(result) { case 0: printf("[^] Port %d is Openned\n", port); break; case TIMEOUT: printf("[^] Timeout on port : %d\n", port); break; case FILTERED: printf("[^] Not listenning or filtred port : %d\n", port); break; default: printf("[^] Unknow error on port : %d\n", port); break; } }
sakiir