int offset = 0;
int ret;
for(;;) {
- ret = write(fd, &response[offset], strlen(response));
+ ret = write(fd, &response[offset], len - offset);
if(ret < 0) {
if(errno != EINTR)
return ret;
break;
}
- lst = lst->next;
+ if(lst)
+ lst = lst->next;
}
if(cmd_q && !cmd_q->sent)