... | ... |
@@ -129,7 +129,7 @@ static int nc_connect(int s, struct CP_ENTRY *cpe) { |
129 | 129 |
close(s); |
130 | 130 |
return -1; |
131 | 131 |
} |
132 |
- if(getsockopt(s, SOL_SOCKET, SO_ERROR, &s_err, &s_len) || s_err) { |
|
132 |
+ if(getsockopt(s, SOL_SOCKET, SO_ERROR, &s_err, (socklen_t *)&s_len) || s_err) { |
|
133 | 133 |
logg("*Failed to establish a connection to clamd\n"); |
134 | 134 |
close(s); |
135 | 135 |
return -1; |
... | ... |
@@ -427,7 +427,7 @@ int scanstream(int odesc, unsigned long int *scanned, const struct cl_engine *en |
427 | 427 |
if((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) |
428 | 428 |
continue; |
429 | 429 |
|
430 |
- if(bind(sockfd, (struct sockaddr *) &server, sizeof(struct sockaddr_in)) == -1) |
|
430 |
+ if(bind(sockfd, (struct sockaddr *) &server, (socklen_t)sizeof(struct sockaddr_in)) == -1) |
|
431 | 431 |
closesocket(sockfd); |
432 | 432 |
else { |
433 | 433 |
bound = 1; |
... | ... |
@@ -444,7 +444,11 @@ int scanstream(int odesc, unsigned long int *scanned, const struct cl_engine *en |
444 | 444 |
mdprintf(odesc, "Can't find any free port. ERROR%c", term); |
445 | 445 |
return -1; |
446 | 446 |
} else { |
447 |
- listen(sockfd, 1); |
|
447 |
+ if (listen(sockfd, 1) == -1) { |
|
448 |
+ logg("!ScanStream: listen() error on socket. Error returned is %s.\n", strerror(errno)); |
|
449 |
+ closesocket(sockfd); |
|
450 |
+ return -1; |
|
451 |
+ } |
|
448 | 452 |
if(mdprintf(odesc, "PORT %u%c", port, term) <= 0) { |
449 | 453 |
logg("!ScanStream: error transmitting port.\n"); |
450 | 454 |
closesocket(sockfd); |
... | ... |
@@ -462,7 +466,7 @@ int scanstream(int odesc, unsigned long int *scanned, const struct cl_engine *en |
462 | 462 |
} |
463 | 463 |
|
464 | 464 |
addrlen = sizeof(peer); |
465 |
- if((acceptd = accept(sockfd, (struct sockaddr *) &peer, &addrlen)) == -1) { |
|
465 |
+ if((acceptd = accept(sockfd, (struct sockaddr *) &peer, (socklen_t *)&addrlen)) == -1) { |
|
466 | 466 |
closesocket(sockfd); |
467 | 467 |
mdprintf(odesc, "accept() ERROR%c", term); |
468 | 468 |
logg("!ScanStream %u: accept() failed.\n", port); |
... | ... |
@@ -68,7 +68,7 @@ int tcpserver(const struct optstruct *opts) |
68 | 68 |
logg("!TCP: setsocktopt(SO_REUSEADDR) error: %s\n", strerror(errno)); |
69 | 69 |
} |
70 | 70 |
|
71 |
- if(bind(sockfd, (struct sockaddr *) &server, sizeof(struct sockaddr_in)) == -1) { |
|
71 |
+ if(bind(sockfd, (struct sockaddr *) &server, (socklen_t)sizeof(struct sockaddr_in)) == -1) { |
|
72 | 72 |
estr = strerror(errno); |
73 | 73 |
logg("!TCP: bind() error: %s\n", estr); |
74 | 74 |
closesocket(sockfd); |
... | ... |
@@ -113,7 +113,7 @@ static int isremote(const struct optstruct *opts) { |
113 | 113 |
mainsa = NULL; |
114 | 114 |
return 0; |
115 | 115 |
} |
116 |
- ret = (bind(s, (struct sockaddr *)&testsock, sizeof(testsock)) != 0); |
|
116 |
+ ret = (bind(s, (struct sockaddr *)&testsock, (socklen_t)sizeof(testsock)) != 0); |
|
117 | 117 |
closesocket(s); |
118 | 118 |
return ret; |
119 | 119 |
} |
... | ... |
@@ -561,7 +561,7 @@ static int make_connection_real(const char *soname, conn_t *conn) |
561 | 561 |
server.sin_port = htons(port); |
562 | 562 |
server.sin_addr.s_addr = ((struct in_addr*)(hp->h_addr))->s_addr; |
563 | 563 |
print_con_info(conn, "Connecting to: %s:%u\n", inet_ntoa(server.sin_addr), port); |
564 |
- if (connect(s, (struct sockaddr *)&server, sizeof(server))) { |
|
564 |
+ if (connect(s, (struct sockaddr *)&server, (socklen_t)sizeof(server))) { |
|
565 | 565 |
perror("connect"); |
566 | 566 |
close(s); |
567 | 567 |
return -1; |
... | ... |
@@ -171,7 +171,7 @@ getclientsock (const char *localip, int prot) |
171 | 171 |
{ |
172 | 172 |
char ipaddr[46]; |
173 | 173 |
|
174 |
- if (bind (socketfd, res->ai_addr, res->ai_addrlen) != 0) |
|
174 |
+ if (bind (socketfd, res->ai_addr, (socklen_t)res->ai_addrlen) != 0) |
|
175 | 175 |
{ |
176 | 176 |
logg ("!Could not bind to local ip address '%s': %s\n", |
177 | 177 |
localip, strerror (errno)); |
... | ... |
@@ -214,7 +214,7 @@ getclientsock (const char *localip, int prot) |
214 | 214 |
client.sin_addr = *(struct in_addr *) he->h_addr_list[0]; |
215 | 215 |
if (bind |
216 | 216 |
(socketfd, (struct sockaddr *) &client, |
217 |
- sizeof (struct sockaddr_in)) != 0) |
|
217 |
+ (socklen_t)sizeof (struct sockaddr_in)) != 0) |
|
218 | 218 |
{ |
219 | 219 |
logg ("!Could not bind to local ip address '%s': %s\n", |
220 | 220 |
localip, strerror (errno)); |
... | ... |
@@ -2095,7 +2095,7 @@ updatedb (const char *dbname, const char *hostname, char *ip, int *signo, |
2095 | 2095 |
return FCE_FAILEDUPDATE; |
2096 | 2096 |
} |
2097 | 2097 |
|
2098 |
- if (pt = cli_strtok (dnsreply, field, ":")) |
|
2098 |
+ if ((pt = cli_strtok (dnsreply, field, ":"))) |
|
2099 | 2099 |
{ |
2100 | 2100 |
if (!cli_isnumber (pt)) |
2101 | 2101 |
{ |
... | ... |
@@ -68,7 +68,7 @@ static void conn_setup_mayfail(int may) |
68 | 68 |
return; |
69 | 69 |
fail_unless_fmt(sockd != -1, "Unable to create socket: %s\n", strerror(errno)); |
70 | 70 |
|
71 |
- rc = connect(sockd, (struct sockaddr *)&nixsock, sizeof(nixsock)); |
|
71 |
+ rc = connect(sockd, (struct sockaddr *)&nixsock, (socklen_t)sizeof(nixsock)); |
|
72 | 72 |
fail_unless_fmt(rc != -1, "Unable to connect(): %s\n", strerror(errno)); |
73 | 73 |
|
74 | 74 |
signal(SIGPIPE, SIG_IGN); |
... | ... |
@@ -91,7 +91,7 @@ static int conn_tcp(int port) |
91 | 91 |
server.sin_port = htons(port); |
92 | 92 |
server.sin_addr.s_addr = inet_addr("127.0.0.1"); |
93 | 93 |
|
94 |
- rc = connect(sd, (struct sockaddr *)&server, sizeof(server)); |
|
94 |
+ rc = connect(sd, (struct sockaddr *)&server, (socklen_t)sizeof(server)); |
|
95 | 95 |
fail_unless_fmt(rc != -1, "Unable to connect(): %s\n", strerror(errno)); |
96 | 96 |
return sd; |
97 | 97 |
} |