Rev 3 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3 | Rev 4 | ||
|---|---|---|---|
| Line 303... | Line 303... | ||
| 303 | p.fd = thread->fd; |
303 | p.fd = thread->fd; |
| 304 | p.events = POLLIN; |
304 | p.events = POLLIN; |
| 305 | p.revents= 0; |
305 | p.revents= 0; |
| 306 | poll(&p,1,0); |
306 | poll(&p,1,0); |
| 307 | // poll any input stuff and discard |
307 | // poll any input stuff and discard |
| 308 | if(p.revents & (POLLHUP||POLLERR)) { |
308 | if(p.revents & (POLLHUP|POLLERR)) { |
| - | 309 | syslog(LOG_INFO,"HUP/Error shutdown %s\n",thread->threadname); |
|
| 309 | close(thread->fd); |
310 | close(thread->fd); |
| 310 | thread->fd = -1; |
311 | thread->fd = -1; |
| 311 | pthread_mutex_unlock(&mutex); |
312 | pthread_mutex_unlock(&mutex); |
| 312 | return(NULL); |
313 | return(NULL); |
| 313 | } |
314 | } |
| 314 | if(p.revents & POLLIN) { |
315 | if(p.revents & POLLIN) { |
| 315 | chars=recv(thread->fd,temp_buff,1500,0); |
316 | chars=recv(thread->fd,temp_buff,1500,MSG_DONTWAIT); |
| 316 | if (chars) { |
317 | if (chars) { |
| 317 | 318 | ||
| 318 | // dont log crap recieved |
319 | // dont log crap recieved |
| 319 | // syslog(LOG_INFO,"read %d from %s\n",chars,thread->threadname); |
320 | syslog(LOG_INFO,"read %d from %s\n",chars,thread->threadname); |
| 320 | } |
321 | } |
| 321 | else { |
322 | else { |
| 322 | close(thread->fd); |
323 | close(thread->fd); |
| 323 | thread->fd =-1; |
324 | thread->fd =-1; |
| 324 | pthread_mutex_unlock(&mutex); |
325 | pthread_mutex_unlock(&mutex); |
| 325 | syslog(LOG_INFO,"Closed from %s\n",thread->threadname); |
326 | syslog(LOG_INFO,"Closed from %s\n",thread->threadname); |
| 326 | return(NULL); |
327 | return(NULL); |
| 327 | } |
328 | } |
| 328 | } |
329 | } |
| 329 | } |
330 | } |
| 330 | } |
331 | } |
| 331 | 332 | ||
| Line 358... | Line 359... | ||
| 358 | 359 | ||
| 359 | } |
360 | } |
| 360 | if(errno!=EAGAIN && written>0) |
361 | if(errno!=EAGAIN && written>0) |
| 361 | local_count = (local_count +1) % BUFFCNT; |
362 | local_count = (local_count +1) % BUFFCNT; |
| 362 | } |
363 | } |
| - | 364 | ||
| - | 365 | // read any incoming data and discard |
|
| - | 366 | //size_t readCount; |
|
| - | 367 | //char buffer[512]; |
|
| - | 368 | //do { |
|
| - | 369 | // readCount = recv(thread->fd,&buffer[0],sizeof(buffer),MSG_DONTWAIT); |
|
| 363 | 370 | //} |
|
| - | 371 | //while (written != 0 && errno!=EAGAIN); |
|
| 364 | } |
372 | } |
| 365 | return(NULL); |
373 | return(NULL); |
| 366 | 374 | ||
| 367 | } |
375 | } |
| 368 | 376 | ||