Compare commits
4 Commits
v0.0.35-mu
...
v0.0.39-mu
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
babe14d544 | ||
|
|
278fc69789 | ||
|
|
99262777fc | ||
|
|
b0f60caab2 |
2
mud
2
mud
Submodule mud updated: cd9fb7ce34...04c8495fe6
20
src/main.c
20
src/main.c
@@ -358,9 +358,12 @@ int main (int argc, char **argv)
|
||||
}
|
||||
|
||||
struct timeval timeout = {
|
||||
.tv_usec = 1000,
|
||||
.tv_usec = 100000,
|
||||
};
|
||||
|
||||
if (mud_can_push(mud))
|
||||
timeout.tv_usec = 1000;
|
||||
|
||||
if _0_(select(mud_fd+1, &rfds, NULL, NULL, &timeout)==-1) {
|
||||
if (errno==EINTR)
|
||||
continue;
|
||||
@@ -384,8 +387,10 @@ int main (int argc, char **argv)
|
||||
while (1) {
|
||||
const ssize_t r = tun_read(tun_fd, buf, sizeof(buf));
|
||||
|
||||
if (r<=0)
|
||||
if (r<=0) {
|
||||
gt.quit |= !r;
|
||||
break;
|
||||
}
|
||||
|
||||
struct ip_common ic;
|
||||
|
||||
@@ -400,12 +405,17 @@ int main (int argc, char **argv)
|
||||
mud_pull(mud);
|
||||
|
||||
while (1) {
|
||||
const int r = mud_recv(mud, buf, sizeof(buf));
|
||||
const int size = mud_recv(mud, buf, sizeof(buf));
|
||||
|
||||
if (r<=0)
|
||||
if (size<=0)
|
||||
break;
|
||||
|
||||
tun_write(tun_fd, buf, r);
|
||||
const ssize_t r = tun_write(tun_fd, buf, size);
|
||||
|
||||
if (r<=0) {
|
||||
gt.quit |= !r;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user