462 |
while(size > 0) { |
while(size > 0) { |
463 |
|
|
464 |
if(S->ssl) { |
if(S->ssl) { |
465 |
n= send_ssl_socket(S->ssl, p, size); |
n= send_ssl_socket(S->ssl, p, size, S->timeout); |
466 |
} else { |
} else { |
467 |
n= sock_write(S->socket, p, size); |
if(S->type==SOCK_DGRAM) |
468 |
|
n= udp_write(S->socket, p, size, S->timeout); |
469 |
|
else |
470 |
|
n= sock_write(S->socket, p, size, S->timeout); |
471 |
} |
} |
472 |
|
|
473 |
if(n <= 0) break; |
if(n <= 0) break; |
611 |
} |
} |
612 |
|
|
613 |
if(n==0) break; |
if(n==0) break; |
614 |
|
|
615 |
if(n < 0) { |
if(n < 0) { |
616 |
if(errno == EAGAIN || errno == EWOULDBLOCK) break; |
if(errno == EAGAIN || errno == EWOULDBLOCK || S->type==SOCK_DGRAM) break; |
617 |
return -1; |
return -1; |
618 |
} |
} |
619 |
|
|