--- embedaddon/istgt/src/istgt_sock.c 2012/10/09 09:13:23 1.1.1.2 +++ embedaddon/istgt/src/istgt_sock.c 2013/07/21 23:49:22 1.1.1.3 @@ -41,6 +41,7 @@ #include #include "istgt.h" +#include "istgt_log.h" #include "istgt_sock.h" #include "istgt_misc.h" @@ -70,11 +71,13 @@ istgt_getaddr(int sock, char *saddr, int slen, char *c salen = sizeof sa; rc = getsockname(sock, (struct sockaddr *) &sa, &salen); if (rc != 0) { + ISTGT_ERRLOG("getsockname() failed (errno=%d)\n", errno); return -1; } rc = getnameinfo((struct sockaddr *) &sa, salen, saddr, slen, NULL, 0, NI_NUMERICHOST); if (rc != 0) { + ISTGT_ERRLOG("getnameinfo() failed (errno=%d)\n", errno); return -1; } @@ -82,11 +85,13 @@ istgt_getaddr(int sock, char *saddr, int slen, char *c salen = sizeof sa; rc = getpeername(sock, (struct sockaddr *) &sa, &salen); if (rc != 0) { + ISTGT_ERRLOG("getpeername() failed (errno=%d)\n", errno); return -1; } rc = getnameinfo((struct sockaddr *) &sa, salen, caddr, clen, NULL, 0, NI_NUMERICHOST); if (rc != 0) { + ISTGT_ERRLOG("getnameinfo() failed (errno=%d)\n", errno); return -1; } @@ -131,6 +136,7 @@ istgt_listen(const char *ip, int port) hints.ai_flags |= AI_NUMERICHOST; rc = getaddrinfo(ip, portnum, &hints, &res0); if (rc != 0) { + ISTGT_ERRLOG("getaddrinfo() failed (errno=%d)\n", errno); return -1; } @@ -219,6 +225,7 @@ istgt_connect(const char *host, int port) hints.ai_flags = AI_NUMERICSERV; rc = getaddrinfo(host, portnum, &hints, &res0); if (rc != 0) { + ISTGT_ERRLOG("getaddrinfo() failed (errno=%d)\n", errno); return -1; } @@ -285,6 +292,19 @@ istgt_set_sendtimeout(int s, int msec) tv.tv_sec = msec / 1000; tv.tv_usec = (msec % 1000) * 1000; rc = setsockopt(s, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof tv); + if (rc != 0) + return -1; + return 0; +} + +int +istgt_set_recvlowat(int s, int nbytes) +{ + int val; + int rc; + + val = nbytes; + rc = setsockopt(s, SOL_SOCKET, SO_RCVLOWAT, &val, sizeof val); if (rc != 0) return -1; return 0;