chiark
/
gitweb
/
~ian
/
userv-utils.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
6d360a5
)
Now seems to work.
author
ian
<ian>
Sun, 19 Sep 1999 19:09:43 +0000
(19:09 +0000)
committer
ian
<ian>
Sun, 19 Sep 1999 19:09:43 +0000
(19:09 +0000)
ipif/service.c
patch
|
blob
|
history
diff --git
a/ipif/service.c
b/ipif/service.c
index b76c75473b04a5a1e98129c7997fc6f750beec92..5ed6014893495b65ecae6459bcaf24e144d14e11 100644
(file)
--- a/
ipif/service.c
+++ b/
ipif/service.c
@@
-695,18
+695,6
@@
static void netconfigure(void) {
sysfatal("cannot exec ifconfig");
}
sysfatal("cannot exec ifconfig");
}
- if (task()) {
- execlp("route","route", "add", "-host",localtxt,
- "dev",ifname, (char*)0);
- sysfatal("cannot exec route (for local)");
- }
-
- if (task()) {
- execlp("route","route", "add", "-host",peertxt,
- "dev",ifname, (char*)0);
- sysfatal("cannot exec route (for peer)");
- }
-
for (i=0; i<nexroutes; i++) {
if (task()) {
execlp("route","route", "add", "-net",exroutes[i].prefixtxt,
for (i=0; i<nexroutes; i++) {
if (task()) {
execlp("route","route", "add", "-net",exroutes[i].prefixtxt,
@@
-718,8
+706,14
@@
static void netconfigure(void) {
}
static void copydata(void) __attribute__((noreturn));
}
static void copydata(void) __attribute__((noreturn));
-static void copydata(void) {
+static void copydata(void) {
+ int r;
+
pids.byname.cin= makesubproc(cin_entry);
pids.byname.cin= makesubproc(cin_entry);
+ for (;;) {
+ r= write(1, "\300", 1); if (r==1) break;
+ assert(r==-1); if (errno != EINTR) sysfatal("send initial delim to confirm");
+ }
pids.byname.cout= makesubproc(cout_entry);
for (;;) sigsuspend(&emptyset);
pids.byname.cout= makesubproc(cout_entry);
for (;;) sigsuspend(&emptyset);