gethostbyname() immer NULL
-
Hallo,
Hab da ein kleines Problem und zwar liefert "gethostbyname() immer NULL zurück, warum?
char site[256]; ... fgets(site, sizeof(site), stdin); ... if(socket_create() == 1) { fprintf(stdout, "socket(); failed!\n"); return -1; } if(socket_connect(site, port, sockfd) == 1) { fprintf(stdout, "gethostbyname(); failed!\n"); return -1; } ... int socket_connect(char *server, int port, int sockfd) { struct sockaddr_in addr; struct hostent *host; if((host = gethostbyname(server)) == NULL) { return 1; } (int*)server = inet_ntoa(*((struct in_addr *)host->h_addr)); addr.sin_addr.s_addr = inet_addr(host); addr.sin_port = htons(port); addr.sin_family = AF_INET; if(connect(sockfd, (struct sockaddr*)&addr, sizeof(addr)) == -1) { return 2; } return 0; }
-
schau dir doch mal die genause Fehlermeldung an (siehe errno man: gethostbyname(3))
btw. solltest du mal was zur const-correctnes lesen
-
Bekomme: "Unknown host" mit herror.
-
ach ich dussel, hab vergessen das \n am ende des string zu entfernen...