/*
 * Por: Oscar Medina Duarte
 * www.medina-web.com
 */

#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>


int send_2u(char hostnm[1024], int puerto, char data[4096]) {
	int sock;
	struct sockaddr_in server;
	struct hostent *hp, *gethostbyname();
	
	sock=socket(PF_INET, SOCK_STREAM, 0);
	if (sock < 0) {
		close(sock);
		return(1);
	}
	server.sin_family = AF_INET;
	hp = gethostbyname(hostnm);
	if (hp == 0) {
		fprintf(stderr, "Desconosco : %s\n", hostnm);
		close(sock);
		return(2);
	}
	memcpy ((char *)&server.sin_addr, (char *)hp->h_addr, hp->h_length);
	server.sin_port = htons(puerto);
	
	if (connect(sock, (struct sockaddr *)&server, sizeof server) <0) {
		close(sock);
		return(3);
	}
	if (write(sock, data, strlen(data)+1) < 0){
		return(sock);
	}
		close(sock);
	return(0);
}

main(){
int misocket, c;
	misocket= send_2u("fuego",6666,"hola");
	while(read(misocket,c, sizeof(int))>-1){
		printf("%c",c);
	}

}


