Revision fa5efccb qemu-char.c
b/qemu-char.c | ||
---|---|---|
158 | 158 |
return s->chr_can_read(s->handler_opaque); |
159 | 159 |
} |
160 | 160 |
|
161 |
void qemu_chr_read(CharDriverState *s, uint8_t *buf, int len)
|
|
161 |
void qemu_chr_be_write(CharDriverState *s, uint8_t *buf, int len)
|
|
162 | 162 |
{ |
163 | 163 |
s->chr_read(s->handler_opaque, buf, len); |
164 | 164 |
} |
... | ... | |
589 | 589 |
return; |
590 | 590 |
} |
591 | 591 |
if (size > 0) { |
592 |
qemu_chr_read(chr, buf, size);
|
|
592 |
qemu_chr_be_write(chr, buf, size);
|
|
593 | 593 |
} |
594 | 594 |
} |
595 | 595 |
|
... | ... | |
700 | 700 |
|
701 | 701 |
/* try to flush the queue if needed */ |
702 | 702 |
if (term_fifo_size != 0 && qemu_chr_can_read(chr) > 0) { |
703 |
qemu_chr_read(chr, term_fifo, 1);
|
|
703 |
qemu_chr_be_write(chr, term_fifo, 1);
|
|
704 | 704 |
term_fifo_size = 0; |
705 | 705 |
} |
706 | 706 |
/* see if we can absorb more chars */ |
... | ... | |
725 | 725 |
} |
726 | 726 |
if (size > 0) { |
727 | 727 |
if (qemu_chr_can_read(chr) > 0) { |
728 |
qemu_chr_read(chr, buf, 1);
|
|
728 |
qemu_chr_be_write(chr, buf, 1);
|
|
729 | 729 |
} else if (term_fifo_size == 0) { |
730 | 730 |
term_fifo[term_fifo_size++] = buf[0]; |
731 | 731 |
} |
... | ... | |
914 | 914 |
} |
915 | 915 |
if (size > 0) { |
916 | 916 |
pty_chr_state(chr, 1); |
917 |
qemu_chr_read(chr, buf, size);
|
|
917 |
qemu_chr_be_write(chr, buf, size);
|
|
918 | 918 |
} |
919 | 919 |
} |
920 | 920 |
|
... | ... | |
1624 | 1624 |
} |
1625 | 1625 |
|
1626 | 1626 |
if (size > 0) { |
1627 |
qemu_chr_read(chr, buf, size);
|
|
1627 |
qemu_chr_be_write(chr, buf, size);
|
|
1628 | 1628 |
} |
1629 | 1629 |
} |
1630 | 1630 |
|
... | ... | |
1846 | 1846 |
* first |
1847 | 1847 |
*/ |
1848 | 1848 |
while (s->max_size > 0 && s->bufptr < s->bufcnt) { |
1849 |
qemu_chr_read(chr, &s->buf[s->bufptr], 1);
|
|
1849 |
qemu_chr_be_write(chr, &s->buf[s->bufptr], 1);
|
|
1850 | 1850 |
s->bufptr++; |
1851 | 1851 |
s->max_size = qemu_chr_can_read(chr); |
1852 | 1852 |
} |
... | ... | |
1867 | 1867 |
|
1868 | 1868 |
s->bufptr = 0; |
1869 | 1869 |
while (s->max_size > 0 && s->bufptr < s->bufcnt) { |
1870 |
qemu_chr_read(chr, &s->buf[s->bufptr], 1);
|
|
1870 |
qemu_chr_be_write(chr, &s->buf[s->bufptr], 1);
|
|
1871 | 1871 |
s->bufptr++; |
1872 | 1872 |
s->max_size = qemu_chr_can_read(chr); |
1873 | 1873 |
} |
... | ... | |
2109 | 2109 |
if (s->do_telnetopt) |
2110 | 2110 |
tcp_chr_process_IAC_bytes(chr, s, buf, &size); |
2111 | 2111 |
if (size > 0) |
2112 |
qemu_chr_read(chr, buf, size);
|
|
2112 |
qemu_chr_be_write(chr, buf, size);
|
|
2113 | 2113 |
} |
2114 | 2114 |
} |
2115 | 2115 |
|
Also available in: Unified diff