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,
}
static void copydata(void) __attribute__((noreturn));
-static void copydata(void) {
+static void copydata(void) {
+ int r;
+
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);