src/server/util/io.c

changeset 719
c4c2b8e8ddc5
parent 714
fe4d14625245
equal deleted inserted replaced
718:9e98618464ae 719:c4c2b8e8ddc5
541 st->written += w; 541 st->written += w;
542 return w; 542 return w;
543 } 543 }
544 } 544 }
545 545
546 ssize_t net_http_write_raw(HttpStream *st, const void *buf, size_t nbytes) {
547 return st->fd->write(st->fd, buf, nbytes);
548 }
549
550 ssize_t net_http_writev_raw(HttpStream *st, struct iovec *iovec, int iovcnt) {
551 return st->fd->writev(st->fd, iovec, iovcnt);
552 }
553
554 ssize_t net_http_read(HttpStream *st, void *buf, size_t nbytes) { 546 ssize_t net_http_read(HttpStream *st, void *buf, size_t nbytes) {
555 if(st->read >= st->max_read) { 547 if(st->read >= st->max_read && !st->raw) {
556 st->read_eof = WS_TRUE; 548 st->read_eof = WS_TRUE;
557 return 0; 549 return 0;
558 } 550 }
559 ssize_t r = st->fd->read(st->fd, buf, nbytes); 551 ssize_t r = st->fd->read(st->fd, buf, nbytes);
560 if(r < 0) { 552 if(r < 0) {

mercurial