continue;
}
- item->ihost = (*(struct in_addr *)host->h_addr).s_addr;
+ item->ihost = (*(struct in_addr *)host->h_addr_list[0]).s_addr;
for(j=0;j<loaded_lines;j++) {
if(new_permits[j].ihost == item->ihost) {
nterface_log(nrl, NL_WARNING, "Host with items %d and %d is identical, dropping item %d.", j + 1, i + 1, i + 1);
if(bind(fd, (struct sockaddr *) &sin, sizeof(sin))) {
nterface_log(nrl, NL_ERROR, "Unable to bind listen socket (%d).", errno);
+ close(fd);
return -1;
}
if(ioctl(fd, FIONBIO, &opt)) {
nterface_log(nrl, NL_ERROR, "Unable to set listen socket non-blocking.");
+ close(fd);
return -1;
}
if(ioctl(newfd, FIONBIO, &opt)) {
nterface_log(nrl, NL_ERROR, "Unable to set accepted socket non-blocking.");
+ close(newfd);
return;
}
if(*p == ',')
break;
- if(!*p || !(p + 1))
+ if(!*p || !*(p + 1))
return RE_BAD_LINE;
*p = '\0';
if(argcount) {
parsebuf = (char *)ntmalloc(strlen(pp) + 1);
MemCheckR(parsebuf, RE_MEM_ERROR);
- newp = parsebuf;
for(newp=args[0]=parsebuf,pp++;*pp;pp++) {
if((*pp == '\\') && *(pp + 1)) {