BROUGHT TO YOU BY
http://www.linuxsocket.org/
soooo many people have asked or had problems with BASIC Socket Programming, might as well post a template source code right?
Slightly modified because I am working on a scanner but here is some code that opens up FTP and stuff...Code:#include <stdio.h> #include <string.h> #include <errno.h> #include <sys/socket.h> #include <resolv.h> #define PORT_HTTP 81 #define PORT_TIME 13 #define PORT_FTP 21 #define SERVER_ADDR "127.0.0.1" #define MAXBUF 1024 int main(int argc, char* argv[]) { int acc; int sockfd; struct sockaddr_in dest; char buffer[MAXBUF]; /* Open socket for streaming */ if( (sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0) { perror("Socket"); exit(errno); } /* Init Server Address/port struct */ bzero(&dest,sizeof(dest)); dest.sin_family = AF_INET; if(argv[1] == NULL) dest.sin_port = htons(PORT_FTP); else { scanf("%d",&acc); dest.sin_port = htons(acc); } if ( inet_aton(SERVER_ADDR, &dest.sin_addr.s_addr) == 0) { perror(SERVER_ADDR); exit(errno); } if( connect(sockfd, (struct sockaddr*)&dest,sizeof(dest)) != 0) { perror("Connect "); exit(errno); } bzero(buffer,MAXBUF); recv(sockfd,buffer,sizeof(buffer),0); printf("%s",buffer); close(sockfd); return 0; }
When I finish the scanner, I will post that too.



LinkBack URL
About LinkBacks


