Home | History | Annotate | Download | only in slirp-android

Lines Matching defs:iov

96 size_t sopreprbuf(struct socket *so, struct iovec *iov, int *np)
111 iov[0].iov_base = sb->sb_wptr;
112 iov[1].iov_base = NULL;
113 iov[1].iov_len = 0;
115 iov[0].iov_len = sb->sb_rptr - sb->sb_wptr;
117 if (iov[0].iov_len > len)
118 iov[0].iov_len = len;
119 if (iov[0].iov_len > mss)
120 iov[0].iov_len -= iov[0].iov_len%mss;
123 iov[0].iov_len = (sb->sb_data + sb->sb_datalen) - sb->sb_wptr;
125 if (iov[0].iov_len > len) iov[0].iov_len = len;
126 len -= iov[0].iov_len;
128 iov[1].iov_base = sb->sb_data;
129 iov[1].iov_len = sb->sb_rptr - sb->sb_data;
130 if(iov[1].iov_len > len)
131 iov[1].iov_len = len;
132 total = iov[0].iov_len + iov[1].iov_len;
135 if (iov[1].iov_len > lss) {
136 iov[1].iov_len -= lss;
139 lss -= iov[1].iov_len;
140 iov[0].iov_len -= lss;
146 if (iov[0].iov_len > mss)
147 iov[0].iov_len -= iov[0].iov_len%mss;
154 return iov[0].iov_len + (n - 1) * iov[1].iov_len;
167 struct iovec iov[2];
176 sopreprbuf(so, iov, &n);
179 nn = readv(so->s, (struct iovec *)iov, n);
182 nn = socket_recv(so->s, iov[0].iov_base, iov[0].iov_len);
205 if (n == 2 && nn == iov[0].iov_len) {
207 ret = socket_recv(so->s, iov[1].iov_base, iov[1].iov_len);
227 struct iovec iov[2];
236 if (sopreprbuf(so, iov, &n) < size)
239 nn = MIN(iov[0].iov_len, copy);
240 memcpy(iov[0].iov_base, buf, nn);
248 memcpy(iov[1].iov_base, buf, copy);
363 struct iovec iov[2];
381 iov[0].iov_base = sb->sb_rptr;
382 iov[1].iov_base = NULL;
383 iov[1].iov_len = 0;
385 iov[0].iov_len = sb->sb_wptr - sb->sb_rptr;
387 if (iov[0].iov_len > len) iov[0].iov_len = len;
390 iov[0].iov_len = (sb->sb_data + sb->sb_datalen) - sb->sb_rptr;
391 if (iov[0].iov_len > len) iov[0].iov_len = len;
392 len -= iov[0].iov_len;
394 iov[1].iov_base = sb->sb_data;
395 iov[1].iov_len = sb->sb_wptr - sb->sb_data;
396 if (iov[1].iov_len > len) iov[1].iov_len = len;
404 nn = writev(so->s, (const struct iovec *)iov, n);
408 nn = socket_send(so->s, iov[0].iov_base, iov[0].iov_len);
423 if (n == 2 && nn == iov[0].iov_len) {
425 ret = socket_send(so->s, iov[1].iov_base, iov[1].iov_len);