#include #include #include #include #include #include #include #include #include #include #define IP "200.189.113.148" #define PORT "5222" int main(void) { struct sockaddr_in socketaddr; int socketfd, nHostPort; int err, i, unit; char buff[4096]; char * _xml = (char)NULL, * xml_connect = {""}; _xml = (char *)malloc(sizeof(xml_connect)); if ( (nHostPort = strtol(PORT, 0, 10)) == 0 ) { printf("\n\n\n"); printf("\ncould not make a socket\n"); return 0; } socketfd = socket(AF_INET, SOCK_STREAM, 0); socketaddr.sin_family = AF_INET; //socketaddr.sin_addr.s_addr = INADDR_ANY;//inet_addr(IP); //socketaddr.sin_addr.s_addr = inet_addr("10.15.20.42"); inet_aton(IP, &socketaddr.sin_addr); socketaddr.sin_port = htons(nHostPort); err = connect(socketfd, (struct sockaddr*)&socketaddr, sizeof(socketaddr)); if ( err < 0 ) { printf("Socket returned error #%d,program terminated\n", err); exit(0); } struct hostent *hp; hp = gethostbyaddr((char *)&socketaddr.sin_addr.s_addr, sizeof socketaddr.sin_addr.s_addr, AF_INET); printf("\n\n%s\n\n", inet_ntoa(socketaddr.sin_addr)); printf("\n\n%d\n\n", inet_network("expresso.pr.gov.br")); //printf("\n\n%d\n\n", socketaddr.sin_addr.s_addr); //printf("\n\n%s\n\n", gethostbyaddr((char *)&socketaddr.sin_addr.s_addr, sizeof socketaddr.sin_addr.s_addr, AF_INET)); sprintf(_xml, xml_connect, IP); write(socketfd, _xml, strlen(_xml)); read (socketfd, buff, sizeof(buff)); printf("%s\n\n", buff); //sleep(10); exit(0); }